-
Die Erfindung betrifft ein Verfahren
und eine Vorrichtung zur Bestimmung einer Routingtabelle, in einem
Kommunikationsnetz mit über
Brücken
verbundenen Bussen. Sie betrifft unter anderem IEEE 1394 Multibus-Netze
und Heim-Kommunikationsnetze.
-
Die IEEE 1394-Norm definiert einen
seriellen Bus mit hoher Leistungsfähigkeit. Es laufen derzeit
Bemühungen,
Brücken
zur Verbindung mehrerer derartiger Busse in einem Netzwerk zu definieren.
Das neuste Dokument, das durch die entsprechende Arbeitsgruppe herausgegeben
wurde, ist die "IEEE
P1394.1 Draft Standard for High Performance Serial Bridges" vom 7. Februar 1999.
-
Entsprechend dem oben genannten Entwurf
verbindet eine Brücke
nur zwei Busse. Dennoch können mehrere
Wege zwischen zwei Bussen bestehen. Wenn eine Vorrichtung auf einem
ersten Bus wünscht,
eine Nachricht zu einer Vorrichtung auf einem zweiten Bus irgendwo
in dem Netz zu senden, muss eine mit dem ersten Bus verbundene Brücke entscheiden,
ob es die auf dem ersten Bus umlaufende Nachricht weitergibt oder
nicht. Eine Brücke
kann abhängig
von verschiedenen Kriterien entscheiden, eine Nachricht weiterzugeben
oder nicht.
-
Das Dokument "LAN interconnection: A transport shortest-path
approach" von Tsung-Yuan
Tai und Mario Gerla, Proceedings of the International Conference
on Communication, US, New York 1991, Seiten 1666–1670 XP000277596 ISBN 0-7802-0006-8 beschreibt
ein Netz mit Routern, die weiterleitende Datenbanken aufgrund von
periodisch ausgetauschten Daten aufbauen.
-
Die vorliegende Erfindung schlägt ein Verfahren
zur Herstellung von Routingtabellen (oder Leitwegtabellen) bei jeder
Brücke
vor, damit die Brücken
entscheiden können,
eine Nachricht von Bus zu Bus weiterzuleiten oder nicht.
-
Gegenstand der Erfindung ist ein
Verfahren zur Bestimmung einer Routingtabelle in einem Kommunikationsnetz
mit über
Brücken
verbundenen Bussen, wobei jede Brücke zwei Begleitportale enthält und ein
erstes Portal mit einem ersten Bus und ein zweites Portal mit einem
zweiten Bus verbunden ist und jeder Bus durch einen einzigen Busidentifizierer
identifiziert wird, jedes Portal durch einen einzigen Portalidentifizierer identifiziert
wird, mit folgenden Schritten:
- (a) Übertragung
von Routingtabellen-Daten, die durch das bestimmte Portal gespeichert
sind, durch eines der bestimmten Portale zu den bestimmten Begleitportalen
und Empfang von Routingtabellen-Daten von ihrem Begleitportal durch
das bestimmte Portal,
- (b) Verknüpfung
der empfangenen Routingtabellen-Daten mit dem Inhalt der zu dem
bestimmten Portal gehörenden
Routingtabelle,
- (c) Übertragung
der zu dem bestimmten Portal gehörenden
Routingtabellen-Daten auf dem lokalen Bus des Portals,
- (d) Empfang von Routingtabellen-Daten, die über andere Portale auf dem
lokalen Bus gesendet werden, und Verknüpfung der empfangenen Routingtabellen-Daten
mit dem Inhalt der zu dem Portal gehörenden Routingtabelle,
- (e) Wiederholung der obigen Schritte durch das bestimmte Portal,
bis alle Busse in dem Netzwerk betreffenden Routingdaten empfangen
worden sind.
-
Einer der Vorteile des erfindungsgemäßen Verfahrens
besteht darin, dass die Routingtabelle symmetrisch ist, d. h. dass
derselbe Weg dafür
benutzt wird, um von einem Gerät
(oder Vorrichtung) A zu einem Gerät B oder von einem Gerät B zu einem
Gerät A
zu gehen.
-
Gemäß einer bevorzugten Ausführungsform
der Erfindung enthalten die Routingtabellen-Daten, die durch das
bestimmte Portal während
der ersten Iteration des Schritts (a) übertragen werden, den Identifizierer des
bestimmten Portals und den Identifizierer des lokalen Bus des Portals,
und die durch das bestimmte Portal von ihrem Begleitportal während der
ersten Iteration des Schritts (a) empfangenen Routingtabellen-Daten
enthalten den Identifizierer des Begleitportals und den Identifizierer
des lokalen Bus des Begleitportals.
-
Gemäß einer bevorzugten Ausführungsform
der Erfindung enthalten die durch das bestimmte Portal übertragenen
bzw. empfangenen Routingtabellen-Daten den be stimmten Identifizierer
des Portals bzw. den Identifizierer des Begleitportals des bestimmten
Portals.
-
Gemäß einer bevorzugten Ausführungsform
der Erfindung enthält
die Routingtabelle eines Portals die Identifizierer von entfernten
Bussen und für
jeden entfernten Bus, wobei der Identifizierer des lokalen Portals zu
dem entfernten Bus anfänglich
den Identifizierer des entfernten Bus übertragen hat, die Tiefe des
entfernten Bus verglichen mit dem lokalen Bus zu dem bestimmten
Portal und der Identifizierer des lokalen Portals die Sendung der
Routingtabellen-Daten mit dem Identifizierer des entfernten Bus
auf dem lokalen Bus enthalten.
-
Gemäß einer anderen Ausführungsform
der Erfindung werden die Routingtabellen-Daten durch ein bestimmtes Portal übertragen
oder gesendet, das die gesamte Routingtabelle enthält.
-
Gemäß der obigen abgewandelten
Ausführungsform
enthält
das bestimmte Portal die Iteration der Schritte (a) bis (e), wenn
die von ihrem Begleitportal und den lokalen Portalen empfangenen
Routingtabellen nur Daten enthalten, die mit der Routingtabelle
des bestimmten Portals redundant sind.
-
Gemäß einer bevorzugten Ausführungsform
der Erfindung enthält
die Routingtabelle, die durch ein bestimmtes Portal übertragen
oder gesendet wurde, nur den Teil der Routingtabelle, der nicht
während
eines vorangehenden Schritts durch das bestimmte Portal übertragen
oder gesendet wurde.
-
Gemäß einer bevorzugten Ausführungsform
enthält
das bestimmte Portal die Iteration der Schritte (a) bis (e), wenn
es während
der vorangehenden Iteration keine Routingdaten empfangen hat.
-
Gemäß einer bevorzugten Ausführungsform
enthalten die Verknüpfungsschritte
die Wahl eines einzigen Wegs von dem lokalen Bus zu dem bestimmten
Portal zu einem entfernten Bus und die Beseitigung der nicht-gewählten Wege
aus der Routingtabelle des bestimmten Portals.
-
Gemäß einer besonderen Ausführungsform
ist der zu einem bestimmten entfernten Bus gewählte Weg abhängig von
den Portal-Identifizierern, die in der Routingtabelle für den bestimmten
entfernten Bus gespeichert sind.
-
Gemäß einer abgewandelten Ausführungsform
ist der für
einen bestimmten entfernten Bus gewählte Bus gewählte Weg
abhängig
von der Bandbreite der Portale auf dem Weg.
-
Gemäß einer bevorzugten Ausführungsform
erfolgt die Auswahl unter den kürzesten
Wegen zu dem entfernten Bus, und Wege mit größerer Länge aus der Routingtabelle
werden entfernt.
-
Gemäß einer bevorzugten Ausführungsform
wird eine Routingtabelle für
den Zweck des Routing von Nachrichten vereinfacht, und die Liste
der Identifizierer des entfernten Bus enthält für jeden entfernten Bus, ob das
bestimmte Portal eine Nachricht von dem lokalen Bus zu dem bestimmten
Portal zu seinem Begleitportal weiterleiten soll.
-
Ein anderer Gegenstand der Erfindung
ist ein Portalvorrichtung zum Anschluss an einen ersten Kommunikationsbus
und zur Verknüpfung
mit einer Begleitportal-Vorrichtung
zur Verbindung mit einem zweiten Kommunikationsbus, gekennzeichnet
durch:
- – eine
Busschnittstelle für
die Verbindung mit dem ersten Kommunikationsbus,
- – eine
Schnittstelle für
ein Kommunikationsmedium zur Verbindung mit der Begleitportal-Vorrichtung,
- – ein
Speicher zur Speicherung der Routingtabellen-Daten,
- – Mittel
zur Übertragung
der in dem Speicher gespeicherten Routingtabellen-Daten zu dem Begleitportal zur
Sendung von in dem Speicher gespeicherten Routingtabellen-Daten
auf dem ersten Kommunikationsbus zur Steuerung der Busschnittstelle
und der Kommunikationsmedium-Schnittstelle zum Empfang oder zur Übertragung
von Routingtabellen-Daten und zur Verkettung von empfangenen Routingtabellen-Daten mit
in dem Speicher gespeicherten Daten während aufeinander folgender
Empfangs- und Übertragungs-Zyklen
für die
Routingtabellen-Daten für
die entfernten Kommunikationsbusse.
-
Weitere Merkmale und Vorteile der
Erfindung ergeben sich aus der Beschreibung einer bevorzugten, nicht-einschränkenden
Ausführungsform.
Diese Ausführungsform
wird anhand der beigefügten
Zeichnung beschrieben:
-
1 zeigt
ein schematisches Diagramm eines der beiden Portale einer Brücke,
-
2 zeigt
ein Diagramm eines Netzes mit zwei durch eine Brücke verbundenen Bussen,
-
3 zeigt
ein Diagramm eines Netzes mit zwei durch drei Brücken verbundenen Bussen,
-
4 zeigt
ein Diagramm eines Abtastnetzes während eines ersten Schritts
des Aufbauverfahrens einer Routingtabelle gemäß der bevorzugten Ausführungsform
der Erfindung,
-
5 zeigt
ein Diagramm des Netzes von 4 während einer
zweiten Iteration des Aufbauverfahrens für die Routingtabelle,
-
6 zeigt
ein Diagramm des Netzes der 4 und 5 während einer dritten Iteration
des Aufbauverfahrens der Routingtabelle.
-
Die vorliegende Ausführungsform
betrifft ein Netz mit über
Brücken
verbunden seriellen Bussen IEEE 1394. Es ist klar, dass die Erfindung
nicht auf ein derartiges spezifisches Gebiet beschränkt ist
und dass sie durch einen Fachmann auf diesem Gebiet auf andere Gebiete
angewendet werden kann.
-
Die vorliegende Ausführungsform
ist auch gedacht für
die asynchrone Übertragung
einer Nachricht, kann jedoch auf andere Übertragungstypen ausgedehnt
werden.
-
Für
detaillierte Informationen über
die Spezifikationen eines Bus IEEE 1394 wird verwiesen auf das IEEE
Dokument "P1394
Standard for a High Performance Serial Bus".
-
1 ist
ein Diagramm eines der beiden Portale, die eine Brücke zwischen
den beiden Bussen IEEE 1394 bilden. Das andere Portal enthält ähnliche
Elemente.
-
Das Portal enthält eine 1394 Busschnittstelle 101,
die eine räumliche
Schnittstellenschaltung ("PHY") und eine Verknüpfungsschaltung
("LINK") enthält. Das
Portal enthält
außerdem
eine Schaltstrukturschnittstelle 102.
-
Die Schaltstruktur ist das Kommunikationsmedium,
das die beiden Portale der Brücke
zur Kommunikation miteinander benutzt. Gemäß der vorliegenden Ausführungsform
ist die Schaltstruktur eine drahtlose Hochfrequenz-Strecke. Um eine
bidirektionale Kommunikation über
dieses Medium zu ermöglichen,
enthält die
Schnittstelle 102 einen Modulator/Demodulator 105,
einen Frequenz-Aufwärts/Abwärts-Converter 106 mit entsprechenden
Oszillatoren und eine Antenne 107. Natürlich können andere Typen einer Schaltstruktur
benutzt werden: Koaxialkabel, optische Glasfaser, Infrarotübertragung
und andere. Ein bestimmtes Netz kann Brücken enthalten, von denen jede
einen anderen Typ einer Schaltstruktur durchführt.
-
Das Portal enthält außerdem einen Speicher 104 mit
einem Bereich, der für
die Routingtabellen reserviert ist, sowie vier Bereichen zur Speicherung
von ankommenden oder abgehenden Daten, entweder für eine asynchrone
oder eine isochrone Übertragung.
-
Das Portal enthält außerdem einen Mikroprozessor 103 oder
eine äquivalente
Einheit zur Verwaltung der verschiedenen Elemente des Portals. Der
Mikroprozessor führt
außerdem
ein in dem Speicher 104 gespeichertes Programm zur Bestimmung
der Routingtabellen durch.
-
2 ist
ein Diagramm eines einfachen Netzes, das zur Erläuterung der Kommunikation zwischen den
Bussen dient. Das Netz enthält
zwei Busse B200 und B201, verbunden über eine Brücke (P202P203) mit Portalen
P202 und P203. Da die Portale P202 und P203 zu derselben Brücke gehören, werden
sie auch als Begleitportale (companion portals) bezeichnet. Ein
Knoten N201 ist mit dem Bus B200 verbunden, während ein Knoten N202 mit dem
Bus B201 verbunden ist.
-
Der Bus B200 wird als "lokal" zu dem Knoten N201
bezeichnet. Er ist für
den Knoten N202 ein "entfernter" Bus.
-
Jeder Bus wird nur innerhalb des
Netzes über
einen Busidentifizierer (bus_ID) identifiziert. Jeder mit einem
Bus verbundene Knoten wird nur auf diesem Bus durch einen Knotenidentifizierer
("GUID") identifiziert. Portale
sind ebenfalls Knoten und haben daher einen einzigen Identifizierer.
Die beiden Portale von 2 haben
jeweils GUIDs von "2" und "3". Aus Gründen der Zweckmäßigkeit
ist jedes Portal mit "PXYY" bezeichnet, wobei "X" die Figur identifiziert und "YY" der GUID-Wert des
Portals ist. Dieselben Portale in den verschiedenen Figuren sind
jeweils mit denselben Bezugszeichen versehen. Das gilt insbesondere
für die 4 bis 6, die dasselbe Netz bei verschiedenen
Stufen der den Vorgang bestimmenden Routingtabelle darstellen.
-
Eine einzige Adresse eines Knotens
in dem Netz ergibt sich durch die Kombination des Busidentifizierers
mit dem Knoten-Identifizierer. Wenn eine Nachricht von einem Knoten
zu einem anderen gesendet wird, bezeichnet die Sendung die einzige
Bestimmungsadresse des Bestimmungs-Knotens in ihrem Nachricht-Header.
-
Die Tiefe (depth) eines ersten Bus,
vergleichen mit einem zweiten Bus, ist definiert als die kleinste
Zahl von Brücken
(d. h. die Brücken
auf dem kürzesten
Weg), die eine Nachricht kreuzen muss, um von dem ersten Bus zu
dem zweiten Bus zu gelangen. Somit ist die Tiefe des Busses B200,
verglichen mit dem Bus B201, gleich 1.
-
Auf jedem Bus wird eines der mit
diesem Bus verbundenen Portale als Alpha-Portal gewählt. Dieses Alpha-Portal
hat bestimmte, busbezogene Verwaltungsaufgaben auf dem Bus. Für den Zweck
der vorliegenden Ausführungsform
prüft das
Prime-Portal, ob ein Knoten mit dem Netz verbunden oder von dem
Netz getrennt ist. In einem derartigen Fall wird das Netz neu initialisiert.
Das Prime-Portal sendet eine Rundfunknachricht zu allen Knoten und
insbesondere zu den Portalen, um sie über die Neu-Initialisierung
des Netzes zu informieren. Nach dem Empfang dieser Nachricht bestimmt
jedes Portal seine neue Routingtabelle, wie im folgenden beschrieben
wird.
-
Wenngleich das Verfahren der Bestimmung
des Prime-Portals außerhalb
des Schutzumfangs dieser Erfindung liegt, kann es z. B. bestimmt
werden durch Vergleich der 64-Bit EUIs (Extended Unique Identifier) der
verschiedenen Alpha-Portale.
-
Das Alpha-Portal mit der größten Rückwärtsfolge
(reverse order) EUI wird z. B. als das Prime-Portal gewählt.
-
Für
ein Portal bestehen die Routing-Informationen aus Informationen,
die es dem Portal ermöglichen, nach
dem Empfang einer Nachricht mit einem Bestimmungsbusidentifizierer
zu ermitteln, ob es die Nachricht zu seinem Begleitportal weiterleiten
muss oder nicht.
-
Die Bestimmung der Routingtabelle
ist ein iterativer Vorgang. Während
des erstens Schritts des Aufbauvorgangs der Routingtabelle bestimmt
ein Portal die Routing-Informationen
zu den Bussen mit der Tiefe 1, verglichen mit dem Bus des Portals.
Während
des zweiten Schritts bestimmt ein Portal die Routing-Informationen
zu den Bussen mit der Tiefe 2 undsoweiter.
-
Der Vorgang kann folgendermaßen zusammengefasst
werden:
-
(a) Schritt 1
-
Während
des ersten Schritts sendet jedes Portal seinen Knotenidentifizierer
und den lokalen Busidentifizierer zu seinem Begleitportal. Jedes
Begleitportal sendet diese beiden Identifizierer zu seinem lokalen
Bus, um sich mit allen anderen Portalen auf seinem lokalen Bus an
diesen Informationen zu beteiligen. Jedes Portal empfängt auf
seinem Bus das Knotenpaar und die Bus-Identifizierer von den Begleitportalen
aller Portale auf dem lokalen Bus. Jedes Portal speichert die empfangenen
Informationen zusammen mit dem Paar von Identifizierern von ihren
eigenen Begleitportalen. Wenn die Sendung abgeschlossen ist, kennt
jedes Portal die Identifizierer aller Busse mit der Tiefe 1, verglichen
mit ihrem lokalen Bus, sowie die GUID-Identifizierer der mit diesen Bussen
verbundenen Portale und einen Teil der mit dem lokalen Bus verbundenen
Brücken.
Jedes Portal kennt außerdem
die GUID-Identifizierer
der mit dem lokalen Bus verbundenen Portale, da die durch die Portale
des lokalen Bus gesendeten Rundfunknachrichten die Nachricht-Quellenadresse
enthalten, d. h. den Wert des Portals GUID.
-
Jedes Portal ermittelt dann, ob ein
bestimmter entfernter Bus mehrmals in den gespeicherten Informationen
auftritt. Wenn das der Fall ist, bedeutet das, dass es redundante
Wege zu diesem entfernten Bus gibt. Diese Redundanz wird dadurch
beseitigt, dass nur eine der zu dem entfernten Bus führenden
Brücken
gewählt wird.
Wenn Nachrichten von dem lokalen Bus zu dem entfernten Bus weiterzuleiten
sind, dann wird nur die gewählte
Brücke
benutzt, d. h. nur das Portal der gewählten Brücke überträgt die Nachricht zu ihrem Begleitportal.
Alle anderen, mit der gewählten
Brücke
redundanten Brücken
werden somit für
diesen besonderen Weg "gesperrt" oder inaktiviert.
-
Gemäß der vorliegenden Ausführungsform
ist die gewählte
Brücke
diejenige, die das Portal mit dem höchsten GUID-Identifizierer
verarbeitet. Alle anderen Portale eines lokalen Bus inaktivieren
sich selbst für
die Übertragung
von Nachrichten zu dem entfernten Bus für diesen Weg, wenn diese Portale
ermittelt haben, dass sie oder ihr Begleitportal keinen Teil der
gewählten
Brücke
bilden.
-
3 ist
ein Diagramm eines Netzes mit zwei Bussen B300 und B301, die über drei
redundante Brücken
(P303P302), (P301 P305) und (P304P306) miteinander verbunden sind.
Gemäß dem oben
definierten Kriterium ist die Brücke,
die für
die Weiterleitung der Nachrichten von dem Bus B300 zu dem Bus B301
und umgekehrt gewählt
wird, die Brücke
(P304P306), da "6" der größte GUID
ist.
-
Gemäß einer Variante der Ausführungsform
ist die gewählte
Brücke
die Brücke
mit der größten Bandbreite
für die
Datenübertragung.
Damit die Portale aufgrund dieses Kriteriums Entscheidungen treffen
können, müssen die
Informationen für
die Bandbreite einer Brücke
zusammen mit den Bus- und Portal-Identifizierern gesendet werden,
wenn diese Informationen nicht bereits durch Portale über andere
Mittel bekannt sind, wie eine vorprogrammierte Liste. Bei der bevorzugten
Ausführungsform
inaktivieren alle Portale des lokalen Bus, die zu den redundanten
Brücken
gehören
und die nicht die größte Bandbreite
zulassen, sich selbst für
die Übertragung
von Nachrichten zu dem entfernten Bus. Wenn mehrere redundante Brücken dieselbe
Bandbreite aufweisen sollten, dient das für die bevorzugte Ausführungsform
beschriebene Kriterium zur Wahl einer einzigen Brücke.
-
Es ist klar, dass andere Wahlkriterien
benutzt werden können,
um eine einzige Brücke
unter einer Anzahl von redundanten Brücken auszuwählen.
-
Am Ende von Schritt 1 weiß jedes
Portal, ob es Nachrichten weiterleiten muss, die auf seinem lokalen Bus
umlaufen und zu dem Bus der Tiefe 1 adressiert sind, der
mit dem Begleitportal verbunden ist, oder nicht. Bei diesem Wert
wurden die redundanten Brücken
zu den Bussen der Tiefe 1, verglichen mit dem lokalen Bus, inaktiviert.
-
Die durch jedes Portal gehaltenen
Informationen haben das folgende Format:
-
-
Diese Tabelle ist die Routingtabelle,
zu der während
eines darauffolgenden Schritts des vorliegenden Vorgangs zusätzliche
Informationen hinzugefügt
werden. Eine vereinfachte Version dieser Tabelle wird später beschrieben.
-
Wie bereits erwähnt, werden die in der Tabelle
gespeicherten GUIDs des lokalen Portals aus den durch die lokalen
Portale gesendeten Nachrichten gewonnen.
-
(b) Schritt 2
-
Nach dem Ende Schritts 1 sendet jedes
Portal einer Brücke,
die nicht inaktiviert wurde, den Inhalt ihrer Routingtabelle zu
seinem Begleitportal. Das Begleitportal sendet den Inhalt der Tabelle
auf seinem lokalen Bus. Alle Portale empfangen und speichern die
auf ihrem lokalen Bus übertragenen
Tabellen und fügen
den Inhalt dieser Tabellen ihrer eigenen Routingtabelle hinzu. Sie
fügen außerdem die
von ihrem jeweiligen Vergleichsportal empfangene Tabelle hinzu.
Wie im Schritt 1, enthält
jedes mit einem bestimmten Bus verbundene Portal bei dieser Stufe
dieselben Informationen.
-
Vorzugweise überträgt jedes lokale Portal auf
seinem lokalen Bus nur den Teil der Tabelle ihrer Begleittabelle,
die nicht mit den in einem früheren
Schritt übertragenen
Informationen redundant ist, d. h. Informationen, die noch nicht
in der eigenen Tabelle der lokalen Portale enthalten sind. Das lokale
Portal vergleicht einfach die von ihrem Begleitportal empfangene
Tabelle mit dem Inhalt ihrer eigenen Tabelle, um zu ermitteln, ob
neue Informationen gespeichert und übertragen werden müssen oder
nicht.
-
Sobald die Tabellen verkettet worden
sind, prüft
jedes Portal auf redundante Wege zu Bussen mit der Tiefe 2, verglichen
mit dem lokalen Bus, durch Anwendung eines Kriteriums ähnlich zu
dem in Schritt 1 angewendeten Kriterium, um einen einzigen Weg unter äquivalenten
Wegen zu wählen.
Gemäß der vorliegenden Ausführungsform
ist der Weg, der gewählt
wird, der Weg, der das Portal mit dem höchsten GUID-Identifizierer enthält. Für die vorliegende Ausführungsform
werden nur die GUID-Identifizierer
der Portale der Brücken
zu Beginn und am Ende eines Weges berücksichtigt.
-
Natürlich kann ein anderes Kriterium
gewählt
werden, solange alle Portale in einer eindeutigen Weise denselben
einzigen Weg unter redundanten Wegen wählen.
-
Wege mit zwei Brücken zwischen den Bussen, die
bereits über
einen Weg mit einer einzigen Brücke verbunden
sind (d. h. bereits über
einen kürzeren
Weg verbunden sind), werden nicht benutzt oder verworfen.
-
Am Ende von Schritt 2 weiß jedes
Portal, ob es Nachrichten weiterleiten muss, die auf seinem lokalen Bus
umlaufen und zu Bussen der Tiefe 2 adressiert sind, verglichen mit
dem lokalen Bus.
-
(c) Schritt n
-
Der Schritt n besteht in der Wiederholung
des Vorgangs von Schritt 2, wobei "2" durch "n" ersetzt ist. Für den Schritt 2 werden kürzere Wege
zwischen den beiden Bussen gegenüber
längeren
Wegen zwischen denselben beiden Bussen vorgezogen.
-
Gemäß der bevorzugten Ausführungsform
wird der Vorgang durch ein Portal angehalten, wenn er von seinem
Begleitportal und von seinen lokalen Portalen zu seinem Bus Informationen
empfängt,
die vollständig redundant
zu dem Inhalt der Routingtabelle sind.
-
Die Anwendung des iterativen Vorgangs
auf ein Abtastnetz wird im Folgenden beschrieben. Die folgende Beschreibung
enthält
zusätzliche
Details und Regeln, verglichen mit den oben genannten allgemeinen Regeln.
Das Abtastnetz ist in 4 dargestellt.
Es enthält
insgesamt fünf
Busse B400 bis B404 und sieben Brücken mit Portalen mit GUID-Werten
von 0 bis 13.
-
Die Topologie des Netzes ist folgende:
-
-
Der erste Portal einer in einem Paar
(PXYY, PXYY) gezeigten Brücke
ist mit dem Bus verbunden, der in der ersten Zeile der Tabelle gezeigt
ist, während
das zweite Portal einer Brücke
mit dem Bus verbunden ist, der in der ersten Spalte der Tabelle
gezeigt ist.
-
In den 4 bis 6 bezeichnen die vertikalen
Pfeile die nahegelegenen Bus-Identifizierer
und die GUID-Werte die Informationen, die von einem Portal zu seinem Begleitportal
gesendet werden, um auf dem lokalen Bus des Begleitportals gesendet
zu werden.
-
Der Aufbauvorgang für die Routingtabelle
wird im Detail für
die Busse B400 und B401 beschrieben. da die maximale Tiefe in dem
Netz gleich 3 ist, ist die Maximalzahl der Iterationen, die durch
jedes Portal in dem Netz durchgeführt werden, ebenfalls gleich
3.
-
(a) Schritt 1 (Bus B400)
-
Das Portal P409 empfängt von
seinem Begleitportal P408 die Informationen:
- – Begleitportal-GUID:
8
- – Begleitportal-Busnummer:
B401.
-
Das Portal P411 empfängt von
seinem Begleitportal P410 die Informationen:
- – Begleitportal-GUID:
10
- – Begleitportal-Busnummer:
B401
-
Das Portal P413 empfängt von
seinem Begleitportal P412 die Informationen:
- – Begleitportal-GUID:
12
- – Begleitportal-Busnummer:
B404
-
Jedes der obigen Portale sendet seine
Informationen auf dem Bus B400 und hört auf die Sendung der anderen
Portale. Jedes der obigen Portale baut dann die folgende Tabelle
auf:
-
-
Jedes Portal prüft dann für redundante Wege. Da der Bus
B401 zweimal in der Tabelle erscheint, müssen die Portale wählen, welcher
Weg unter den beiden existie renden redundanten Wegen zu dem Bus
B401 benutzt werden muß.
Da der größte GUID-Wert
unter den GUID-Werten der Portale P408, P409, P410 und P411 gleich
11 ist, wird der durch die zweite Zeile der Tabelle angegebene Weg
gewählt.
Der andere Weg wird aus der Tabelle 3 beseitigt, um die Routingtabelle
am Ende von Schritt 1 zu bilden. Zum Zweck der Routing-Nachrichten
kann diese Tabelle 3 in der folgenden Weise vereinfacht werden,
da nur der Bestimmungsbus und das weiterleitende Portal für diesen
Zweck bekannt sein müssen:
Tabelle
4
-
Diese Routingtabelle wird folgendermaßen interpretiert:
- – Pakete
von dem Bus B400 zu dem Bus B401 werden durch das Portal 11 weitergeleitet.
- – Pakete
von dem Bus B400 zu dem Bus B404 werden durch das Portal 13 weitergeleitet.
-
Natürlich kann die Routingtabelle
auch in anderen Formaten als dem in der Tabelle 4 angegebenen Format
dargestellt werden.
-
Für
den Zweck der Verfolgung des iterativen Vorgangs werden die Informationen
der Tabelle 3 in einem Speicher gehalten.
-
(b) Schritt 1 (Bus B401)
-
Das Portal P408 empfängt von
seinem Begleitportal die folgenden Informationen:
- – Begleitportal-GUID:
9
- – Begleitportal-Busnummer:
B400
-
Das Portal P410 empfängt von
seinem Begleitportal die Informationen:
- – Begleitportal
GUID: 11
- – Begleitportal-Busnummer:
B400
-
Das Portal P403 empfängt von
seinem Begleitportal die Informationen:
- – Begleitportal-GUID:
2
- – Begleitportal-Busnummer:
B402
-
Jedes der obigen Portale sendet seine
Informationen auf dem Bus B401 und hört auf die Sendung der anderen
Portale. Jedes der obigen Portale baut dann die folgende Tabelle
auf:
-
-
Entsprechend den oben beschriebenen
Regeln bestimmt jedes Portal auf dem Bus B401 die folgende vereinfachte
Routingtabelle:
-
-
Diese Tabelle wird folgendermaßen interpretiert:
- – Pakete
von dem Bus B401 zu dem Bus B400 werden durch das Portal P410 weitergeleitet.
- – Pakete
von dem Bus B401 zu dem Bus B402 werden durch das Portal P403 weitergeleitet.
-
Es sei bemerkt, dass der Weg zwischen
dem Bus B400 und B401 mit demselben Kriterium wie vorher und folglich
derselbe Weg gewählt
wird. Das bedeutet, dass eine Nachricht von einem Bus A unter Anwendung eines
bestimmten Wegs zur Erreichung eines Bus B denselben Weg benutzt
wie eine Nachricht von dem Bus B zu dem Bus A und dass in dem Fall,
wo ein Portal während
eines Schritts des Vorgangs gesperrt oder inaktiviert wird, sein
Begleitportal ebenfalls inaktiviert wird.
-
5 zeigt
für das
gesamte Netz von 4,
welche Brücken
während
des Schritts 1 inaktiviert worden sind. Die inaktivierten Brücken sind
in grau dargestellt. Während
Portale von während
des Schritts 1 inaktivierten Brücken
keine Routing-Informationen
weiterleiten, können
sie weiterhin Routing-Informationen empfangen, die auf ihrem jeweiligen
lokalen Bus umlaufen.
-
(c) Schritt 2 (Bus B400)
-
Während
das Portal P408 während
des Schritts 1 inaktiviert wurde, leitet jedes der Portale P410
und P412 seine Routingtabelle zu seinem Begleitportal auf dem Bus
B400 weiter. 5 zeigt,
welche Informationen zu jedem Portal übertragen werden. Es werden
nur Informationen gesendet, die nicht redundant sind, wie in 5 gezeigt. Das ist der Grund,
warum keine Informationen für
das Portal P400 dargestellt sind: die relevanten Informationen entsprechend
dem Bus 403 wurden bereits während
des Schritts 1 gesendet.
-
Gemäß der vorliegenden Ausführungsform
sendet jedes Portal, um die auf den Bussen gesendete Datenmenge
zu verringern, zu seinem Begleitportal keine Informationen, die
es bereits während
eines vorangehenden Schritts von seinem Begleitportal empfangen
hat (da diese Informationen bereits während des früheren Schritts übertragen
wurden). Informationen werden nur dann weitergeleitet, wenn sie
noch nicht redundant zu während
eines früheren
Schritts gesendeten Informationen sind. In anderen Worten: Wenn
während
eines Schritts n ein Portal auf seinem lokalen Bus keine Informationen
für einen
Bus mit der Tiefe n von einem anderen Portal empfängt, dann
leitet es während
der darauffolgenden Schritte keine Informationen zu seinem Begleitportal
weiter.
-
Wenn ein Portal keine neuen Daten
zur Übertragung
zu seinem Begleitportal hat, benachrichtigt es gemäß einer
vorteilhaften Variante der Erfindung sein Begleitportal, dass letzteres
während
des vorliegenden Schritts und potentieller künftiger Schritte des Verfahrens
keine weiteren Informationen empfängt. Ein Unterbre chungsmechanismus
kann außerdem
bei dem Wert des Vergleichsportals durchgeführt werden.
-
Gemäß einer Variante der vorliegenden
Ausführungsform
leitet jedes Portal seine gesamte, nicht-vereinfachte Routingtabelle
zu ihrem Begleitportal. Wenngleich in diesem Fall Bandbreite vergeudet
wird, kann die Tabelle, die bei dem Wert jedes Portals arbeitet,
vereinfacht werden.
-
Auf dem Bus B400 enthält jedes
Portal die folgenden Informationen, zusätzlich zu den während des Schritts
1 empfangenen Informationen:
-
-
Es gibt zwei redundante Wege zwischen
dem Bus B400 und B402, ein Weg führt über den
Bus B401, der andere über
B402. Da der höchste
GUID-Wert unter den vier betroffenen Portalen gleich 13 ist, wird
der zweite Weg in der obigen Tabelle gewählt, während der erste Weg beseitigt
wird. Jedes der Portale auf dem Bus B400 hat dann Zugriff zu den
folgenden Informationen:
-
-
Die vereinfachte Tabelle kann nun
leicht aus der Tabelle 8 ermittelt werden:
-
-
-
(d) Schritt 2 (Bus B401)
-
Nach dem Empfang der durch die Begleitportale
P411 und P402 gesendeten Routinginformationen fügt jedes der Portale P408,
P410 und P403 auf dem Bus B401 die folgenden Informationen für die Busse
mit der Tiefe 2 dem während
der Stufe 1 für
die Tiefe 1 empfangenen Informationen hinzu:
-
-
Es gibt dort wieder in diesem Fall
einen redundanten Weg zu dem Bus B404. Unter Anwendung derselben
Regel wie vorher wird der als erster in der Tabelle 9 auftretende
Weg gewählt
(GUID des entfernten Portals gleich 12), während der auf der Zeile darunter
auftretende Weg beseitigt wird. Durch Hinzufügung der resultierenden Tabelle
zu den Informationen, die durch die Portale des Bus B401 während des
Schritts 1 bestimmt werden, ergibt sich:
-
-
Für
den Bus B401 ist die vereinfachte Tabelle:
-
-
Der Schritt 2 wird auf diese Weise
für Portale
auf den Bussen B400 und B401 abgeschlossen.
-
(e) Schritt 3 (Bus B400)
-
Bei dieser Stufe haben nur drei Portale
nicht-redundante Informationen zur Übertragung für die Busse mit
der Tiefe 3 (d. h. Portale (P411, P410), (P413, P412) und (P401,
P400)), wie in 6 dargestellt.
Die anderen aktiven (d. h. nicht- inaktivierten) Portale haben von
den anderen Portalen auf ihrem lokalen Bus während des Schritts 2 keine
Informationen für
den Bus mit der Tiefe 2 empfangen und leiten daher während des Schritts
3 keine Informationen weiter.
-
Die zusätzlichen Informationen, die
durch jedes Portal des Bus B400 zu Beginn des Schritts 3 empfangen
werden, sind die folgenden:
-
-
Durch Anwendung der Auswahlregel
wird der zweite Weg zu dem Bus B403 gewählt (GUID mit dem Wert 13),
während
der erste gelöscht
wird.
-
-
Die vereinfachte Routingtabelle ist
dann:
-
-
Das ist die endgültige Tabelle für den Bus
B400. Es gibt dort keine Busse mit der Tiefe 4 relativ
zu dem Bus B400 in dem Netz.
-
(f) Schritt 3 (Bus B401)
-
Das Netz enthält keine Busse der Tiefe 3,
verglichen mit dem Bus B401. Da die Portale des Bus B401 keine nicht-redundanten
Informationen von ihren Begleitportalen empfangen, sind ihre endgültigen Tabellen diejenigen,
die während
des Schritts 2 gebildet werden.
-
Bei diesem Schritt haben alle Busse
den Weg zu allen anderen Bussen in dem Netz hergestellt.
-
Wenn eine Nachricht auf einem Bus
umläuft,
bestimmt jedes lokale Portal zu diesem Bus den Bestimmungsbus-Identifizierer,
der in dem Nachricht-Header enthalten ist, und prüft in seiner
Routingtabelle, ob er die Nachricht weiterleiten muss oder ob die
Nachricht durch ein anderes Portal weitergeleitet wird. Somit sind alle
Informationen, die ein Portal kennen muss, die Liste der Identifizierer
der entfernten Busse und für
jeden dieser Busse eine Markierung, die anzeigt, ob das Portal einen
Weg zu dem entfernten Bus darstellt oder nicht.