-
Technisches Gebiet
-
Diese Erfindung betrifft Paketkommunikationssysteme
und insbesondere Verfahren und Vorrichtungen für die zentrale Verwaltung von
Leitweglenkungspfaden in solchen Systemen.
-
Grundlagen der Erfindung
-
Für
die Überwachung
von Paketübertragungsnetzen
ist normalerweise ein Fachmann für Netzverwaltung
zuständig.
Solche Netzüberwacher befinden
sich normalerweise an einem Knoten des Netzes und sind dafür zuständig, die
ordnungsgemäße Funktion
des Netzes sicherzustellen, um Netzdienste für alle Benutzers des Netzes
zu gewährleisten.
Viele Überwachungsfunktionen
müssen
jedoch in anderen Knoten des Netzes stattfinden. Die Einrichtung
von Verbindungen und die Prüfung
dieser Verbindungen müssen
beispielsweise von einem der Knoten im Leitweg der Verbindung eingeleitet
werden, normalerweise vom Quellenknoten. Um die Einrichtung, Unterbrechung
und Wiederherstellung von Leitwegen oder Pfaden durch das Netz für die Übertragung
von Daten zwischen Benutzern des Netzes zentral zu verwalten, ist
es daher notwendig, einen Mechanismus zur fernen Überwachung,
Einrichtung, Beendigung und Neuzuweisung solcher Leitwege von einem
zentral gelegenen Überwachungs-
oder Verwaltungsknoten im Netz bereitzustellen. Der zentrale Knoten
wird normalerweise als Verwaltungsknoten und alle anderen Knoten
werden als Agentknoten bezeichnet. Leitwege zwischen Agentknoten
werden im Ursprungsagentknoten des Leitwegs erzeugt, und solche
Knoten werden entweder durch den Namen des Zielknotens (als benannter
Leitweg bezeichnet) oder durch Angabe der Folge von Knoten und Übertragungsverbindungen
angegeben, die den Leitweg (als Verbindungsleitweg bezeichnet) bilden.
In jedem Fall ist es wünschenswert,
Leitwege von einem zentralen Verwaltungsknoten fern einzurichten,
um Verbindungsfehlern, Belegtzuständen (congestion) oder der
Notwendigkeit, Ressourcen aus dem Dienst zu entfernen, Rechnung
zu tragen. Ein Beispiel eines solchen Verwaltungssystems ist beispielsweise
in EP-A-0858 654 zu finden.
-
Der häufigste Steuerbefehlmechanismus, der
zur Verwaltung von Paketnetzen von einer zentralen Position aus
verfügbar
ist, verwendet die Befehle "SET" (Einstellen eines
Wertes von einer fernen Position aus) und "GET" oder "GET_NEXT" (Abrufen eines Wertes
von einer fernen Position aus). Eine solche Befehlsstruktur ist
als Simple Network Management Protocol (SNMP) bekannt. Im SNMP-System
wird ein einfacher Befehl "GET" oder "GET_NEXT" verwendet, um einen
einzelnen Wert von einem fernen Knoten im Paketnetz zu erhalten. Ähnlich wird
ein einfacher Befehl "SET" verwendet, um einen
einzelnen Wert in einem fernen Knoten des Paketnetzes einzustellen.
Leider eignet sich diese einfache Befehlsstruktur nicht gut für die Erzeugung, Löschung und Änderung
von Leitwegen, wie es für die
gesamte Leitwegverwaltung notwendig ist. In den Systemen nach dem
Stand der Technik, die eine solch begrenzte Befehlsstruktur verwenden,
ist es schwierig oder unmöglich,
Leitwegänderungen
im gesamten Paketübertragungssystem
zentral zu verwalten. Ohne zentrale Verwaltung muss jeder Knoten alle
von diesem ausgehenden Leitwege verwalten, wobei eine Verdopplung
der Verwaltungseinrichtungen in jedem der Knoten erforderlich ist,
wodurch die Kosten und die Komplexität erhöht und der Durchsatz des Netzes
vermindert werden.
-
Bei Versuchen zur zentralen Verwaltung
von Leitweglenkungspfaden unter Verwendung dieser Standardbefehle
zur Interaktion zwischen Verwalter und Agent treten mehrere Probleme
auf. Der Netzverwalter hat beispielsweise keine Kenntnis davon, welche
Leitwege aufgrund einer Übertragung
oder eines Gerätefehlers
dynamisch geändert
wurden oder wie oft solche Änderungen
aufgetreten sind. Ähnlich hat
der Netzverwalter keine Möglichkeit,
die erneute Berechnung eines Leitwegs einzuleiten, nachdem eine
fehlerhafte Ressource für
den Dienst wiederhergestellt wurde, oder anzugeben, dass ein bestimmter Leitweg
verwendet werden muss.
-
Zusammenfassung der Erfindung
-
Gemäß der veranschaulichenden Ausführungsform
der vorliegenden Erfindung wird ein Pfadverwaltungssystem bereitgestellt,
das eine zentrale Verwaltung der Verbindungsleitweglenkung in Systemen
mit einer begrenzten Protokollsteuerbefehlsstruktur bereitstellt.
Insbesondere wird ein als Pfadobjekt bezeichnetes Datenobjekt als
ein Lese-Schreib-Datenwert (read-write
data value) definiert und für
jeden von einem bestimmten Knoten ausgehenden Pfad angegeben. In
jedem Agentknoten des Netzes wird eine als Pfadtabelle bezeichnete Tabelle
solcher Pfadobjekte eingerichtet. Diese Datenobjekte, die unter
Verwendung eines "SET"-Befehls fern auf
jeden gewünschten
Wert gesetzt werden können,
werden zum Einleiten der Erzeugung oder Löschung von Datenleitwegen verwendet.
Das heißt,
jedes Pfaddatenobjekt wird vom lokalen Agentknoten überwacht,
und wenn eine Änderung
des Wertes erkannt wird, wird ein neuer Pfad erzeugt, der durch
den neuen Wert im Pfaddatenobjekt gekennzeichnet wird. Jedes Pfaddatenobjekt
in der Pfadtabelle enthält
Felder, die die Kennzeichnung des Pfades, den Leitweg des Pfades
und Verwaltungsdaten angeben, beispielsweise die Anzahl von Paketen,
die in jeder Richtung auf diesem Pfad übertragen werden.
-
Gemäß der vorliegenden Erfindung
wird außerdem
in allen Agentknoten, die Endpunkte von Pfadleitwegen sind, eine
Pfadstatusdatentabelle (path status data table) verwaltet. Ein neuer
Statuseintrag in der Pfadstatustabelle wird jedes Mal erzeugt, wenn ein
Leitweg gelöscht
oder geändert
wird. Jeder Statuseintrag in der Pfadstatustabelle enthält eine
Vielzahl von Feldern, die die Kennzeichnung des Pfades, den Zeitpunkt
der Einrichtung, den Leitweg des alten Pfades, den Leitweg des neuen
Pfades, die Ursache für
die Erzeugung des neuen Pfades und das Ergebnis des Versuches zur
Erzeugung des Pfades, d. h. Erfolg oder Fehlschlag, angeben. Es
wird nicht nur ein neuer Eintrag in der Pfadstatustabelle erzeugt, wenn
der zentrale Pfadverwaltungsknoten die Erzeugung eines neuen Pfades
steuert, sondern auch, wenn der neue Pfad auf den eigenen Pfaderzeugungsalgorithmus
des Agentknotens hin erzeugt wird.
-
Die Interaktionen zwischen Verwaltungsknoten
und Agentknoten sind vollkommen unabhängig von der verwendeten Überwachungs-Steuerbefehlsstruktur.
Wie oben angedeutet wurde, kann das SMNP-Verwaltungsprotokoll verwendet
werden. Es können
auch andere Verwaltungsbefehlsstrukturen verwendet werden, darunter
Common Management Information Protocol (CMIP), System Network Administration,
Management Services (SNA/MS) Protocol und viele andere firmenspezifische
Befehlsprotokolle.
-
Ein weiterer Vorteil der vorliegenden
Erfindung ist die Unabhängigkeit
des Leitwegverwaltungssystems von den tatsächlichen Leitweglenkungsprotokollen,
die von den Agentknoten verwendet werden. In der Tat könnten verschiedene
Knoten unterschiedliche Leitweglenkungsalgorithmen verwenden und
dennoch am zentralen Leitweglenkungs-Verwaltungssystem der vorliegenden
Erfindung teilhaben. Beispielsweise können das High Performance Routing-
(HPR-) Protokoll sowie andere Verbindungsstatus-Leitweglenkungsprotokolle
verwendet werden, wie das Advanced Peer-to-Peer Networking- (APPN-)
Protokoll, das Open Shortest Path First- (OSPF-) Protokoll, die
vom Übertragungssteuerprogramm
verwendet werden, das Internet Protocol (TCP/IP) und das Intermediate
System to Intermediate System- (IS-IS-) Protokoll, die von Open Systems
Interconnect (OSI) und TCP/IP verwendet werden.
-
Es ist zu erkennen, dass die Pfadverwaltungsverfahren
der vorliegenden Erfindung die zentrale Verwaltung aller Leitwege
in einem gesamten Paketnetz von einem einzigen Leitwegverwaltungsknoten
aus unter Verwendung von nur einer einfachen SNMP-ähnlichen
Befehlsstruktur ermöglichen. Diese
zentrale Leitwegverwaltung verringert die Verdopplung, die Kosten
und die Komplexität
der Leitwegverwaltungsfunktion.
-
Kurze Beschreibung der
Zeichnungen
-
Ein vollständiges Verständnis der
vorliegenden Erfindung kann durch Betrachten der folgenden ausführlichen
Beschreibung in Verbindung mit den begleitenden Zeichnungen erlangt
werden, in denen:
-
1 ein
allgemeines Blockschaltbild eines Paketkommunikationsnetzes zeigt,
in dem ein zentrales Leitwegverwaltungssystem gemäß der vorliegenden
Erfindung verwendet werden könnte;
-
2 ein
ausführlicheres
Blockschaltbild eines typischen Entscheidungspunktes im Netz von 1 zeigt, an dem Pakete in
das Netz eintreten oder entlang des Leitwegs zu einem Ziel für jedes
Paket weitergeleitet werden können
und in dem Leitwegerzeugungseinrichtungen sowie ein Leitwegverwaltungssystem
gemäß der vorliegenden
Erfindung verwendet werden könnten;
-
3 eine
grafische Darstellung eines Eintrags in einer Pfadtabelle in dem
neue Pfade erzeugenden Knoten zeigt und die von dem in 2 Leitwegverwaltungssystem
verwendet wird, um neue Pfade einzuleiten;
-
4 eine
grafische Darstellung eines Eintrags in einer Pfadstatustabelle
zeigt, die von dem in 2 gezeigten
Leitwegverwaltungssystem verwendet wird, um Daten bezüglich jedes
Pfades im Netz von 1 wiederherzustellen;
-
5 ein
allgemeines Flussdiagramm des Prozesses zum Einleiten einer Pfadänderung
von einem zentralen Verwaltungsknoten aus unter Verwendung eines
Pfadtabelleneintrags von 3 gemäß der vorliegenden
Erfindung zeigt; und
-
6 ein
ausführliches
Flussdiagramm eines typischen Prozesses zeigt, der zum fernen Steuern
einer Pfadumschaltung im Netz von 1 gemäß der vorliegenden
Erfindung verwendet wird.
-
Zur Erleichterung des Leserverständnisses werden
zum Bezeichnen von gleichen Elementen in den Figuren identische
Ziffern verwendet.
-
Ausführliche Beschreibung
-
Mit Bezugnahme auf insbesondere 1 wird ein allgemeines Blockschaltbild
eines Paketübertagungssystems 10 gezeigt,
das acht von 1 bis 8 nummerierte Netzknoten 11 umfasst.
Jeder der Netzknoten 11 ist durch eine oder mehrere Kommunikationsverbindungen
A bis L mit anderen der Netzknoten 11 verbunden. Jede solche
Kommunikationsverbindung kann entweder eine permanente Verbindung oder
eine selektiv aktivierte (Wähl-)
Verbindung sein. Irgendeiner oder alle der Netzknoten 11 können mit Endknoten
verbunden werden, wobei der Netzknoten 2 als mit den Endknoten 1, 2 und 3,
der Netzknoten 7 als mit den Endknoten 4, 5 und 6 und
der Netzknoten 8 als mit den Endknoten 7, 8 und 9 verbunden
gezeigt werden. Die Netzknoten 11 umfassen jeweils ein
Datenverarbeitungssystem, das für
alle verbundenen Knoten, Netzknoten und Endknoten Datenübertragungsdienste
sowie Entscheidungspunkte im Knoten bereitstellt. Die Netzknoten 11 umfassen
jeweils einen oder mehrere Entscheidungspunkte im Knoten, wobei
eingehende Datenpakete an diesem Punkt selektiv auf eine oder mehrere
der ausgehenden Kommunikationsverbindungen geleitet werden, die
in diesem Knoten oder in einem anderen Knoten enden. Solche Leitweglenkungsentscheidungen
werden auf Daten im Vorsatz des Datenpaketes hin getroffen. Der
Netzknoten stellt außerdem
untergeordnete Dienste bereit, beispielsweise die Berechnung von
neuen Leitwegen oder Pfaden zwischen Endknoten, die Bereitstellung
einer Zugriffssteuerung auf Pakete, die bei diesem Knoten in das
Netz eingehen, die Bereitstellung von Verzeichnisdiensten und die Verwaltung
der Topologiedatenbank in diesem Knoten. Gemäß der vorliegenden Erfindung
können
ein oder mehrere der Netzknoten 11 außerdem ein zentrales Leitwegverwaltungssystem
umfassen.
-
Jeder der Endknoten 12 umfasst
entweder eine Quelle von digitalen Daten, die zu einem anderen Endknoten übertragen
werden müssen,
eine Nutzungseinheit zum Verwenden von digitalen Daten, die von
einem anderen Knoten empfangen wurden, oder beides. Benutzer des
Paketkommunikationsnetzes 10 von 1 können
eine mit dem lokalen Netzknoten 11 verbundenen Endknoteneinheit 12 verwenden,
um auf das Paketnetz 10 zuzugreifen. Der lokale Netzknoten 11 setzt
die Daten des Benutzers in Pakete um, die zur Übertragung im Paketnetz von 1 geeignet formatiert werden,
und erzeugt den Vorsatz, der zur Leitweglenkung der Pakete durch das
Netz 10 verwendet wird.
-
Um Pakete im Netz von 1 zu übertragen, ist es notwendig,
einen ausführbaren
Pfad oder Leitweg durch das Netz vom Quellenknoten zum Zielknoten
zur Übertragung
solcher Pakete zu berechnen. Um eine Überlastung von irgendeiner
der Verbindungen auf diesem Leitweg zu vermeiden, wird der Leitweg
gemäß einem
Algorithmus berechnet, der sicherstellt, dass auf jedem Zweig der
neuen Verbindung eine angemessene Bandbreite verfügbar ist. Ein
solches Berechnungssystem eines optimalen Leitwegs wird in dem am
3. August 1993 erteilten US-Patent 5 233 604 beschrieben. Sobald
ein solcher Leitweg berechnet worden ist, wird eine Verbindungsanforderungsnachricht
im Netz gestartet, die dem berechneten Leitweg folgt und die Bandbreitenbelegung
jeder Verbindung entlang des Leitwegs aktualisiert, um die neue
Verbindung widerzuspiegeln. Datenpakete können sodann entlang des berechneten
Leitwegs vom Ursprungsknoten zum Zielknoten (und vom Zielknoten
zum Ursprungsknoten) übertragen
werden, indem dieser Leitweg in den Vorsatz des Datenpaketes aufgenommen
wird.
-
In 2 wird
ein allgemeines Blockschaltbild einer Netzknoten-Steuerschaltung
gezeigt, die in den Knoten 11 von 1 möglicherweise
zu finden ist. Die Knotensteuerschaltung von 2 umfasst eine Hochgeschwindigkeits-Paketvermittlungsstruktur (high
speed packet switching fabric) 30, auf die im Knoten eingehende
Pakete eingegeben werden. Solche Pakete gehen über Übertragungsverbindungen von
anderen Knoten des Netzes, beispielsweise die Verbindungen A bis
L von 1, über die Übertragungsschnittstellen 31 ein,
oder werden lokal über
lokale Benutzerschnittstellen 30 übertragen. Gemäß bereits
bekannten Paketnetzvorgängen
verbindet die Vermittlungsstruktur 30 unter der Steuerung
der Leitwegsteuereinheit 33 jedes der eingehenden Datenpakete
mit der entsprechenden der ausgehenden Übertragungsverbindungsschnittstellen 31 oder
mit der geeigneten der lokalen Benutzerschnittstellen 32. In
der Tat werden auch Netzverwaltungssteuernachrichten auf dieselbe
Weise wie Datenpakete im Paketnetz gestartet und aus diesem empfangen.
Das heißt,
jedes im Netz von 1 übertragene
Netzpaket, ob Daten oder Steuernachricht, wird mit Hilfe der Vermittlungsstruktur 30 weitergeleitet,
wie in 2 gezeigt wird.
-
Die Leitwegsteuereinheit 33 wird
verwendet, um optimale Leitwege für im Knoten von 2 erzeugte Nachrichten zu berechnen.
Die Steuereinheit 33 kann beispielsweise aktualisierte
Daten in der Netztopologiedatenbank 34 verwenden, um den
optimalen Leitweg unter Verwendung eines Algorithmus wie dem im
zuvor erwähnten
Patent 5 233 604 beschriebenen zu berechnen. Sobald solche optimalen Leitwege
berechnet worden sind, werden sie lokal im Knoten von 2 gespeichert und von der
Leitwegsteuereinheit 33 verwendet, um diesen Leitweg zum Vorsatz
aller zu diesem Ziel weiterzuleitenden Datenpakete hinzuzufügen. Es
ist in 2 zu erkennen, dass
jedes von diesem Knoten aus auf dem zuvor berechneten Leitweg zum
gewünschten
Ziel gestartete Paket unter der Steuerung eines zuvor berechneten, gespeicherten
Leitweglenkungsvektors (routing vector) demselben Pfad folgt.
-
Gelegentlich ist es wünschenswert,
diese zuvor berechneten Pfade aufgrund von Fehlern, Belegtzuständen usw.
zu ändern.
Falls die Leistung eines bestimmten Leitwegs beispielsweise plötzlich schlechter
wird oder ausfällt,
ist es möglicherweise wünschenswert,
einen neuen Leitweg von diesem Ursprungsknoten zum selben Zielknoten
zu berechnen, möglichst
ohne die Mängel
des ursprünglichen Leitwegs.
Diese Leitwegänderung
kann aufgrund der Tatsache nötig
werden, dass eine bestimmte Netzressource aus dem Dienst (oder in
den Dienst) genommen wurde und folglich nun verschiedene Ressourcen
zum Erstellen des Leitwegs verfügbar
sind.
-
Gemäß der vorliegenden Erfindung
wird im Knoten von 2 eine
Leitwegverwaltungssteuereinheit 35 zur zentralen Verwaltung
der Einrichtung und Ausführung
aller Leitweglenkungsprotokollpfade des Netzes von 1 bereitgestellt. Die Verbindungen der
Leitwegverwaltungssteuereinheit 35 werden mit gepunkteten Linien
gezeigt, um anzuzeigen, dass nicht alle der Netzknoten 11 (1) mit einer Leitwegverwaltungssteuereinheit 35 versehen
werden müssen.
In der Tat muss nur einer der Netzknoten 11 mit einer Leitwegverwaltungssteuereinheit 35 ausgestattet
werden, und dieser eine Netzknoten ist für die Verwaltung der von allen
Netzknoten 11 in 1 ausgehenden
Leitweglenkungsprotokollpfade zuständig. Alternativ kann eine
Vielzahl von Netzknoten 11 mit Leitwegverwaltungssteuereinheiten 35 ausgestattet werden,
wobei jedoch nur eine der Steuereinheiten 35 zu einem bestimmten
Zeitpunkt aktiv ist, wodurch eine Sicherungsredundanz bereitgestellt
wird. In der Tat kann jeder Knoten 35 vollständig mit
der Fähigkeit zur
Netzleitwegverwaltung versehen werden, jedoch nur einer zu einem
bestimmten Zeitpunkt aktiviert werden. In jedem Fall ist der Knoten,
dem aktuell die Testverwaltungsfunktion zugewiesen wurde, als der "Verwaltungs"-Knoten bekannt,
während
alle anderen Knoten des Netzes als "Agent"-Knoten bekannt sind. Im Verwaltungsknoten
wird eine Leitwegverwaltungsdatenbank 38 zur Speicherung
der Leitwegverwaltungsdaten bereitgestellt.
-
Gemäß der vorliegenden Erfindung
beinhaltet jeder Agentknoten außerdem
eine Pfadtabelle 36. Die Pfadtabelle 36 enthält eine
Vielzahl von Einträgen,
einen für
jeden aktiven Leitweg, der von diesem Knoten ausgeht oder an diesem
endet. Wie in Verbindung mit 3 ausführlich beschrieben
wird, kennzeichnet jeder Pfadtabelleneintrag eindeutig den Pfad,
den er darstellt, gibt die Elemente des Pfades und deren Folge an,
d. h. die Verbindungen und Knoten, die den Pfad ausmachen. Andere
Verwaltungsdaten bezüglich
des Pfades wie die Verkehrsdichte können ebenfalls in jedem Eintrag
in der Pfadtabelle 36 enthalten sein. Die Einträge der Tabelle
36 können unter
Verwendung einer einfachen "GET"- oder "GET NEXT"-Befehlsstruktur
wie in SNMP von fernen Positionen aus gelesen werden.
-
Gemäß der vorliegenden Erfindung
wird eine Vielzahl von Pfaddatenobjekten in jedem Agentknoten definiert,
die durch einen fern eingeleiteten "SET"-Befehl
auf einen bestimmten Wert gesetzt werden können. Die Werte in diesen Pfaddatenobjekten
werden fortlaufend überwacht,
und falls irgendeine Änderung
auftritt, leitet die Leitwegsteuereinheit 33 die Erzeugung
eines neuen Pfades ein, der durch den neuen Wert im Pfaddatenobjekt
gekennzeichnet ist. Für
jeden erzeugten neuen Pfad erfolgt ein Eintrag in die Pfadtabelle 36,
wobei die Kennzeichnung des neuen Pfades aus dem geänderten
Pfadobjekt verwendet wird. Für
Pfade, die aufgrund des Pfadleitweglenkungsalgorithmus des Agentknotens
dynamisch in diesem erzeugt werden, sowie für Pfade, deren Erzeugung durch
eine ferne (vom Verwaltungsknoten eingeleitete) Änderung am Pfaddatenobjekt eingeleitet
wurde, erfolgt ein Eintrag in der Pfadtabelle. Pfade, die im Pfaddatenobjekt
ermittelt werden können,
enthalten Punkt-zu-Punkt-Pfade, die nur durch den benannten Zielknoten
gekennzeichnet sind und als benannter Zielleitweg (named destination
route) bezeichnet werden, und Verbindungsleitwege, bei denen jeder
Zweig (Übertragungsverbindung)
des Pfades gesondert ermittelt und als Verbindungsleitweg bezeichnet
wird.
-
Gemäß der vorliegenden Erfindung
enthält jeder
Agentknoten außerdem
eine Pfadstatustabelle 37. Wie in Verbindung mit 4 ausführlich erläutert wird, enthält jeder
Eintrag in der Pfadstatustabelle Daten über den Status von jedem der
in der Tabelle 36 gekennzeichneten Pfade. Wenn ein neuer
Pfad erzeugt wird, wie durch eine Änderung am Pfadbeschreibungsobjekt
(path specification object) (Feld 22, 3) in einem Eintrag der Pfadtabelle 36 dargestellt
wird, erfolgt ein Statuseintrag des neuen Pfades in der Pfadstatustabelle 37,
der Einzelheiten über den
Pfad enthält,
darunter den Zeitpunkt der Einleitung, die Einzelheiten vom alten
als auch vom neuen Pfad, die Ursache für die Änderung und den Erfolg oder
Misserfolg des Pfaderzeugungsprozesses. Diese Inhalte werden in
Verbindung mit 4 ausführlicher
beschrieben.
-
Vor der Erläuterung von 3 sei darauf hingewiesen, dass die Schaltungen
von 2 als spezielle
Schaltungen realisiert werden können.
In der bevorzugten Ausführungsform
werden jedoch alle in Verbindung mit den 5 bis 7 beschriebenen
Steuerfunktionen durch Programmieren eines Universalcomputers realisiert.
Die Vorbereitung der Programme, die zum Ausführen dieser Funktionen benötigt werden,
ist für
Fachleute auf dem Gebiet der programmierten Paketnetztechnik offensichtlich,
insbesondere im Hinblick auf die ausführlichen Flussdiagramme, die
in Verbindung mit den 5 bis 7 beschrieben werden.
-
In 3 wird
eine grafische Darstellung eines einzelnen Eintrags in einer Pfadtabelle
gezeigt, die der Pfadtabelle 36 von 2 entspricht. Gemäß der vorliegenden Erfindung
enthalten die Speichereinrichtungen in jedem der Agentknoten 11 (1) jeweils zwei Tabellen,
eine Pfadtabelle 36 und eine Pfadstatustabelle 37.
Wie oben erwähnt
wurde, enthält
die Pfadtabelle einen Eintrag für
jeden Leitweg, der von diesem Agentknoten ausgeht oder an diesem endet,
wobei jeder Eintrag das in Verbindung mit 3 beschriebene Format hat. Die Pfadstatustabelle
enthält
außerdem
einen Eintrag für
jeden Leitweg, der von diesem Agentknoten ausgeht oder an diesem endet
und das in Verbindung mit 4 beschriebene Format
hat. Gemäß der vorliegenden
Erfindung können
alle der lokal eingeleiteten Pfade vom Verwaltungsknoten durch einfache "SET"-, "GET"- oder "GET_NEXT"-Befehle verwaltet
werden, die von der zentralen Leitwegverwaltungssteuereinheit 35 im Verwaltungsknoten
ausgegeben werden und zum Einstellen oder Abrufen von Einträgen in den
Tabellen 36 und 37 in jedem der Agentknoten 11 des
Netzes von 1 dienen.
-
Mit erneuter Bezugnahme auf den Seitentabelleneintrag
von 3 ist das erste
Feld 20 des Pfadtabelleneintrags eine Pfadkennung (path
identification number). Dieses Pfadkennzeichnungsfeld 20 dient
zur eindeutigen Kennzeichnung von jedem der Einträge in der
Pfadtabelle 36. Da es für
jeden der Pfade, die von dem Agentknoten ausgehen oder an diesem
enden, in dem die Pfadtabelle gespeichert wird, einen solchen Eintrag
gibt, dient das Pfadkennzeichnungsfeld 20 außerdem zur
Kennzeichnung der Pfade selbst. Das zweite Feld 22 der
Pfadtabelle umfasst eine Kennzeichnung des tatsächlichen Leitwegs, dem der
Pfad folgt, d. h. eine Sprung-Sprung-Kennzeichnung (hop-by-hop identification)
der Verbindungen und Knoten entlang dieses Pfades. Die Felder 23 und 24 enthalten
nützliche
Verwaltungsdaten über
diesen Pfad. In 3 enthält das Feld 23 beispielsweise
einen Zählwert
der Anzahl von Paketen, die auf diesem Pfad in diesem Knoten eingehen,
und das Feld 24 enthält
einen Zählwert
der Anzahl von Paketen, die diesen Knoten auf diesem Pfad verlassen.
Diese Daten sind nützlich
zur Ermittlung der Pfadnutzung und folglich der Notwendigkeit zur
Erzeugung eines neuen Pfades (falls die Nutzung beispielsweise unerwartet
hoch ist).
-
Der Inhalt des Feldes 22 der
Pfadtabelle von 3 fungiert
als Auslöser
zum Einleiten eines Versuchs zur Erzeugung eines neuen Pfades oder
Leitwegs zum Zielknoten. Das heißt, falls der Inhalt des Feldes 22 geändert wird,
beispielsweise durch einen "SET"-Befehl von einem
fernen Verwaltungsknoten, versucht die Leitwegsteuereinheit 33 (2), einen neuen Leitweg
von diesem Agentknoten zum Zielagentknoten zu erzeugen. Falls der
Inhalt des Feldes 22 zur Beschreibung eines neuen Pfades
geändert wird,
versucht die Leitwegsteuereinheit 33, einen Pfad entsprechend
dieser neuen Pfadbeschreibung zu erzeugen. Falls der Inhalt des
Feldes 22 leer bleibt, versucht die Leitwegsteuereinheit 33,
unter Verwendung ihres eigenen Leitweglenkungsalgorithmus einen
neuen Pfad zum Zielknoten zu erzeugen. Folglich ist zu erkennen,
dass die Pfadbeschreibungsfelder 22 in den Pfadtabellen 36 in
allen Agentknoten des Netzes von 1 einen
Mechanismus zum fernen Ändern
von Datenleitwegen durch das Netz durch einen Verwaltungsknoten
bereitstellen und folglich die zentrale Verwaltung von Pfadänderung
gemäß der vorliegenden
Erfindung ermöglichen.
Es sei jedoch darauf hingewiesen, dass die Pfadtabelle 36 außerdem Änderungen
an den Pfaden aufgrund des normalen Betriebs der im Agentknoten
eingeleiteten Agentleitweglenkungsprotokolle widerspiegeln.
-
In 4 wird
eine grafische Darstellung eines einzelnen Eintrags in der Pfadstatustabelle 37 in einem
lokalen Agentknoten gezeigt. Es wird jedes Mal ein neuer Eintrag
für die
Pfadstatustabelle erzeugt, wenn ein Versuch unternommen wird, das Pfadbeschreibungsfeld 22 von 3 von einem Eintrag in der
Pfadtabelle 36 von 2 zu ändern. Wie oben
dargelegt wurde, kann eine Änderung
in einem Pfadbeschreibungsfeld 22 (3) der Pfadtabelle 36 (2) eines Agentknotens auf
einen "SET"-Befehl von einem
Verwaltungsknoten hin oder auf das automatische Antworten von Agentleitweglenkungs-Algorithmen
auf Fehler im Netz hin eingeleitet werden. Ebenso wie die Pfadtabelle 36 enthält die Pfadstatustabelle
einen Eintrag für
jeden Pfad, der von diesem lokalen Agentknoten ausgeht oder an diesem endet.
Der Pfadstatustabelleneintrag von 4 enthält ein Ereignisindexfeld
(event Index field) 40, das eine eindeutige Folgennummer
enthält,
die die Reihenfolge kennzeichnet, in der Versuche zur Pfadänderung
aufgetreten sind. Ein Zeitstempelfeld 41 enthält seinerseits
den Zeitpunkt, zu dem dieser Pfadänderungsversuch stattfand.
Das Pfadkennzeichnungsfeld 42 enthält einen eindeutigen Wert,
der einen Pfad kennzeichnet und direkt dem Pfadindex (Feld 40, 3) in der Pfadtabelle entspricht.
Dieses Pfadkennzeichnungsobjekt wird zum Zuordnen von Einträgen in der
Pfadstatustabelle zu den Einträgen
in der Pfadtabelle verwendet. Das Feld 43 "Alter Pfad" enthält eine
Kopie des Pfadbeschreibungsfeldes 22 (3) für
diesen Pfad unmittelbar vor dem Zeitpunkt eines Pfadänderungsversuchs.
Es ist eine Sprung-Sprung-Kennzeichnung der Verbindungen und Knoten
entlang dieses Pfades. Das Feld 44 "Neuer Pfad" enthält außerdem eine Verbindung-Verbindung-Kennzeichnung
des Pfades vom Ursprungsknoten zum Zielknoten. Das Feld 44 ist
leer, falls der neue Pfad nicht vom Agentleitweglenkungsprotokoll berechnet
werden kann. Der Wert im Feld 44 "Neuer Pfad" kann sogar gleich dem Wert im Feld 43 "Alter Pfad" sein, falls beispielsweise
das Agentleitweglenkungsprotokoll denselben Leitweg vom Ursprungsknoten
zum Zielknoten berechnete, da kein besserer Leitweg verfügbar war.
Das Feld 45 enthält
die Ursache für
diese Pfadänderung,
d. h. vom fernen Verwaltungsknoten oder lokal durch normale Leitweglenkungsprotokoll-Entscheidungen
eingeleitet. Das Feld 46 enthält schließlich die Ergebnisse dieses
Versuchs zum Ändern
des Leitwegs, d. h. eine erfolgreiche oder nicht erfolgreiche Änderung
des Leitwegs.
-
Es ist zu erkennen, dass die Tabelleneinträge der 3 und 4 alle wichtigen Parameter erfassen,
die an Änderungen
an Pfaden beteiligt sind, die von dem diese Tabellen enthaltenden
Knoten ausgehen. Außerdem
können
solche Pfadänderungen
eingeleitet werden, indem einfach ein Wert in ein Pfadbeschreibungsfeld 22 im
Ursprungs- oder Endknoten für
diesen Pfad gesetzt wird. Da ein solcher Werteinstellungsvorgang
von einem fernen Verwaltungsknoten ausgeführt werden kann, kann die Steuerung
solcher Pfadänderungen
für alle
Pfade im Netz im Verwaltungsknoten zentralisiert werden, wodurch
die Fähigkeit
und das Personal zur Pfadanalyse an einem zentralen Verwaltungsknoten
konzentriert werden. Die ausführlichen
Prozesse zum Ausführen
dieser zentralen Pfadänderungs-Verwaltungsfunktionen werden
in den 5 und 6 dargestellt.
-
Insbesondere mit Bezugnahme auf 5 wird ein ausführliches
Flussdiagramm des Prozesses zum Einleiten einer Pfadänderung
gemäß der vorliegenden
Erfindung gezeigt. Auf den Startblock 50 folgt der Block 51,
in dem ein Befehl "SET_PATH" vom Verwaltungsknoten
gestartet wird. Der Befehl "SET_PATH" enthält einen
Index, der einen bestimmten Eintrag in der Pfadtabelle 36 im
Agentknoten angibt, zu dem er geleitet wird, und einen Pfadbeschreibungswert,
der den Inhalt des Feldes 22 (3) im gekennzeichneten Eintrag ersetzen
soll. Wie oben dargelegt wird, kann der Pfadbeschreibungswert null sein,
falls es wünschenswert
ist, dass der Leitweglenkungsalgorithmus des Agenten den neuen Pfad berechnet.
Der Befehl "SET_PATH" wird zum gewünschten
Agentknoten übertragen,
wobei ein geeigneter Vorsatz für
den Befehl verwendet wird. Im fernen Agentknoten wird in den Entscheidungsblock 52 eingetreten,
wo festgestellt wird, ob der Index (Eintragskennzeichner) im Befehl
gültig
ist, das heißt, ob
ein diesem Index entsprechender Eintrag vorhanden ist. Falls nicht,
wird in den Block 53 eingetreten, wo der Befehl "SET" zurückgewiesen
wird und der Verwaltungsknoten durch den Pfeil 63 benachrichtigt wird.
-
Falls der Index gültig ist, wie durch den Entscheidungsblock 52 festgestellt
wird, wird in den Block 54 eingetreten, wo der Befehl "SET" angenommen und der
Verwaltungsknoten durch den Pfeil 64 über diese Tatsache benachrichtigt
wird. Nachdem der Agentknoten den Befehl "SET" im
Block 54 annimmt, wird in den Entscheidungsblock 55 eingetreten,
wo festgestellt wird, ob ein Pfad im Befehl "SET" angegeben
wird. Falls ein Pfad im Befehl "SET" angegeben wird,
wird in den Block 57 eingetreten, um die vorhandene Pfadbeschreibung
zu überprüfen. Falls
kein Pfad im Befehl "SET" angegeben wird,
wird in den Block 56 eingetreten, um einen neuen Pfad zum
Zielleitweg zu berechnen. In jedem Fall wird in den Entscheidungsblock 58 eingetreten,
um festzustellen, ob der Pfad möglich
ist, d. h., ob die Pfadberechnung erfolgreich ausgeführt oder
der vorhandene Pfad überprüft wurde.
Falls nicht, wird ein entsprechender Statustabelleneintrag im Block 61 ausgeführt und
der Prozess im Block 62 beendet.
-
Falls der Pfad erfolgreich berechnet
oder erfolgreich überprüft wurde,
wie durch den Entscheidungsblock 58 festgestellt wird,
wird in den Block 59 eingetreten, wo der Pfadbeschreibungseintrag
(Feld 22, 3)
in der Pfadtabelle
36 mit dem neuen Pfad aktualisiert wird.
Anschließend
wird in den Block 60 eingetreten, um den berechneten bzw. überprüften Pfad
endgültig
festzulegen. Danach wird in Block 61 eingetreten, um einen
neuen Eintrag in der Pfadstatustabelle 37 (2) zu erzeugen, wobei alle in 4 angegebenen Daten aufgezeichnet
werden. Der Prozess von 5 endet
sodann im Endblock 62.
-
Falls eine Pfadänderung vom Agentknoten aufgrund
des normalen Betriebs seines Leitweglenkungsalgorithmus unabhängig eingeleitet
werden muss, wie im Block 65 angezeigt wird, wird in den Block 56 eingetreten,
um einen neuen Leitweg zu berechnen. Anschließend geht der Prozess weiter,
wie oben beschrieben wird. Es sei darauf hingewiesen, dass eine
Leitwegänderung
von jedem Ende des Leitwegs aus eingeleitet werden kann, wie oben
beschrieben wird. Die Pfadstatustabelleneinträge werden in dem die Änderung
einleitenden Agentknoten gespeichert. Leitwegänderungen, die an einem Ende des
Leitwegs eingeleitet werden, werden im normalen Verlauf des Pfadänderungsprozesses
außerdem im
Agentknoten am anderen Ende des Leitwegs aufgezeichnet. Der lokale
Agentknoten kann ebenfalls eine Pfadänderung einleiten, wie im Block 65 gezeigt wird,
indem ein neuer Leitweg für
eine Verbindung vorgeschrieben wird. Anschließend wird in den Block 58 eingetreten,
um den vorgeschriebenen Leitweg auf Ausführbarkeit zu prüfen, und
die Verarbeitung erfolgt, wie in der Bilanz von 5 gezeigt wird.
-
Es sei darauf hingewiesen, dass der
in 5 verwendete Befehl "SET" im Gegensatz zu
den nach dem Stand der Technik verwendeten "GET"-Befehlen zur
Einleitung von Leitwegänderungen
keinerlei Zeitlimit benötigt.
Außerdem werden
die Ergebnisse des Versuchs zur Erzeugung eines neuen Pfades im
Ursprungs- oder Endknoten des Pfades gespeichert und sind folglich
immer verfügbar,
wenn der Verwaltungsknoten diese Ergebnisse unter Verwendung eines
Befehls "GET" oder "GET_NEXT" abrufen möchte. Die
Pfadänderungsergebnisse
können
daher nicht aufgrund eines Zeitlimits verloren gehen, das durch
Belegtzustände,
Blöcke
von Datenverkehr mit hoher Priorität oder anderen Fehlern oder
Störungen bei
der Übertragung
verursacht wird. Der Inhalt der Pfadtabelle 36 und der
Inhalt der Statustabelle 37 können vom Verwaltungsknoten
durch Verwendung von "GET"- oder "GET_NEXT"-Befehlen abgerufen werden,
die Fachleuten allgemein bekannt sind. Da der Prozess des Abrufens
eines Eintrags in einer Tabelle oder einer gesamten Tabelle mittels
von Befehlen "GET" oder "GET_NEXT" nach dem Stand der Technik
allgemein bekannt ist, wird er hier nicht näher beschrieben.
-
Zum besseren Verständnis der
Funktionsweise der vorliegenden Erfindung wird ein ausführliches
Beispiel einer typischen Folge von Pfadverwaltungsbefehlen in Verbindung
mit 6 erläutert. 6 stellt ein Flussdiagramm
des ausführlichen Austauschs
von Nachrichten zwischen einem Verwaltungsknoten 80 und
einem Agentknoten 81 im Prozess der Leitwegverwaltung im
Netz von 1 dar. In 6 enthält der linksseitige mit gestrichelten Linien
dargestellte Block alle Vorgänge,
die im Verwaltungsknoten 80 stattfinden, und der rechtsseitige mit
gestrichelten Linien dargestellte Block enthält alle Vorgänge, die
im Agentknoten 81 stattfinden. Wie oben dargelegt wird,
enthält
das Pfadindexfeld 40 von 4 eine
Folgennummer, die den Pfadstatustabelleneintrag kennzeichnet. Diese
Pfadindexfeldwerte können
einfach sequenzielle Indexnummern sein, die bei der Erzeugung der
Einträge
zugeordnet werden.
-
Vor der Einleitung einer Pfadänderung
für einen
bestimmten Leitweg ist es wünschenswert,
dass der Verwaltungsknoten 80 einen geeigneten Pfadstatustabelleneintrag
(Indexnummer) für
die vorzuschlagende neue Pfadänderung
ermittelt. In 6 setzt der
Verwaltungsknoten als Erstes den Indexwert eines "GET_NEXT"-Befehls auf "NULL". Herkömmlicherweise
wird eine Anforderung nach einem Pfadstatustabelleneintrag von der
Indexnummer der zuletzt verwendeten Indexnummer begleitet und gibt die
Indexnummer der nächsten
Eintragsposition in der Pfadstatustabelle zurück. Eine Anforderung nach der
nächsten
Indexnummer mit einem Wert von null wird durch die Ausgabe der Indexnummer
des ersten Eintrags in der Pfadstatustabelle beantwortet. Wenn diese
Antwort empfangen wird, wird sie überprüft, um festzustellen, ob es
sich um eine Markierung "Ende der
Tabelle" handelt.
Falls nicht, wird der Index gespeichert und für eine neue Anforderung nach
einer Pfadstatustabellen-Indexnummer verwendet. Dieser Anforderung-Antwort-Prozess wird
wiederholt, bis die Markierung "Ende
der Tabelle" erreicht
wird. An diesem Punkt wird ein Befehl "SET_PATH" mit der neuen Pfadkennzeichnung vom
Verwaltungsknoten übertragen.
Nach dem Empfang wird dieser Befehl "SET_PATH" verarbeitet, wie in Verbindung mit 5 beschrieben wird, um den
Pfad erfolgreich zu erzeugen, den Pfadeintrag zu aktualisieren und
einen Pfadstatuseintrag mit der im Befehl "SET_ATH" angegebenen Pfadkennzeichnung zu erzeugen.
Die Ergebnisse (Erfolg oder Fehlschlag) dieses Versuchs zur Erzeugung
eines neuen Pfades werden sodann zum Verwaltungsknoten rückübertragen.
-
Falls der Versuch zur Erzeugung des
neuen Pfades fehlschlägt,
kann der Verwaltungsknoten erneut versuchen, den Pfad zu ändern, und
nach einer feststehenden Anzahl von nichterfolgreichen Versuchen
den Prozess beenden. Falls der Versuch zur Erzeugung eines neuen
Pfades jedoch erfolgreich ist, gibt der Verwaltungsknoten einen
Befehl zum Abrufen des sich ergebenden Pfadstatustabelleneintrags aus.
Falls die Antwort auf den Befehl eine dem Pfad, für den die Änderung
angefordert wurde, entsprechende Pfadkennzeichnung (Feld 42, 4) enthält UND falls die Ursache für die erfolgreiche
Pfadänderung "MANAGER DIRECT" war, d. h. unter
der Steuerung des Verwaltungsknotens (Felder 45 und 46 von 4), wird der abgerufene
Pfadstatustabelleneintrag überprüft, um beispielsweise
die Eignung des ausführlich
beschriebenen neuen Pfades (Feld 44, 4) festzustellen. Der Statustabelleneintrag
wird sodann zur späteren
Verwendung im Verwaltungsknoten gespeichert, und der Prozess wird
in diesem beendet.
-
Es ist zu erkennen, dass der Prozess
von 6 zum fernen Einleiten
von Pfadänderungen
in einem Paketübertragungsnetz
und zum Abrufen der ausführlichen
Ergebnisse dieser Pfadänderungen
in einem zentralen Leitwegsteuerungsverwaltungssystem dient, das
sich in einem Knoten des Netzes befindet. Diese zentrale Leitwegverwaltungssteuerung verringert
ihrerseits die Kosten und die Komplexität der Pfadverwaltung und ermöglicht eine
in hohem Maße
redundante Pfadverwaltungskapazität.