-
Gebiet der
Erfindung
-
Die
vorliegende Erfindung bezieht sich auf Datenkommunikationen und
Netze und insbesondere auf ein Stapelübertragungssystem und ein Verfahren
zur Hochleistungs-Grafikanzeige einer Netztopologie oder die Vorrichtungen
und zugeordneten Zwischenverbindungen eines Netzes.
-
Hintergrund
der Erfindung
-
Ein
Datenkommunikationsnetz umfasst allgemein eine Gruppe von Vorrichtungen,
wie z.B. Computern, Repeatern, Brücken, Routern, usw., die sich
an Netzknoten befinden, sowie eine Sammlung von Kommunikationskanälen zum
Verbinden der verschiedenen Knoten untereinander. Hardware und Software,
die dem Netz und insbesondere den Vorrichtungen zugeordnet ist,
erlaubt ein elektronisches Austauschen von Daten über die
Kommunikationskanäle
durch die Vorrichtungen.
-
Die
Größe von Netzen
variiert. Ein lokales Netz (LAN) ist ein Netz von Vorrichtungen
in nächster Nähe, üblicherweise
weniger als einer Meile, die üblicherweise
durch ein einzelnes Kabel, wie z.B. ein Koaxialkabel, verbunden
sind. Ein weites Netz (WAN) ist ein Netz von Vorrichtungen, die
durch größere Entfernungen
getrennt sind, die oft z.B. durch Telefonleitungen oder Satellitenverbindungen
verbunden sind. Tatsächlich überspannen
einige WANs die Vereinigten Staaten sowie die Erde. Ferner sind viele
dieser Netze zur Verwendung durch die Öffentlichkeit gut verfügbar, einschließlich üblicherweise Universitäten und
kommerzieller Industrien.
-
Ein
sehr beliebtes Industriestandard-Protokoll für eine Datenkommunikation entlang
der Netze ist das Internetproto koll (IP; IP = Internet Protocol). Dieses
Protokoll wurde ursprünglich
durch das Verteidigungsministerium der Regierung der Vereinigten Staaten
entwickelt und durch die Regierung der Vereinigten Staaten einer öffentlichen
Verwendung zugeteilt. Mit der Zeit wurden das Übertragungssteuerprotokoll
(TCP; TCP = Transmission Control Protocol) und das unzuverlässige Datagramm-Protokoll (UDP;
UDP = Unreliable Datagram Protocol) zur Verwendung mit dem IP entwickelt.
Das erstere Protokoll (TCP/IP) ist ein Protokoll, das eine Übertragung
von Daten ohne Fehler garantiert, da es eine bestimmte Prüffunktionalität implementiert,
und das letztere Protokoll (UDP/IP) ist ein Protokoll, das eine Übertragung
von Daten nicht garantiert, jedoch viel weniger Mehraufwand benötigt als
die TCP/IP-Plattform.
Ferner wurde das einfache Netzverwaltungsprotokoll (SNMP; SNMP =
Simple Network Management Protocol) schließlich zur Verwendung mit einer UDP/IP-Plattform
entwickelt, um die verschiedenen sich auf einem Netz befindlichen
Vorrichtungen zu verfolgen und zu verwalten. Die Verwendung der
vorangegangenen Protokolle ist in der Industrie weit verbreitet
und zahlreiche Verkäufer
stellen heute viele Typen von Netzvorrichtungen her, die diese Protokolle
einsetzen können.
-
Viele
Verwaltungssoftwarepakete („Verwaltungsplattformen") sind gegenwärtig zum
Implementieren von „Verwaltungsstationen" auf einem Netz und
insbesondere in Verbindung mit dem SNMP, verfügbar. Beispiele kommerziell
verfügbarer SNMP-Verwaltungssoftwarepakete
umfassen OpenView von der Hewlett-Packard Company (der Anmelderin
hierin), NetView/6000 von der IBM Corp., Spectrum von Cabletron
Systems, Inc., NetLabs/Manager von NetLabs, Inc., und SunNet Manager
von SunConnect, Inc. Die Knoten auf einem Netz und ihre Zwischenverbindungen,
oft als die Netz-"Topologie" bezeichnet, werden
am besten in einem grafischen Format angezeigt und ein Großteil, wenn
nicht alle, der verfügbaren
Verwaltungssoftwarepakete sorgen für dieses Merkmal. Üblicherweise
kann mit diesen Paketen ein Netz von unterschiedlichen Ausgangspunkten
aus betrachtet werden, abhängig
von dem erwünschten
Ansichtsbereich. Eine Ansicht des Netzes könnte z.B. eine sehr umfassende
Ansicht aller Knoten auf dem gesamten Netz sein. Eine zweite Ansicht
könnte
eine Ansicht der Abschnitte eines Netzes innerhalb eines lokalen
Bereichs, z.B. innerhalb eines bestimmten Orts oder Gebäudes, sein.
Eine dritte Ansicht eines Netzes, oft Segment genannt, könnte eine
Ansicht der Knoten, die an ein bestimmtes LAN-Kabel angeschlossen
sind, sein.
-
Das
sehr erfolgreiche OpenView von Hewlett-Packard ist Gegenstand mehrerer
Patente, z.B. einschließlich
des US-Patents Nr.
5,185,860, ausgegeben an J. C. Wu am 9. Februar 1993, und des US-Patents
Nr. 5,276,789, ausgegeben an Besaw u.a. am 4. Januar 1994, deren
Offenbarungen hierin durch Bezugnahme aufgenommen sind. Das US-Patent
Nr. 5,185,860 beschreibt ein automatisches Entdeckungssystem für eine Verwaltungsstation
zum Bestimmen der Netzvorrichtungen und Zwischenverbindungen eines
Netzes, oder der Topologie. Das US-Patent Nr. 5,276,789 beschreibt
ein grafisches Anzeigesystem für
eine Verwaltungsstation zum grafischen Anzeigen der Topologie eines
Netzes und sorgt für
verschiedene Ansichten (einschließlich Zwischennetz- bzw. Internet-,
Segment- und Knotenansicht), die durch einen Benutzer angefordert
werden können.
-
Obwohl
die gegenwärtig
verfügbaren SNMP-Verwaltungsstationen
zu einem Ausmaß verdienstvoll
sind, steckt die Technik von SNMP-Verwaltungsstationen noch immer
in den Kinderschuhen und die Leistung dieser Verwaltungsstationen
kann noch verbessert und optimiert werden. Insbesondere bleiben
die erforderliche Zeit und Geschwindigkeit zum Erhalten von Topologiedaten,
zum Umwandeln von Topologiedaten in Anzeigeabbildungsdaten und zum
Treiben einer Anzeige mit den Anzeigeabbildungsdaten weniger als
optimal und könnten
in Bezug auf eine Minimierung dieser Parameter noch verbessert werden.
-
D.
Chu: „Varying
Attention Interrupt Delay", IBM
Technical Disclosure Bulletin, Bd. 19, Nr. 4, September 1976, Seiten
1320–1321
offenbart einen Pufferkommunikationsmultiplexer, der zwischen einen Host-Computer
und Endgeräte
geschaltet ist. Eine Abrufzeitverzögerung des Pufferkommunikationsmultiplexers
ist veränderbar,
um eine Abrufverzögerungszeit
auszuwählen,
die geeignet für
eine Mehrzahl unterschiedlicher Endgerätsystemanwendungen ist.
-
„IBM NetView/6000
IM VERGLEICH ZU HP OPEN VIEW. SOLID PLATTFORMEN", Nachrichten, Elektronik und Telematik,
DE, Verlag Dr. Huethig, Heidelberg, Bd. 48, Nr. 10, Oktober 1994,
S. 44–46, bezieht
sich auf einen Vergleich zwischen der Netzverwaltungsplattform IBM
AIX NetView/6000 V2R1 und HP OpenView Network Node Manager Version 3.3.
HP OpenView Network Node Manager Version 3.3 basiert auf dem in
der
US 5,276,789 beschriebenen
System.
-
Die
Aufgabe der vorliegenden Erfindung besteht darin, ein System und
ein Verfahren zum Verbessern der Geschwindigkeit und Leistung einer
Verwaltungsstation für
ein Netz zu schaffen.
-
Diese
Aufgabe wird durch Systeme gemäß Anspruch
1 und 6 und durch Verfahren gemäß Anspruch
7 und 10 gelöst.
-
Eine
weitere Aufgabe der vorliegenden Erfindung besteht darin, ein System
und ein Verfahren zum Verbessern der Geschwindigkeit und Leistung von
Prozessen zum Erhalten von Topologiedaten, zum Umwandeln von Topologiedaten
in Anzeigeabbildungsdaten und zum Treiben einer Anzeige mit den
Anzeigeabbildungsdaten in einer Verwaltungsstation eines Netzes
bereitzustellen.
-
Eine
weitere Aufgabe der vorliegenden Erfindung besteht darin, ein System
und ein Verfahren zum Verbessern der Geschwindigkeit und Leistung einer
Verwaltungsstation, die das SNMP und/oder IP verwendet, bereitzustellen.
-
Kurz
beschrieben ist die vorliegende Erfindung ein Stapelübertragungssystem
und ein Verfahren für
eine Verwaltungsstation oder eine andere Vorrichtung eines Netzes
zum Verbessern der Geschwindigkeit, mit der Abbildungsdaten für eine Anzeige
aus Topologiedaten, die zu Vorrichtungen und Vorrichtungszwischenverbindungen
des Netzes gehören,
erzeugt werden. Das System weist einen Prozessor, der die verschiedenen
Softwareelemente des Systems ausführt, einen Entdeckungsmechanismus zum
Bestimmen der Netztopologiedaten und einen Entwurfsmechanismus zum
Umwandeln der Netztopologiedaten in Abbildungsdaten und zum Treiben
einer Anzeige mit den Abbildungsdaten auf.
-
Insbesondere
weist der Entdeckungsmechanismus eine Netzüberwachungsvorrichtung, die
konfiguriert ist, um die Topologie des Netzes zu überwachen
und zu bestimmen, eine Topologiedatenbank zum Speichern der Topologiedaten
und einen Topologieverwalter zum Verwalten der Topologiedatenbank
auf. Die Netzverwaltungsvorrichtung ist ebenso konfiguriert, um
Topologieveränderungsereignisse
zu erzeugen, wenn eine Veränderung
der Netztopologie auftritt, und ebenso, um derartige Ereignisse
von anderen Vorrichtungen, die mit dem Netz verbunden sind, zu empfangen.
-
Der
Entwurfsmechanismus steht in Kommunikation mit dem Entdeckungsmechanismus.
Der Entwurfsmechanismus weist einen Übersetzer, eine grafische Benutzerschnittstelle
(GUI) und eine Abbildungsdatenbank auf. Der Übersetzer ist konfiguriert, um
die Topologiedaten in die Abbildungsdaten umzuwandeln, die Ereignisse
zu empfangen und die Abbildungsdaten basierend auf den Ereignissen
zu verändern.
Die grafische Benutzerschnittstelle ist konfiguriert, um die Abbildungsdaten
von dem Übersetzer
zu empfangen, die Topologiedaten in der Topologiedatenbank zu verwalten
und die Anzeige basierend auf den Abbildungsdaten zu treiben.
-
Gemäß dem Stapelübertragungsmerkmal der
vorliegenden Erfindung treten Stapelübertragungen von Topologiedaten
von dem Topologieverwalter zu dem Übersetzer auf und/oder Stapelübertragungen
von Abbildungsdaten treten von dem Übersetzer zu der GUI auf. Diese
Stapelübertragungen
minimieren ein Kontextumschalten (Wechseln einer Steuerung des Prozessors
sowie des Betriebssystems) in der Verwaltungsstation, was die Geschwindigkeit
und Leistung derselben wesentlich verbessert.
-
Zusätzlich zu
einem Erzielen aller zuvor genannter Aufgaben weist die vorliegende
Erfindung zahlreiche andere Vorteile auf, von denen im Folgenden
einige aufgezählt
sind.
-
Ein
Vorteil der vorliegenden Erfindung besteht darin, dass das Stapelübertragungssystem
im Entwurf einfach ist und ohne weiteres in einem kommerziellen
Massenumfang zu implementieren ist.
-
Ein
weiterer Vorteil der vorliegenden Erfindung besteht darin, dass
das Stapelübertragungssystem
im Betrieb effizient sowie zuverlässig ist.
-
Ein
weiterer Vorteil der vorliegenden Erfindung besteht darin, dass
die Prinzipien des Stapelübertragungssystems
und des Verfahrens nicht nur auf Verwaltungsstationen angewendet
werden können,
sondern auch auf andere Vorrichtungen, einschließlich Vorrichtungen, die das
SNMP nicht praktizieren. Das Stapelübertragungssystem und das Verfahren
könnten
z.B. auf einen Netz-Router zum Verbessern der Leistung desselben
angewendet werden.
-
Weitere
Aufgaben, Merkmale und Vorteile der vorliegenden Erfinden werden
für einen
Fachmann auf diesem Gebiet nach einer Prüfung der folgenden Zeichnungen
und der detaillierten Beschreibung ersichtlich werden. Alle derartigen
zusätzlichen Aufgaben,
Merkmale und Vorteile sollen hierin eingeschlossen sein.
-
Kurze Beschreibung
der Zeichnungen
-
Die
vorliegende Erfindung ist Bezug nehmend auf die folgenden Zeichnungen
besser verständlich
und sollte in dem Zusammenhang des begleitenden Texts betrachtet
werden.
-
1 ist
ein Blockdiagramm einer Verwaltungsstation, die eine Entdeckungs-/Entwurfssoftware
aufweist, die das Stapelübertragungssystem
und das Verfahren der vorliegenden Erfindung einsetzt;
-
2 ist
ein schematisches Diagramm, das eine Anzeigeabbildung darstellt,
die eine Sammlung von Teilabbildungen aufweist, die jeweils durch
die Entdeckungs-/Entwurfssoftware aus 1 auf der Anzeige
der Verwaltungsstation angezeigt werden können.
-
3 ist
ein Blockdiagramm der Entdeckungs-/Entwurfssoftware und des Stapelübertragungssystems
aus 1;
-
4 ist
ein Flussdiagramm, das die Architektur des Topologie-zu-Abbildung-Übersetzers
aus 3 darstellt;
-
5 ist
ein Flussdiagramm, das die Architektur eines Stapel-Lesen-Blocks
aus 4 darstellt;
-
6 ist
ein Flussdiagramm, das die Architektur eines Objekt-Wiedergewinnen-Blocks
aus 4 darstellt;
-
7 ist
ein Flussdiagramm, das die Architektur des Abbildungsveränderungen-Berechnen-Blocks
aus 4 darstellt;
-
8 ist
ein Flussdiagramm, das die Architektur eines Teilabbildungsveränderungen-Berechnen-Blocks
aus 7 darstellt;
-
9 ist
ein Flussdiagramm, das die Architektur eines Netzveränderungsblocks
aus 8 darstellt;
-
10 ist
ein Flussdiagramm, das die Architektur eines Segmentveränderungsblocks
aus 8 darstellt;
-
11 ist
ein Flussdiagramm, das die Architektur eines Knotenveränderungsblocks
aus 8 darstellt;
-
12 ist ein Flussdiagramm, das die Architektur
eines Schnittstellenveränderungsblocks
aus 8 darstellt;
-
13 ist
ein Flussdiagramm, das die Architektur eines Abbildungsaktualisierungsblocks
aus 4 darstellt; und
-
14 ist
ein Flussdiagramm, das die Architektur eines Auf-Befehl-Teilabbildungsblocks
innerhalb der grafischen Benutzerschnittstelle (GUI) aus 2 darstellt.
-
Detaillierte
Beschreibung des bevorzugten Ausführungsbeispiels
-
Die
folgende Beschreibung ist der beste gegenwärtig erwogene Modus zum Ausführen der
vorliegenden Erfindung. Diese Beschreibung soll in keinem einschränkenden
Sinn aufgefasst werden, sondern dient lediglich einer Beschreibung
der allgemeinen Prinzipien der Erfindung. Der Schutzbereich der Erfindung
soll durch Bezugnahme auf die beigefügten Ansprüche bestimmt sein.
-
1 zeigt
ein Blockdiagramm einer objektorientierten Verwaltungsstation 100,
die mit einem Universal-Computersystem implementiert ist, das eine
neuartige Entdeckungs-/Entwurfssoftware 101 enthält, die
einen Stapelübertragungsmechanismus 103 und
eine zugeordnete Methodik gemäß der vorliegenden
Erfindung einsetzt. Bezug nehmend auf 1 enthält die Verwaltungsstation 100 einen
herkömmlichen
Prozessor 102. Der Prozessor 102 kommuniziert
mit anderen Elementen innerhalb der Verwaltungsstation 100 über einen
Systembus 104. Eine Eingabevorrichtung 106, wie
z.B. eine Tastatur oder Maus, wird verwendet, um Daten von einem
Benutzer des Systems 100 einzugeben, und eine Anzeige 108 wird
verwendet, um Daten an den Benutzer auszugeben. Eine Netzschnittstelle 112 wird
verwendet, um die Verwaltungsstation 100 schnittstellenmäßig mit
einem Netz 118 zu verbinden, um es zu ermöglichen,
dass die Verwaltungsstation 100 als ein Knoten auf einem
Netz 118 wirken kann. Eine Platte 114 könnte verwendet
werden, um die Software der Entdeckungs-/Entwurfssoftware 101 der
vorliegenden Erfindung zu speichern, sowie um die Datenbanken (Topologie
und Abbildung), die durch die Entdeckungs-/Entwurfssoftware 101 erzeugt
werden, zu speichern. Ein Drucker 116 kann verwendet werden, um
eine Druckkopieausgabe der Knoten des Netzes 118, die durch
die Entdeckungs-/Entwurfssoftware 101 entdeckt werden,
bereitzustellen. Ein Hauptspeicher 110 innerhalb der Verwaltungsstation 100 beinhaltet
die Entdeckungs-/Entwurfssoftware 101.
Die Entdeckungs-/Entwurfssoftware 101 kommuniziert mit
einem herkömmlichen
Betriebssystem 122 und einer herkömmlichen Netzsoftware 124,
um die Knoten auf dem Netz 118 zu entdecken. Die Netzsoftware 124 dient
als die Intelligenz, einschließlich
Validierung, für
die Datenkommunikationsprotokolle. Wie in 1 gezeigt
ist, implementiert bei dem bevorzugten Ausführungsbeispiel die Netzsoftware
das IP, das TCP und UDP über
das IP, und das SNMP über
das UDP. Alle vorangegangenen Protokolle sind in der Technik bekannt.
-
Die
Entdeckungs-/Entwurfssoftware 101 implementiert eine objektorientierte
Funktionalität.
In dem Zusammenhang von SNMP-Verwaltern bedeutet objektorientiert,
dass ein Großteil
der Verwaltungssystemaktionen und -prozesse, die der Benutzer aufrufen
kann, in Richtung einer Klasse von Vorrichtungen orientiert ist
und nicht einzeln verwaltete Netzknoten.
-
Allgemein
ist die Entdeckungs-/Entwurfssoftware 101 aus 1 konfiguriert,
um die Netztopologie zu entdecken, d. h. alle Netzknoten und Knotenzwischenverbindungen,
die auf dem Netz 118 existieren, und um eine Abbildung
aufzubauen, die verschiedene Teilabbildungen aufweist, die jeweils
zum Anzeigen der Netztopologie auf der Anzeige 108 verwendet
werden können. 2 zeigt
eine Abbildung 200, die durch die Entdeckungs-/Entwurfssoftware 101 aus
Topologiedaten, die von dem Netz 118 entdeckt werden, erzeugt
wird. Die Entdeckungs-/Entwurfssoftware 101 kann eine der
verschiedenen Teilabbildungen zu der Anzeige 108 (1)
zur Betrachtung durch den Benutzer treiben.
-
Die
Teilabbildungen in der Abbildung 200 aus 2 sind
in einer Hierarchie angeordnet. Eine Grund- bzw. Wurzel-Teilabbildung 202 ist
auf einer Grundebene definiert. Die Grundteilabbildung 202 stellt
die Teilabbildung der höchsten
logischen Ebene in der Hierarchie dar und zeigt Objekte 203,
die als Ankerpunkte für
verschiedene Teilabbildungshierarchien wirken. Jede Hierarchie ist
ein separater Verwaltungsbereich. Dies könnte z.B. ein Netz, eine Logikgruppierung
von Knoten oder ein bestimmter anderer Bereich sein. Eine Zwischennetz-
bzw. Internetteilabbildung 204 ist an einer Zwischennetzebene definiert
und wird durch ein „Explodieren" eines Objekts 203 innerhalb
der Grundteilabbildung 202 erzeugt. „Explodieren" in dem Zusammenhang
dieses Dokuments bedeutet, dass der Benutzer die Verwaltungsstation 100 mit
der Eingabevorrichtung 106 auffordert, zusammenzubrechen
und mehr Daten, die zu dem zur Debatte stehenden Objekt 203 gehören, bereitzustellen.
Ferner stellt die Zwischennetzteilabbildung 204 Objekte 203 in
der Form von Netzen und Routern dar. Jede einer Anzahl von Netzteilabbildungen 206 kann
durch Explodieren aus der Zwischennetzteilabbildung 204 erzeugt
werden. Jede Netzteilabbildung 206 zeigt Objekte 203 in
der Form von Segmenten und Verbindungselementen. Jede einer Anzahl
von Segmentteilabbildungen 208 kann durch Explodieren aus
einem Objekt 203 innerhalb einer Netzteilabbildung 206 erzeugt
werden. Jede Segmentteilabbildung 208 zeigt Objekte in
der Form von Netzknoten. Schließlich
kann jede einer Anzahl von Netzteilabbildungen 210 durch
Explodieren aus einem Objekt 203 innerhalb einer Segmentteilabbildung 208 erzeugt
werden. Jede Knotenteilabbildung 210 zeigt Objekte 203 in
der Form von Schnittstellen innerhalb dieses Knotens.
-
Bei
dem bevorzugten Ausführungsbeispiel implementiert
die Entdeckungs-/Entwurfssoftware 101, obwohl dies zur
Praktizierung der vorliegenden Erfindung nicht nötig ist, Teilabbildungen auf
Abruf, um Speicher und Verarbeitungszeit zu sparen. Das Konzept
von Teilabbildungen auf Abruf besteht darin, nur die Teilabbildungen
in der Abbildung 200 aus 2 zu platzieren,
die der Benutzer sehen möchte. Das
Nettoergebnis ist, dass nur ein Abschnitt der Teilabbildungshierarchie
zu einer bestimmten Zeit in der Abbildung 200 ist. In 2 werden
Teilabbildungen (nicht resident), die nicht vorhanden sind, auf
ein Auffordern durch den Benutzer hin jedoch erzeugt würden, durch
eine Schraffur angezeigt. Der residente Teilabbildungsteilsatz der
Hierarchie verändert
sich über
die Zeit, wenn der Benutzer die Teilabbildungshierarchie durchquert
und eine Erzeugung nicht residenter Teilabbildungen bewirkt.
-
Ein
Blockdiagramm der Entdeckungs-/Entwurfssoftware 101 (1)
auf hoher Ebene ist in 3 dargelegt. Mit Ausnahme des
Stapelübertragungsmechanismus 103 ist
die Architektur der Entdeckungs-/Entwurfssoftware 101 aus 3 im
Wesentlichen gleich oder ähnlich
wie diejenige in dem bekannten und kommerziell erhältlichen
Verwaltungssoftware paket mit Namen OpenView von Hewlett-Packard.
Wie in 3 gezeigt ist, weist auf einer allgemeinen Architekturebene
die Entdeckungs-/Entwurfssoftware 101 einen Entdeckungsmechanismus 302 zum
Entdecken von Knoten und Zwischenverbindungen des Netzes 118 und
einen Entwurfsmechanismus 304 zum Empfangen von Topologiedaten von
dem Entdeckungsmechanismus 302 und zum Erzeugen der Abbildung 200 (2)
zum Treiben der Anzeige 108 auf.
-
Der
Entdeckungsmechanismus 302 weist eine Netzüberwachungsvorrichtung 306,
die mit dem Netz 118 verbunden ist, wie durch Verbindungen 308a, 308b angezeigt
ist, einen Topologieverwalter 310, der mit der Netzüberwachungsvorrichtung 306 verbunden
ist, wie durch Pfeile 312a, 312b angezeigt ist,
und eine Topologiedatenbank, die in Kommunikation mit dem Topologieverwalter 310 steht,
wie durch einen Pfeil 316 angezeigt ist, auf.
-
Die
Netzüberwachungsvorrichtung 306 sendet
und empfängt
Datenpakete zu und von dem Netz 118. Die Netzüberwachungsvorrichtung 306 entdeckt und überwacht
eine Netztopologie, wie durch Pfeile 308a, 308b angezeigt
ist. Wenn sich die Netztopologie auf dem Netz verändert, erzeugt
die Netzüberwachungsvorrichtung 306 Ereignisse
oder Fallen (SNMP-einheimisch), die einen Objektidentifizierer und
Objektveränderungsinformationen
umfassen. Die Netzüberwachungsvorrichtung 306 kann
außerdem
Ereignisse von anderen Vorrichtungen, wie z.B. einem Router, in
dem Netz 118 empfangen. Die Netzüberwachungsvorrichtung 306 steht
mittels der Netzsoftware 124 (1), die
im Wesentlichen Protokollstapel aufweist, die bei dem bevorzugten
Ausführungsbeispiel
IP, TCP, UDP und SNMP entsprechen, und die allgemein diese Protokolle
implementiert und Validierungsfunktionen durchführt, in Wechselwirkung mit
dem Netz 118. Ferner bestückt die Netzüberwachungsvorrichtung 306 die
Topologiedatenbank 314 mittels des Topologieverwalters 310 und benachrichtigt
den Topologieverwalter 310 über Ereignisse (Topologieveränderungen).
Schließlich
soll angemerkt werden, dass das US- Patent Nr. 5,185,860 von Wu, das hierin
durch Bezugnahme aufgenommen ist, ein Knotenentdeckungssystem beschreibt,
das eingesetzt werden könnte,
um die Netzüberwachungsvorrichtung 306 hierin
zu implementieren.
-
Der
Topologieverwalter 310 verwaltet die Topologiedatenbank 314,
wie durch einen bidirektionalen Pfeil 316 angezeigt ist.
Der Topologieverwalter 310 fordert die Netzüberwachungsvorrichtung 306 auf,
Topologiedaten, die auf bestimmte Ereignisse bezogen sind, zu aktualisieren,
wie durch einen Pfeil 312a angezeigt ist, und empfängt Topologieaktualisierungen,
wie durch einen Pfeil 312b angezeigt ist.
-
Die
Topologiedatenbank 314 speichert Topologiedaten basierend
auf Objekten, die verwendet werden, um das Netz aus logischen Gründen zu
partitionieren. Objekte umfassen z. B., jedoch nicht ausschließlich, ein
Netz, ein Segment, einen Computer, einen Router, einen Repeater,
eine Brücke,
usw. Ferner umfassen die in Bezug auf die Objekte gespeicherten
Topologiedaten z.B., jedoch nicht ausschließlich, eine Schnittstellen-
oder Vorrichtungsadresse, einen Schnittstellen- oder Vorrichtungstyp, einen
Schnittstellen- oder
Vorrichtungshersteller sowie, ob eine Schnittstelle oder Vorrichtung
das SNMP unterstützt.
-
Der
Entwurfsmechanismus 304 weist einen Topologie-zu-Abbildung-Übersetzer 318,
der in Kommunikation mit dem Topologieverwalter 310 steht, wie
durch Pfeile 320a, 320b angezeigt ist, eine grafische
Benutzerschnittstelle (GUI) 322, die in Kommunikation mit
dem Topologie-zu-Abbildung-Übersetzer 318 steht,
wie durch Pfeile 324a, 324b angezeigt wird, und
eine Abbildungsdatenbank 326, die in Kommunikation mit
der GUI 322 steht, wie durch einen bidirektionalen Pfeil 328 angezeigt
ist, auf. Es sollte angemerkt werden, dass die Netzüberwachungsvorrichtung 306,
der Topologieverwalter 310, der Übersetzer 318 und
die GUI 322 sich bei der Verwendung der Kombination des
Betriebssystems 122 (1) und des
Prozessors 102 (1) abwechseln, um dort jewei lige
Funktionen zu erzielen. Ein „Kontextumschalten", wie es hierin verwendet
wird, bezieht sich auf eine Veränderung
der Steuerung des Systems 122 und/oder des Prozessors 102 durch
die vorstehenden Softwareelemente.
-
Der Übersetzer 318 wandelt
Topologiedaten von der Topologiedatenbank 314 in Abbildungsdaten um
und baut die verschiedenen Teilabbildungen 202 bis 210 in
der Abbildung 200 aus 2 auf. Der Übersetzer 318 kann
eine Anforderung an den Topologieverwalter 310 weiterleiten,
wie durch einen Pfeil 320a angezeigt ist, um Topologiedaten
in Bezug auf bestimmte Objekte zu erhalten. Ferner berät der Topologieverwalter 310 zusätzlich zu
einem Weiterleiten von Topologiedaten an den Übersetzer 318 auf eine
Anforderung hin, den Übersetzer 318,
wie durch den Pfeil 320b angezeigt ist, wenn Topologiedaten sich
basierend auf einem Ereignis verändert
haben, so dass der Übersetzer 318 geeignete
Veränderungen
an den Teilabbildungen durchführen
kann.
-
Die
GUI 322 verwaltet die Abbildungsdatenbank 326,
wie durch den bidirektionalen Pfeil 328 angezeigt ist,
und verwaltet die Anzeige 108 und die Eingabevorrichtung 106,
wie durch die Pfeile 330a, 330b angezeigt ist.
Die GUI 322 empfängt
Abbildungsaktualisierungen von dem Übersetzer 318, wie durch
einen Pfeil 324b angezeigt wird, und liefert durch den
Benutzer ausgelöste
Ereignisse an den Übersetzer 318,
wie durch einen Pfeil 324a angezeigt ist. Ein durch einen
Benutzer ausgelöstes
Ereignis umfasst eine Aufforderung 330a von einem Benutzer, ein
Objekt zu explodieren, wie Bezug nehmend auf 2 beschrieben
ist. Schließlich
sollte angemerkt werden, dass das US-Patent Nr. 5,276,789 von Besaw
u.a., das hierin durch Bezugnahme aufgenommen ist, eine grafische
Benutzerschnittstelle beschreibt, die zur Implementierung der GUI 322 hierin eingesetzt
werden könnte.
-
4 zeigt
ein Flussdiagramm 400, das die Architektur und Funktionalität des bevorzugten
Ausführungsbeispiels
des Topologie-zu-Abbildung-Übersetzers 318 (3)
anzeigt. Der Übersetzer
verwendet den Stapelübertragungsmechanismus 103 und eine
zugeordnete Methodik gemäß der vorliegenden Erfindung,
was Kontextumschaltungen (Veränderungen
der Steuerung des Betriebssystems 122 und/oder Prozessors 102)
minimiert und die Geschwindigkeit und Leistung der Entdeckungs-/Entwurfssoftware 101 wesentlich
verbessert.
-
Bezug
auf 4 werden zu Beginn Ereignisse in eine Warteschlange
gestellt und in einer Warteschlange angesammelt (nicht gezeigt),
oder einem Ansammler, der dem Topologieverwalter 310 zugeordnet
ist, und diese warten auf eine Wiedergewinnung durch den Übersetzer 318.
Gemäß einem
wesentlichen Merkmal der vorliegenden Erfindung liest der Übersetzer 318 während jedes
Zugriffs einen Stapel von Ereignissen von dem Topologieverwalter 310.
Jedes Ereignis beinhaltet einen Objektidentifizierer und eine Objektveränderung.
Ferner ist der Stapel um eine bestimmte Anzahl von Ereignissen größer als
1. Bei dem getesteten Ausführungsbeispiel
war der Stapel auf eine Anzahl von nicht mehr als 500 Ereignissen
eingeschränkt,
andere Einstellungen jedoch, entweder kleiner als oder größer als diese
Anzahl (vielleicht wesentlich), könnten abhängig von der Konfiguration
des Systems eingesetzt werden. Es sollte ferner angemerkt werden,
dass in dem Verwaltungssoftwarepaket, das als OpenView bekannt ist,
von Hewlett-Packard Ereignisse während
jedes Zugriffs durch den Übersetzer 318 mit
jeweils einem zu einer Zeit von dem Topologieverwalter 310 gelesen
werden.
-
Als
Nächstes
ruft der Übersetzer 318,
wie in Block 404 angezeigt ist, den Topologieverwalter 310 nach
einer Liste von Topologiedaten bezüglich aller Objekte, die in
den Ereignissen identifiziert wurden, an. Nach einem Empfangen der
Topologiedaten überträgt Block 404 an
Block 406.
-
Bei
Block 406 berechnet der Übersetzer 318 die
an den Abbildungsdaten durchzuführenden
Veränderungen,
insbesonde re der Abbildung 200 (2), basierend
auf den Topologiedatenveränderungen,
die in den Ereignissen angezeigt sind. Block 406 überträgt an Block 408.
-
Bei
Block 408 aktualisiert der Übersetzer 318 die
Abbildung 200 (2) durch ein Anrufen der GUI 322 und
ein Beraten der GUI 322 über alle Teilabbildungsveränderungen
(im Folgenden SYMCHANGELIST und NEWSYMLIST beschrieben), die zu
allen Objektveränderungen
gehören.
Wesentlicherweise ist diese Transaktion auch eine Stapelübertragung. Während dieser
Stapelübertragungstransaktion
identifiziert der Übersetzer 318 jede
zu verändernde
Teilabbildung, jedes innerhalb einer Teilabbildung zu verändernde
Objekt und die an dem Objekt zu bewirkende bestimmte Veränderung.
Eine Objektveränderung
könnte
z.B., jedoch nicht ausschließlich,
eine Farbe, Position oder Verbindungsveränderung umfassen. Block 408 überträgt an Block 410.
Es sollte ferner angemerkt werden, dass in dem Verwaltungssoftwarepaket
von Hewlett-Packard, das als OpenView bekannt ist, Ereignisse während jedes
Zugriffs mit jeweils einem zu einer Zeit von dem Übersetzer 318 an
die GUI 322 übertragen
werden.
-
Bei
Block 410 bestimmt der Übersetzer 318, ob
ein weiterer Stapel von dem Topologieverwalter 310 zu lesender
Ereignisse vorliegt. Falls dies der Fall ist, überträgt Block 410 an Block 402 und
der zuvor beschriebene Prozess wird wiederholt. Falls dies nicht
der Fall ist, wartet die Software bei Block 410 auf einen
weiteren Stapel von Ereignissen.
-
Aufgrund
des bevorzugten Ausführungsbeispiels
des Übersetzers 318,
der in 4 dargelegt ist, werden Topologiedaten, die zu
verschiedenen Objekten gehören,
in einem Stapel von dem Topologieverwalter 310 wiedergewonnen
und ferner werden Abbildungsdaten, die zu verschiedenen Teilabbildungen
gehören,
in einem Stapel von dem Übersetzer 318 an
die GUI 322 übertragen.
Die vorstehende Implementierung minimiert Kontextumschaltungen,
d.h. minimiert die Anzahl von Malen, die eine Steuerung des Prozessors 102 (1) und/oder
des Betriebssystems 122 (1) von einem
Softwaremodul zu einem weiteren geleitet wird. Diese Funktionsweise verbessert
die Leistung der Entdeckungs-/Entwurfssoftware 101 wesentlich
und führt
zu einem Leistungsanstieg von mehr als einer Größenordnung.
-
5 zeigt
ein Flussdiagramm der Architektur und Funktionalität zum Implementieren
eines bevorzugten Ausführungsbeispiels
des Stapelleseblocks 402 (4). Dieses
Flussdiagramm stellt dar, wie der Übersetzer 318 einen
Stapel von Ereignissen von dem Topologieverwalter 310 liest.
Wie in einem Block 502 angezeigt ist, werden zu Beginn
Ereignisse von dem Topologieverwalter 310, die Veränderungen
an Topologiedaten anzeigen, angehäuft (in eine Warteschlange
gestellt). Ein Zähler
bei Block 504 wird in Verbindung mit einer Schleife verwendet,
um jedes Ereignis von dem Topologieverwalter 310 zu dem Übersetzer 318 zu
leiten. Bei Block 506 wird ein Ereignis durch den Übersetzer 318 von
dem Verwalter 310 gelesen. Block 506 überträgt an Block 508, der
das Ereignis decodiert. Das Ereignis wird decodiert, um den Typ
von Ereignis und zugeordnete Daten zu identifizieren. Es gibt zahlreiche
Typen von Ereignissen und unterschiedliche Typen von Ereignissen
besitzen unterschiedliche Typen zugeordneter Daten. Insbesondere
kann ein Ereignis z. B., jedoch nicht ausschließlich, einen neuen Knoten oder
eine Knotenstatusveränderung
(z.B. angeschlossen/zugänglich
oder angeschlossen/unzugänglich)
beinhalten. Ein Ereignis weist einen Ereignisidentifizierer, üblicherweise
an dem Kopfelement, zum Identifizieren des Typs von Ereignis auf.
Ferner enthält
das Ereignis in dem Fall eines neuen Knotens einen Objektidentifizierer
und eine Adresse. In dem Fall einer Knotenstatusveränderung
enthält
das Ereignis einen Objektidentifizierer, den alten Status und den
neuen Status.
-
Block 508 überträgt an Block 510.
Bei Block 510 werden die decodierten Ereignisdaten (d.h.
eine Aufzeichnung) zu einer TLIST hinzugefügt. Bei Block 512 wird
der Zähler inkrementiert,
sodass ein weiteres Ereignis gewartet bzw. bedient wird. Block 512 überträgt an Block 514,
der bestimmt, ob weitere zu wartende Ereignisse vorliegen. Falls
dies der Fall ist, überträgt Block 514 zurück zu Block 506 und
der zuvor genannte Prozess wird wiederholt. Falls dies nicht der
Fall ist, kehrt Block 514 zurück zu Block 404 (4).
-
6 zeigt
ein Flussdiagramm der Architektur und Funktionalität eines
bevorzugten Ausführungsbeispiels
zum Implementieren des Objektinformationen-Wiedergewinnen-Blocks 404 (4).
Wie in 6 angezeigt ist, werden bei diesem Flussdiagramm
Objektinformationen (OBJINFO) aus den decodierten Ereignisdaten,
die in der TLIST enthalten sind, decodiert. Bei Block 602 wird
die TLIST gelesen. Block 602 überträgt an Block 604, der
einen Aufzeichnungszähler
initialisiert. Der Zähler
in Verbindung mit einer Schleife bewirkt, dass alle Aufzeichnungen
innerhalb der TLIST gewartet werden. In der Schleife wird bei Block 606 eine
einzelne Aufzeichnung gelesen. Aus der Aufzeichnung werden (a) ein Objektidentifizierer
und (b) eine Objektveränderung bestimmt.
Die vorstehenden Daten werden in eine Objektliste (OBJLIST) platziert.
Als nächstes
wird bei Block 608 der Zähler inkrementiert, sodass
eine weitere Aufzeichnung von TLIST gewartet wird, falls vorhanden.
Block 608 überträgt an Block 610.
Bei Block 610 wird bestimmt, ob verbleibende zu wartende
Ereignisse vorliegen, indem der Aufzeichnungszählwert des Aufzeichnungszählers mit
der Gesamtzahl bereits verarbeiteter Aufzeichnungen verglichen wird.
Falls dies der Fall ist, überträgt Block 610 zurück an Block 606,
der mit der Wartung einer weiteren Aufzeichnung beginnt. Falls dies
nicht der Fall ist, überträgt Block 610 an
Block 612, der eine Anforderung nach einer Stapelübertragung
von Objektinformationen, die zu allen Objekten innerhalb des Stapels
gehören
an den Topologieverwalter 310, sendet. 7 zeigt
ein Flussdiagramm der Architektur und Funktionalität eines
bevorzugten Ausführungsbeispiels
des Abbildungsveränderungen-Berechnen-Blocks 406 (4).
Bei diesem Flussdiagramm bestimmt der Übersetzer, welche Teilabbildungen (2)
verändert
werden, und die zu bewirkende Veränderung basierend auf den Objektidentifizierern und
den Objektveränderungen,
die zuvor basierend auf den Ereignissen bestimmt wurden. Bezug nehmend
auf 7 wird bei Block 701 ein Zähler für Objektaufzeichnungen
initialisiert. Der Zähler
und eine Schleife stellen sicher, dass alle Objektveränderungen
in den Teilabbildungen ausgeführt
werden. In der Schleife bestimmt Block 702 einen Teilabbildungsidentifizierer
basierend darauf, welche der Teilabbildungen (2)
durch die Objektveränderungen
beeinflusst werden. Block 702 überträgt an Block 704, der
bestimmt, ob die beeinflusste Teilabbildung erzeugt wurde. Wenn
die Teilabbildung erzeugt wurde, überträgt 704 an Block 710.
Wenn die Teilabbildung noch nicht erzeugt wurde, überträgt Block 704 an Block 706.
Bei Block 706 wird die beeinflusste Teilabbildung in der
Abbildung 200 (2) durch den Übersetzer 318 erzeugt.
Bei Block 708 bestückt
der Übersetzer 318 die
neu erzeugte Teilabbildung mit Abbildungsdaten, die aus dem Topologieverwalter 310 wiedergewonnen
werden. Als Nächstes
werden bei Block 710 Teilabbildungsveränderungen basierend auf dem
gegenwärtigen
Ereignis, insbesondere dem Objektidentifizierer und der Objektveränderung,
berechnet. Diese Berechnungen von Block 710 werden im Folgenden
Bezug nehmend auf 8 beschrieben. Block 710 überträgt an Block 712,
der den Zähler,
der Objektaufzeichnungen verfolgt, inkrementiert (und bei Block 701 gesetzt).
Block 712 überträgt an Block 714.
Block 714 stellt eine Anfrage bezüglich dessen, ob zu wartende
Objektaufzeichnungen verbleiben. Falls dies der Fall ist, überträgt Block 714 an Block 702.
Falls dies nicht der Fall ist, endet das Flussdiagramm aus 4.
So wurde am Ende des Flussdiagramms in 4 ein Stapel
von Teilabbildungsidentifizierern mit zugeordneten Teilabbildungsveränderungen
aus einem Stapel von Objektidentifizierern mit zugeordneten Objektveränderungen
erzeugt.
-
Bezug
nehmend auf 8 werden relativ zu den Teilabbildungsveränderungsberechnungen
von Block 710 (7) bei Block 804 Daten
bezüglich
eines einzelnen Objekts aus OBJLIST wiedergewonnen. Block 804 überträgt an Block 806,
der bestimmt, ob der Objekttyp ein Netz ist. Falls dies der Fall
ist, überträgt Block 806 an
Block 808 (Flussdiagramm in 9), der
die Teilabbildungsveränderungen
berechnet. Falls dies nicht der Fall ist, überträgt Block 806 an Block 810.
Bei Block 810 wird eine Bestimmung hinsichtlich dessen
durchgeführt,
ob der Objekttyp ein Segment ist. Falls dies der Fall ist, überträgt Block 810 an
den Block 812 (Flussdiagramm aus 10), der
die Segmentveränderungen
an den Teilabbildungen berechnet. Falls dies nicht der Fall ist, überträgt Block 810 an
den Block 814. Bei Block 814 wird eine Bestimmung
hinsichtlich dessen durchgeführt,
ob der Objekttyp ein Knoten ist. Falls dies der Fall ist, überträgt Block 814 an
den Block 816 (Flussdiagramm aus 11), der
die Knotenveränderungen
für die
Teilabbildungen berechnet. Falls dies nicht der Fall ist, überträgt Block 814 an
den Block 818. Bei Block 818 wird eine Bestimmung
hinsichtlich dessen durchgeführt,
ob der Objekttyp eine Schnittstelle ist. Falls dies der Fall ist, überträgt Block 818 an den
Block 820 (Flussdiagramm aus 12),
der die Schnittstellenveränderungen
an der Teilabbildung berechnet.
-
9 zeigt
ein Flussdiagramm der Architektur und Funktionalität eines
bevorzugten Ausführungsbeispiels
zum Implementieren des Netzveränderungsblocks 808 (8).
Dieses Flussdiagramm berechnet Veränderungen an der Zwischennetzteilabbildung 204 (2),
die die Netze anzeigt. Ferner wird angemerkt, dass bei dem bevorzugten
Ausführungsbeispiel
nur eine einzelne Teilabbildung (mehrere Teilabbildungen sind möglich) auf
der Zwischennetzebene vorliegt. Bezug nehmend auf 9 wird bei
Block 902 eine Variable INET gesetzt, um den Inhalt der
Zwischennetzteilabbildung 204 anzunehmen (2).
Der Inhalt umfasst eine Liste von Netzobjekten und Router-Objekten
und eine Liste von Verbindungen zwischen den Netz- und Router-Objekten. Block 902 überträgt an Block 904.
Bei Block 904 wird eine Variable NETOBJ gesetzt, um den
Wert des Objektidentifizierers (OBJID) anzunehmen. Der OBJID wird
aus den OBJINFO wiedergewonnen. Block 904 überträgt an Block 906.
Bei Block 906 wird eine Bestimmung hinsichtlich dessen
durchgeführt,
ob NETOBJ in INET ist, d.h. ob sich das zu verändernde Objekt innerhalb der
Zwischennetzteilabbildung 204 befindet (2).
Falls dies der Fall ist, überträgt Block 906 an
den Block 908, der das Netz, das zu dem NETOBJ gehört, zu einer
Liste SYMCHANGELIST hinzufügt.
Falls dies nicht der Fall ist, überträgt Block 906 an
den Block 910, der das Netz, das zu dem NETOBJ gehört, zu einer
Liste NEWSYMLIST hinzufügt. Die
Listen SYMCHANGELIST und NEWSYMLIST werden letztendlich während der
Stapelübertragung zwischen
denselben durch den Übersetzer 318 an die
GUI 322 weitergeleitet.
-
10 zeigt
ein Flussdiagramm der Architektur und Funktionalität eines
bevorzugten Ausführungsbeispiels
zum Implementieren des Segmentveränderungsblocks 812 (8).
Bei diesem Flussdiagramm werden Segmentveränderungen bestimmt und berechnet.
Bezug nehmend auf 10 setzt Block 1002 eine
Variable INET, um den Inhalt der Zwischennetzteilabbildung 204 (2)
anzunehmen. Der Inhalt umfasst eine Liste von Netz- und Router-Objekten
und eine Liste von Verbindungen zwischen den Netz- und Router-Objekten.
Block 1002 überträgt an Block 1004.
Bei Block 1004 wird eine Variable SEGOBJ gesetzt, um den
gegenwärtigen
Objektidentifizierer (OBJID) anzunehmen, der aus den Objektinformationen
(OBJINFO) wiedergewonnen wird. Block 1004 überträgt an Block 1006. Bei
Block 1006 wird eine Variable NETOBJ auf das identifizierte
Netz (NETID) gesetzt, das aus den OBJINFO bestimmt wird. Block 1006 überträgt an Block 1008.
Bei Block 1008 wird eine Bestimmung hinsichtlich dessen
durchgeführt,
ob NETOBJ in INET ist, d.h. ob das gegenwärtige Netz innerhalb der gegenwärtigen Zwischennetzteilabbildung 204 (2)
ist. Falls dies nicht der Fall ist, endet das Flussdiagramm aus 10.
Falls dies der Fall ist, überträgt Block 1008 an
Block 1010. Bei Block 1010 wird eine Variable
NET gesetzt, um den Inhalt der Netzteilabbildung 206 (2),
die zu NETOBJ gehört,
anzunehmen. Der Inhalt umfasst z.B., jedoch nicht ausschließlich, eine
Liste von Segment- und Verbindungselementobjekten und Verbindungen
zwischen einem Segment und Verbindungselementen. Block 1010 überträgt an Block 1012.
Bei Block 1012 wird eine Bestimmung hinsichtlich dessen
durchgeführt,
ob SEGOBJ in dem NET ist (d.h. ist das Segment in der Netzteilabbildung?).
Falls dies der Fall ist, überträgt Block 1012 an
den Block 1014, der das Segment, das zu SEGOBJ gehört, zu der
SYMNCHANGELIST hinzufügt. Andernfalls überträgt Block 1012,
falls dies nicht der Fall ist, an den Block 1016, der das
Segment, das zu SEGOBJ gehört,
zu NEWSYMLIST hinzufügt. Schließlich endet
nach den Blöcken 1014, 1016 das Flussdiagramm
aus 10 und eine Operation wird zurück an 8 übertragen.
-
11 zeigt
ein Flussdiagramm der Architektur und Funktionalität eines
bevorzugten Ausführungsbeispiels
zum Implementieren des Knotenveränderungsblocks 816 (8).
In dem Flussdiagramm aus 11 werden
Knotenveränderungen durch
den Übersetzer 318 bestimmt
und berechnet. Wie in 11 gezeigt ist, setzt Block 1102 eine
Variable INET, um den Inhalt der Zwischennetzteilabbildung 204 (2)
anzunehmen. Der Inhalt umfasst eine Liste von Netz- und Router-Objekten und eine Liste
von Verbindungen zwischen den Netz- und Router-Objekten. Block 1102 überträgt an Block 1104.
Bei Block 1104 wird eine Variable NODEOBJ gesetzt, um den
Objektidentifizierer (OBJID), der in den Objektinformationen (OBJINFO)
enthalten ist, anzunehmen. Block 1104 überträgt an Block 1106. Bei
Block 1106 wird eine Variable SEGOBJ gesetzt, um den Segmentidentifizierer
(SEGID), der in den OBJINFO enthalten ist, anzunehmen. Block 1106 überträgt an Block 1108.
Bei Block 1108 wird eine Variable NETOBJ gesetzt, um den
Netzidentifizierer (NETID), der in den OBJINFO enthalten ist, anzunehmen.
Block 1108 überträgt an Block 1110.
Bei Block 1110 wird eine Bestimmung hinsichtlich dessen durchgeführt, ob
NETOBJ in INET ist (d.h. ist das Netz in der Zwischennetzteilabbildung?).
Falls dies nicht der Fall ist, endet das Flussdiagramm. Falls dies
der Fall ist, überträgt Block 1110 an
den Block 1112. Bei Block 1112 wird die Variable
NET gesetzt, um den Inhalt der Netzteilabbildung 206 (2),
die zu NETOBJ gehört,
anzunehmen. Der Inhalt umfasst eine Liste von Segmenten, Verbindungselementen und
Verbindungen zwischen Segmenten und Verbindungselementen. Block 1112 überträgt an Block 1114.
Bei Block 1114 wird eine Bestimmung hinsichtlich dessen
durchgeführt,
ob SEGOBJ in NET ist. Falls dies nicht der Fall ist, endet das Flussdiagramm,
falls dies der Fall ist, überträgt Block 1114 an den
Block 1116. Bei Block 1116 wird die Variable SEG
gesetzt, um den Inhalt der Segmentteilabbildung 208 (2),
die zu SEGOBJ gehört,
anzunehmen. Der Inhalt umfasst z.B., jedoch nicht ausschließlich, eine
Liste von Knoten und Verbindungen zwischen den Knoten und dem Netz.
Block 1116 überträgt an Block 1118.
Bei Block 1118 wird eine Bestimmung hinsichtlich dessen
durchgeführt,
ob NODEOBJ in SEG ist, d.h. ob das Knotenobjekt in dem gegenwärtigen zur
Debatte stehenden Segment ist. Falls dies der Fall ist, überträgt Block 1118 an
den Block 1120, der den Knoten, der zu NODEOBJ gehört, zu SYMCHANGELIST
hinzufügt,
und dann endet das Flussdiagramm. Andernfalls überträgt Block 1118, falls
dies nicht der Fall ist, an den Block 1122, der den Knoten,
der zu NODEOBJ gehört,
zu NEWSYMLIST hinzufügt,
und dann endet das Flussdiagramm.
-
Die 12A bis 12C zeigen
kollektiv ein Flussdiagramm der Architektur und Funktionalität des bevorzugten
Ausführungsbeispiels
zum Implementieren des Schnittstellenveränderungsblocks 820 (8).
Bei diesem Flussdiagramm werden Schnittstellenveränderungen
in den Teilabbildungen durch den Obersetzer 318 (3)
bestimmt und berechnet. Bezug nehmend auf 12A setzt
ein Block 1202 eine Variable INET, um den Inhalt der Zwischennetzteilabbildung 204 (2),
die gegenwärtig zur
Debatte steht, anzunehmen. Der Inhalt umfasst eine Liste von Netzen,
Routern und Verbindungsobjekten. Block 1202 überträgt an Block 1204.
Bei Block 1204 wird eine Variable IFOBJ gesetzt, um die
OBJID, die in den OBJINFO enthalten ist, anzunehmen. Block 1204 überträgt an den
Block 1206. Bei Block 1206 wird die Variable NODEOBJ
gesetzt, um die NODEID, die in den OBJINFO enthalten ist, anzunehmen.
Block 1206 überträgt an Block 1208.
Bei Block 1208 wird die Variable SEGOBJ gesetzt, um die
SEGID, die in den OBJINFO enthalten ist, anzunehmen. Block 1208 überträgt an Block 1210.
Bei Block 1210 wird eine Variable NETOBJ gesetzt, um die
NETID, die in den OBJINFO enthalten ist, anzunehmen. Nach Block 1210 ist
der Initialisierungsprozess abgeschlossen und Block 1210 überträgt an Block 1212.
-
Bei
Block 1212 wird eine Bestimmung hinsichtlich dessen durchgeführt, ob
sich NETOBJ in INET befindet, d.h. ob das Netzobjekt in der gegenwärtigen Zwischennetzteilabbildung 204 (2)
ist. Falls dies nicht der Fall ist, endet das Flussdiagramm, wie
in 12A gezeigt ist. Falls dies der Fall ist, überträgt Block 1212 an
Block 1214. Bei Block 1214 wird eine Bestimmung
hinsichtlich dessen durchgeführt,
ob sich NODEOBJ in INET befindet, d.h. ob das Knotenobjekt in der
Zwischennetzteilabbildung 204 (2) ist.
Falls dies nicht der Fall ist, überträgt Block 1214 an
den Block 1222. Falls dies der Fall ist, überträgt Block 1214 an
den Block 1216.
-
Bei
Block 1216 wird eine Bestimmung hinsichtlich dessen durchgeführt, ob
sich IFOBJ in INET befindet. Falls dies der Fall ist, überträgt Block 1216 an
den Block 1218, der die Schnittstelle, die zu IFOBJ gehört, zu der
SYMCHANGELIST hinzufügt. Falls
dies nicht der Fall ist, überträgt Block 1216 an Block 1220,
der die Schnittstelle, die zu IFOBJ gehört (zwischen Knotenobjekt und
Netzobjekt), zu NEWSYMLIST hinzufügt.
-
Bei
Block 1222 wird die Variable NET gesetzt, um den Inhalt
der Netzteilabbildung 206 (2) anzunehmen.
Der Inhalt umfasst z.B., jedoch nicht ausschließlich, Segmente, Verbindungselemente,
Verbindungen, usw. Block 1222 überträgt an Block 1224 aus 12B.
-
Bei
Block 1224 wird eine Bestimmung hinsichtlich dessen durchgeführt, ob
sich SEGOBJ in NET befindet, d.h. ob sich das Segmentobjekt in der Netzteilabbildung 206 (2)
befindet. Falls dies nicht der Fall ist, endet das Flussdiagramm.
Falls dies der Fall ist, überträgt Block 1224 an
den Block 1226.
-
Bei
Block 1226 wird eine Bestimmung hinsichtlich dessen durchgeführt, ob
sich NODEOBJ in NET befindet, d.h. ob das Knotenobjekt in der Netzteilabbildung 206 (2)
ist. Falls dies nicht der Fall ist, überträgt das Flussdiagramm an Block 1234. Falls
dies der Fall ist, überträgt Block 1226 an
Block 1228.
-
Bei
Block 1228 wird eine Bestimmung hinsichtlich dessen durchgeführt, ob
sich IFOBJ in NET befindet, d.h. ob das Schnittstellenobjekt in
der Netzteilabbildung 206 (2) ist.
Falls dies der Fall ist, überträgt Block 1228 an
den Block 1230, der die Schnittstelle, die zu IFOBJ gehört, zu SYMCHANGELIST
hinzufügt.
Falls dies nicht der Fall ist, überträgt Block 1228 an
den Block 1232, der die Schnittstelle, die zu IFOBJ gehört (was
zwischen einem Knotenobjekt und einem Segmentobjekt ist), zu NEWSYMLIST hinzufügt. Die
Blöcke 1230, 1232 übertragen
an den Block 1234.
-
Bei
Block 1234 wird die Variable SEG gesetzt, um den Inhalt
der Segmentteilabbildung 208 (2) anzunehmen.
Der Inhalt umfasst z.B., jedoch nicht ausschließlich, Knoten und Verbindungen
zu einem Netz (Schnittstellen). Block 1234 überträgt an Block 1236.
-
Bei
Block 1236 wird eine Bestimmung hinsichtlich dessen durchgeführt, ob
NODEOBJ in SEG ist, d.h. ob das Knotenobjekt in der Segmentteilabbildung 208 (2)
ist. Falls dies nicht der Fall ist, überträgt das Flussdiagramm an den Block 1246 aus 12B. Falls dies der Fall ist, überträgt Block 1236 an den
Block 1238.
-
Bei
Block 1238 wird eine Bestimmung hinsichtlich dessen durchgeführt, ob
sich IFOBJ in SEG befindet, d.h. ob das Schnittstellenobjekt in
der Segmentteilabbildung 208 (2) ist.
Falls dies der Fall ist, überträgt Block 1238 an
den Block 1242, der die Schnittstelle, die zu IFOBJ gehört, zu SYMCHANGELIST
hinzufügt.
Falls dies nicht der Fall ist, überträgt Block 1238 an
den Block 1244, der die Schnittstelle, die zu IFOBJ gehört, zu NEWSYMLIST
hinzufügt. Die
Blöcke 1242, 1244 übertragen
an den Block 1246 aus 12C.
-
Bei
Block 1246 wird die Variable NODE gesetzt, um den Inhalt
der Knotenteilabbildung 210 (2) anzunehmen.
Der Inhalt umfasst Schnittstellenobjekte. Block 1246 überträgt an Block 1248.
-
Bei
Block 1248 wird eine Bestimmung hinsichtlich dessen durchgeführt, ob
IFOBJ in NODE ist, d.h. ob das Schnittstellenobjekt in der Knotenteilabbildung 210 (2)
ist. Falls dies der Fall ist, wird die Schnittstelle, die zu IFOBJ
gehört,
zu SYMCHANGELIST hinzugefügt,
wie bei Block 1250 angezeigt ist. Falls dies nicht der
Fall ist, überträgt Block 1248 an den
Block 1252, der die Schnittstelle, die zu IFOBJ gehört, zu NEWSYMLIST
hinzufügt.
Schließlich
endet nach den Blöcken 1250, 1252 das
Flussdiagramm, das kollektiv in den 12A bis 12C enthalten ist.
-
13 zeigt
ein Flussdiagramm der Architektur und Funktionalität eines
bevorzugten Ausführungsbeispiels
zum Implementieren des Abbildung-Aktualisieren-Blocks 408 (4).
In diesem Flussdiagramm wird eine Stapelübertragung von Veränderungen
durch den Übersetzer 318 an
die GUI 322 gesendet. Bezug nehmend auf 13 überträgt bei Block 1302 der Übersetzer 318 die
NEWSYMLIST an die GUI 322 und bei Block 1304 überträgt der Übersetzer 318 die SYMCHANGELIST
an die GUI 322. Nach Block 1304 endet das Flussdiagramm
aus 13 und die Operation geht zurück zu Block 410 (4).
-
14 stellt
ein Teilabbildungsmodul auf Abruf, das in der GUI 322 (3)
enthalten ist, dar. Dieses Flussdiagramm implementiert die Benutzerschnittstelle
zu den verschiedenen Teilabbildungen der Abbildung 200 (2).
Bezug nehmend auf 14 überwacht bei einem Block 1402 die
GUI 322 die Eingabevorrichtungen, die mit der Verwaltungsstation 100 (1)
verbunden sind, z.B. die Tastatur 106. Wenn der Benutzer
der Verwaltungsstation 100 die Verwaltungsstation 100 über die
Tastatur 106 oder über
eine bestimmte andere Eingabevorrichtung auffordert, ein Objekt
auf der Anzeige 108 zu explodieren, überträgt Block 1402 aus 14 an
den Block 1404, um die Benutzeranforderung zu verarbeiten.
Bei Block 1404 wird eine Bestimmung hinsichtlich dessen
durchgeführt,
ob die Tochter-Teilabbildung in der Abbildung (2)
enthalten ist. Falls dies der Fall ist, überträgt Block 1404 an den
Block 1408. Falls dies nicht der Fall ist, überträgt Block 1404 an
den Block 1406, der die Teilabbildung erzeugt und bestückt. Die
GUI 322 bestückt
die Teilabbildung durch ein Auffordern des Übersetzers 318, eine
Teilabbildung basierend auf Topologiedaten, die von dem Topologieverwalter 310 wiedergewonnen werden,
zu erzeugen und zu bestücken.
Ferner überträgt Block 1406 an
Block 1408, der die Tochter-Teilabbildung öffnet und
die Tochter-Teilabbildung auf der Anzeige 108 für den Benutzer
anzeigt.