-
HINTERGRUND
DER ERFINDUNG
-
Gebiet der Erfindung
-
Die
vorliegende Erfindung betrifft allgemein serielle IEEE-1394-Bussysteme
und insbesondere Kommunikation auf einem seriellen Bus, auf dem Multicast-Pakete
(Pakete mit Mehrfachversand) über einen
zugewiesenen Kanal übertragen
werden.
-
Beschreibung
des Standes der Technik
-
Der
IEEE-Standard für
einen seriellen Hochleistungsbus (IEEE-Standard 1394-1995) spezifiziert Rundsendekommunikation
(Broadcast-Kommunikation) unter Verwendung einer bestimmten, für diesen Zweck
reservierten Adresse und außerdem
Unicast-Kommunikation
(Kommunikation mit Einfachversand) durch Spezifizieren eines Zielknotens
mit einer diesem Knoten zugewiesenen Kennung. Für unterschiedliche Arten von
Verkehr stehen asynchrone und isochrone Datentransfertypen zur Verfügung. Steuerdatenverkehr
wird von Asynchronpaketen unterstützt, während Volumenverkehr auf Isochronpaketen
mit einer konstanten Rate durchgeführt wird.
-
Von
einem als IETF (Internet Engineering Task Force) bekannten Gremium
werden gegenwärtig
Untersuchungen unternommen, um die Übertragung von verbindungslosen
Paketen wie z.B. IP(Internet-Protokoll)-Datagrammen über den
seriellen IEEE-1394-Bus
zu ermöglichen.
In Übereinstimmung mit
dem vorgeschlagenen Verfahren zum Senden eines Datagramms an einen
Zielknoten mit einer IP-Adresse sendet der Quellknoten zuerst die IP-Adresse
des Zielknotens an alle Knoten des Busses. Ein Knoten mit der Rundsendeadresse
weiß, dass
er das Ziel ist, und sendet eine Knotenkennung entsprechend jener
IP-Adresse an den Zielknoten zurück.
Am Zielknoten wird die mitgeteilte Knotenkennung als Zieladresse
eines Asynchronpakets registriert, das als IP-Datagramm übertragen wird. Zwar können alle
Knoten des Busses mit der spezifizierten Rundsendeadresse adressiert
werden und kann jeder Knoten für
Unicast-Übertragung
spezifiziert werden, es ist aber gegenwärtig unmöglich, eine bestimmte Gruppe
von Knoten für
Multicast-Übertragung
zu spezifizieren.
-
Asynchronflusspakete
werden durch den IEEE-1394-Standard als Spezialfall von Asynchronübertragung
spezifiziert. Ähnlich
wie das Isochronpaket benutzt das Asynchronflusspaket eine Kanalnummer
und keine Zielknotenadresse. Es kann während eines "Kulanzintervalls" als Multicast-Paket übertragen
werden. Es besteht daher die Möglichkeit,
dass ein einzelner Kanal von mehr als einem Knoten gemeinsam benutzt
wird. In so einer Multicast-Betriebsart besteht jedoch eine Notwendigkeit
zur Bereitstellung irgendeiner Einrichtung zum Übermitteln der Kanalnummer
von entweder Asynchronflusspaketen oder Isochronpaketen zwischen
Knoten zwecks dynamischen Einrichtens oder Freigebens eines Kanals.
-
Im
Dokument
EP 0766428
A2 des Standes der Technik ist ein lokales Netz offenbart,
das Daten unter Verwendung von Isochron- und Asynchronkanälen überträgt. In dem
lokalen Netzsystem können mehrere
Knoten miteinander kommunizieren, um Informationen auszutauschen
und Daten zu übertragen,
und daher wird für
Verbindung mit den Knoten und für
Konfiguration von logischen Pfaden gesorgt, um einen Knoten logisch
mit einem anderen Knoten zu verknüpfen, um die Übertragung
der Daten sicherzustellen. Jeder Knoten, der als Quellknoten arbeitet, kann
asynchron Multicasting von Pakete auf einem zugewiesenen Kanal durchführen und
Multicast-Pakete empfangen, wenn er als Zielknoten arbeitet.
-
KURZE DARSTELLUNG
DER ERFINDUNG
-
Es
ist daher eine Aufgabe der vorliegenden Erfindung, ein Kommunikationsnetz
und ein Verfahren bereitzustellen, um Multicast-Kommunikation für IEEE-1394-Knoten
zu realisieren. In Übereinstimmung
mit der vorliegenden Erfindung werden ein Kommunikationsnetz und
ein Kommunikationsverfahren bereitgestellt wie in den unabhängigen Ansprüchen angegeben.
-
In Übereinstimmung
mit einem Aspekt wird ein Netz mit mehreren IEEE-1394-Knoten bereitgestellt,
die mit einem seriellen Bus verbunden sind, wobei jeder der Knoten
als ein Quellknoten oder ein Zielknoten zur Signalisierung einer
Asynchronkanaleinrichtungsanforderung, die eine Multicast-Adresse enthält, und
Signalisierung einer Asynchronkanalfreigabeanforderung arbeitet.
Ein Multicast-Manager ist mit dem seriellen Bus verbunden. Der Multicast-Manager
weist eine Kanalzuordnungstabelle mit mehre ren Einträgen auf,
die jeweils eine Kanalnummer auf eine Multicast-Adresse abbilden.
Der Multicast-Manager reagiert auf die Asynchronkanaleinrichtungsanforderung,
um eine Suche in der Tabelle durchzuführen, einen Knotenzählwert auf
1 zu setzen, Eigentum an einer Kanalnummer von einem IEEE-1394-Isochronressourcenmanager
zu erlangen und die erlangte Kanalnummer auf die Multicast-Adresse
der Anforderung in einem entsprechenden Eintrag der Zuordnungstabelle
abzubilden, wenn während
der Suche keine Kanalnummer auf die Multicast-Adresse abgebildet
wurde, oder den Knotenzählwert
um 1 zu erhöhen,
wenn eine Kanalnummer auf die Multicast-Adresse abgebildet wird,
und dann eine Antwortnachricht zu. signalisieren. Der Quellknoten
reagiert auf die Antwortnachricht von dem Multicast-Manager, um
Multicasting von Asynchronflusspaketen zu dem seriellen Bus durchzuführen. Der
Multicast-Manager reagiert weiterhin auf die Asynchronkanalfreigabeanforderung,
um den Knotenzählwert
um 1 zu erniedrigen. Wenn der Knotenzählwert gleich null ist, gibt
der Multicast-Manager das
Eigentum an der Kanalnummer an den Isochronressourcenmanager zurück und löscht den
entsprechenden Eintrag der Kanalzuordnungstabelle.
-
In Übereinstimmung
mit einem zweiten Aspekt wird ein Kommunikationsnetz mit mehreren IEEE-1394-Knoten,
die mit einem seriellen Bus verbunden sind, wobei jeder der Knoten
als ein Quellknoten oder ein Zielknoten zur Signalisierung einer Isochronkanaleinrichtungsanforderung,
die Sitzungsdaten enthält,
und Signalisierung einer Isochronkanalfreigabeanforderung arbeitet,
und einem Multicast-Manager bereitgestellt, der mit dem seriellen Bus
verbunden ist. Der Multicast-Manager weist eine Kanalzuordnungstabelle
mit mehreren Einträgen
auf, die jeweils eine Kanalnummer auf Sitzungsdaten abbilden. Der
Multicast-Manager reagiert auf die Isochronkanaleinrichtungsanforderung,
um eine Suche in der Tabelle durchzuführen, einen Knotenzählwert auf
1 zu setzen, Eigentum an einer Kanalnummer und der notwendigen Kanalressource
von einem IEEE-1394-Isochronressourcenmanager zu erlangen und die
Kanalnummer und die notwendige Kanalressource auf die Sitzungsdaten
der Anforderung in einem entsprechenden Eintrag der Tabelle abzubilden,
wenn während
der Suche keine Kanalnummer auf die Sitzungsdaten abgebildet wurde,
oder den Knotenzählwert
um 1 zu erhöhen,
wenn während
der Suche eine Kanalnummer auf die Sitzungsdaten abgebildet wird,
und eine Antwortnachricht zu signalisieren. Der Quellknoten reagiert
auf die Antwortnachricht, um Multicasting von Isochronpaketen zu
dem Bus durchzuführen.
Der Multicast-Manager reagiert weiterhin auf das Isochronkanalfreigabeanforderungspaket,
um den Knotenzählwert
um 1 zu erniedrigen. Wenn der Knotenzählwert gleich null ist, gibt der
Multicast-Manager das Eigentum an der Kanalnummer und der Kanalressource
an den Isochronressourcenmanager zurück und löscht den entsprechenden Eintrag
der Tabelle.
-
In Übereinstimmung
mit einem weiteren Aspekt wird ein Kommunikationsnetz mit mehreren IEEE-1394-Knoten,
die mit einem seriellen Bus verbunden sind, wobei jeder der Knoten
als ein Quellknoten zur Signalisierung einer Pfadnachricht arbeitet,
die Sitzungsdaten anzeigt, und als ein Zielknoten für Empfang
der Pfadnachricht und Signalisierung einer ersten Isochronkanaleinrichtungsanforderung
arbeitet, die die in der Pfadnachricht angezeigten Sitzungsdaten
enthält,
wobei jeder der Quell- und Zielknoten eine Isochronkanalfreigabeanforderung
signalisiert, und einem Multicast-Manager bereitgestellt, der mit dem
seriellen Bus verbunden ist. Der Multicast-Manager weist eine Kanalzuordnungstabelle
mit mehreren Einträgen
auf, die jeweils eine Kanalnummer auf Sitzungsdaten abbilden. Der
Multicast-Manager reagiert auf das erste Isochronkanaleinrichtungspaket,
um eine Suche in der Tabelle durchzuführen, einen Knotenzählwert auf
1 zu setzen, Eigentum an einer Isochronkanalnummer von einem IEEE-1394-Isochronressourcenmanager
zu erlangen und die erlangte Kanalnummer auf die Sitzungsdaten des
Pakets in einem entsprechenden Eintrag der Tabelle abzubilden, wenn
während
der Suche keine Kanalnummer auf die Sitzungsdaten abgebildet wurde,
oder den Knotenzählwert
um 1 zu erhöhen,
wenn während
der Suche eine Kanalnummer auf die Sitzungsdaten abgebildet wird,
und eine erste Antwortnachricht zu signalisieren. Der Zielknoten
reagiert auf die erste Antwortnachricht, um eine Reservierungsnachricht
zu signalisieren, die eine gewünschte
Kanalressource anzeigt, und der Quellknoten reagiert auf die Reservierungsnachricht,
um eine zweite Isochronkanaleinrichtungsanforderung zu signalisieren,
die die in der Reservierungsnachricht angezeigte Kanalressource
enthält.
Der Multicast-Manager reagiert auf die zweite Isochronkanaleinrichtungsanforderung,
um notwendige Kanalressource aus einem Ressourcenwert in dem entsprechenden Eintrag
der Zuordnungstabelle zu bestimmen, Eigentum an der notwendigen
Kanalressource von dem Isochronressourcenmanager zu erlangen und
den Ressourcenwert mit der erlangten Kanalressource zu aktualisieren
und eine zweite Antwortnachricht zu signalisieren. Der Quellknoten
reagiert auf die zweite Antwortnachricht vom Multicast-Manager,
um Multicasting von Isochronpaketen zu dem Bus durchzuführen. Der
Multicast-Manager reagiert auf die Isochronkanalein richtungsanforderung,
um den Knotenzählwert
um 1 zu erniedrigen. Wenn der Knotenzählwert gleich null ist, gibt
der Multicast-Manager das Eigentum an der Kanalnummer und der Kanalressource
an den Isochronressourcenmanager zurück und löscht den entsprechenden Eintrag
der Tabelle.
-
KURZE BESCHREIBUNG
DER ZEICHNUNGEN
-
Es
folgt eine nähere
Beschreibung der vorliegenden Erfindung unter Bezugnahme auf die
begleitenden Zeichnungen, in denen:
-
1 ein
Blockdiagramm eines seriellen IEEE-1394-Busnetzes ist, das die vorliegende
Erfindung verkörpert,
-
2 eine
Darstellung einer einem Multicast-Manager innewohnenden Kanalzuordnungstabelle
ist,
-
3 eine
Darstellung eines dem Multicast-Manager innewohnenden Steuerregisters
ist, um direkt von einem anfordernden Knoten eingerichtet und von
dem Multicast-Manager
gelesen zu werden, wenn ein Asynchronkanal in Multicast-Betriebsart
oder ein Iosochronkanal in Multicast-Betriebsart gebildet wird,
-
4 eine
Darstellung eines einem IEEE-1394-Knoten innewohnenden Steuerregisters ist,
um direkt von dem Multicast-Manager eingerichtet und von dem anfordernden
Knoten gelesen zu werden, wenn ein Asynchronkanal in Multicast-Betriebsart
oder ein Iosochronkanal in Multicast-Betriebsart gebildet wird,
-
5A ein
Flussdiagramm des Betriebs eines Quellknoten des Netzes bei Anforderung
der Übertragung
von Multicast-Asynchronflusspaketen in Übereinstimmung mit einer ersten
Ausführungsform der
vorliegenden Erfindung ist,
-
5B ein
Flussdiagramm des Betriebs eines Zielknoten bei Anforderung des
Empfangs von Multicast-Asynchronflusspaketen in Übereinstimmung mit der ersten
Ausführungsform
der vorliegenden Erfindung ist,
-
6 ein
Flussdiagramm des Betriebs des mit anfordernden Knoten zusammenarbeitenden Multicast-Managers
ist, der in Übereinstimmung
mit dem Flussdiagramm von 5 arbeitet,
-
7 bis 10 Ablaufdiagramme
sind, die mit den Flussdiagrammen von 5 und 6 verknüpfte Asynchrontransaktionen
zeigen,
-
11A und 11B Flussdiagramme
des Betriebs eines einen Isochronkanal anfordernden Quellknotens
in Übereinstimmung
mit einer zweiten Ausführungsform
der vorliegenden Erfindung sind,
-
12 ein
Flussdiagramm des Betriebs eines den Empfang von Multicast-Isochronpaketen
anfordernden Zielknotens in Übereinstimmung
mit der zweiten Ausführungsform
der vorliegenden Erfindung ist,
-
13 ein
Flussdiagramm des Betriebs des mit den Knoten zusammenarbeitenden
Multicast-Managers ist, der in Übereinstimmung
mit den Flussdiagrammen von 11A, 11B und 12 arbeitet,
und
-
14 bis 16 Ablaufdiagramme
sind, die mit den Flussdiagrammen von 11A, 11B, 12 und 13 verknüpfte Isochrontransaktionen
zeigen.
-
DETAILLIERTE
BESCHREIBUNG
-
In 1 ist
ein typisches Beispiel für
ein serielles IEEE-1394-Bussystem dargestellt, in dem fünf Knoten 10A bis 10E vorgesehen
sind. Jeder Knoten weist ein Kommunikationsprotokoll wie z.B. das
Internet-Protokoll auf. In der folgenden Beschreibung wird der Knoten 10A als
ein Quellknoten erläutert
und 10C als ein Zielknoten, wobei der Zwischenknoten 10B als
Repeater (Wiederholer) zwischen den Knoten 10A und 10C arbeitet.
Der Knoten 10C arbeitet ebenfalls als Repeater, wenn ein
(asynchrones) Paket zwischen den Knoten 10A und 10D ausgetauscht
wird. Der Knoten 10D ist ein Multicast-Manager, der das Management
von Kanälen,
die Multicast-Kommunikation zugeordnet sind, und Dienstqualitätsparametern
(wie z.B. die Bandbreite von zugeordneten Kanälen) durch Zusammenarbeit mit
einem Knoten 10E durchführt,
der die Rolle eines Isochronressourcenmanagers annimmt. Man beachte,
dass diese Managerfunktionen in einem einzelnen Knoten kombiniert und
realisiert werden können.
Obwohl in 1 nicht gezeigt, hat jeder Knoten
eine physikalische Schicht, die mit dem seriellen IEEE-1394-Bus
verbunden ist, eine Verknüpfungsschicht
und eine Transaktionsschicht. Die Verknüpfungsschicht ist mit einer
Anwendungsschicht für
Isochrontransaktionen und außerdem
mit der Transaktionsschicht für
Asynchrontransaktionen verbunden.
-
In Übereinstimmung
mit der vorliegenden Erfindung ist der Multicast-Manager 10D mit
einer Kanalzuordnungstabelle 20 versehen, wie in 2 dargestellt.
Die Kanalzuordnungstabelle 20 hat mehrere Tabelleneinträge entsprechend
Kanalnummern "0" bis "63".
-
Jeder
Kanaleintrag der Kanalzuordnungstabelle 20 ist in Felder 21 bis 24 unterteilt.
Feld 21 ist ein Pakettyp-Feld, das zur Anzeige benutzt
wird, ob das für
eine Datenübertragung
zu benutzende Paket ein Isochronpaket, das mit einer konstanten
Rate in einer Multicast-Betriebsart innerhalb einer Nennzyklusperiode
von 125 μs übertragen
wird, oder ein Asynchronpaket ist, das in einer Multicast-Betriebsart innerhalb
eines als "Kulanzintervall" bekannten Intervalls
zwischen zwei Arbitrierungsrücksetzlücken zu übertragen
ist. Feld 22 ist ein Bandbreitefeld, in dem zugeordnete
Bandbreite angezeigt wird, wenn das Paket vom isochronen Typ ist.
Im Feld 23 ist eine Knotenzählung angegeben, um die Zahl
der an einer einzelnen Datenübertragung
teilnehmenden Knoten unabhängig
von den Typen der gerade benutzten Pakete anzuzeigen. 24 ist ein Adressfeld, in dem eine Multicast-Adresse
angezeigt wird, wenn die Datenübertragung
mit der Verwendung von Asynchronflusspaketen verbunden ist. Wenn
die Datenübertragungs-Betriebsart
isochron ist, werden Sitzungsdaten (Zielknotenadresse, Protokollnummer
und Port-Nummer) im Adressfeld 24 angezeigt.
-
Der
Multicast-Manager 10D ist weiterhin mit einem Steuerregister 30 versehen,
wie in 3 gezeigt. Das Steuerregister 30 ist
im CSR(Steuer- und Statusregister)-Architekturregisterraum des IEEE-1394-Standards
definiert und enthält
ein Befehlsfeld 31, um eine aus einem vordefinierten Satz von
Anzeigen (Asynchronbetriebsart-Kanaleinrichtung und -freigabe und
Isochronbetriebsart-Kanaleinrichtung und -freigabe) zu geben, und
ein Adressfeld 32, in dem eine Multicast-Adresse angezeigt
wird, wenn der Datentransfer asynchron ist, oder Sitzungsdaten (Zielknotenadresse,
Protokollnummer und Port-Nummer), wenn der Datentransfer isochron
ist. In das Steuerregister 30 wird direkt durch einen Knoten
geschrieben, der den Anfang oder das Ende einer Kommunikation anfordert,
und der Multicast-Manager 10D liest den Inhalt des Registers 30 und
weiß, dass
von einem der Knoten des Netzes eine Anforderung vorgenommen wird.
-
Jeder
der Knoten 10A bis 10C ist mit einem Steuerregister 40 versehen,
das ebenfalls im CSR-Architekturregisterraum definiert ist, wie
in 4 gezeigt. Dieses Steuerregister enthält ein Antwortfeld 41,
ein Adressfeld 42 und ein Kanalnummernfeld 43.
Das Antwortfeld 41 wird benutzt, um Multicast-(Asynchronbetriebsart)-Kanaleinrichtungsanzeige
oder Isochronbetriebsart-Kanaleinrichtungsanzeige anzuzeigen, und
das Adressfeld 42 wird benutzt, um eine Multicast-Adresse
im Falle von Asynchronbetriebsart und Sitzungsdaten während Isochronübertragungs-Betriebsart
zu speichern. In das Steuerregister 40 jedes Knotens wird
direkt durch den Multicast-Manager 10D geschrieben, und
der Knoten liest den Inhalt des Registers 40 und weiß, dass
eine Antworttätigkeit
vom Multicast-Manager 10D durchgeführt wird.
-
5A ist
das Flussdiagramm des Betriebs der Transaktionsschicht des Quellknotens 10A,
wenn Übertragung
von Asynchronflusspaketen von der Anwendungsschicht des Knotens
gestartet wird, und 5B ist das Flussdiagramm des
Betriebs der Transaktionsschicht des Zielknotens 10C, wenn Empfang
von solchen Multicast-Paketen von der Anwendungsschicht des Knotens
angefordert wird.
-
Speziell
prüft in 5A die
Transaktionsschicht am Quellknoten das Vorhandensein von IP-Multicast-Daten
von der Anwendungsschicht-Software (Schritt 501). Werden
IP-Multicast-Daten
erkannt, geht die Transaktionsschicht vom Schritt 501 zum
Schritt 502 weiter, um eine Anforderung, die eine Multicast-Adresse
enthält,
zum Einrichten eines Asynchronbetriebsart-Kanals zu senden. Dies
geschieht durch direktes Einstellen des Steuerregisters 30 des
Multicast-Managers 10D mit einer Asynchronbetriebsart-Anzeige
und einer Multicast-Adresse. Der Multicast-Manager 10D weiß, dass
er eine Anforderung von einem Knoten empfangen hat, und sendet eine
Antwort an den anfordernden Knoten. Dies wird erreicht, indem der
Multicast-Manager 10D direkt das Steuerregister 40 des
anfordernden Knotens mit einer Antwortanzeige, der Multicast-Adresse
des Knotens und einer vom Isochronressourcenmanager 10E erhaltenen
Kanalnummer einstellt. Wenn die Antwortanzeige im Steuerregister 40 eingestellt
ist (Schritt 503), wird der Quellknoten 10A konditioniert,
Asynchronflusspakete zu senden, die die zugewiesene Kanalnummer
in ihrem Kanalnummernfeld enthalten. Im Schritt 504 wird
ein Asynchronflusspaket während eines "Kulanzintervalls" gesendet, das durch
den 1394-Standard
in der Transaktionsschicht des Knotens angelegt ist, so dass jedem
Knoten, der eine Transaktion starten möchte, kulanter Zugang zum Bus
gegeben wird.
-
Im
Anschluss an die Transaktion eines Asynchronflusspakets wird ein
Zeitnehmer gestartet (Schritt 505), und im Schritt 506 erfolgt
eine Prüfung auf
das Vorhandensein eines ausstehenden Asynchronflusspakets mit der
gleichen Multicast-Adresse wie ein im Schritt 504 übertragenes.
Wenn es eines gibt, ist die Entscheidung im Schritt 506 bejahend, und
der Fluss geht zum Schritt 507 weiter, um den Zeitnehmer
zu löschen,
und kehrt zum Schritt 504 zurück, um die Asynchronflusspaket-Übertragung,
den Zeitnehmer-Anlauf und die Paket-vorhanden-Prüfung zu wiederholen. Wenn es
kein ausstehendes Asynchronflusspaket gibt, ist die Entscheidung
im Schritt 506 negativ, und der Fluss geht zum Schritt 508 weiter,
um zu prüfen,
ob der Zeitnehmer abgelaufen ist. Wenn der Zeitnehmer noch läuft, durchschleift
der Fluss die Schritte 506 und 508, so dass, wenn
ein Asynchronflusspaket auftritt, ehe der Zeitnehmer abläuft, es
in einem Kulanzintervall übertragen
wird. Wenn der Zeitnehmer misst, wird gefolgert, dass keine Pakete
mehr zu übertragen
sind, und der Fluss geht vom Schritt 508 zum Schritt 509 weiter, um
eine Kanalfreigabeanzeige in das Steuerregister 30 des
Multicast-Managers 10D zu setzen.
-
In 5B beginnt
der Betrieb des Zielknotens 10C im Schritt 511,
wenn die Transaktionsschicht des Knotens eine Datenempfangsanzeige von
seiner Anwendungsschicht empfängt.
Die Transaktionsschicht des Knotens 10C geht vom Schritt 511 zum
Schritt 512 weiter, um eine Anforderung, die eine Multicast-Adresse
enthält,
zum Einrichten eines Asynchronbetriebsart-Kanals zu senden. Dies
geschieht durch direktes Einstellen des Steuerregisters 30 des
Multicast-Managers 10D mit einer Asynchronbetriebsart-Anzeige und einer
Multicast-Adresse auf die gleiche Weise wie vom Quellknoten im Schritt 502 durchgeführt. Der
Multicast-Manager 10D weiß, dass er eine Anforderung
von einem Knoten empfangen hat, und sendet eine Antwort an den Zielknoten.
Dies wird außerdem
erreicht, indem der Multicast-Manager direkt das Steuerregister 40 des
Zielknotens mit einer Antwortanzeige, der Multicast-Adresse des Zielknotens
und einer vom Isochronressourcenmanager 10E erhaltenen
Kanalnummer einstellt. Wenn die Antwortanzeige im Steuerregister 40 eingestellt ist
(Schritt 513), wird der Zielknoten 10C konditioniert,
Asynchronflusspakete zu empfangen, die die zugewiesene Kanalnummer
in ihrem Kanalnummernfeld enthalten (Schritt 514). Wird
von der Anwendungsschicht des Zielknotens eine Empfangsende-Anzeige
gegeben (Schritt 515), beendet die Transaktionsschicht
die Routine durch Setzen einer Kanalfreigabeanzeige in das Steuerregister 30 des Multicast-Managers
(Schritt 516).
-
Der
Betrieb des Multicast-Managers 10D als Antwort auf die
Anforderungen nach Asynchronflusspaketen von den Quell- und Zielknoten
wird nun mit Hilfe des Flussdiagramms von 6 erläutert.
-
Der
Multicast-Manager 10D beginnt seinen Betrieb im Schritt 601,
in dem er prüft,
ob eine Asynchronbetriebsart-Kanaleinrichtungsanforderung oder eine
Asynchronbetriebsart-Kanalfreigabeanforderung von einem Knoten empfangen
wird. Dies wird erreicht, indem der Inhalt des Steuerregisters 30 daraufhin
geprüft
wird, ob die erforderlichen Daten durch einen anfordernden Knoten
gesetzt sind. Ist eine Asynchronbetriebsart-Kanaleinrichtungsanzeige im Register 30 gesetzt,
geht der Fluss vom Schritt 601 zum Schritt 602 weiter,
um eine Durchsuchung der Kanalzuordnungstabelle 20 nach
einem Kanaleintrag durchzuführen,
in dem die empfangene Multicast-Adresse registriert ist.
-
Wenn
es keinen Kanaleintrag gibt, der die Multicast-Adresse enthält, geht
der Fluss vom Schritt 603 zum Schritt 604 weiter,
um eine Kanalzuweisungsanforderung an den Isochronressourcenmanager 10E zu
senden, um Eigentum an einem Kanal zu erlangen. Wenn ein Kanal zur
Verfügung
steht, wird eine Kanalnummer vom Isochronressourcenmanager zugewiesen,
und dem Multicast-Manager 10D wird die zugewiesene Kanalnummer
mitgeteilt.
-
Im
Schritt 605 wird eine Asynchronpakettyp-Anzeige in das
Pakettyp-Feld 21 eines Kanaleintrags der Zuordnungstabelle 20 gesetzt,
der der zugewiesenen Kanalnummer entspricht, und die im Steuerregister 30 gespeicherte
Multicast-Adresse wird in das Adressfeld 24 dieses Kanaleintrags
gesetzt, und in das Knotenzählungsfeld 23 wird
eine "1" gesetzt. Auf diese
Weise wird eine Kanalnummer auf die Multicast-Adresse einer Asynchronkanaleinrichtungsanforderung
abgebildet.
-
Im
Schritt 606 sendet der Multicast-Manager ein Antwortpaket
an den Quellknoten, um ihm die auf den entsprechenden Eintrag der
Zuordnungstabelle 20 abgebildete Kanalnummer mitzuteilen,
und kehrt zum Startpunkt der Routine zurück.
-
Wird
eine Asynchronkanaleinrichtungsanforderung von einem anderen Knoten
empfangen, wiederholt der Multicast-Manager die Schritte 602 und 603,
so dass eine neue Multicast-Adresse durch diesen Knoten in das Adressfeld 32 des
Registers 30 gesetzt wird. Wenn die neue Multicast-Adresse
die gleiche wie die in das Adressfeld 24 der Zuordnungstabelle 20 gesetzte
Adresse ist, wird die Entscheidung im Schritt 603 bejahend,
und der Fluss geht zum Schritt 607 weiter, um den Wert
des Knotenzählungsfeldes 23 um
eins zu erhöhen,
und geht zum Schritt 606 weiter, um eine Antwortnachricht
an den anfordernden Knoten zu senden, indem dessen Steuerregister 40 mit
der bereits dem Knoten 10A zugewiesenen Kanalnummer eingestellt
wird. Auf diese Weise stellt der Knotenzählwert die Zahl der Knoten dar,
die den gleichen Asynchronkanal benutzen.
-
Wenn
der Quellknoten aufhört,
Asynchronflusspakete zu senden, sendet er eine Kanalfreigabeanforderung
durch Einstellen des Steuerregisters 30 mit einer Freigabeanzeige
(Schritt 509, 5A). Auf ähnliche Weise sendet der Zielknoten,
wenn er aufhört,
Asynchronflusspakete zu empfangen, eine Kanalfreigabeanforderung
durch Einstellen des Steuerregisters 30 mit einer Freigabeanzeige
(Schritt 516, 5B).
-
Als
Antwort auf solche Freigabeanforderungen geht der Multicast-Manager 10D,
der im Schritt 601 schleift, zum Schritt 608 weiter,
um den Wert im Knotenzählungsfeld 23 um
eins zu erniedrigen, und prüft,
ob die Knotenzählung
gleich null ist (Schritt 609). Wenn die Knotenzählung nicht
gleich null ist, kehrt der Fluss von Schritt 609 zum Schritt 601 zurück. Wenn
Knotenzählung
null ist, geht der Fluss zum Schritt 610 weiter, um ein
Kanalfreigabepaket an den Isochronressourcenmanager 10E zu
senden, um das Eigentum an dem zugewiesenen Kanal zurückzugeben,
und beendet die Routine mit dem Schritt 611 durch Löschen des
Inhalts des passenden Kanaleintrags der Zuordnungstabelle 20.
-
Der
Betrieb der Asynchrontransaktionen wird durch die folgende Beschreibung
mit Hilfe der Ablaufdiagramme von 7 bis 10 vollauf
verständlich.
-
Wenn
in 7 die Anwendungsschicht des Quellknotens 10A IP-Multicast-Daten 71 erzeugt, sendet
seine Transaktionsschicht ein Asynchronkanalbetriebsart-Kanaleinrichtungspaket 72 an
den Multicast-Manager 10D. Als Antwort durchsucht der Multicast-Manager die Kanalzuordnungstabelle 20 und
sendet eine Kanalanforderung 73 an den Isochronressourcenmanager 10E,
wenn der mit dem Einrichtungspaket vom Knoten 10A gesendeten
Multicast-Adresse keine Kanalnummer zugewiesen ist. Wenn der Quellknoten 10A der
Erste ist, der das Asynchronbetriebsart-Kanaleinrichtungspaket sendet,
wird eine Kanalnummer zugewiesen und dem Multicast-Manager 10D durch
ein Antwortpaket 74 mitgeteilt. Der Multicast-Manager 10D setzt
eine "1" in das Knotenzählungsfeld
der Zuordnungstabelle und sendet ein Antwortpaket 75 an
den Quellknoten 10A, um ihm die zugewiesene Kanalnummer
mitzuteilen. Der Quellknoten 10A sendet unter Verwendung
des zugewiesenen Kanals während
Kulanzintervallen Asynchronflusspakete 76 an die Anwendungsschicht
des Zielknotens 10C.
-
Wenn
in 8, mit einem wie oben beschrieben eingerichteten
Asynchronkanal, die Anwendungsschicht eines anderen Quellknotens
IP-Multicast-Daten 81 erzeugt, sendet seine Transaktionsschicht
ein Asynchronbetriebsart-Kanaleinrichtungspaket 82 an den
Multicast-Manager 10D, das die gleiche Multicast-Adresse
wie die vom Knoten 10A verwendete enthält. Als Antwort durchsucht
der Multicast-Manager die Kanalzuordnungstabelle 20, weiß, dass
die gerade empfangene Multicast-Adresse bereits einer Kanalnummer
zugewiesen ist, erhöht
die Knotenzählung
um eins und sendet ein Antwortpaket 83 an den neuen Quellknoten,
um ihm die bereits zugewiesene Kanalnummer mitzuteilen. Der neue Quellknoten
sendet unter Verwendung des zugewiesenen Kanals während Kulanzintervallen
Asynchronflusspakete 84 an die Anwendungsschicht des Zielknotens 10C.
-
Wenn
in 9 die Anwendungsschicht des Zielknotens 10C eine
Anzeige 91 an die Transaktionsschicht übergibt, dass IP-Multicast-Daten
von einem Quellknoten empfangen werden, sendet die Transaktionsschicht
ein Asynchronbetriebsart-Kanaleinrichtungspaket 92 an den
Multicast-Manager 10D, das eine Multicast-Adresse enthält. Als
Antwort durchsucht der Multicast-Manager die Kanalzuordnungstabelle 20 und
sendet eine Kanalanforderung 93 an den Isochronressourcenmanager 10E,
wenn der mit dem Einrichtungspaket vom Knoten 10C gesendeten
Multicast-Adresse keine Kanalnummer zugewiesen ist. Wenn der Zielknoten 10C der
Erste ist, der das Asynchronbetriebsart- Kanaleinrichtungspaket sendet, wird
eine Kanalnummer zugewiesen und dem Multicast-Manager 10D durch
ein Antwortpaket 94 mitgeteilt. Der Multicast-Manager 10D setzt
eine "1" in das Knotenzählungsfeld
der Zuordnungstabelle und sendet ein Antwortpaket 95 an
den Zielknoten 10C, um ihm die zugewiesene Kanalnummer
mitzuteilen. Der Zielknoten 10C ist nun bereit, Asynchronflusspakete
zu empfangen, die die durch das Antwortpaket 95 vom Multicast-Manager 10E angezeigte
Kanalnummer enthalten.
-
Wenn
in 10 die Anwendungsschicht eines anderen Zielknotens
eine Anzeige 101 an seine Transaktionsschicht übergibt,
dass IP-Multicast-Daten von einem Quellknoten empfangen werden,
sendet die Transaktionsschicht ein Asynchronbetriebsart-Kanaleinrichtungspaket 102 an
den Multicast-Manager 10D, das eine Multicast-Adresse enthält. Als Antwort
durchsucht der Multicast-Manager die Kanalzuordnungstabelle 20 und
weiß,
dass die gerade empfangene Multicast-Adresse bereits einer Kanalnummer
zugewiesen ist, und er erhöht
die Knotenzählung
um eins und sendet ein Antwortpaket 103 an den neuen Zielknoten,
um ihm die bereits zugeteilte Kanalnummer mitzuteilen.
-
Der
Wert im Knotenzählungsfeld 23 der
Zuordnungstabelle 20 im Multicast-Manager 10D wird als
Antwort auf ein von der Transaktionsschicht eines Quellknotens,
wenn ein vorbestimmtes Intervall lang keine Asynchronflusspakete übertragen
werden, oder von der Transaktionsschicht eines Zielknotens empfangenes
Asynchronbetriebsart-Kanaleinrichtungspaket um eins erniedrigt,
wenn ihm eine Kommunikationsende-Anzeige von der Anwendungsschicht
des Knotens mitgeteilt wird. Wenn der Knotenzählwert auf null vermindert
ist, fordert der Multicast-Manager den Isochronressourcenmanager
auf, den asynchronen Multicast-Kanal freizugeben.
-
11A und 11B sind
die Flussdiagramme des Betriebs der Verknüpfungsschicht des Quellknotens 10A,
wenn von der Anwendungsschicht des Knotens eine Übertragung von Multicast-Isochronpaketen
gestartet wird, unter Verwendung eines Bandbreitesteuerprotokolls
wie z.B. RSVP (Ressourcenreservierungsprotokoll). 12 ist
das Flussdiagramm des Betriebs der Verknüpfungsschicht des Zielknotens 10C,
wenn von der Anwendungsschicht des Knotens 10C ein Empfang
von solchen Isochronpaketen angefordert wird.
-
In 11A sendet die Anwendungsschicht des Knotens 10A eine
als "Pfadnachricht" bekannte Nachricht
an die Anwendungsschicht des Zielknotens 10C, um ihm Pfaddaten
der Quelle-Ziel-Kommunikationsverknüpfung mitzuteilen (Schritt 1101).
-
Wenn
in 12 die Anwendungsschicht des Knotens 10C die
Pfadnachricht vom Quellknoten 10A empfängt, legt sie eine Sitzungs-(Isochronbetriebsart)-Kanaleinrichtungsanzeige
an die Verknüpfungsschicht
an (Schritt 1201). Wenn die Verknüpfungsschicht diese Sitzungseinrichtungsanzeige empfängt (Schritt 1202),
sendet sie eine Sitzungseinrichtungsanforderung an den Multicast-Manager 10D,
indem sie sein Steuerregister 30 mit einer Isochronkanaleinrichtungsanzeige
einstellt (Schritt 1203). Wenn die Anforderung erfüllt wird,
wird eine Kanalnummer vom Multicast-Manager mit einer Antwortnachricht
gesendet, die in das Steuerregister 40 des Knotens 10C gesetzt
wird (Schritt 1204). Daher werden eine Kanaleinrichtungsanzeige,
Sitzungsdaten (Zielknotenadresse, Protokollnummer und Port-Nummer)
und die zugewiesene Kanalnummer in den Feldern 41, 42 bzw. 43 des
Steuerregisters 40 gespeichert.
-
Der
Fluss geht zum Schritt 1205 weiter, um eine Reservierungsnachricht
von der Anwendungsschicht des Zielknotens 10C an die Anwendungsschicht
des Quellknotens 10A zu senden, die die Bandbreite anzeigt,
die der Zielknoten über
den zugewiesenen Kanal empfangen möchte. Die Reservierung wird
durch wiederholte Übertragung
von Reservierungsnachrichten "aufgefrischt". Zu diesem Zweck
wird im Anschluss an die Ausführung
des Schritts 1205 ein Zeitnehmer gestartet (Schritt 1206).
-
Im
Schritt 1207 wird der Empfang eines Sitzungsfreigabeanzeige
von der Anwendungsschicht geprüft.
Wenn die Entscheidung im Schritt 1207 negativ ist, wird
der Zeitnehmer im Schritt 1208 auf Ablauf geprüft. Wenn
der Zeitnehmer abläuft,
kehrt der Fluss vom Schritt 1208 zum Schritt 1205 zurück, um die Übertragung
einer Reservierungsnachricht zu wiederholen und den Zeitnehmer neu
zu starten.
-
Wird
während
der Auszeit-Periode des Zeitnehmers keine Reservierungsnachricht
gesendet, wird eine Sitzungsfreigabeanzeige von der Anwendungsschicht
ausgegeben, und der Fluss verlässt
die Schleife und betritt den Schritt 1209, um die Routine zu
beenden, indem eine Sitzungsfreigabeanforderung vom Zielknoten 10C an
den Multicast-Manager 10D gesendet
wird, indem sein Steuerregister 30 passend gesetzt wird.
-
Zurück zu 11A, wird eine Reservierungsnachricht vom Zielknoten
von der Anwendungsschicht des Quellknotens empfangen und wird eine
Sitzungskanaleinrichtungsanzeige an die Verknüpfungsschicht ausgegeben (Schritt 1102).
-
Im
Schritt 1103 sendet der Quellknoten 10A eine Sitzungskanaleinrichtungsanforderung
an den Multicast-Manager 10D, um die vom Zielknoten 10C gewünschte Bandbreite
anzufordern. Dies geschieht durch Einstellen des Steuerregisters 30 des
Managers 10D mit den Sitzungsdaten und den Bandbreitedaten,
die mit der Reservierungsnachricht vom Zielknoten empfangen wurden.
Wenn die Anforderung erfüllt
wird, wird ein Antwortpaket vom Multicast-Manager an den Zielknoten
gesendet, wobei das Steuerregister 40 mit der zugewiesenen
Kanalnummer eingestellt wird (Schritt 1104).
-
Im
Schritt 1105 beginnt der Quellknoten, Isochronpakete mit
der zugewiesenen Kanalnummer an den Zielknoten zu senden.
-
Nach
dem Senden von Isochronpaketen prüft der Quellknoten, ob eine
Sitzungsfreigabeanzeige von seiner Anwendungsschicht empfangen wird
(Schritt 1111, 11B).
Wenn ja, geht der Fluss zum Schritt 1112 weiter, um eine
Sitzungsfreigabeanforderung an den Multicast-Manager 10D zu
senden, indem sein Steuerregister 30 mit einer Sitzungsfreigabeanzeige
und den Sitzungsdaten eingestellt wird.
-
Der
Betrieb des Multicast-Managers 10D als Antwort auf die
Anforderung von Isochronpaketen wird nun mit Hilfe des Flussdiagramms
von 13 erläutert.
-
Der
Betrieb des Multicast-Managers 10D beginnt mit dem Schritt 1301,
indem der Empfang einer Sitzungseinrichtungsanforderung oder einer
Sitzungsfreigabeanforderung vom Zielknoten 10C geprüft wird,
indem sein Steuerregister 30 untersucht wird. Wird eine
Sitzungsfreigabeanforderung vom Zielknoten 10C empfangen,
geht der Fluss vom Schritt 1301 zum Schritt 1302 weiter,
um die Kanalzuordnungstabelle 20 nach einem Kanaleintrag
zu durchsuchen, in dem die jetzt im Steuerregister 30 gespeicherten
Sitzungsdaten registriert sind. Wenn sie nicht in der Zuordnungstabelle
registriert sind (Schritt 1303), geht der Fluss zum Schritt 1304 weiter,
um eine Anforderung an den Isochronressourcenmanager 10E zu
senden, Eigentum an einer Kanalnummer zu erlangen. Wird vom Isochronressourcenmanager
eine Kanalnummer vergeben, geht der Multicast-Manager zum Schritt 1305 weiter,
um eine Isochronpakettyp-Anzeige in das Pakettyp-Feld 21 des
Kanaleintrags der Zuordnungstabelle entsprechend der zugewiesenen
Kanalnummer, eine "1" in das Knotenzählungsfeld 23 und
Sitzungsdaten in das Adressfeld 24 zu setzen (Schritt 1306).
Im Anschluss an die Ausführung
des Schritts 1305 geht der Fluss zum Schritt 1306 weiter,
um eine Antwortnachricht an den Zielknoten zu senden, indem sein
Steuerregister 40 mit der zugewiesenen Kanalnummer eingestellt wird,
und kehrt dann zum Beginn der Routine zurück, um die Schritte 1031 und 1310 zu
durchschleifen, um die Ankunft einer weiteren Anforderung von einem Quell-
oder Zielknoten zu prüfen.
-
Wenn
die Entscheidung im Schritt 1303 als Antwort auf den Empfang
eines nachfolgenden Pakets von einem anderen Zielknoten bejahend
ist, wird der Knotenzählwert
der Zuordnungstabelle 20 im Schritt 1307 um eins
erhöht,
und eine Antwortnachricht, die die zugewiesene Kanalnummer enthält, wird
in das Steuerregister 40 des anfordernden Zielknotens gesetzt
(Schritt 1306).
-
Die
Anwendungsschicht am Zielknoten 10C sendet dann wiederholt
eine Reservierungsnachricht an die Anwendungsschicht des Quellknotens 10A, um
die Bandbreite mitzuteilen, die der Zielknoten zu empfangen bereit
ist (Schritt 1206, 12). Als
Antwort auf jede Reservierungsnachricht sendet der Quellknoten 10A in Übereinstimmung
mit dem Ressourcenreservierungsprotokoll eine Sitzungseinrichtungsanforderung
an den Multicast-Manager 10D (Schritte 1101 bis 1103, 11A).
-
Die
Sitzungseinrichtungsanforderung vom Zielknoten 10A wird
im Schritt 1310 erkannt. Da das Ressourcenreservierungsprotokoll
ein empfängerorientiertes
Protokoll ist, enthält
diese Anforderung die Bandbreite, die der Zielknoten 10C zu
empfangen bereit ist, und außerdem
die Sitzungsdaten. Als Antwort auf die Anforderung geht der Multicast-Manager 10D zum
Schritt 1311 weiter, um die vom Zielknoten angeforderte
Bandbreite mit einem gegenwärtig
im Bandbreitefeld des entsprechenden Eintrags der Zuordnungstabelle 20 eingestellten
Wert zu vergleichen.
-
Wenn
der Quellknoten 10A der Erste ist, der während der
gegenwärtigen
Sitzung eine Pfadnachricht sendet, ist der im Bandbreitefeld des
entsprechenden Eintrags eingestellte Wert null, und daher ist die
Entscheidung im Schritt 1311 negativ, und der Fluss geht
zum Schritt 1312 weiter, um das Eigentum an der angeforderten
Bandbreite vom Isochronressourcenmanager 10E zu sichern.
Wenn die angeforderte Bandbreite bewilligt wird, wird das Bandbreitefeld
des entsprechenden Eintrags der Zuordnungstabelle mit der bewilligten
Kanalressource aktualisiert (Schritt 1313). Der Fluss geht
zum Schritt 1306 weiter, um eine Antwortnachricht an den
Quellknoten 10A zu senden, um die zugewiesene Kanalnummer mitzuteilen.
Diese Kanalnummer und die entsprechenden Sitzungsdaten werden in
das Steuerregister 40 des Quellknotens gesetzt.
-
Wenn
der Quellknoten 10A nicht der Erste ist, der eine Pfadnachricht
sendet, sind die im Schritt 1311 verglichenen Werte möglicherweise
einander gleich, und der Fluss kehrt vom Schritt 1311 zum Schritt 1306 zurück, um eine
Antwortnachricht an den Quellknoten zu senden, um die Kanalnummer
mitzuteilen, die bereits zugeteilt worden ist. Wenn die angeforderte
Kanalnummer größer als
der gegenwärtig zugeordnete
Wert ist, bestimmt der Multicast-Manager die Defizit-Kanalressource
und fordert sie vom Isochronressourcenmanager an (Schritt 1312),
aktualisiert das Bandbreitefeld des entsprechenden Kanaleintrags
(Schritt 1313) und teilt dem Quellknoten die Kanalnummer
und die Sitzungsdaten mit (Schritt 1306). Wenn die angeforderte
Bandbreite kleiner als der gegenwärtig zugeordnete Wert ist,
bestimmt der Multicast-Manager einen Überschusswert und gibt das
Eigentum an der überschüssigen Ressource
an den Isochronressourcenmanager zurück (Schritt 1312)
und aktualisiert das Bandbreitefeld des entsprechenden Kanaleintrags
(Schritt 1313) und geht zum Schritt 1306 weiter,
um die Kanalnummer und die Sitzungsdaten mitzuteilen.
-
Am
Ende der Sitzung gibt entweder ein Quellknoten oder ein Zielknoten
eine Sitzungsfreigabeanforderung aus. Nach Durchschleifen der Schritte 1301 und 1310 fährt der
Multicast-Manager 10D mit Ausstiegen aus dem Schritt 1301 als
Antwort auf den Empfang einer Sitzungsfreigabeanforderung von einem
Zielknoten oder aus dem Schritt 1310 als Antwort auf den
Empfang einer Sitzungsfreigabeanforderung von einem Quellknoten
fort und betritt den Schritt 1314, um den Knotenzählwert um
eins zu erniedrigen.
-
Im
Schritt 1315 wird die Knotenzählung untersucht. Wenn sie
nicht gleich null ist, kehrt der Fluss zum Schritt 1301 zurück. Andernfalls
geht der Fluss zum Schritt 1316 weiter, um eine Kanalfreigabenachricht
an den Isochronressourcenmanager 10E zu senden, um das
Eigentum an dem zugewiesenen Kanal zurückzugeben, und beendet die
Routine nach Löschen
des entsprechenden Kanaleintrags der Zuordnungstabelle 20 (Schritt 1317).
-
Der
Betrieb der Isochrontransaktionen wird durch die folgende Beschreibung
mit Hilfe der Ablaufdiagramme von 14 bis 16 vollauf
verständlich.
-
In 14 überträgt die Anwendungsschicht des
Quellknotens 10A anfänglich
eine "Pfadnachricht" 1401 an
die Anwendungsschicht des Zielknotens 10C, welcher antwortet,
indem er an seine Verknüpfungsschicht
eine Sitzungseinrichtungsanzeige 1402 ausgibt. Die Verknüpfungsschicht
des Zielknotens 10C sendet ein Sitzungs-(Isochronbetriebsart)-Kanaleinrichtungspaket 1403 an
den Multicast-Manager 10D. Als Antwort durchsucht der Multicast-Manager 10D die
Zuordnungstabelle 20 und sendet eine Kanalanforderung 1404 an
den Isochronressourcenmanager 10E, da der Sitzung keine Kanalnummer
zugewiesen ist. Vom Isochronressourcenmanager wird eine Kanalnummer
zugewiesen und dem Multicast-Manager 10D durch ein Antwortpaket 1405 mitgeteilt.
Der Multicast-Manager 10D setzt eine "1" in
das Knotenzählungsfeld
der Zuordnungstabelle 20 und sendet ein Antwortpaket 1406 an
den Zielknoten 10C, um ihm die zugewiesene Kanalnummer
mitzuteilen. Danach wird eine Reservierungsnachricht 1407 von
der Anwendungsschicht des Zielknotens 10C an die Anwendungsschicht
des Quellknotens 10A gesendet, um ihm die Bandbreite mitzuteilen,
die der Zielknoten empfangen möchte.
-
Die
Anwendungsschicht des Quellknotens 10A gibt eine Sitzungseinrichtungsanzeige 1408 an seine
Verknüpfungsschicht
aus, die mit der Übertragung
eines Sitzungskanaleinrichtungspakets 1409 an den Multicast-Manager
antwortet, um die vom Zielknoten 10C verlangte Bandbreite
anzufordern. Der Multicast-Manager 10D antwortet mit einer
Nachricht 1410 an den Isochronressourcenmanager, um die
erforderliche Bandbreite mit einer Antwortnachricht 1411 zu
erhalten. Die zugeordnete Bandbreite wird mit einem Antwortpaket 1412 dem
anfordernden Quellknoten 10A mitgeteilt, dessen Anwendungsschicht
nun konditioniert ist, Isochronpakete 1413 mit konstanter
Rate an die Anwendungsschicht des Zielknotens 10C zu senden.
Der Zielknoten 10C empfängt
Isochronpakete, wenn sie die gleiche Kanalnummer und Sitzungswerte
enthalten wie die durch das Antwortpaket 1406 angezeigten
Werte.
-
Wenn
in 15 bei einer wie oben beschrieben eingerichteten
Sitzung die Anwendungsschicht eines anderen Quellknotens eine "Pfadnachricht" 1501 an
den Zielknoten 10C sendet, sendet die Verknüpfungsschicht
des Zielknotens 10C als Antwort auf eine Sitzungseinrichtungsanzeige 1502 von
der Anwendungsschicht des Knotens 10C ein Sitzungskanaleinrichtungspaket 1503 an
den Multicast-Manager 10D. Der Multicast-Manager durchsucht
dann die Kanalzuordnungstabelle 20 und sendet keine Kanalanforderung
an den Isochronressourcenmanager, da der Sitzung eine Kanalnummer
zugewiesen worden ist. Der Multicast-Manager 10D erhöht den Knotenzählwert um
eins und sendet ein Antwortpaket 1504 an den Zielknoten 10C,
um ihm die zugewiesene Kanalnummer und die Sitzungswerte (Quellknotenadresse,
Protokollnummer und Port-Nummer) mitzuteilen.
Danach wird eine Reservierungsnachricht 1505 von der Anwendungsschicht
des Zielknotens 10C an die Anwendungsschicht des Quellknotens
gesendet, um ihm die Bandbreite mitzuteilen, die er empfangen möchte. Die
Anwendungsschicht des Quellknotens antwortet mit einer Sitzungseinrichtungsanzeige 1506,
die an seine Verknüpfungsschicht
ausgegeben wird, die mit der Übertragung
eines Sitzungskanaleinrichtungspakets 1507 zum Multicast-Manager
antwortet, um die vom Zielknoten 10C verlangte Bandbreite
anzufordern. Der Multicast-Manager 10D antwortet mit einer
Nachricht 1508 an den Isochronressourcenmanager, um die zugeordnete
Bandbreite in Abhängigkeit
von der vom Zielknoten angeforderten Bandbreite zu vergrößern oder
zu verkleinern. Die neu zugeordnete Bandbreite wird mit einer Antwortnachricht 1509 dem
Quellknoten mitgeteilt, dessen Anwendungsschicht nun konditioniert
ist, Isochronpakete 1510 mit konstanter Rate an die Anwendungsschicht
des Zielknotens zu senden. Der Zielknoten empfängt Isochronpakete, wenn sie
die gleiche Kanalnummer und Sitzungswerte enthalten wie die durch
das Antwortpaket 1504 angezeigten Werte.
-
Wie
in 16 dargestellt, wird eine Sitzungsfreigabeanzeige 1601 von
der Anwendungsschicht eines Zielknotens an seine Verknüpfungsschicht
ausgegeben, die mit der Übertragung
eines Sitzungsfreigabepakets 1602 an den Multicast-Manager 10D antwortet.
Der Knotenzählwert
am Multicast-Manager wird um eins erniedrigt. Die Anwendungsschicht
an einem Quellknoten überwacht
die Ankunft von Reservierungsnachrichten. Wenn sie ein vorbestimmtes
Intervall lang nicht ankommen, gibt die Quellknoten-Anwendungsschicht
eine Sitzungsfreigabeanzeige 1603 an ihre Verknüpfungsschicht aus,
die mit der Übertragung
eines Sitzungsfreigabepakets 1604 an den Multi cast-Manager
antwortet, der den Knotenzählwert
um eins erniedrigt. Wenn der Knotenzählwert auf null vermindert
ist, sendet der Multicast-Manager ein Kanalfreigabepaket 1605 an den
Isochronressourcenmanager, um das Eigentum an der zugeordneten Kanalnummer
und Bandbreite freizugeben.