-
GEBIET DER
ERFINDUNG
-
Diese Erfindung bezieht sich im Allgemeinen auf
Netzsysteme und genauer auf virtuelle Multicast-Schaltungen in Netzen
mit beliebiger Topologie.
-
HINTERGRUND
DER ERFINDUNG
-
Ein Computer-Netz umfasst typischerweise eine
Sammlung miteinander verbundener Knoten, wie z. B. Computer-Systeme
und Vermittlungen, die wiederum durch eine unregelmäßige Konfiguration von Übertragungsleitungen,
d. h. Verbindungen, verbunden sind. Die Vermittlungen sind spezialisierte Computer,
die verwendet werden, um zwei oder mehr Verbindungen zu verbinden.
Die Daten werden zwischen den Knoten eines derartigen Netzes "mit beliebiger Topologie" ausgetauscht, indem
Pakete über die
Verbindungen von Vermittlung zu Vermittlung geleitet werden. Wenn
ein Paket an einer ankommenden Verbindung ankommt, entscheidet die
Vermittlung spezifisch, auf welcher der abgehenden Verbindungen
das Paket weitergeleitet wird.
-
In einem verbindungsorientierten
Netz wird eine virtuelle Schaltung gewöhnlich aufgebaut, wenn Pakete
zwischen den Knoten des Netzes ausgetauscht werden. Die virtuelle
Schaltung ist eine vorübergehende
logische Wegverbindung, die eine Aufbauprozedur, um die virtuelle
Schaltung vor dem Übertragen
der Datenpakete zu "öffnen", und eine Freigabeprozedur,
um die Schaltung zu "schließen", sobald die Datenübertragung
abgeschlossen ist, erfordert. Dies vermeidet die Notwendigkeit,
um Lenkungsentscheidungen für
jedes Datenpaket, das zwischen den Knoten übertragen wird, zu treffen,
sobald die Schaltung geöffnet
ist.
-
Für
die Punkt-zu-Punkt-Kommunikation erzeugt die Aufbauprozedur eine
virtuelle Schaltung, indem sie bestimmte Vermittlungen und Verbindungen
im Netz zuweist, um entsprechend den herkömmlichen Wegkonfigurationstechniken
zwischen einem Quellknoten und einem Zielknoten den "besten" Weg aufzubauen.
Um dies zu veranschaulichen, wird auf 1A Bezug
genommen. Hier führt
der Knoten A des Netzes 10 eine Aufbauprozedur aus, um
einen virtuellen Schaltungsweg zu öffnen, der die Vermittlungen
SA-D umfasst. Dieser Weg wird durch eine
virtuelle Schaltungsnummer (VC) VC2 identifiziert, die der Ortsvermittlungsstelle
SA des Knotens A zugeordnet ist. Um zu sichern,
dass die anschließend vom
Knoten A übertragenen
Datenpakete immer diesen virtuellen Schaltungsweg zum Knoten D folgen, hält jede
Vermittlung längs
VC2 eine Weiterleitungstabelle, deren Einträge anzeigen, wohin die Datenpakete
in Übereinstimmung
mit den Ergebnissen der Lenkungskonfiguration weiterzuleiten sind.
-
1 B
veranschaulicht die Weiterleitungstabellen 20a–d, die innerhalb der Vermittlungen
SA-D des Netzes 10 enthalten sind.
Jeder Eintrag der Tabellen enthält
einen Eingangsabschnitt und einen Ausgangabschnitt, wobei jeder
Abschnitt einen Anschlussnamen und eine VC-Nummer enthält, die
diesem Anschluss zugeordnet ist. Jedes über das Netz übertragene
Datenpaket enthält
ein VC-Feld, das die geöffnete
VC-Nummer identifiziert, an dem es angekommen ist. Wenn folglich
ein Paket am Eingangsanschluss der Vermittlung SC empfangen
wird, durchsucht diese Vermittlung unter Verwendung des Eingangsanschlusses,
z. B. Z, und der in dem Paket gefundenen VC-Nummer, z. B. VC7, als
Schlüssel
den linken Abschnitt (den Eingangsabschnitt) 22i ihrer Tabelle
20c. Wenn eine Übereinstimmung
festgestellt wird, identifiziert der Ausgangsabschnitt 22o des
Eintrags die VC-Nummer, z. B. VC4, die in das VC-Feld des Pakets
einzusetzen ist, und den Anschluss, z. B. Q, zu dem sie das Paket
leiten sollte. Es ist deshalb offensichtlich, dass die VC-Nummern
und die Weiterleitungstabellen ausreichend Informationen bereitstellen,
um die Datenpakete durch die zugewiesenen Vermittlungen und Verbindungen
zum Ziel zu führen.
-
Das Rundsenden (Multicasting) umfasst
das Senden eines einzelnen Multicast-Pakets von einem Quellknoten und das
Empfangen des einzelnen Multicast-Pakets durch eine Gruppe von Zielknoten.
Ein Problem, das diesem Typ der Punkt-zu-Mehrpunkt-Kommunikationstechnik
zugeordnet ist, betrifft das Bilden eines effizienten "Lieferungsbaums", d. h. eine Sammlung
von Knoten und Verbindungen, die das Multicast-Paket durchqueren
muss, um die Zielknoten zu erreichen. Ein Zugang, der als kerngestützte Bäume (CBT – Core Based
Trees) bekannt ist, wendet sich diesem Problem zu, indem er einen Kern,
einen virtuellen Punkt-zu-Punkt-Schaltungs-"Baum" aufbaut
und dann eine Aufbauprozedur für
jeden zusätzlichen
Zielknoten der Gruppe ausführt.
Der CBT-Zugang ist jedoch in dem Sinn "statisch", dass, falls ein effizienterer Weg
vorhanden ist, der Lieferbaum nicht leicht an die "bessere" Topologie angepasst
werden kann.
-
Ein weiteres Problem umfasst das
Hinzufügen
und das Löschen
von Knoten aus der Multicast-Gruppe der Ziele. In den CBT-Netzen
leitet jeder Zielknoten eine Prozedur ein, um sich selbst hinzuzufügen oder
zu löschen;
demzufolge weiß der
Quellknoten nichts über
die Baumkonfiguration und ihre konstituierenden Zielknoten.
-
Eine Alternative zur CBT-Technik
umfasst das Erzeugen anschließender "Zweig"-Verbindungen für die zusätzlichen Zielknoten, ohne die
vorhandenen Baumverbindungen zu zerstören. Ein derartiger Zugang
ist in 2 veranschaulicht.
Hier wird ein Baum gebildet, der aus den virtuellen Schaltungen vom
Quellknoten N zu einer Multicast-Gruppe der Zielknoten D1 und D2
besteht; spezifisch umfasst die virtuelle Schaltung zum Knoten D1
die Vermittlungen SA und SF,
während
die virtuelle Schaltung zum Knoten D2 die Vermittlungen SA-D umfasst.
-
Eine durch VC8 dargestellte Zweigverbindung
wird anschließend
mit dem Baum gebildet, um den Knoten D3 zur Gruppe der Zielknoten
hinzuzufügen.
Die Ergänzung
von VC8 bildet jedoch wiederum eine "Schleife" zwischen den Vermittlungen SA, SB, SC und
SF und den dazwischenliegenden Verbindungen, wobei dadurch eine
instabile Topologie erzeugt wird. Falls spezifisch die Baumverbindungen
bidirektional sind, d. h. die Pakete durch die Anschlüsse der Vermittlungen
SA und SC in beiden
Richtungen fließen können, wie
durch die Pfeile 22 mit zwei Spitzen angezeigt ist, kann
sich ein Paket, das sich innerhalb der Schleife ausbreitet, endlos
um diese Schleife drehen und dadurch die Bandbreite des Netzes ungünstig beeinflussen.
Falls die Verbindungen unidirektional sind, wie durch die Pfeile 21 mit
einzelnen Spitzen angezeigt ist, die in die Vermittlung SE münden,
können
doppelte Kopien der Pakete zum Zielknoten D3 geliefert werden, was
abermals die Bandbreite negativ beeinflusst.
-
Eine weitere bekannte Punkt-zu-Mehrpunkt-Kommunikationstechnik
erfordert, dass sich jeder Zielknoten bei seiner Ortsvermittlungsstelle "registriert", um die Datenpakete
zu empfangen, die an eine spezielle Multicast-Adresse adressiert
sind. Spezifisch sendet der Zielknoten eine Anforderung an seine
Ortsvermittlungsstelle, die dann die Anforderung zu allen Vermittlungen
im Netz weiterleitet. Jede Vermittlung im Netz aktualisiert ihre
Weiterleitungstabelle, um die Lenkungsinformationen, d. h. den Zustand,
die alle Zielknoten für
jede Multicast-Adresse
betreffen, zu speichern. Ein Nachteil dieser Technik ist, dass eine
signifikante Menge von Verarbeitungs- und Speicherungs-Zusatzaufwand
für jede
Vermittlung notwendig ist, um den Zustand für jeden Zielknoten aufrechtzuerhalten.
-
Die Punkt-zu-Mehrpunkt-Kommunikation
in einem verbindungslosen Netz umfasst das Senden eines einzelnen
Multicast-Pakets, das durch mehrere Ziele empfangen wird. Für diesen
Netztyp enthält
jedes Multicast-Paket jedoch eine Liste von Zielknoten. Wenn das
Paket an einer ankommenden Verbindung einer ersten Vermittlung ankommt,
prüft diese
Vermittlung die Liste, um eine Menge abgehender Verbindungen auszuwählen, die
den besten Weg zu wenigstens einem der Ziele bereitstellen. Die
Vermittlung erzeugt eine neue Kopie des Multicast-Pakets für jede ausgewählte abgehende
Verbindung und nimmt in jedes Paket diejenigen Ziele auf, die die
Verbindung verwenden. Schließlich
identifiziert jedes Multicast-Paket
nur ein Ziel, wobei es als ein normales Datenpaket behandelt wird.
-
Aus NETWORKING IN THE NINETIES, BAL HARBOUR,
7.–11.
April 191, Bd. 1, 7. April 1991, INSTITUTE OF ELECTRICAL AND ELECTRONICS ENGINEERS,
S. 59–68,
XP000223490, BUBENIK, R. u. a.: 'MULTIPOINT
CONNECTION MANAGEMENT IN HIGH SPEED NETWORKS', ist ein Verbindungsmanagement-Zugangsprotokoll
für das
Managen von Mehrpunktverbindungen in vermittelten Hochgeschwindigkeits-Paketnetzen
bekannt. Die Mehrpunktverbindung ist ein Kommunikationskanal zwischen
zwei oder mehr Clients des Netzes, wobei alle durch einen Client
gesendeten Daten durch alle anderen Clients empfangen werden. Um
die Mehrpunktverbindung aufzubauen, erzeugt ein Client zuerst einen
Anruf zwischen sich selbst und dem Netz. Der Anruf ist ein durch
das Netz aufrechterhaltenes verteiltes Objekt, das die Kommunikationswege
beschreibt, die die Clients verbinden.
-
Aus IEEE JOURNAL ON SELECTED AREAS
IN COMMUNICATIONS, Bd. 9, Nr. 9, 1. Dezember 1991, S. 1427–1439, XP000267533,
SEGALL, A. u. a.: 'RELIABLE
MULTIUSER TREE SETUP WITH LOCAL IDENTIFIERS', ist ein Protokoll für das Aufbauen
einer Baumverbindung für
den Zweck der Multicast-Kommunikation über einen
vermitteltes Hochgeschwindigkeits-Paketnetz bekannt. Die Baumverbindung
basiert auf der Verwendung lokaler Kennzeichnungen, die an jedem
Zwischenknoten des Baumes ausgetauscht werden. Entsprechend dem
Algorithmus für
SETUP breitet sich eine SETUP-Nachricht vom Urheber-Endknoten über den Baum
zu allen anderen Endknoten aus.
-
ZUSAMMENFASSUNG
DER ERFINDUNG
-
Die vorliegende Erfindung schafft
ein Verfahren zum Aufbauen einer virtuellen Multicast-Schaltung,
wie es im Anspruch 1 definiert ist.
-
Gemäß einem Aspekt der vorliegenden
Erfindung werden ein Verfahren und eine Vorrichtung für das Erzeugen
virtueller Multicast-Schaltungen in einem Netz mit beliebiger Topologie,
ohne den Betrieb des Netzes zu stören, geschaffen.
-
Hierin werden außerdem ein Verfahren und eine
Vorrichtung, um Knoten zu aufgebauten virtuellen Multicast-Schaltungen
hinzuzufügen,
ohne die Leistung des Netzes zu beeinflussen, und ein Verfahren
und eine Vorrichtung für
das leichte Modifizieren aufgebauter virtueller Multicast-Schaltungen,
um eine effizientere Topologie widerzuspiegeln, gelehrt.
-
Im Folgenden ist außerdem ein
Mechanismus für
das Aufbauen virtueller Multicast-Schaltungen erklärt, die
die Merkmale eines verbindungsorientierten und eines verbindungslosen
Netzes enthalten.
-
In einem weiteren Aspekt der vorliegenden Erfindung
wird eine neuartige Anordnung für
Multicast-Verbindungen geschaffen, durch die ein Quellknoten durch
das Ausführen
einer einzelnen Prozedur virtuelle Schaltungen zu einer Gruppe von
Zielknoten aufbauen kann, wobei er anschließend diese Schaltungen mit
einer in Beziehung stehenden Prozedur modifizieren kann, d. h. Zielknoten
hinzufügen oder
löschen
kann. Die Vermittlungen und Verbindungen, die den virtuellen Schaltungen
mit mehreren Zielen eines Netzes mit beliebiger Topologie zugewiesen
sind, sind die Elemente der virtuellen Multicast-Schaltungen. Gemäß der Anordnung
müssen nur
die Vermittlungen der virtuellen Multicast-Schaltungen die Lenkungsinformationen
bezüglich
der Zielknoten aufrechterhalten. Folglich ermöglicht die Erfindung dem Quellknoten,
die Steuerung der virtuellen Schaltungskonfigurationen aufrechtzuerhalten, während die
Bandbreite, der Durchsatz und der Wirkungsgrad des Netzes mit beliebiger
Topologie optimiert werden.
-
In einem weiteren Aspekt der Erfindung
wird ein Multicast-Aufbau-Paket verwendet, um virtuelle Multicast-Schaltungen
zu öffnen.
Das Multicast-Aufbaupaket enthält
ein Multicast-Identifiziererfeld, ein Feld für die virtuelle Schaltung und
ein Zielfeld, das eine Liste der gewünschten Zielknotenadressen identifiziert.
Vor dem Ausgeben des Multicast-Aufbaupakets gibt ein Quellknoten
geeignete Informationen in jedes der Felder ein, wobei das VC-Feld,
das einen Wert der virtuellen Schaltung enthält, dem Anschluss zugeordnet
wird, der die Quelle mit ihrer Ortsvermittlungsstelle verbindet.
-
Die Ortsvermittlungsstelle überprüft beim Empfangen
des Pakets an ihrem Eingangsanschluss die Liste der Zielknoten und
wählt eine
Menge der abgehenden Verbindungen aus, die den besten Weg zu wenigstens
einem der Zielknoten bereitstellen. Die Auswahl basiert auf den
Ergebnissen der Analyse der Wegkonfiguration, z. B. der Analyse
der Verfügbarkeit
und der Belastung. Diese Gruppe der Eingangs- und Ausgangsanschlüsse wird
als eine Multicast-Anschlussgruppe bezeichnet.
-
Dann erzeugt die Vermittlung die
Einträge
einer internen Weiterleitungstabelle für die neu gebildete Multicast-Gruppe.
Diese Einträge
enthalten die Lenkungsinformationen, d. h. den Zustand, wie z. B. (i)
einen eindeutigen Multicast-Identifiziererwert (MI-Wert), der aus
dem Identifiziererfeld erfasst wird, (ii) den Namen des Eingangsanschlusses
und seines aus dem VC-Feld erfassten zugeordneten VC-Wertes und (iii)
die Namen der ausgewählten
Ausgangsanschlüsse
und ihre zugeordneten VC-Werte. Außerdem markiert die Vermittlung
den Eintrag des ankommenden VC-Wertes als vom Quellknoten stammend.
-
Vor dem Weiterleiten jedes Pakets
auf seiner entsprechenden abgehenden Verbindung erzeugt die Vermittlung
eine Kopie des Multicast-Aufbaupakets für jeden der ausgewählten Ausgangsanschlüsse. Die
Vermittlung aktualisiert dann sowohl das VC-Feld, damit es dem jedem
ausgewählten
Ausgangsanschluss zugeordneten VC-Wert enthält, als auch das Zielfeld,
damit es nur diejenigen Zielknoten enthält, die die Kopie des Pakets
empfangen. Schließlich
werden die Pakete über
das Netz übertragen.
-
Nach dem Durchqueren einer Anzahl
aufeinander folgender Vermittlungen identifiziert jedes Multicast-Aufbaupaket
nur ein Ziel, wobei es dadurch effektiv eine virtuelle Schaltung "öffnet". Die anschließend durch die Quelle ausgegebenen
Datenpakete müssen
nur den anfänglichen
lokalen VC-Wert enthalten, um sich längs der virtuellen Multicast-Schaltungen
auszubreiten und an den entsprechenden Zielknoten anzukommen.
-
Das Multicast-Aufbaupaket wird außerdem verwendet,
um Zielknoten zu den virtuellen Multicast-Schaltungen hinzuzufügen. Die
Felder des Pakets enthalten die gleichen Informationen, die verwendet
werden, wenn die virtuellen Schaltungen geöffnet werden, mit Ausnahme,
dass das Zielfeld nun nur die Adresse des neuen Zielknotens enthält. Beim Empfang
des "zusätzlichen" Multicast-Aufbaupakets führt jede
Vermittlung der virtuellen Multicast-Schaltungen abermals eine Konfigurationsanalyse
aus, um die besten Wege zu bestimmen.
-
Wie hierin beschrieben ist, führt jede
Vermittlung außerdem
einen Topologieanalyseprozess aus, um zu erfassen, ob die hinzugefügten Knoten
Schleifen im Netz erzeugen oder zur Erzeugung von doppelten Paketen
führen.
Der erste Schritt jedes Prozesses umfasst, dass jede Vermittlung
die Einträge
in ihrer Weiterleitungstabelle überprüft, um zu
bestimmen, ob der Eingangsanschluss, durch den das Multicast-Aufbaupaket
in die Vermittlung eintritt, einer geöffneten virtuellen Multicast-Schaltung
zugewiesen ist, die einen MI-Wert besitzt, der mit den MI-Wert des
Paketes übereinstimmt.
Falls nicht, umfasst der nächste
Schritt eine Abfrage, ob es in der Tabelle irgendwelche vorhandenen
Einträge
gibt, die diesem speziellen MI-Wert zugeordnet sind. Falls die Antwort auf
die letztere Frage ja lautet, sind zwei Optionen verfügbar: (i)
die Vermittlung erhält
eine separate virtuelle Schaltung für jedes der vorhandenen und
hinzugefügten
Ziele aufrecht oder (ii) die Vermittlung löscht den als von der Quelle
kommend markierten Anschluss und baut unter Verwendung des hinzugefügten Eingangsanschlusses
eine "neue" virtuelle Schaltungsverbindung
auf. Die Vermittlung aktualisiert dann die Einträge der Weiterleitungstabelle,
um die geänderte
Topologie widerzuspiegeln.
-
In einer Modifikation wird ein Multicast-Lösch-Paket
verwendet, um einen vorhandenen Knoten (und eine vorhandene Verbindung)
aus der Liste der Ziele zu löschen,
die den virtuellen Multicast-Schaltungen zugeordnet sind. Hier wird
das Multicast-Löschpaket
durch den Zielknoten ausgegeben, der Entfernung aus der virtuellen
Schaltung erstrebt. Spezifisch muss das Paket nur den eindeutigen
Multicast-Identifiziererwert und den VC-Wert des zu löschenden
Anschlusses enthalten.
-
Vorteilhaft kann, wie hierin beschrieben
ist, ein Quellknoten virtuelle Schaltungsverbindungen zu Zielknoten
mit einer einzelnen Aufbauprozedur einleiten, wobei dadurch erlaubt
wird, dass die Quelle die Konfiguration der Knoten effizient steuert
und Management-Funktionen, d. h. Prüfungsfunktionen, implementiert.
-
Ein weiterer Vorteil ist, dass Änderungen
an virtuellen Multicast-Schaltungen schnell und effizient ausgeführt werden
können,
ohne das Netz infolge der Erzeugung von Schleifen und der Erzeugung doppelter
Pakete zu verschlechtern.
-
KURZBESCHREIBUNG
DER ZEICHNUNG
-
Ein ausführlicheres Verständnis der
Erfindung kann aus der folgenden Beschreibung einer bevorzugten
Ausführungsform
erhalten werden, die beispielhaft gegeben wird und im Zusammenhang
mit der beigefügten
Zeichnung zu verstehen ist, worin:
-
1A eine
graphische Darstellung einer herkömmlich aufgebauten virtuellen
Schaltung ist, die einen Quellknoten und einen Zielknoten eines Netzes
verbindet;
-
1B ein
Blockschaltplan herkömmlicher Weiterleitungstabellen
und der in ihnen enthaltenen Informationen bezüglich der virtuellen Schaltung nach 1A ist;
-
2 eine
graphische Darstellung einer herkömmlichen Lieferbaum-Schaltung
mit Zweigverbindungen ist, um Knoten zu einer Gruppe von Zielknoten
hinzuzufügen;
-
3 eine
graphische Darstellung eines verbindungsorientierten Netzes mit
beliebiger Topologie ist, in dem die Multicast-Verbindungsanordnung
dieser Erfindung vorteilhaft verwendet werden kann;
-
4 das
Format eines Multicast-Aufbaupakets veranschaulicht, das verwendet
wird, um gemäß der Erfindung
virtuelle Multicast-Schaltungen zu öffnen;
-
5 das
Format eines Multicast-Aufbaupakets veranschaulicht, das verwendet
wird, um gemäß einer
bevorzugten Ausführungsform
der Erfindung zu geöffneten
virtuellen Multicast-Schaltungen Knoten hinzuzufügen;
-
6 eine
graphische Darstellung eines verbindungsorientierten Netzes mit
beliebiger Topologie ist, in dem das Multicast-Aufbaupaket nach 5 vorteilhaft verwendet
werden kann, um einen Zielknoten zum Netz hinzuzufügen; und
-
7 das
Format eines Multicast-Löschpakets
veranschaulicht, das verwendet wird, um gemäß einer bevorzugten Ausführungsform
der Erfindung aus geöffneten
virtuellen Multicast-Schaltungen Knoten zu löschen.
-
AUSFÜHRLICHE
BESCHREIBUNG DER VERANSCHAULICHENDEN AUSFÜHRUNGSFORMEN
-
3 stellt
ein verbindungsorientiertes Netz 30 mit beliebiger Topologie
aus miteinander verbundenen Knoten dar, in dem die Multicast-Verbindungsanordnung
dieser Erfindung vorteilhaft verwendet werden kann. Die Knoten enthalten
typischerweise universelle Computer, die einen Quellknoten N und eine
Gruppe von Zielknoten G1-3 umfassen. Jeder Knoten ist an eine entsprechende "Orts"-Vermittlungsstelle S, d. h., einen spezialisierten
Computer, gekoppelt. Jede Vermittlung S ist konfiguriert, um den Fluss
der Informationen im Netz 30 zu unterstützen, indem sie zusammen mit
den ankommenden und abgehenden Verbindungen L Verbindungen zwischen den
Quell- und Zielknoten schafft.
-
Jeder Knoten und jede Vermittlung
umfasst typischerweise eine Zentraleinheit (CPU) 35, eine Speichereinheit 34 und
wenigstens einen Netzadapter 32, die durch einen Systembus 36 miteinander verbunden
sind. Der Hauptspeicher 34 kann Speicherstellen umfassen,
die typischerweise aus Schreib-Lese-Speicher-vorrichtungen (RAM-Vorrichtungen) bestehen,
die durch die CPU und den Netzadapter adressierbar sind. Ein Betriebssystem,
von dem Abschnitte typischerweise im Hauptspeicher 34 resident
sind und durch die CPU 35 ausgeführt werden, organisiert die
Knoten und Vermittlungen funktional. Das Betriebssystem ruft die
Netzoperationen bei der Unterstützung
von Programmen, die in der CDU 25 ausgeführt werden,
auf.
-
Wie vorausgehend angemerkt worden
ist, wird in herkömmlichen
verbindungsorientierten Netzen eine virtuelle Punkt-zu-Punkt-Schaltung
zwischen einem Quellknoten und einem Zielknoten vor dem "Hinzufügen" von Knoten zur Schaltung
aufgebaut. Gemäß der Erfindung
schafft eine Multicast-Verbindungsprozedur ein Mittel, um unter
Verwendung einer einzelnen Prozedur virtuelle Multicast-Schaltungswege
effizient zu "öffnen". Spezifisch weist
die Prozedur geeignete Vermittlungen und ihre verbindenden Verbindungen
zu, um die besten Wege zwischen dem Quellknoten und den Zielknoten
vor dem Übertragen
der Informationen von der Quelle zu diesen Zielen aufzubauen. Die
Auswahl wird durch herkömmliche
adaptive Lenkungsalgorithmen ausgeführt, die bei der Wegkonfigurationsanalyse verwendet
werden. Die Informationen werden als ein Paket eingekapselt, wobei
das Paket von der Ortsvermittlungsstelle des Quellknotens über eine
oder mehrere dazwischenliegende Vermittlungen zu jeder der Ortsvermittlungsstellen
der Zielknoten weitergeleitet wird.
-
Wenn das Paket am Eingangsanschluss
einer dazwischenliegenden Vermittlung empfangen wird, wird es im
Allgemeinen dort gespeichert, bis die Lenkungsbestimmung ausgeführt worden
ist, was den Ausgangsanschluss anbelangt, zu dem das Paket weitergeleitet
wird. Diese Gruppe der Anschlüsse wird
als eine Multicast-Anschlussgruppe bezeichnet. Es ist ein Merkmal
der Erfindung, dass nur diejenigen Vermittlungen der virtuellen
Multicast-Schaltungen Lenkungsinformationen bezüglich der Zielknoten halten
müssen.
Folglich ermöglicht
die Erfindung dem Quellknoten, die Steuerung der virtuellen Schaltungskonfigurationen
aufrechtzuerhalten, während die
Bandbreite, der Durchsatz und der Wirkungsgrad des Netzes mit beliebiger
Topologie optimiert werden.
-
Um die virtuellen Multicast-Schaltungen
zu öffnen,
erzeugt der Quellknoten N ein Multicast-Aufbaupaket MC_SETUP, dessen
Format in 4 gezeigt
ist. Das MC_SETUP-Paket 40 enthält ein Multicast-Identifiziererfeld
(MI-Feld) 42, ein Feld für die virtuelle Schaltung (VC-Feld) 44 und
ein Zielknotenfeld 46, das letztere Feld identifiziert
eine Liste der gewünschten
Zielknotenadressen, z. B. G1-3. Ein Beispiel der Inhalte des MI-Feldes
kann eine Benutzer-Kennzahl, z. B. UID, sein, die mit einem momentanen
Wert einer Echtzeituhr, z. B. RT, verkettet ist, um einen eindeutigen
Multicast-Identifizierer, z. B. UIDRT, zu schaffen. Der Quellknoten
N gibt die geeigneten Informationen in jedes der Felder ein, wobei das
VC-Feld 44 einen
Wert der virtuellen Schaltung, z. B. VC30, enthält, der dem Anschluss X1 zugeordnet
ist, der die Quelle N mit ihrer Ortsvermittlungsstelle SN verbindet. Für das hierin veranschaulichte
Beispiel kann demzufolge das durch die Quelle N erzeugte resultierende
vervollständigte
Multicast-Aufbaupaket als MC_SETUP(UIDRT, VC30, G1-3) dargestellt
werden.
-
Es wird abermals auf 3 Bezug genommen. Die Quelle N leitet
das Paket 40 zu ihrer Ortsvermittlungsstelle SN weiter,
die die Liste der Knoten G1-3 im D-Feld 46 überprüft und eine
Menge der Ausgangsanschlüsse
auswählt,
von denen jeder den besten Weg zu wenigstens einem dieser Zielknoten bereitstellt.
Hier werden die Anschlüsse
X2 und X6 ausgewählt,
wobei X2 den besten virtuellen Schaltungsweg VC7 zu den Knoten G1
und G2 bereitstellt, während
X6 den besten Weg VC17 zu G3 bereitstellt. Weil es zwei verschiedene
Wege zu den Zielknoten gibt, wird das MC SETUP-Paket an der Vermittlung SN "vermehrt", wobei eine Kopie
des Paketes für
jeden Anschluss X2 und X6 der Multicast-Gruppe erzeugt wird.
-
Die Vermittlung SN erzeugt außerdem die Einträge in ihrer
internen Weiterleitungstabelle 300 für das MC SETUP-Paket 40,
wobei jeder Eintrag 320 den Lenkungszustand, wie z. B.
den aus dem MI-Feld 42 erfassten UIDRT-Wert, den Eingangsanschluss
X1 und seinen aus dem VC-Feld 44 erfassten zugeordneten
VC30-Wert und die abgehenden VC7- und VC17-Werte, die für die Ausgangsanschlüsse X2 bzw.
X6 ausgewählt
worden sind, enthält.
Außerdem
markiert die Vermittlung den ankommenden VC30-Wert mit dem Buchstaben "N", der anzeigt, dass dieser Eintrag vom
Quellknoten stammt.
-
Vor dem Weiterleiten jedes Pakets
zu seinem entsprechenden Anschluss aktualisiert die Vermittlung
SN das VC-Feld 44 jedes Pakets 40, damit es den
VC-Wert enthält,
der jedem ausgewählten Ausgangsanschluss
zugeordnet ist, wobei sie das Zielfeld 46 modifiziert,
damit es nur diejenigen Ziele enthält, die diesen speziellen Anschluss
verwenden. Demzufolge wird MC SETUP(UIDRT, VC7, G1-2) durch den
Anschluss X2 und auf der Verbindung L2 weitergeleitet, während MC_SETUP(UIDRT,
VC17, G3) durch den Anschluss X6 und auf der Verbindung L6 weitergeleitet
wird.
-
Die obenbeschriebene Prozedur wird
an jeder dazwischenliegenden Vermittlung längs der virtuellen Multicast-Schaltungen
wiederholt, bis jedes MC_SETUP-Paket 40 nur ein Ziel identifiziert.
Folglich wird als ein Beispiel MC_SETUP(UIDRT, VC9, G1,2) durch
die Vermittlung S2 auf der Verbindung L3 weitergeleitet, wobei es
danach in der Vermittlung S3 in zwei Multicast-Aufbaupakete vermehrt
wird. Eines der resultierenden Pakete, MC_SETUP(UIDRT, VC14, G1),
wird zum Knoten G1 geleitet, während das
andere Paket, MC SETUP(UIDRT, VC22, G2), zum Knoten G2 geleitet
wird.
-
An diesem Punkt sind die virtuellen
Multicast-Schaltungen effektiv "geöffnet". Weil jede Vermittlung
längs der
virtuellen Multicast-Schaltungen den Lenkungszustand bezüglich der
besten Wege zu den Zielknoten aufrechterhält, müssen die anschließend durch
den Quellknoten N ausgegebenen Datenpakete nur den anfänglichen
lokalen VC-Wert enthalten, um sich längs jeder virtuellen Schaltung
auszu breiten und an den entsprechenden Zielknoten anzukommen. Außerdem leitet,
falls ein durch den Zielknoten G1 oder G2 ausgegebenes Paket am
Anschluss X2 der Vermittlung SN ankommt, der einen VC-Wert VC7 besitzt,
die Vermittlung SN das Paket aus den verbleibenden Anschlüssen der
Multicast-Gruppe, z. B. aus dem Anschluss X1 mit einem VC-Wert VC30
und aus dem Anschluss X6 mit einem VC-Wert VC17, weiter.
-
Ein Multicast-Aufbaupaket kann außerdem durch
einen Quellknoten verwendet werden, um zu vorausgehend geöffneten
virtuellen Multicast-Schaltungen Zielknoten hinzuzufügen. 5 veranschaulicht das Format
dieses Typs des Pakets 50. Für diese Anwendung enthalten
das Multicast-Identifiziererfeld (MI-Feld) 52 und das Feld 54 für die virtuelle Schaltung
(VC-Feld) des Pakets 50 die gleichen Informationen, die
im MI-Feld 42 und im VC-Feld 44 des Pakets 40 (4) enthalten sind; das (die) neue(n)
Zielknoten-Feld(er) 56 enthält (enthalten) nun jedoch nur
die neue(n) Zielknotenadresse(n). Beim Empfang des "zusätzlichen" Multicast-Aufbaupakets 50 führt jede
Vermittlung S der virtuellen Multicast-Schaltungen (3) eine Konfigurationsanalyse aus, um
den (die) besten Wege) zu dem (den) neuen Zielknoten zu bestimmen,
wobei sie die Ergebnisse der Analyse in ihrer Weiterleitungstabelle speichert.
-
Die Multicast-Verbindungsanordnung
schafft außerdem
eine Einrichtung, um die Erzeugung einer instabilen Netztopologie
zu verhindern, wenn zu den virtuellen Multicast-Schaltungen Zielknoten
hinzugefügt
werden. Spezifisch führt
jede Vermittlung S der virtuellen Multicast-Schaltungen einen zweistufigen Topologieanalyseprozess
aus, um zu erfassen, ob der (die) hinzugefügte(n) Knoten eine Schleife(n)
im Netz erzeugt (erzeugen) oder zur Erzeugung von doppelten Paketen
führt (führen). Gemäß der Erfindung
umfasst der erste Schritt des Prozesses, dass jede Vermittlung S
die Einträge
in ihrer Weiterleitungstabelle überprüft, um zu
bestimmen, ob der Eingangsanschluss, durch den das Multicast-Aufbaupaket 50 in
die Vermittlung eintritt, einer virtuellen Multicast-Schaltung zugewiesen
ist, die einen MI-Wert besitzt, der mit dem MI-Wert des Pakets 50 übereinstimmt.
Falls nicht, umfasst der nächste
Schritt eine Abfrage, ob es in der Tabelle irgendwelche vorhandenen
Einträge
gibt, die dem speziellen MI-Wert zugeordnet sind.
-
Falls die Antwort auf die letztere
Abfrage bejahend ist, kann die Vermittlung eine separate virtuelle
Schaltung für
jeden der vorhandenen und hinzugefügten Zielknoten aufrechterhalten,
oder sie kann den als von der Quelle stammend mar kierten Anschluss
löschen
und unter Verwendung des hinzugefügten Eingangsanschlusses eine "neue" virtuelle Schaltungsverbindung
aufbauen. Beide Alternativen beseitigen die Bildung einer Schleife
(2) und werden folglich
als innerhalb der Lehren der Erfindung befindlich betrachtet. Die
Vermittlung aktualisiert dann die Einträge ihrer Weiterleitungstabelle, um
die geänderte
Topologie widerzuspiegeln.
-
Ein Beispiel des Topologieanalyseprozesses ist
im Zusammenhang mit 6 bereitgestellt,
die ein verbindungsorientiertes Netz 60 mit beliebiger
Topologie darstellt, in dem das Multicast-Aufbaupaket vorteilhaft
verwendet werden kann, um einen Zielknoten zum Netz hinzuzufügen. Die
geöffneten
virtuellen Multicast-Schaltungen
zwischen dem Quellknoten N und den Zielknoten G1-2 sind als dunkle
Linien gezeigt. Der Quellknoten N erzeugt ein Multicast-Aufbaupaket 50,
um den Zielknoten G3 hinzuzufügen (siehe
die gestrichelte Linie), wobei das resultierende vervollständigte Paket 50,
MC SETUP(UIDRT, VC30, G3), zur Vermittlung SN weitergeleitet wird,
wo die Ergebnisse einer Lenkungsanalyse anzeigen, dass das Paket
zur Vermittlung S1 geleitet werden sollte. Deshalb
modifiziert die Vermittlung SN die Inhalte des VC-Feldes, um die
virtuelle Multicast-Schaltung VC7
widerzuspiegeln, und leitet das Paket zu Vermittlung S1.
Dort zeigen die Ergebnisse einer weiteren Lenkungsanalyse an, dass
das Paket über
die Vermittlung S2 zum Knoten G3 weitergeleitet werden sollte.
-
Die Vermittlung S2 überprüft dann
die Einträge
in ihrer Weiterleitungstabelle 600, um zu bestimmen, ob
der Eingangsanschluss X3, durch den das Multicast-Aufbaupaket 50 in
die Vermittlung eintritt, einer virtuellen Multicast-Schaltung zugewiesen
ist, die einen MI-Wert besitzt, der mit dem MI-Wert, z. B. UIDRT,
des Pakets 50 übereinstimmt.
Eine Prüfung der
Weiterleitungstabelle offenbart keine Übereinstimmung. Deshalb bestimmt
die Vermittlung S2, ob es in der Tabelle irgendwelche vorhandenen
Einträge gibt,
die dem MI-Wert UIDRT zugeordnet sind. In diesem Beispiel gibt es
einen vorhandenen Eintrag mit dem MI-Wert UIDRT, der anzeigt, dass
das Paket eine Schleife durchlaufen kann. Die Vermittlung S2 hält folglich
entweder eine separate virtuelle Schaltung für jeden der vorhandenen und
hinzugefügten Zielknoten
aufrecht (die separaten gestrichelten Linien in der Vermittlung
S2 bei 65a, b) oder sie löscht in ihrer Weiterleitungstabelle
den als von der Quelle N stammend markierten Anschluss (siehe den
Weiterleitungstabellen-Eintrag X:15 "löschen" bei 66).
Außerdem
zu dieser letzteren Optionen baut die Vermittlung eine neue virtuelle
Schaltungsverbindung auf, die den letzteren Eingangsanschluss X3
und die virtuelle Schaltung VC9 umfasst (siehe die Weiterleitungstabelle 600 bei 68).
In beiden Fällen
aktualisiert die Vermittlung S2 die Einträge in ihrer Weiterleitungstabelle 600,
um die geänderte
Schaltungstopologie widerzuspiegeln.
-
In einem weiteren Aspekt der Erfindung
wird ein Multicast-Lösch-Paket
verwendet, um einen vorhandenen Knoten (und einen vorhandenen Anschluss)
aus der Liste der Ziele zu löschen,
die den virtuellen Multicast-Schaltungen zugeordnet sind. 7 veranschaulicht das Format
eines Multicast-Löschpakets 70,
das nur einen eindeutigen MI-Wert in einem Multicast-Identifiziererfeld 72 und einen
VC-Wert, der einen zu löschenden
Anschluss betrifft, im Feld 74 für die virtuelle Schaltung enthalten
muss. Das Multicast-Löschpaket
wird durch den Zielknoten gebildet, der die Beseitigung aus der
virtuellen Schaltung erstrebt, wobei es zu den verbleibenden Elementen
der virtuellen Multicast-Schaltung weitergeleitet wird.
-
Es sollte angemerkt werden, dass
die Auswahl der "besten" virtuellen Schaltungswege
durch die Vermittlungen auf der Topologie und den Verkehrsbedingungen
basiert, die vorhanden sind, wenn die Aufbauprozedur oder die in
Beziehung stehenden Modifikationsprozeduren, die hierin beschrieben
worden sind, ausgeführt
werden. Es ist z. B. möglich, dass
ein spezieller Weg als der beste Weg gewählt worden ist, weil eine bestimmte
Verbindung nicht betriebsbereit oder überlastet gewesen ist. Deshalb wird
die Aufbauprozedur (und die Modifikationsprozedur) vorzugsweise
in periodischen Intervallen ausgeführt, um zu sichern, dass die
ausgewählten
virtuellen Multicast-Schaltungswege optimiert sind.
-
Die vorausgehende Beschreibung ist
auf eine spezifische Ausführungsform
dieser Erfindung eingeschränkt
gewesen. Es wird jedoch offensichtlich sein, dass Variationen und
Modifikationen an der Erfindung mit der Erreichung von einigen oder
allen ihrer Vorteile ausgeführt
werden können.