-
Technisches Gebiet der Erfindung
-
Die
vorliegende Erfindung betrifft Verfahren und Vorrichtungen zum Zuweisen
von Zeitschlitzen zu leitungsvermittelten Kanälen, die so eingerichtet werden,
dass sie jeweils einen oder mehrere Zeitschlitze in einem wiederkehrenden
Frame eines Zeitmultiplex-Netzes umfassen.
-
Technischer Hintergrund und
Stand der Technik
-
Heutzutage
werden neue Typen von Kommunikationsnetzwerken für die Übertragung von Informationen
in leitungsvermittelten Kanälen
von Zeitmultiplex-Netzen entwickelt. In einem solchen Netzwerk wird
ein wiederkehrender Frame des Netzwerks in Zeitschlitze unterteilt
und die leitungsvermittelten Kanäle
werden so eingerichtet, dass sie jeweils einen oder mehrere Zeitschlitze
des wiederkehrenden Frames umfassen. Daher wird jedem Kanal eine
jeweilige Gruppe aus einem oder mehreren Zeitschlitzen innerhalb
des wiederkehrenden Frames zugeordnet, um so exklusiven Schreibzugriff
auf die jeweilge Gruppe von Zeitschlitzen zu erlangen.
-
Ein
Beispiel für
ein solches Netz ist das so genannte DTM-Netz (DTM – Dynamic
Synchronous Transfer Mode). DTM ist eine Breitband-Netzwerk-Architektur
(siehe z.B. Christer Bohr, Per Lindgren, Lars Ramfeldt und Peter
Sjödin,
The DTM Gigabit Network, Journal of High Speed Networls, 3(2), 109-126,
1994 und Lars Gauffin, Lars Håkansson und
Björn Pehrson,
Multi-gigabit networking based an DTM, Computer Networks and ISDN
Systems, 24(2), 119-139, April 1992).
-
Im
Stand der Technik werden Richtlinien für eine Entscheidung an einem
Knoten eines solchen Netzes beschrieben, wann der Knoten Schreibzugriff an
Zeitschlitze aus anderen Knoten vergeben sollte, d.h. die Zuweisung
von Zeitschlitzen zugunsten anderer Knoten zurücknehmen sollte. Wie in der
WO 97/36402 offenbart ist,
wird ein Knoten zum Beispiel Zeitschlitze abgeben, wenn er über freie
Schlitze verfügt,
d.h. Schlitze, die nicht einem der Endbenutzer, die von diesem Knoten
bedient werden, zugewiesen sind. In vielen Fällen wird jedoch ein Bedarf
nach flexibleren Richtlinien bestehen, der mehr Möglichkeiten
für die
Steuerung der Zuweisung und der Zurücknahme der zugewiesenen Zeitschlitze
bereitstellt. In diesem Stand der Technik wird auch ein Problem
bezüglich
des Mangels an Ressourcen auftreten, wenn in dem entsprechenden
Frame für
das Beantworten einer Anforderung bezüglich einer zusätzlichen
Kapazität
zum Übertragen
von Schlitzen keine freien Schlitze verfügbar sind.
-
Aufgabe der Erfindung
-
Eine
Aufgabe der Erfindung ist, einen flexibleren, relativ einfachen
Weg zum Steuern der Zuweisung und Zurücknahme von den Kanälen zugewiesenen
Zeitschlitzen bereitzustellen, wobei auch zum Beispiel die Situation
berücksichtigt
wird, dass keine freien Schlitze verfügbar sind, bereitzustellen.
-
Zusammenfassung der Erfindung
-
Das
oben angegebene und andere Ziele werden mit der Erfindung so erreicht,
wie in den beigefügten
Ansprüchen
definiert ist.
-
Gemäß einem
ersten und einem zweiten Aspekt der Erfindung wird daher entsprechend
ein Verfahren und eine Vorrichtung der in der Einleitung erwähnten Art
bereitgestellt, wobei eine Gruppe von Zeitschlitzen einem ersten
Kanal zugewiesen wird; jeder Zeitschlitz der Gruppe von Zeitschlitzen
mit einer ersten ausgewählten
Stufe von wenigstens zwei verfügbaren
Stufen von Priorität
verknüpft
wird; eine Anforderung eines oder mehrerer Zeitschlitze, die mit einer
zweiten ausgewählten
Stufe von Priorität
verknüpft
sind, für
einen zweiten Kanal empfangen wird; die Stufen von Priorität, die mit
den angeforderten Zeitschlitzen und den Zeitschlitzen des ersten
Kanals verknüpft
sind, verglichen werden; und bestimmt wird, ob die Zuweisung von
Zeitschlitzen zu dem ersten Kanal zurückgenommen wird oder nicht
und die Zeitschlitze, deren Zuweisung zurückgenommen wurde, zu dem zweiten
Kanal auf Basis des Vergleichs zugewiesen werden.
-
Wenn
zum Beispiel Zeitschlitze dem Kanal A zugewiesen wurden und mit
einer geringen Stufe von Priorität
verknüpft
sind, was auch als die Priorität,
mit der der Kanal A diese Zeitschlitze "belegt", bezeichnet werden kann, benötigt ein
weiterer Kanal B mehr Ressourcen und es können ihm keine freien Schlitze zur
Verfügung
gestellt werden, was dann eine Zurücknahme der dem Kanal A zugewiesenen
Zeitschlitze erzwingen kann, um diese für den Kanal B zu verwenden,
wenn dessen Anforderungen eine höhere
Stufe von Priorität
betreffen als die Stufe von Priorität, mit der die dem Kanal A
zugewiesenen Zeitschlitze verknüpft
sind.
-
Wie
verstanden wird, kann eine Anforderung dieser Art an einem einzigen
Punkt oder Knoten in dem Netzwerk sowohl erzeugt werden als auch
angeordnet sein, wobei die Anordnung dieser Anforderung somit kein
Senden von Anforderungen zu anderen Punkten oder Knoten des Netzes
erfordert. Die Anordnung dieser Anforderung kann jedoch natürlich auch
das Senden dieser Anforderung an andere Punkte oder Knoten des Netzes
beinhalten.
-
Obwohl
die Erfindung natürlich
nicht darauf beschränkt
ist, wird gemäß einer
Ausführungsform der
Erfindung, wenn die Erfindung in einer Situation verwendet wird,
bei der die Anforderung der oben erwähnten Art zwischen Punkten
oder Knoten eines Netzes übertragen
wird, nur die Zuweisung freier Schlitze zwischen Knoten zurückgenommen,
so dass die Anforderung, wenn die Anforderung zu einem anderen Knoten
gesendet wird, angeordnet wird, d.h. die Priorität, die mit einer Anforderung
verknüpft
ist, wird in einem solchen Fall ignoriert, so dass die Operation
bei einem anderen Knoten vereinfacht wird. Die mit dieser Anforderung
verknüpfte
Priorität
wird in einer solchen Ausführungsform
nur berücksichtigt, wenn
Schlitze zwischen Kanälen,
die von einem einzelnen Knoten oder einem einzelnen Punkt in dem Netz
bedient werden, zugewiesen werden.
-
Gemäß einer
alternativen Ausführungsform der
Erfindung kann, wenn die Erfindung in einer Situation verwendet
wird, in der eine Anforderung der oben erwähnten Art zwischen Punkten
oder Knoten des Netzes übertragen
wird, die Zuweisung der Zeitschlitze, die bereits Kanälen, die
von anderen Knoten bedient werden, zugewiesen wurden, unter den
Knoten zurückgenommen
werden, um die Anforderung anzuordnen, so dass es möglich wird,
dass die mit einer Anforderung verknüpfte Priorität die Entscheidungen
beeinflusst, die an einem anderen Knoten getroffen wurden, was von
Vorteil sein kann, wenn zum Beispiel Multi-Hop-Kanäle eingerichtet
werden.
-
Ein
Vorteil der Erfindung ist daher, dass sie den Einsatz von Ressourcen,
die leitungsvermittelten Kanälen
zugewiesen wurden, auf eine flexiblere Weise berücksichtigt. Wenn zum Beispiel
freie Ressourcen in einem Frame, d.h. freie, nicht zugewiesene Zeitschlitze,
vorhanden sind, können
diese vorübergehend
von einem ersten Kanal mit einer geringen Priorität verwendet
werden, bis ein zweiter Kanal mit einem höher priorisierten Bedarf nach
diesen Ressourcen erscheint. Die Zuweisung der Ressourcen zu dem
ersten Kanal wird dann zurückgenommen und
sie werden dem zweiten Kanal zugewiesen. Die Ressourcen können daher
durch nahezu Best-Effort anfordernde Kanäle (Leitungen), ohne das Risiko, höher priorisierte
Kanäle
zu blockieren, verwendet werden. Dieses Schema stellt daher eine
Möglichkeit bereit,
die Ressourcen in dem Fall von Best-Effort-Verkehr, wie beispielsweise
Datenverkehr, in einem leitungsvermittelten Netz effizienter zu
verwenden.
-
Die
Entscheidung, bis zu welcher Stufe von Priorität Zeitschlitze für einen
Kanal ausgewählt
werden sollen, kann auf vielen verschiedenen Arten von Informationen
basieren. Zum Beispiel kann ein Netzwerkoperator manuell eine Stufe
von Priorität
angeben, wenn ein Kanal eingerichtet wird. Alternativ dazu kann
gemäß bevorzugter
Ausführungsformen der
Erfindung die Stufe von Priorität
auf Basis der Identität
eines physikalischen oder virtuellen Ports, einer Schnittstelle
oder einem Benutzer, zu/von dem Verkehr, der den Kanal betrifft,
abgegeben wird, oder auf Basis des Typs von Anwendung, die auf dem
jeweiligen Kanal zu transportierenden Verkehr betrifft, ausgewählt werden.
Zum Beispiel kann Kanälen,
die Verkehr transportieren, der Anwendungen in Echtzeit, wie beispielsweise
Sprach- oder Videoanwendungen in Echtzeit, betrifft, eine hohe Priorität gegeben
werden, während
Datenverkehr mit stark unterschiedlichem, teilweise intensivem Datenaufkommen eine
geringe Priorität
gegeben werden kann. Gemäß einer
anderen Ausführungsform
kann die für
einen Kanal ausgewählte
Priorität
auch automatisch auf Basis von Prioritätsinformationen, die von höher liegenden
Netz-Protokollen hergeleitet sind, ausgewählt werden. Zum Beispiel können, wenn
ein höher liegendes
Netz-Protokoll das Senden von Paketen mit Prioritätsinformationen,
die in dem Paket-Header enthalten sind, betrifft, können solche
Prioritätsinformationen
zum Auswählen
einer Priorität
für einen
leitungsvermittelten Kanal, in dem diese Pakete transportiert werden
sollen, verwendet werden.
-
Ein
weiterer Vorteil der Erfindung ist, dass sie ein Schema bereitstellt,
das Netzwerk-Operatoren ermöglicht,
verschiedene Benutzer-Dienstklassen für seine Endbenutzer oder Kunden
anzubieten. Zum Beispiel kann eine hohe Dienstklasse, die Zugriff
auf Kanäle
bereitstellt, denen mit einer hohen Stufe von Priorität verknüpfte Zeitschlitze
zugewiesen sind und die daher einen zuverlässigeren Zugriff auf die Bandbreite
bereitstellen, Kunden mit einem solchen Bedarf, wie beispielsweise
Fernseh- und Rundfunkanstalten, angeboten werden, während eine
geringe Dienstklasse, die Zugriff auf Kanäle bereitstellt, denen mit
einer geringen Stufe von Priorität
verknüpfte Zeitschlitze
zugewiesen sind und die daher einen weniger zuverlässigen Zugriff
auf die Bandbreite bereitstellen, Kunden mit einem solchen eingeschränkten Bedarf
angeboten werden.
-
Wie
verstanden wird, können
in alternativen Ausführungsformen
mehr als zwei Stufen von Priorität
vorhanden sein. Jede Stufe von Priorität, ebenso wie jeder Typ einer
Dienstklasse, kann auch mit verschiedenen Arten von Eigenschaften
verknüpft
sein. Zum Beispiel können
sich die Eigenschaften zum Einstellen eines Kanals mit einer bestimmten
Prioritätsstufe
von den Eigenschaften des Zurücknehmens der
Zuweisung dieser Stufe unterscheiden. Als ein Beispiel können die
Eigenschaften einer solchen Stufe so sein, das eine Anforderung,
die diese erste Stufe betrifft, keine Priorität über eine gleichzeitig bereitgestellte
Anforderung, die eine zweite Stufe betrifft, haben wird, obwohl
ein Zeitschlitz, der an dieser ersten Stufe von Priorität bereits
einem Kanal zugewiesen wurde, infolge einer Anforderung, die die
zweite Stufe von Priorität
betrifft, nicht zurückgenommen werden
wird. Die Eigenschaften der verschiedenen Stufen von Priorität können daher
vorzugsweise von dem Netzwerk-Operator ausgewählt entschieden werden und
können
auf Basis des ausgedrückten
Bedarfs des Kunden oder des Endbenutzers sogar zugeschnitten werden.
-
Die
ausgewählte
Stufe von Priorität,
durch die ein Kanal einen Zeitschlitz belegt, wird vorzugsweise
während
des Einstellens des Kanals entschieden. Nachdem die ausgewählte Stufe
von Priorität dem
Schlitz zugewiesen wurde, kann sie infolge des Änderns der Anforderungen an
die Bandbreite einer Änderung
während
der Lebensdauer des Kanals unterliegen. Zum Beispiel kann ein Endbenutzer,
der einen Kanal anfordert, geringe Anforderungen haben, wie es beim
Zuweisen einer Bandbreite an diesen Kanal der Fall ist, er kann
jedoch hohe Anforderungen haben, wie es für die Wichtigkeit eines nicht
unterbrochenen Zugriffs, nachdem die angeforderte Bandbreite zugewiesen
wurde, der Fall ist. Dies würde
dann zum Beispiel durch das Senden einer Anforderung nach Bandbreite,
wobei die Anforderung mit einer geringen Stufe von Priorität verknüpft ist,
und durch Zuweisen von Zeitschlitzen an den Kanal, wenn die Anforderung
erfüllt
wurde, und durch Zuordnen dieser Zeitschlitze mit einer hohen Stufe
von Priorität
ausgeführt
werden.
-
Ein
Kanal kann die gleiche Stufe von Priorität aufweisen, die all seinen
Zeitschlitzen zugewiesen wurde. Zum Beispiel wird in einer bevorzugten
Ausführungsform
die Verknüpfung
eines Kanals mit einer ausgewählten
Stufe von Priorität
automatisch die Verknüpfung
der diesem Kanal zugewiesenen Zeitschlitze mit der ausgewählten Stufe
von Priorität
implizieren. Ein Kanal kann jedoch mit verschiedenen Stufen von
Priorität
sehr gut verschiedenen Zeitschlitzen zugewiesen werden. Wenn zum
Beispiel ein Kanal unter Verwenden der höchsten verfügbaren Stufe von Priorität mit der
Hälfte
der Zeitschlitze und den restlichen Zeitschlitzen unter Verwenden
einer geringen Stufe von Priorität
eingestellt wird, wird bei dem Kanal immer sichergestellt, dass
er eine bestimmte Kapazität
behält,
die der Anzahl an Zeitschlitzen mit hoher Priorität entspricht.
-
Einem
Kanal zugewiesene Zeitschlitze können
auch verschiedenen Stufen von Priorität in verschiedenen Abschnitten
des Netzes zugeordnet werden. Zum Beispiel kann dies in einer baumähnlichen, hierarchischen
Struktur eines Bitstroms dazu verwendet werden, sicherzustellen,
dass die Schlitze des Kanals mit einer hohen Priorität in den
größeren Stämmen des
Baums, jedoch mit einer geringen Priorität in den Blättern des Baums beinhaltet
sind. Dieses Merkmal wird zum Beispiel ein sehr nützliches Werkzeug
bei der Verwaltung von Mehrpunkt-Kanälen bereitstellen.
-
Wie
verstanden wird, kann es verschiedene Strategien zum Zurücknehmen
der zugewiesenen Zeitschlitze von den Kanälen, die Zeitschlitze aufweisen,
die alle die gleiche Stufe von Priorität beinhalten, geben, wenn ein
Mangel an Bandbreite auftritt. Zum Beispiel können solche Strategien Richtlinien
folgen, wie zum Beispiel: der letzte, irgendeinem Kanal (mit einer
vorgegebenen Priorität)
zugewiesene Zeitschlitz wird zuerst zurückgenommen werden (d.h. eine
stapelartige Strategie); der längste
(in Zeit gemessen) zugewiesene Zeitschlitz wird zuerst zurückgenommen
(d.h. eine FIFO-artige Strategie); Zurücknehmen eines zugewiesenen
Schlitzes nach dem Round-Robin-Verfahren
(d.h. gleichzeitiges Zurücknehmen
eines Zeitschlitzes von jedem Kanal); oder Zurücknehmen der Zuweisung auf
eine Weise, die unter Berücksichtigung
der Zeitschlitz-Fragmentierung an dem entsprechenden Bitstrom die
beste Anpassung bereitstellt. Natürlich werden sich diese Strategien
grundlegend nicht mehr voneinander unterscheiden als die im Stand
de Technik verwendeten, wobei die Schlitze entweder nicht zugewiesen, d.h.
frei, oder zugewiesen sind (ohne irgendeine Auswahl der Bestimmtheit
der Zuweisung, d.h. der Priorisierung).
-
Da
die Erfindung auch leitungsvermittelte Kanäle betrifft, sollte beachtet
werden, dass die Zuordnung der Priorität gemäß der Erfindung nicht die Priorität betrifft,
durch die übertragene
Daten durch ein Netzwerk geleitet werden, d.h. die Art von Priorität, die in
paketvermittelten Netzwerken und dergleichen verwendet werden, um
die Priorität
im Falle einer Situation des Blockierens, die irgendwo entlang des
Wegs auftritt, auf dem das Paket durch das Netz transportiert wird,
sicherzustellen. Stattdessen werden in Verbindung mit leitungsvermittelten
Kanälen die
Stufen von Priorität
gemäß der Erfindung
in erster Linie bei der Verwaltung des Einstellens von Kanälen und
von Änderungen
der Kanalbandbreiten verwendet.
-
Obwohl
oben angegeben wurde, dass eine Stufe von Priorität gemäß der Erfindung
die Verbindung zwischen einem Zeitschlitz und dem Kanal, dem dieser
Schlitz zugewiesen wird, betrifft, ist zu verstehen, dass eine solche
Verbindung gemäß der Erfindung
unter Verwenden einer Zuordnung einer Stufe von Priorität, die zum
Beispiel ausdrücklich
die Verbindung zwischen einem Zeitschlitz und einem Endbenutzer,
zwischen einem Kanal und einem Knoten, zwischen einem Kanal und
einer Benutzeranwendung, oder dergleichen betrifft, ausgeführt werden
kann.
-
Die
Erfindung wird vorteilhafter Weise im Zusammenhang mit leitungsvermittelten
Kanälen
in Verknüpfungen
zwischen Knoten eines Kommunikationsnetzes in Single- oder Multi-Hop-Szenarien
verwendet. Wenn Multi-Hop-Kanäle
behandelt werden, werden die Informationen über die Priorität eines
Kanals vorzugsweise von dem erzeugenden Knoten dieses Kanals zu
den stromabwärtigen
Hop-Knoten, die auf diesen Kanal umschalten, übertragen, um so sicherzustellen,
dass die stromabwärtigen
Knoten den Multi-Hop-Kanal mit der geeigneten Priorität behandeln.
In einem solchen Multi-Hop-Szenario
können
die Knoten des Netzes zum Beispiel so eingestellt werden, dass sie
entsprechend der Richtlinie arbeiten, dass es einem Knoten niemals
möglich
ist, einen bereits angenommenen und eingestellten Kanal, auf den
umgeschaltet wurde, d.h. einen Kanal, der den "Hop"-Knoten
von einer Verknüpfung
des Netzes zu einander anderen umschaltet, und bei dem der Knoten
nicht der erzeugende Knoten ist, der bestimmt wurde und dem die
ausgewählte
Kanalpriorität
zugeordnet wurde, unabhängig
davon, welche hohe Priorität
der Hop-Knoten in Anforderungen, die andere Kanäle betreffen, empfängt, abzubrechen. Die
Erfindung wird vorteilhafter Weise auch zum Bereitstellen einer
Priorisierung von zwischengeschalteten Kanälen, wenn Ports einer Vorrichtung
zum Vermitteln oder Routen von Daten eines Zeitmultiplex-Verfahrens über interne,
leitungsvermittelte Kanäle
zwischengeschaltet werden, verwendet. Die Entscheidungen, wie beispielsweise
das Zuweisen von Zeitschlitzen an und das Zurücknehmen von zugewiesenen Zeitschlitzen
von Kanälen
auch auf eine verteilte Weise durchgeführt werden, wobei der Austausch
von Nachrichten zwischen Punkten des Netzwerks enthalten ist, oder
in einer zentralisierten Weise durchgeführt werden. Als Beispiel für letzteres kann,
wenn Ports einer Vorrichtung zum Vermitteln oder Routen von Daten
zwischengeschaltet werden, in Wirklichkeit eine einzige Komponente
alle Priorisierungen, die Zuweisung und die Zurücknahme der Zuweisung, gemäß der Erfindung
in der gesamten Vorrichtung steuern.
-
Die
Erfindung stellt auch ein vorteilhaftes Merkmal bereit, was das
Einstellen von Verknüpfungen
und die Redundanz des Netzwerks betrifft. Gemäß einer bevorzugten Ausführungsform
der Erfindung, wird die Priorität,
durch die ein Kanal bei Kanalausfall wieder hergestellt wird, auf
Basis der ausgewählten
Stufe von Priorität
bestimmt. Ein solcher Kanalausfall kann zum Beispiel aufgrund der
Tatsache, dass ein Kanal, der diesen Frame transportiert, vorübergehend
ausgefallen ist, auftreten. Wenn die Verbindung wieder da ist, können die
Kanäle
in der Reihenfolge "höchste ausgewählte Stufe
von Priorität zuerst" wieder hergestellt
werden. Der Grad der Redundanz, die für einen Kanal verwendet wird,
kann auch auf Basis der Stufe von Priorität, die für die Zeitschlitze, die von
diesem Kanal belegt werden, ausgewählt wird, bestimmt werden.
Diese Merkmale werden die Möglichkeiten
eines Netzwerk-Operators, wenn er Endbenutzern unterschiedliche
Dienstklassen anbietet, weiter erhöhen.
-
Es
sollte auch beachtet werden, dass die Tatsache, dass einem Kanal
einer oder mehrere Zeitschlitze innerhalb eines Frames mit einer
ausgewählten
Priorität über einen
ersten Abschnitt eines Netzwerks zugewiesen sind, was bedeutet,
dass er den exklusivem Schreibzugriff auf diese Zeitschlitze über den
ersten Abschnitt des Netzwerks belegt, nicht das Merkmal verbietet,
das erlaubt, dass die Zeitschlitze anderen Kanälen in anderen Abschnitten
des Netzwerks zugewiesen sind, über
die dem Kanal der Zeitschlitz nicht zugewiesen wurde, wobei die
letztere Situation oft als "Wiederverwendung
von Schlitzen" bezeichnet
wird.
-
Weitere
Aspekte, Aufgaben und Merkmale der Erfindung werden durch die beigefügten Ansprüche und
durch die folgende Beschreibung beispielhafter Ausführungsformen
derselben unter Bezugnahme auf die beigefügten Figuren vollständiger verstanden
werden.
-
Kurze Beschreibung der Figuren
-
Nachfolgend
werden beispielhafte Ausführungsformen
der Erfindung unter Bezugnahme auf die beigefügten Figuren beschrieben werden,
in denen:
-
1 schematisch
ein beispielhaftes Netzwerk der Art, auf die die Erfindung gerichtet
ist, zeigt;
-
2 schematisch
einen beispielhaften Zeitmultiplex-Bitstrom zeigt, der sich entlang
eines in 1 gezeigten Glasfaserleiters
fortsetzt;
-
3 schematisch
ein Blockdiagramm eines Knotens gemäß einer beispielhaften Ausführungsform
einer Vorrichtung zum Zuweisen von Zeitschlitzen gemäß der Erfindung
zeigt;
-
4a ein
beispielhaftes Diagramm für
die Zuweisung von Zeitschlitzen gemäß einer Ausführungsform
der Erfindung zeigt;
-
4b die
Verteilung der Zeitschlitze unter den Stufen von Priorität gemäß der in 4a veranschaulichten
Zuweisung der Zeitschlitze zeigt;
-
5a und 5b Ablaufdiagramme
gemäß einer
Ausführungsform
der Erfindung zeigen;
-
6a-6d beispielhafte
Schlitz-Nutzungstabellen gemäß einer
Ausführungsform
der Erfindung zeigen; und
-
7 schematisch eine Vorrichtung zum Umschalten
und Routen gemäß einer
noch weiteren Ausführungsform
der Erfindung zeigt.
-
Ausführliche Beschreibung bevorzugter
Ausführungsformen
-
1 zeigt
eine beispielhafte Netzwerk-Topologie für ein Zeitmultiplex-Netzwerk
der Art, auf die die Erfindung gerichtet ist. Das Netzwerk in 1 umfasst
drei Knoten N1, N2 und N3, die jeweils mit einem Bus verbunden sind,
der zwei unidirektionale Glasfaserleiter B1 und B2 aufweist, die
alle drei Knoten verbinden. Der Glasfaserleiter B1 trägt mindestens
einen zur Kommunikation verwendeten Bitstrom in einer Richtung entlang
des Busses und der Glasfaserleiter B2 trägt mindestens einen zur Kommunikation
verwendeten Bitstrom in der anderen Richtung entlang des Busses,
wie in der 1 mit den Pfeilen am Ende der
Glasfaserleiter B1 und B2 angegeben ist. Obwohl in 1 eine
einfache 2-Wege-Struktur veranschaulicht ist, kann die Erfindung
genauso gut in Verbindung mit vielen anderen Arten von Netzwerkstrukturen
und Netzwerk-Topologien verwendet werden. Wie unten beschrieben
wird, erfolgt die Kommunikation in jedem Glasfaserleiter B1 und
B2 synchron und nach einem Zeitmultiplex-Verfahren. Daneben kann
ein Wellenlängenmultiplex-Verfahren, d.h.
dass jede der Fasern unter Verwenden verschiedener Wellenlängen mehr
als einen Bitstrom trägt, dazu
verwendet werden, die Kapazität
des Netzwerks zu erhöhen.
-
Wie
in 1 gezeigt ist, werden die Knoten N1 und N2 so
eingerichtet, dass sie Endbenutzern dienen, indem die einen Zugriff
auf die Glasfaserleitungen B1 und 62 bereitstellen. Daher sind zwei
Endbenutzer 11, 12 mit dem ersten Knoten N1 und
zwei Endbenutzer 21, 22 mit dem zweiten Knoten
N2 verbunden. Der dritte Knoten ist mit einem dritten Glasfaserleiter
B3 verbunden und fungiert innerhalb des Netzes als Umschaltknoten.
-
Wenn
zum Beispiel der Endbenutzer 11, der mit dem ersten Knoten
N1 verbunden ist, Informationen an den Endbenutzer 22,
der mit dem zweiten Knoten N2 verbunden ist, senden möchte, werden die
Knoten N1 und N2 einen Kommunikationskanal auf einem Bitstrom, der
sich auf dem Glasfaserleiter B1 fortsetzt, einrichten. Der Knoten
N1 wird dann von dem sendenden Endbenutzer 11 empfangene
Daten zu dem Bitstrom auf dem Glasfaserleiter B1 übertragen
und der Knoten N2 wird wiederum diese Daten von dem Bitstrom auf
dem Glasfaserleiter B1 zu dem empfangenden Endbenutzer 22 übertragen.
Wenn ebenso Informationen von dem Endbenutzer 22 zu dem
Endbenutzer 11 geleitet werden sollen, wird ein ähnlicher
Kanal auf einem Bitstrom eingestellt, der sich auf dem Glasfaserleiter
B2 fortsetzt. Auf ähnliche
Weise können
Endbenutzer oder Knoten, die mit dem Glasfaserleiter B3 verbunden
sind, durch Einrichten von ähnlichen
Kanälen über den
Umschaltknoten N3 erreicht werden, wobei diese Kanäle dann manchmal
als Multi-Hop-Kanäle bezeichnet
werden. Obwohl die Endbenutzer in der 1 als Computer oder ähnliche
Arbeitsplätze
gezeigt wurden, ist zu verstehen, dass der Endbenutzer jede Art
von elektronischer Ausstattung, die Zugriff auf das Netzwerk benötigt, wie
beispielsweise Drucker, Server, Faxgeräte, Telefone, Fernseher, Rundfunkgeräte und dergleichen,
sein kann. Ein Endbenutzer kann also in Wirklichkeit ein gesamtes
Netzwerk, wie beispielsweise ein Ethernet-basiertes, lokales Netzwerk
sein. Ein Endbenutzer kann auch ein virtueller Endbenutzer, wie
beispielsweise eine Softwareanwendung, oder ein virtueller Port
sein.
-
Der
Aufbau eines Zeitmultiplex-Bitstroms der Art, die sich auf den Glasfaserleitungen
B1, B2 und B3 in der 1 fortsetzt, wird nun unter
Bezugnahme auf die 2 veranschaulicht werden. Wie
in 2 veranschaulicht ist, ist die Bandbreite von
jeder Wellenlänge,
d.h. jeder Bitstrom, in diesem Beispiel in Frames von 125 μs unterteilt.
Jeder Frame ist wiederum in 64 Bit große Zeitschlitze unterteilt.
Die Anzahl an Zeitschlitzen in einem Frame hängt daher von der Bitgeschwindigkeit
des Netzwerks ab. Die Anzahl an Schlitzen, die in dem Frame des
Bitstroms in 2 gezeigt ist, dient daher lediglich
zur Veranschaulichung, wobei die momentane Anzahl an Schlitzen in jedem
Frame üblicherweise
weit über
dem liegt, was in 2 gezeigt ist.
-
Die
Zeitschlitze eines wiederkehrenden Fraeme sind in diesem Beispiel
in zwei Gruppen, die Steuerschlitze C und die Datenschlitze D, unterteilt. Die
Steuerschlitze C werden zum Steuern der Signalgebung zwischen Knoten
innerhalb des Netzwerks, d.h. zum Transportieren von Nachrichten
zwischen Knoten für
den internen Betrieb des Netzwerks, wie beispielsweise dem Einrichten
von Kanälen
für die Zuweisung
von Zeitschlitzen und dergleichen, verwendet. Die Datenschlitze
D werden für
den Transfer von Daten eines Benutzers, die auch als Nutzlastdaten
bezeichnet werden, zwischen Endbenutzern, die von diesen Knoten
bedient werden, verwendet.
-
Neben
diesen Steuerschlitzen und Datenschlitzen umfasst jeder Frame einen
oder mehrere Synchronisationsschlitze S, die zum Synchronisieren des
Betriebs von jedem Knoten in Verbindung mit jedem Frame verwendet
werden. Nach dem letzten Schlitz wird am Ende von jedem Frame auch
ein Sicherheitsabstand G eingefügt,
um die Synchronisation zu erleichtern. Wie in 2 angegeben
ist, wird der Frame des Bitstroms kontinuierlich wiederholt.
-
Jeder
Knoten besitzt üblicherweise
Zugriff auf mindestens einen Steuerschlitz C und eine dynamische
Anzahl an Datenschlitzen D. Jeder Knoten verwendet diesen Steuerschlitz
C zum Kommunizieren mit anderen Knoten in dem Netzwerk. Die Anzahl an
Datenschlitzen D, auf die ein Knoten zugreifen kann, wird üblicherweise
von der Übertragungskapazität abhängen, die
von den Endbenutzern, die von dem jeweiligen Knoten bedient werden,
angefordert wird. Wenn ein Endbenutzer einen Kanal mit einer bestimmten
Bandbreite anfordert, wird der Knoten, der diesen Endbenutzer bedient, diesen
Kanal durch Zuweisen einer Anzahl von Zeitschlitzen an diesen Kanal,
auf die er zugreifen kann und deren Anzahl der angeforderten Bandbreite
entspricht, einrichten. Ein Knoten kann auch Zugriff auf Datenschlitze
haben, die nicht dazu erforderlich sind, die Übertragungskapazität, die von
den Benutzern angefordert wird, zu erfüllen, d.h. die nicht irgendwelchen
Kanälen
zugeordnet sind. Diese Schlitze werden dann als nicht zugewiesene
oder freie Schlitze bezeichnet. Wenn die Endbenutzer von einem bestimmten
Knoten eine große Übertragungskapazität anfordern, wird
der Knoten für
diesen Zweck mehr Datenschlitze zuweisen, was das Zurücknehmen
von zugewiesenen freien Zeitschlitzen unter verschiedenen Knoten beinhalten
kann. Zum anderen kann der Knoten, wenn die Endbenutzer an einem
bestimmten Knoten lediglich eine kleine Übertragungskapazität anfordern,
die Anzahl an Datenschlitzen, auf die er zugreifen kann, beschränken. Ein
Knoten kann jedoch weiterhin Zugriff auf Datenschlitze haben, die
gerade nicht dazu erforderlich sind, die Übertragungskapazität, die gerade
von den Benutzern angefordert wird, zu erfüllen. Die Anzahl an Steuerschlitzen,
auf die jeder Knoten zugreifen kann, kann je nach Bedarf des Knotens
nach einer Kapazität
zur Signalgebung auch erhöht
oder verringert werden. Die Anzahl an Datenschlitzen sowie Steuerschlitzen,
auf die ein Knoten zugreifen kann, kann daher dynamisch an die Änderungen
der Belastungen Netzwerks angepasst werden.
-
Wie
in dem Beispiel in 2 veranschaulicht ist, kann
der erste Knoten N1 auf einen Steuerschlitz und einen Datenschlitz
zugreifen. Der zweite Knoten N2 kann auf einen Steuerschlitz und
drei Datenschlitze zugreifen, da dessen Endbenutzer gerade einen größeren Bedarf
zur Übertragung
von Daten haben. Der dritte Knoten N3 besitzt lediglich Zugriff
auf einen Steuerschlitz und gerade keine Datenschlitze.
-
Unter
Bezugnahme auf 3 wird nun eine beispielhafte
Ausführungsform
für eine
Vorrichtung zum Zuweisen von Zeitschlitzen zu einem Kanal gemäß der vorliegenden
Erfindung beschrieben. 3 zeigt die Grundbestandteile
eines beispielhaften Netzwerkknotens 100 in einem Zeitmultiplex-Netz. Dieser
Knoten könnte
zum Beispiel irgendeiner der Knoten N1, N2 und N3 der 1 sein.
Der Knoten 100 umfasst einen Synchronisationsdetektor 110,
einen Zeitschlitzzähler 120,
eine logische Einheit 130, eine Netzwerkschnittstelle 140,
eine Benutzerschnittstelle 150, einen Speicher 160 und
einen Knoten-Controller 170. Der Knoten-Controller 170 umfasst
eine Einheit 180 zum Zuweisen der Zeitschlitze zu einem
Kanal und eine Schlitz-Nutzungstabelle 176. Der Speicher 160 umfasst
eine Schreibdatentabelle 162 und eine Lesedatentabelle 164.
Die Benutzerschnittstelle 150 ist mit den mit dem Knoten 100 verknüpften Endbenutzern,
wie beispielsweise den Endbenutzer 11 und 12 in 1,
verbunden.
-
Der
Synchronisationsdetektor 110 ist so eingerichtet, dass
er ein Signal zur Synchronisation des Frames (das in 2 mit
S bezeichnet ist) aus dem Bitstrom, der durch einen Glasfaserleiter
(nicht gezeigt) geht, der über
die Netzwerkschnittstelle 140 mit dem Knoten 100 verbunden
ist, herleitet. Das Signal zur Synchronisation des Frames wird zum
Neustarten des Zeitschlitzzählers 120 verwendet.
Der Zähler 120 wird
die Anzahl an Zeitschlitzen, die mit einer vorbestimmten Bitgeschwindigkeit
durch den Glasfaserleiter gehen, zählen und ein entsprechendes
Signal an die logische Einheit 130 und die Netzwerkschnittstelle 140 bereitstellen.
Die logische Einheit 130 verwendet das Signal von dem Zähler 120, um
zu verfolgen, welcher Zeitschlitz in dem Frame gerade verarbeitet
wird und die Netzwerkschnittstelle 140 verwendet das Signal
von dem Zähler,
um das Schreiben in oder das Lesen von Zeitschlitzen des durchgehenden
Bistroms zu synchronisieren.
-
Der
Controller 170 ist so eingerichtet, dass er alle angeforderten
Informationen, wie zu der Zuweisung von Schlitzen an verschiedene
Knoten und verschiedene Kanäle,
verfolgt. Der Controller wird zum Beispiel verwendet, wenn im Auftrag
von Endbenutzern, die mit der Benutzerschnittstelle 150 verbunden sind,
neue Kanäle
eingerichtet werden. Der Controller hat in der Schreibdatentabelle 162 des
Speichers 170 festgelegt, in welche Schlitzen der Knoten
Steuerdaten und Benutzerdaten schreiben kann. In der Lesedatentabelle 164 des
Speichers 170 hat der Knoten-Controller festgelegt, aus welchen Schlitzen der
Knoten Steuerdaten und Benutzerdaten lesen soll. Steuerdaten werden
zu dem Controller übertragen
und Benutzerdaten werden zu dem geeigneten, mit dem Knoten verbundenen
Benutzer übertragen. In
der Schlitz-Nutzungstabelle 176 hat
die Einheit 180 zum Zuweisen von Schlitzen zu einem Kanal
die Stufe von Priorität,
mit der der Kanal, dem der Schlitz zugewiesen wurde, den entsprechenden
Zeitschlitz belegt, festgelegt. Verschiedene Schlitze können von verschiedenen
Kanälen
oder von dem gleichen Kanal mit verschiedenen Stufen von Priorität, die von
einer Stufe von höchster
Priorität
bis zu einer Stufe von geringster Priorität reicht, belegt werden. In 3 wird
zum Beispiel in Tabelle 176 festgelegt, dass der Zeitschlitz an
der Position drei (3) von einem Kanal A mit einer Stufe von Priorität von zwei
(2) belegt wird, dass der Zeitschlitz fünf (5) ebenso von dem Kanal
A, jedoch mit einer Stufe von Priorität von drei (3) belegt wird
und dass der Zeitschlitz neun (9) von einem Kanal C auch mit einer
Stufe von Priorität
von drei (3) belegt wird.
-
Die
Einheit 180 zum Zuweisen von Schlitzen zu einem Kanal umfasst
Prioritäts-Zuordnungseinrichtungen 182 und
Schlitzzuweisungseinrichtungen 184. Die Prioritäts-Zuordnungseinrichtung 182 ist
so eingerichtet, dass sie einen Zeitschlitz, der von einem Kanal
mit einer Stufe von Priorität
belegt wird (oder belegt werden soll), d.h. diesem zugewiesen ist,
mit Hilfe des Schreibens von Informationen, die diese Stufe angeben,
in die Schlitz-Nutzungstabelle 176 verknüpft. Die
verknüpfte
Stufe in diesem Beispiel wird auf Basis einer Stufe ausgewählt, die
von einem Endbenutzer angegeben wird, wenn der Endbenutzer eine
Anforderung entweder bezüglich
seines Bedarfs nach einer anfänglichen
Bandbreite oder bezüglich
seines Bedarfs nach einer geänderten
Bandbreite stellt. Der Begriff "Bedarf
nach einer Bandbreite" kann
in diesem Zusammenhang die Größe der Bandbreite
oder die Stufe von Priorität
der Bandbreite oder beides bezeichnen. Die Schlitz-Zuordnungseinrichtungen 184 sind
so eingerichtet, dass sie einen Zeitschlitz für einen Kanal, der einen Bedarf
nach einer Bandbreite hat, anfordern und eine von einem Benutzer
ausgewählte
Stufe von Priorität
in dieser Anfrage einschließen.
Die Schlitz-Zuordnungseinrichtungen 184 sind auch so eingerichtet,
dass sie jede dieser Anforderungen von einem mit diesem Knoten verbundenen
Endbenutzer oder von einem Knoten im Auftrag eines mit diesem verbundenen Endbenutzers
empfangen und diese Anforderungen bedienen, wie weiter unten erörtert werden
wird.
-
Ein
beispielhafter Einsatz einer Zuweisung von Zeitschlitzen und einer
Zurücknahme
zugewiesener Zeitschlitze an Kanäle
oder Endbenutzer gemäß einer
Ausführungsform
der Erfindung wird nun unter Bezugnahme auf die 4a und 4b beschrieben
werden. In dieser Ausführungsform
wird ein Kanal einen Zeitschlitz mit einer von drei möglichen
Stufen von Priorität
belegen, d.h. diesem zugewiesen sein. Die drei verschiedenen Stufen
weisen die folgenden Eigenschaften auf:
Die höchste Stufe
von Priorität
wird als eine "reservierte" Stufe, die in der 4b mit
R bezeichnet ist, bezeichnet. Ein von einem Kanal belegter oder
diesem Kanal zugewiesener Zeitschlitz mit dieser Stufe von Priorität wird als
ein "reservierter" Zeitschlitz bezeichnet
werden. Ein reservierter Zeitschlitz wird in dieser beispielhaften
Ausführungsform
aufgrund einer Anforderung einer Übertragungskapazität von einem
anderen Kanal, Benutzer oder Knoten nicht von dem Kanal, dem er
zugewiesen ist, zurückgenommen
werden, selbst wenn der Kanal, für
den dieser Zeitschlitz reserviert ist, nicht den Zeitschlitz zum Übertragen
von Daten verwendet. Das heißt,
dass ein reservierter Zeitschlitz, der gerade nicht verwendet wird,
kein freier Zeitschlitz werden wird. Als ein Beispiel würde eine
Standleitung eine Reihe von reservierten Zeitschlitzen umfassen.
-
Die
zweite höchste
Stufe von Priorität
bezeichnet eine "harte" Stufe, die in 4b mit
H ("hard") bezeichnet ist.
Ein einem Kanal mit dieser Stufe von Priorität zugewiesener Zeitschlitz
wird als ein "harter" Zeitschlitz bezeichnet
werden. Ein harter Zeitschlitz wird in dieser beispielhaften Ausführungsform
nur aufgrund einer Anforderung eines reservierten Zeitschlitzes
von seiner Zuweisung zurückgenommen
werden. Daher werden weder eine Anforderung eines weichen Zeitschlitzes,
die unten beschrieben ist, noch eine Anforderung eines harten Zeitschlitzes
eine Zurücknahme
eines zugewiesenen, harten Zeitschlitzes erzwingen. Wenn ein Kanal
Daten in einem harten Zeitschlitz übertragen hat, wird die Zuweisung
des harten Zeitschlitzes vorzugsweise zurückgenommen, so dass dieser
ein freier Zeitschlitz wird.
-
Die
geringste Stufe von Priorität
wird als "weiche" Stufe bezeichnet,
die in der 4b mit S ("soft")
bezeichnet ist. Ein einem Kanal mit dieser Stufe von Priorität zugewiesener
Zeitschlitz wird als ein "weicher" Zeitschlitz bezeichnet
werden. Ein flexibler Zeitschlitz wird in dieser beispielhaften
Ausführungsform
aufgrund einer Anforderung eines reservierten Zeitschlitzes oder
eines harten Zeitschlitzes von seiner Zuweisung zurückgenommen
werden. Eine Anforderung eines weichen Zeitschlitzes kann jedoch
nicht die Zurücknahme
eines zugewiesenen, weichen Zeitschlitzes erzwingen. Wenn ein Kanal Daten
in einem flexiblen Zeitschlitz gesendet hat, kann die Zuweisung
des weichen Zeitschlitzes vorzugsweise zurückgenommen werden, so dass
dieser ein freier Zeitschlitz wird.
-
Es
sollte beachtet werden, dass ein alternativer Weg zum Implementieren
der höchsten
Stufe von Priorität,
d.h. der reservierten Stufe, darin besteht, die Zeitschlitze, die
vorübergehend
nicht von demjenigen, der sie belegt, zum Übertragen von Daten verwendet
werden, vorübergehend
von einem anderen borgen zu lassen, wobei die zugewiesenen Zeitschlitze
in diesem Fall unmittelbar von diesem anderen Kanal zurückgenommen
werden, sobald der Kanal, für
den der Zeitschlitz reserviert ist, den Schlitz verwenden möchte.
-
Die 4a veranschaulicht
eine beispielhafte Zuweisung von fünfzehn (15) Zeitschlitzen in
einem Frame eines Bitstroms. Wie oben erörtert wurde, ist in 4a ein
Zeitschlitz entweder frei F oder er wird belegt, d.h. er ist irgendeinem
der Kanäle
A, B, C oder D zugewiesen. Ein reservierter Zeitschlitz, der nicht
von demjenigen, der sie belegt, verwendet wird, wird mit NU (nicht
verwendet) bezeichnet. In 4b ist
die Verteilung der Schlitze unter den verschiedenen Stufen von Priorität gezeigt.
Die 4b zeigt daher, ob ein Zeitschlitz in dem Frame
frei F ist oder nicht oder von einem Kanal belegt wird oder nicht
und, wenn er von einem Kanal belegt wird, die Stufe von Priorität, mit der
der Kanal den entsprechenden Zeitschlitz, d.h. mit einer reservierten
Stufe R, mit einer harten Stufe H oder einer weichen Stufe S.
-
In
diesem Beispiel wird angenommen, dass ein Kanal A zwei (2) reservierte
Zeitschlitze anfordern wird, dass Kanal B zwei (2) harte und acht
(8) weiche Schlitze anfordern wird, dann Kanal C vier (4) harte Schlitze
anfordern wird und dass Kanal D vier (4) harte und vier (4) weiche
Schlitze anfordern wird.
-
Es
sollte beachtet werden, dass die in den 4a und 4b verwendete
Zeit-(horizontale) Achse lediglich die Reihenfolge bestimmter Aktionen relativ
zueinander, die die Zuweisung von Zeitschlitzen in dem Frame beeinflusst,
veranschaulicht und dass die vertikale Achse fünfzehn verfügbare Positionen für Zeitschlitze
in einem wiederkehrenden Frame angibt, wobei Schlitze für eine Synchronisatoin und
dergleichen ausgeschlossen werden.
-
Zum
Zeitpunkt t = 0 wird angenommen, dass Kanal A zwei reservierte Zeitschlitze
anfordert, so dass der Frame dreizehn freie Zeitschlitze behält. Die Übertragungskapazität dieser
beiden reservierten Schlitze wird von Kanal A anfänglich nicht
verwendet, wie in der Schlitz-Nutzung in 4a angegeben
ist.
-
Bei
t = 2 wird angenommen, dass Kanal B zwei harte Zeitschlitze und
acht weiche Zeitschlitze anfordert. Da in dem Frame dreizehn freie
Schlitze vorhanden sind, werden Kanal B zwei harte Schlitze und
acht weiche Schlitze zugewiesen werden, so dass die gemäß der Anforderung
von Kanal B von diesem belegt werden. In 4a ist
zu sehen, dass nun zehn Schlitze von Kanal B verwendet werden und
in 4b ist zu sehen, dass der Frame nun zwei reservierte
Schlitze, zwei harte Schlitze, acht weiche Schlitze und drei freie
Schlitze einschließt.
-
Bei
t = 4 wird angenommen, dass Kanal C vier harte Zeitschlitze anfordert.
Die drei freien Schlitze werden daher Kanal C als harte Schlitze
zugewiesen. Zusätzlich
wird nun die Zuweisung von einem der Kanal B zugewiesenen, weichen
Schlitze zurückgenommen,
da diese Schlitze von Kanal B mit einer geringeren Stufe von Priorität belegt
werden als der Priorität,
die durch die Anforderung von Kanal C bezüglich eines harten Schlitzes
bezeichnet wird. Der von Kanal B zugewiesene und nun zurückgenommene,
weiche Schlitz B wird als ein harter Schlitz Kanal C zugewiesen.
In 4a ist zu sehen, dass nun neun Schlitze von Kanal
B und vier Schlitze von Kanal verwendet werden und in 4b ist
zu sehen, dass der Frame nun zwei reservierte, sechs harte und sieben weiche
Kanäle
einschließt.
-
Bei
t = 6 wird angenommen, dass Kanal A unter Verwenden seiner vorher
reservierten Übertragungskapazität beginnt.
Dann wird bei t = 8 angenommen, dass alle Kanal B zugewiesenen Schlitze infolge
der Tatsache, dass der Bedarf bezüglich der Bandbreite von Kanal
B vorübergehend
zu diesem Zeitpunkt beendet wird, zurückgenommen werden und freie
Schlitze werden. Bei t = 10 wird angenommen, dass Kanal D eine Anforderung
von Bandbreiten an vier harte Schlitze und vier weiche Schlitze stellt
und daher acht der neun freien Schlitze Kanal zugewiesen werden.
-
Bei
t = 12 wird angenommen, dass Kanal B erneut eine Anforderung von
zwei harten und acht weichen Kanälen
stellt. Der eine übrig
bleibende, freie Schlitz wird dann B als harter Kanal zugewiesen und
einer der D zugewiesenen, weichen Kanäle wird zurückgenommen und B als zweiter
harter Schlitz zugewiesen. Die Anforderung von Kanal B von acht weichen
Schlitzen, kann nicht erfüllt
werden und dieser Abschnitt der Anforderung wird zurückgewiesen.
-
Bei
t = 14 wird angenommen, dass Kanal A das Verwenden seiner reservierten
Schlitze zum Übertragen
von Daten stoppt. Wie vorher beschrieben wurde, wird das Zuweisen
dieser Schlitze jedoch nicht zurückgenommen,
diese bleiben jedoch für
den Kanal A reserviert. Bei t = 17 wird angenommen, dass Kanal C
das Verwenden seiner Übertragungskapazität stoppt
und die Zuweisung seiner vier harten Schlitze daher zurückgenommen
wird, so dass diese freie Schlitze werden.
-
Bei
t = 19 wird angenommen, dass Kanal B erneut versucht, Zugriff auf
die gesamte Größe seiner
benötigten
Bandbreite zu erlangen. Da bereits zwei harte Schlitze Kanal B zugewiesen
sind, wird die Anforderung der zusätzlichen acht weichen Schlitze erfolgen.
An diesem Zeitpunkt werden die vier freien Schlitze als weiche Schlitze
B zugewiesen, während die
Anforderung der restlichen vier weichen Schlitze zurückgewiesen
werden wird.
-
Es
sollte beachtet werden, dass das oben erörterte Beispiel die Zurücknahme
von zugewiesenen Zeitschlitzen zwischen Knoten sowie innerhalb eines Knotens
umfassen kann und dass die Kanäle
zum Beispiel Kanäle
zwischen Knoten, die auf der gleichen Verknüpfung liegen, zwischen Knoten,
die auf verschiedenen Verknüpfungen
liegen, d.h. Multi-Hop-Kanälen,
oder zum Beispiel zwischen Ports einer einzigen Vorrichtung, einschließen.
-
Ablaufdiagramme
von Verarbeitungsschritten, die zur Veranschaulichung der Verwaltung
der Zuweisung von Zeitschlitzen zu einem Kanal gemäß einer
Ausführungsform
der vorliegenden Erfindung durchgeführt werden, werden nun unter
Bezugnahme auf die 5a und 5b beschrieben.
-
in 5a beginnt
die Verarbeitung in Schritt 510 mit dem Empfang einer Anforderung
eines Schlitzes, der einem Kanal mit einer gewünschten, ausgewählten Stufe
von Priorität
zugewiesen werden soll. In 5a wird
angenommen, dass die Anforderung von einem Endbenutzer kommt, der
mit dem Knoten verbunden ist, der die veranschaulichten Schritte
durchführt.
-
in
Schritt 520 überprüft der Knoten
in seiner Schlitz-Nutzungstabelle, ob irgendwelche freien Schlitze
verfügbar
sind. Wenn die Antwort ja lautet, geht der Prozess mit Schritt 580,
auf den Schritt 590 folgt, weiter. In Schritt 580 wird
ein solcher freier Schlitz dem anfordernden Kanal zugewiesen und
in dem darauf folgenden Schritt 590 wird der in Schritt 580 zugewiesene
Schlitz mit der ausgewählten
Stufe von Priorität
verknüpft.
Wenn die Antwort in Schritt 520 jedoch nein lautet, geht
der Prozess mit Schritt 530 weiter.
-
In
Schritt 530 wird die Schlitz-Nutzungstabelle des Knotens
auf irgendwelche Schlitze mit einer geringeren Stufe von Priorität als der
mit durch die Schritt 510 empfangene Anforderung identifizierten Stufe überprüft. Wenn
irgendein solcher Schlitz gefunden wird, geht der Prozess mit Schritt 570 weiter. In
Schritt 570 wird die Zuweisung des in Schritt 530 gefundenen
Schlitzes von dem Kanal, der diesen Schlitz gerade belegt, zurückgenommen.
Der zurückgenommene
Schlitz wird dann in Schritt 580 und 590, wie
vorher beschrieben wurde, verarbeitet. Wenn in Schritt 530 kein
solcher Schlitz vorhanden ist, geht das Verfahren mit Schritt 540 weiter.
In Schritt 540 wird de Anforderung eines Schlitzes zusammen
mit einer Identifizierung der ausgewählten Stufe von Priorität für den gewünschten
Schlitz an andere Knoten weitergeleitet.
-
In
Schritt 550 werden dann die Antworten, die infolge der
zu anderen Knoten in Schritt 540 übertragenen Anforderung empfangen
wurden, überprüft. Die
Antworten werden angeben, ob ein Schreibzugriffrecht für irgendeinen
Schlitz von einem anderen Knoten zu dem Knoten, der die Schritte
aus der 5a durchführt, übertragen werden kann oder nicht.
Wenn die Antwort angibt, dass das Zugriffsrecht auf einen Schlitz übertragenen
wurde, werden die oben beschriebenen Schritte 580 und 590 in
Bezug auf diese Schlitze durchgeführt. Wenn jedoch kein Zugriffsrecht
auf einen Schlitz übertragen
wurde, wird der Schritt 560 ausgeführt. In Schritt 560 wird
die Anforderung eines Schlitzes mit der ausgewählten Stufe von Priorität zurückgewiesen.
-
Als
ein weiteres Beispiel werden, wenn der Prozess in 5a in
einem System, in dem die Wahrscheinlichkeit des Zurücknehmens
von zugewiesenen Schlitzen zu/von "anderen Knoten" nicht existiert, die Schritte 540 und 550 aus
dem Prozess weggelassen. Der Prozess wird daher, wenn in Schlitz 530 kein
Schlitz gefunden wird, direkt mit Schritt 560 weitergehen.
-
In 5b betreffen
die veranschaulichten Verarbeitungsschritte die Verarbeitung einer
empfangenen Anforderung eines Schlitzes, der einer ausgewählten Stufe
von Priorität
zugeordnet sein sollte, wobei die Anforderung von einem Endbenutzer
hergeleitet wird, der mit einem anderen Knoten als demjenigen, der
die veranschaulichten Schritt durchführt, verbunden ist, und wobei
die Anfrage zum Beispiel infolge der Ausführung des Schritts 540 der 5a weitergeleitet
wurde.
-
Die
Verarbeitung beginnt in Schritt 610 mit dem Empfang dieser
Anforderung. Nach dem Empfang der Anforderung wird in Schritt 620 überprüft, ob irgendwelche
freien Schlitze in der Schlitz-Nutzungstabelle des Knotens, der
die Schritte der 5b durchführt verfügbar sind oder nicht. Wenn
die Antwort ja lautet, wird Schritt 650, auf den Schritt 680 folgt,
ausgeführt.
Ansonsten wird Schritt 630 ausgeführt. In Schritt 650 wird
der Knoten mit der Übertragung
des Zugriffsrechts auf einen freien Schlitz auf den Knoten beginnen,
von dem Anforderung in Schritt 610 empfangen wurde. In
Schritt 680 wird der übertragene
Schlitz aus der Schlitz-Nutzungstabelle entfernt werden. Wenn die
Antwort in Schritt 620 jedoch nein lautet, geht der Prozess
mit Schritt 630 weiter. In Schritt 630 wird die
Schlitz-Nutzungstabelle des Knotens auf irgendwelche Schlitze, die
eine geringere Stufe von Priorität
als die angeforderte Stufe aufweisen, überprüft. Wenn ein solcher Schlitz
gefunden wird, wird Schritt 660 ausgeführt. Wenn kein solcher Schlitz
existiert, wird Schritt 640 ausgeführt.
-
In
Schritt 660 wird die Zuweisung eines Schlitzes, der in
dem Block 630 gefunden wird, von dem Kanal, der gerade
den Schlitz belegt, zurückgenommen.
Dieser zurückgenommene
Schlitz wird dann in Schritt 670, auf den Schritt 680 folgt,
verarbeitet. In Schritt 670 wird der Knoten mit der Übertragung
der Zugriffrechte auf den Schlitz, der in dem Block 660 von
dem Knotens, von dem die Anforderung in Block 610 empfangen
wurde, zurückgenommen
und in Schritt 680 wird der übertragene Schlitz aus der
Schlitz-Nutzungstabelle
entfernt werden. In Schritt 640 wird, wenn keine zurücknehmbare
Zuweisung von Schlitzen, denen die mit der Anforderung verknüpfte Stufe
von Priorität
gegeben wurde, gefunden wurde, die in Schritt 610 empfangene
Anforderung zurückgewiesen.
-
Obwohl
die Prozesse in den 5a und 5b unter
Bezugnahme auf eine Anforderung eines einzigen Schlitzes beschrieben
wurden, können die
Schritte zum Verwalten von Anforderungen einer Vielzahl von Schlitzen
in einer ähnlichen
Weise durchgeführt
werden und können
zum Beispiel teilweise Zurückweisungen
von Anforderungen, wenn nur ein Teil der angeforderten Anzahl von
Zeitschlitzen durch die verschiedenen Verarbeitungsschritte verfügbar ist,
einschließen.
-
Die 6a bis 6d zeigen
beispielhafte Schlitz-Nutzungstabellen, die sich in diesem Beispiel auf
die unter Bezugnahme auf die 4a und 4b beschriebene
Schlitz-Nutzung beziehen, wobei die gleiche Bezeichnung wie in den 4a und 4b zum
Bezeichnen der Stufen von Priorität verwendet wird. Jede Tabelle
schließt
eine Spalte SL, die die Positionen der Zeitschlitze angibt, eine
Spalte CH, die den Kanal, dem der jeweilige Zeitschlitz zugeordnet
ist, angibt, und eine Spalte PR, die die Priorität, mit dem der jeweilige Schlitz
dem jeweiligen Kanal zugewiesen wird, angibt, ein. Diese Schlitz-Nutzungstabellen
sind in diesem Beispiel von einer solchen Art, wie sie vorher unter
Bezugnahme auf die 3 beschrieben wurden. Es wird
angenommen, dass die 6a und 6c die Schlitz-Nutzungstabelle
eines ersten Knotens zu den jeweiligen Zeitpunkten (t = 3 bzw. t
= 5 in der 4a) zeigen und dass die 6b und 6d die Schlitz-Nutzungstabellen
eines zweiten Knotens zu den jeweiligen Zeitpunkten zeigen. Es wird auch
angenommen, dass der Kanal A von dem zweiten Knoten eingerichtet
wird und dass die Kanäle
B und C von dem ersten Knoten eingerichtet werden sollen.
-
Zu
einem Zeitpunkt, der t = 3 des in 4a beschriebenen
Plans entspricht, weisen der erste und der zweite Knoten die entsprechenden,
in den 6a und 6b zu
sehenden Schlitz-Nutzungstabellen auf. Bei t = 4 in 4a fordert
der Kanal C, der von dem ersten Knoten eingerichtet werden soll,
vier harte Schlitze an. In 6a ist
zu sehen, dass der erste Knoten vor dieser Anforderung nur einen
Zugriff auf einen freien Schlitz aufweist und dass der Knoten N2
Zugriff auf zwei freie Schlitze aufweist.
-
Die 6a bis 6d veranschaulichen
die Folgen aus den Verarbeitungsschritten, die von dem jeweiligen
Knoten-Controller in dem ersten und dem zweiten Knoten durchgeführt wurden.
Wenn der Knoten-Controller des ersten Knotens die Anforderung von
vier harten Schlitzen für
den Kanal C zum Zeitpunkt t = 4 empfängt, weist er zuerst den freien Schlitz,
auf den er Zugriff hat, in diesem Fall den Schlitz dreizehn (13),
dem Kanal zu und ordnet diesem die ausgewählte "harte" Stufe von Priorität, die in der Anforderung empfangen
wurde, zu. Danach bleiben noch drei harte Schlitze übrig, die,
um die Anforderung zu erfüllen,
zugewiesen werden können. Der
Knoten-Controller in dem ersten Knoten leitet dann eine Anforderung
von drei harten Schlitzen zu dem zweiten Knoten weiter. Da der zweite
Knoten zwei freie Schlitze, die Schlitze vierzehn (14) und fünfzehn (15)
aufweist, wird dieser infolge der Anforderung den Zugriff auf diese
beiden Schlitze auf den ersten Knoten übertragen. Der Knoten-Controller
des ersten Knotens wird dann diese beiden Schlitze als harte Schlitze
dem Kanal C zuweisen. Danach bleibt noch ein harter Schlitz übrig, der
zum Erfüllen
der Anforderung zugewiesen werden kann. Der erste Knoten wird daher
seine Schlitz-Nutzungstabelle auf einen Schlitz, der mit einer geringeren
Stufe an Belegung, als die angeforderte Stufe der Belegung, belegt ist, überprüfen, um
die Anforderung des Kanal zu erfüllen,
einen der dem Kanal B zugewiesenen, weichen Schlitze, zum Beispiel
Schlitz zwölf
(12), finden, die Zuweisung dieses Schlitzes von dem Kanal B zurücknehmen
und diesen dem Kanal C als harten Schlitz zuweisen. Insgesamt werden,
nachdem die Anforderung des Kanals C auf diese Weise erfüllt wurde,
zum Zeitpunkt t = 5 der erste und der zweite Knoten die jeweils
in den 6c und 6d gezeigten
Schlitz-Nutzungstabellen aufweisen.
-
Wie
angegeben wurde, werden in diesem Beispiel alle freien Schlitze,
unabhängig
davon, welche Knoten Zugriff auf die freien Schlitze haben, verwendet,
bevor ein Schlitz, der mit einer Stufe von Priorität belegt
wird, im Auftrag einer Anforderung eines Schlitzes, der mit einer
höheren
Stufe von Priorität belegt
werden soll, zurückgenommen
wird, was sich im Vergleich zu dem oben unter Bezugnahme auf die 5a und 5b beschriebenen
Prozess ein wenig unterscheidet.
-
7 zeigt schematisch eine Vorrichtung 200 zum
Vermitteln und Routen von Daten, die gemäß einer noch weiteren Ausführungsform
der Erfindung arbeitet.
-
Die
Vorrichtung 210 umfasst Eingabe-Ports, Ausgabe-Ports 202,
einen Switch Core, der als geteilter Speicher des Frames 204 implementiert
ist, und einen Routing-Prozessor 203.
-
Die
Eingabe-Ports 201 sind so eingerichtet, dass sie Daten,
zum Beispiel in Form von Ethernet-Paketen oder herkömmlichem
Telefonverkehr, empfangen und diese Daten, die in Zeitschlitze unterteilt
sind, in Eingaben des Frame-Speichers 204 schreiben. In ähnlicher
Weise sind die Ausgabe-Ports 202 so eingerichtet, dass
sie Daten der Zeitschlitze aus den Eingaben des Frame-Speichers 204 lesen
und diese Daten, die üblicherweise
gemäß dem an
dem jeweiligen Port verwendeten Kommunikationsprotokoll verpackt
sind, zu Ausgabe-Verknüpfungen übertragen.
Jeder dieser Eingabe-/Ausgabe-Ports könnte ein physikalischer Port
sein, der so eingerichtet ist, dass er Daten in Bezug auf eine entsprechenden
physikalische Verknüpfung
empfängt/überträgt. Einer
oder mehrere der Eingabe-/Ausgabe-Ports könnte jedoch alternativ dazu
ein virtueller Port sein, der zum Beispiel so eingerichtet ist,
dass er Daten auf einer physikalischen Eingabe-/Ausgabe-Verknüpfung empfängt/überträgt, die auch
die Daten transportiert, die andere virtuelle Ports betreffen.
-
Der
Routing-Prozessor 203 ist so eingerichtet, dass er auswählt, in
welche Eingaben des Speichers 204 die Eingabeports 201 und
der Routing-Porzessor 203 Daten schreiben sollen und aus welchen
Eingaben des Speichers 204 die Ausgabe-Ports 202 und
der Routing-Prozessor 203 Daten lesen sollen, so dass durch
den Speicher 204 ein verbundenes Netzwerk aus leitungsvermittelten
Kanälen
gebildet wird. In 5 ist ein solches Mapping (Zuordnung)
mit Pfeilen angegeben. Der Routing-Prozessor 203 führt auch
das Routen von von einem oder mehreren der Eingabe-Ports empfangenen Datenpaketen,
das einem solchen Mapping folgt, über den Speicher 204 durch.
Daneben werden die Informationen bezüglich des Routens, die durch
die Routing-Prozessor
erhalten wurden, dazu verwendet, dieses Mapping zu modifizieren,
um zu modifizieren, welche Kanäle
wo in der Vorrichtung 200 hingehen oder die Größe dieser Kanäle oder
dergleichen zu modifizieren. Des Weiteren ist der Routing-Prozessor 203 so
eingerichtet, dass er jedem Kanal eine Stufe von Priorität zuordnet,
die durch den Speicher 204 festgelegt wird. Und wenn eine
Anforderung einer Änderung
der Zuweisung solcher Kanäle
vorhanden ist, wird diese Zuordnung von Priorität gemäß der Erfindung berücksichtigt.
-
Die
unter Bezugnahme auf die 5 beschriebene Ausführungsform
veranschaulicht daher die Erfindung für den Einsatz in einer Situation,
in der alle Informationen bezüglich
der Priorität
sowie alle Entscheidungen und Zuordnungen bezüglich der Priorität, die darauf
(innerhalb des verbundenen Netzwerks) basieren, im Wesentlichen
von einer einzigen Einheit, d.h. dem Routing-Prozessor gesteuert
werden.
-
Obwohl
die Erfindung unter Bezugnahme auf beispielhafte Ausführungsformen
derselben beschrieben wurde, sollen diese nicht als Einschränkung des
Umfang derselben betrachtet werden und können, wie von einem Fachmann
verstanden wird, als unterschiedliche Modifikationen und Abänderungen
innerhalb des Umfangs der Erfindung, der durch die beigefügten Ansprüche definiert
ist, ausgeführt werden.