-
Die
vorliegende Erfindung betrifft Verbesserungen in oder zu Vermittlungsvorrichtungen
und betrifft spezieller ein System zur Bereitstellung verteilter Zeitpläne für eine solche
Vorrichtung. Insbesondere betrifft die Erfindung die Verteilung
der Steuerung zwischen einer Management-Karte und Line-Interface-Karten
(Line Interface Cards, LICs) in einer Vermittlungsvorrichtung. Für die Zwecke
der nachfolgenden Beschreibung bezeichnet der Begriff "Vermittlungsvorrichtung" eine beliebige Vorrichtung,
welche die Funktion eines Circuit-Switch (Leitungsvermittlers), Packet-Switch
(Paketvermittlers) oder eines Routers erfüllt.
-
Daten
werden über
das Internet mittels einer Vielzahl von Routing-Einrichtungen entsprechend
einem Standardprotokoll übertragen,
das unter der Bezeichnung "Internetprotokoll" (Internet Protocol,
IP) bekannt ist. IP ist ein Protokoll, das auf der Übertragung
von Daten in Portionen unterschiedlicher Größe beruht, die "Pakete" genannt werden.
Der gesamte Netzverkehr ist mit dem Transport von Datenpaketen verknüpft. Router
sind Vorrichtungen zur Annahme ankommender Pakete, zeitweiligen
Speicherung der einzelnen Pakete und anschließenden Weitersendung der Pakete
zu einem anderen Teil des Netzes.
-
Das
Verkehrsaufkommen im Internet wächst exponentiell,
wobei es sich alle 3 Monate nahezu verdoppelt, und die Kapazität herkömmlicher
IP-Router ist unzureichend, um diesen Bedarf zu erfüllen. Folglich
besteht ein dringender Bedarf an Produkten, welche IP-Verkehr bei
extrem großen
Gesamtbandbreiten in der Größenordnung
von mehreren Terrabit pro Sekunde routen können. Solche Routing-Einrichtungen
werden als "Terrabit-Router" bezeichnet.
-
Terrabit-Router
erfordern einen skalierbaren Übertragungsweg
mit einer hohen Kapazität
zwischen dem Punkt, an welchem Pakete am Router ankommen (dem "Eingang" ["Ingress"]) und dem Punkt, an
welchem die Pakete den Router verlassen (dem "Ausgang" ["Egress"]).
-
Die
Pakete, die entsprechend dem IP übertragen
werden, können
unterschiedliche Größen aufweisen
(und weisen sie auf). Innerhalb von Routern hat es sich als nützlich erwiesen,
Daten in Einheiten von fester Größe zu transportieren.
In Routern werden die Datenpakete in kleine Einheiten mit einer
festen Größe aufgeteilt,
welche unter der Bezeichnung "Zellen" bekannt sind.
-
Ein
geeignetes Verfahren zur Implementierung eines skalierbaren Übertragungsweges
ist eine Backplane-(Rückwandplatinen-)Vorrichtung,
die unter der Bezeichnung "zellenbasierte
Kreuzschiene" (Cell
Based Crossbar) bekannt ist. Die Datenpakete werden von einer Vielzahl
von Eingangs-Mitteln
für das
Durchlaufen der Kreuzschiene in Zellen aufgeteilt.
-
Die
Vielzahl von Eingangs-Mitteln stellt entsprechende Schnittstellen
zwischen ankommenden Übertragungskanälen, welche
ankommende Daten transportieren, und der Backplane-Vorrichtung zur Verfügung. Analog
stellt eine Vielzahl von Ausgangs-Mitteln entsprechende Schnittstellen
zwischen der Backplane-Vorrichtung und abgehenden Übertragungskanälen zur
Verfügung.
-
Eine
allgemeine Architektur eines Terrabit-Routers weist eine gewisse Ähnlichkeit
mit der Architektur herkömmlicher
Router auf. Datenpakete kommen an (einem) Eingangsport(s) von Eingangs-Mitteln
an und werden als Zellen über
die Kreuzschiene zu einem vorgegebenen Ausgangs-Mittel geroutet,
welches die Pakete wieder vereinigt und sie über seine(n) Ausgangsport(s) überträgt. Jedes
Eingangs-Mittel unterhält
eine separate Paketwarteschlange für jedes Ausgangs-Mittel.
-
Die
Eingangs- und Ausgangs-Mittel können als
Line-Interface-Karten
(Line Interface Cards, LICs) implementiert werden. Da eine der Funktionen,
die von den Eingangs- und Ausgangs-Mitteln regelmäßig erfüllt wird,
das Weitersenden (Forwarding) ist, werden LICs auch "Forwarder" genannt. Zu den
weiteren Funktionen gehören
Staukontrolle und Instandhaltung externer Schnittstellen, Eingangsports
und Ausgangsports.
-
In
einer herkömmlichen
zellenbasierten Kreuzschiene ist jedes Eingangs-Mittel mit einem oder
mehreren Ausgangs-Mittel(n)
verbunden. Zu einem beliebigen gegebenen Zeitpunkt ist jedes Eingangs-Mittel
jedoch nur in der Lage, mit einem Ausgangs-Mittel verbunden zu sein.
Ebenso kann jedes Ausgangs-Mittel
zu einem gegebenen Zeitpunkt immer nur mit einem Eingangs-Mittel
verbunden sein.
-
Alle
Eingangs-Mittel übertragen
parallel und unabhängig
voneinander über
die Kreuzschiene. Ferner ist die Übertragung der Zellen mit einem
Zellenzyklus synchronisiert, der eine Periode von zum Beispiel 108,8
ns aufweist.
-
Die
Eingangs-Mittel senden mit jedem neuen Zellenzyklus gleichzeitig
jeweils eine neue Zelle.
-
Das
Muster der Übertragungen
von den Eingangs-Mitteln über
die Kreuzschiene zu den Ausgangs-Mitteln ändert sich am Ende jedes Zellenzyklus.
-
Die
Koordination des Sendens und des Empfangs von Zellen wird von einem
Kreuzschienen-Controller durchgeführt.
-
Ein
Kreuzschienen-Controller ist für
eine effiziente Zuweisung der Bandbreite über die Kreuzschiene vorgesehen.
Er berechnet die Geschwindigkeit, mit der jedes Eingangs-Mittel
an jedes Ausgangs-Mittel senden muss. Diese ist dieselbe wie die Geschwindigkeit,
mit der Daten von jeder Paketwarteschlange gesendet werden müssen. Für die Berechnung
werden Echtzeitinformationen verwendet, welche Verkehrsmessungen
und Angaben von den Eingangs-Mitteln umfassen. Die Angaben von den Eingangs-Mitteln
umfassen die Überwachung
der aktuellen Geschwindigkeiten, Warteschlangenlängen und Flags "Puffer voll". Der Kreuzschienen-Controller erfüllt noch
eine weitere Aufgabe: Er dient dazu, die Übertragung von Daten über die
Kreuzschiene bei gleichzeitiger Einhaltung der berechneten Geschwindigkeiten
effizient zu planen. Am Ende jedes Zellenzyklus kommuniziert der
Kreuzschienen-Controller mit den Eingangs- und Ausgangs-Mitteln
wie folgt. Erstens berechnet der Kreuzschienen-Controller für jedes
Eingangs-Mittel die Kennung der nächsten Paketwarteschlange,
von welcher es senden muss, und überträgt sie zum
jeweiligen Eingangs-Mittel. Zweitens berechnet der Kreuzschienen-Controller
für jedes
Ausgangs-Mittel die Kennung des Eingangs, von welchem es empfangen
muss, und überträgt sie zum jeweiligen
Ausgangs-Mittel.
-
Das
oben beschriebene System hat jedoch eine Reihe von Nachteilen. Der
Kreuzschienen-Controller ist für
die Steuerung des Verhaltens jedes Eingangs- und Ausgangs-Mittels
Zellenzyklus für
Zellenzyklus verantwortlich. Bei den für einen Terrabit-Router erforderlichen
Geschwindigkeiten bedeutet dies, dass anspruchsvolle, komplexe Hardware
benötigt wird,
um den Kreuzschienen-Controller, die Eingangs- und die Ausgangs-Mittel
zu implementieren. Ferner werden durch die Forderung nach höherer Kapazität den Übertragungskanälen zwischen
den Eingangs- und Ausgangs-Mitteln und dem Kreuzschienen-Controller-Mittel
strenge Bedingungen hinsichtlich des Laufzeitverhaltens auferlegt.
-
Wenn
ein System für
spezielle Verkehrsbedingungen entwickelt wird, ist es ungünstig, wenn
ungeeignete Hardware ersetzt werden muss.
-
In
US 5.982.771 werden ein
Verfahren und eine Vorrichtung für
die Zuweisung von Bandbreite in einer Netzvermittlung beschrieben,
die eine Vielzahl von Eingangsports aufweist, die mit einer Vielzahl von
Ausgangsports über
ein Koppelnetz gekoppelt sind, um sicherzustellen, dass für vorgegebene Scheduling
Lists (Zeitplanungslisten) eine minimale Bandbreite zugewiesen wird.
-
In
US A 5748629 werden eine ATM-Netz-Vermittlung und ein Verfahren
zur Nutzung für
eine adaptive Bereitstellung integrierter Dienste beschrieben. Bei
der Erbringung solcher integrierter Dienste kann, wenn die zugewiesene
Bandbreite für eine
Verbindung aufgebraucht worden ist oder wenn die Verbindung für die zugewiesene
Bandbreite nicht berechtigt ist, die Verbindung optional dynamische Bandbreiten-Arbitrierung (Dynamic
Bandwidth Arbitration) oder eine Kombination von sowohl zugewiesener
als auch dynamischer Bandbreite verwenden.
-
In
WO 99/35879 wird ein Verfahren zur Bereitstellung von Bandbreiten-
und Laufzeit-Garantien in einem Kreuzschienenverteiler mit Beschleunigung beschrieben.
-
Daher
besteht eine Aufgabe der Erfindung darin, die oben erwähnten Probleme
zu umgehen oder wenigstens zu vermindern.
-
Gemäß einem
Aspekt der vorliegenden Erfindung wird eine Vermittlungsanordnung
bereitgestellt, welche umfasst: eine Kreuzschiene; eine Vielzahl
von Eingangs-Mitteln, die an eine Eingangsseite der Kreuzschiene
angeschlossen sind; eine Vielzahl von Ausgangs-Mitteln, die an eine
Ausgangsseite der Kreuzschiene angeschlossen sind; und die dadurch gekennzeichnet
ist, dass jedes Eingangs-Mittel ein Eingangszeitplan-Speichermittel
zur Speicherung einer Vielzahl von Kennungen von Sendewarteschlangen
umfasst; und dass jedes Ausgangs-Mittel ein Ausgangszeitplan-Speichermittel
zur Speicherung einer Vielzahl von Eingangs-Kennungen umfasst; und
durch eine Management-Karte, welche so beschaffen ist, dass sie
Konfigurations-Primitives an jedes Eingangs-Mittel aus der Vielzahl
von Eingangs-Mitteln und an jedes Ausgangs-Mittel aus der Vielzahl
von Ausgangs-Mitteln sendet, wobei die Konfigurations-Primitives
aktualisierte Einträge
für die
Eingangszeitplan- und Ausgangszeitplan-Speichermittel liefern; und
Eingangszeiger-Mittel für
das Bezeichnen einer Kennung aus der besagten gespeicherten Vielzahl
von Kennungen von Sendewarteschlangen und Ausgangszeiger-Mittel
für das
Bezeichnen einer Kennung aus der besagten gespeicherten Vielzahl
von Eingangs-Kennungen, von welcher Daten empfangen werden sollen,
um den Inhalt jedes Eingangszeitplan-Speichermittels und jedes Ausgangszeitplan-Speichermittels
zu verwalten; wodurch zu jedem Zeitpunkt der Übertragung von Zellen eine
Zelle, die von der besagten bezeichneten Sendewarteschlange in dem
Eingangs-Mittel gesendet wurde, an dem besagten Ausgangs-Mittel
von der besagten bezeichneten Eingangs-Kennung empfangen wird.
-
Gemäß der Erfindung
wird außerdem
ein Verfahren zum Routing von Daten mit Hilfe einer Vermittlungsanordnung
bereitgestellt, welche eine Kreuzschiene, eine Vielzahl von Eingangs-Mitteln, eine
Vielzahl von Ausgangs-Mitteln und eine Management-Karte umfasst,
wobei das Verfahren das Speichern einer Vielzahl von Kennungen von
Sendewarteschlangen in jedem Eingangszeitplan-Speichermittel umfasst
und gekennzeichnet ist durch: a) Speichern einer Vielzahl von Eingangs-Kennungen in
jedem Ausgangszeitplan-Speichermittel; b) Senden von Konfigurations-Primitives
von der Management-Karte an jedes Eingangs-Mittel aus der Vielzahl von
Eingangs-Mitteln und an jedes Ausgangs-Mittel aus der Vielzahl von
Ausgangs-Mitteln, wobei die Konfigurations-Primitives aktualisierte
Einträge
für die
Eingangszeitplan- und Ausgangszeitplan-Speichermittel liefern; c)
Verwalten des Inhalts jedes Eingangszeitplan-Speichermittels und jedes Ausgangszeitplan-Speichermittels
durch Vorsehen von Eingangszeiger-Mitteln für das Bezeichnen einer Kennung
aus der besagten gespeicherten Vielzahl von Kennungen von Sendewarteschlangen
und von Ausgangszeiger-Mitteln
für das
Bezeichnen einer Kennung aus der besagten gespeicherten Vielzahl
von Eingangs-Kennungen, von welcher Daten empfangen werden sollen;
und d) zu jedem Zeitpunkt der Übertragung
von Zellen, Senden einer Zelle von der besagten bezeichneten Sendewarteschlange
in dem Eingangs-Mittel und Empfangen der Zelle an dem besagten Ausgangs-Mittel
(322, 324, 326) von der besagten bezeichneten
Eingangs-Kennung.
-
Vorzugsweise
umfasst Schritt d) ferner das Bewegen des besagten Eingangszeigers
und des besagten Ausgangszeigers zur nächsten Position.
-
Vorzugsweise
umfasst Schritt c) für
jedes Eingangs-Mittel das Berechnen der Kreuzschienen-Geschwindigkeit,
die für
jedes Ausgangs-Mittel erforderlich ist. Die besagten Kreuzschienen-Geschwindigkeiten
können
entsprechend der aktuellen Verkehrsbelastung und der erforderlichen
Dienstgüte berechnet
werden.
-
Außerdem umfasst
Schritt c) ferner das Berechnen entsprechender Eingangs- und Ausgangszeitpläne, welche
den besagten berechneten Kreuzschienen-Geschwindigkeiten Rechnung
tragen. Das Verfahren umfasst ferner den Schritt des Aktualisierens
der Eingangszeitplan- und Ausgangszeitplan-Speichermittel mit Aktualisierungsnachrichten, welche
die berechneten Eingangs- und Ausgangszeitpläne betreffen.
-
Die
Eingangs-Leitungsfunktionsmittel können Line-Interface-Karten sein. Ebenso können die Ausgangs-Leitungsfunktionsmittel
auch Line-Interface-Karten sein.
-
Aufgrund
der vorliegenden Erfindung werden vom Controller einfache Zeitpläne für das Senden und
den Empfang von Zellen über
die Kreuzschiene an jede LIC gesendet. Der Controller ist dafür verantwortlich,
dass die Zeitpläne
so erstellt werden, dass sichergestellt ist, dass die Verkehrs-
und Dienstgüteanforderungen
erfüllt
werden. Die LICs haben nur die Zeitpläne zu befolgen, was eine einfache
Aufgabe ist. Die Hauptvorteile sind eine verringerte Komplexität der LICs
und Flexibilität.
Neue Dienste können dem
Router durch Herunterladen von Software hinzugefügt werden, ohne dass sich dies
auf die Hardware der LICs auswirkt.
-
Um
ein besseres Verständnis
der vorliegenden Erfindung zu ermöglichen, wird nun, lediglich
als Beispiel, auf die beigefügten
Zeichnungen Bezug genommen, wobei:
-
1 die
Architektur eines Terrabit-Routers veranschaulicht:
-
2 einen
Kreuzschienen-Controller zeigt; und
-
3 ein
System zur Verteilung von Zeitplänen
gemäß der vorliegenden
Erfindung zeigt.
-
Obwohl
die vorliegende Erfindung unter Bezugnahme auf Eingangs- und Ausgangs-Forwarder beschrieben
wird, ist leicht einzusehen, dass die vorliegende Erfindung nicht
auf die Verwendung solcher Forwarder beschränkt ist. Für Eingang und Ausgang können beliebige
geeignete Leitungsfunktionsmittel verwendet werden, zum Beispiel
Line-Interface-Karten (LICs).
-
1 zeigt
eine herkömmliche
Architektur eines Terrabit-Routers 100, in welcher Pakete
an Eingangs-Forwardern 102, 104, 106 über deren
Eingangsport(s) (nicht dargestellt) ankommen und über eine
Kreuzschiene 110 zu einem richtigen Ausgangs-Forwarder 120 geroutet
werden, welcher sie über
seine(n) Ausgangsport(s) (nicht dargestellt) sendet. Jeder Eingangs-Forwarder 102, 104, 106 unterhält eine
separate Paketwarteschlange für
jeden Ausgangs-Forwarder 120.
-
Der
Eingangs-Forwarder 102 hat drei Warteschlangen q11, q12, q13 von Datenpaketen, die für die Übertragung über die
Kreuzschiene 110 zu drei separaten Ausgangs-Forwardern,
von denen nur einer als 120 dargestellt ist, bereit sind.
Analog hierzu werden an den Eingangs-Forwardern 104, 106 jeweils
drei Warteschlangen q21, q22,
q23 bzw. q31, q32, q33 gebildet. Obwohl
in jedem Eingangs-Forwarder 102, 104, 106 drei
Warteschlangen dargestellt sind, kann selbstverständlich in
jedem Eingangs-Forwarder 102, 104, 106 eine
beliebige Anzahl von Warteschlangen vorhanden sein, wobei jede Warteschlange
einem Ausgangs-Mittel entspricht.
-
Es
ist leicht einzusehen, dass, obwohl in 1 nur ein
Ausgangs-Forwarder 120 dargestellt ist, die Anzahl der
Ausgangs-Forwarder dieselbe ist wie die Anzahl der Eingangs-Forwarder.
-
Zur
Erläuterung
sei darauf hingewiesen, dass eine zellenbasierte Kreuzschiene (Cell
Based Crossbar) wie folgt charakterisiert ist:
- a)
Jede Eingangs-Leitungsfunktion kann mit beliebigen Ausgangs-Leitungsfunktionen
verbunden sein.
- b) Jede Eingangs-Leitungsfunktion kann zu einem beliebigen gegebenen
Zeitpunkt nur mit einer Ausgangs-Leitungsfunktion verbunden sein.
- c) Jede Ausgangs-Leitungsfunktion kann zu einem beliebigen gegebenen
Zeitpunkt nur mit einer Eingangs-Leitungsfunktion verbunden sein.
- d) Alle Eingänge
senden parallel über
die Kreuzschiene.
- e) Daten werden über
die Kreuzschienen in kleinen Zellen von fester Größe übertragen;
zum Beispiel beträgt
eine Zellengröße normalerweise
64 Oktette.
- f) Die Übertragung
der Zellen erfolgt synchronisiert über alle Eingangs-Leitungsfunktionen.
Das bedeutet, dass für
jeden Zellenzyklus alle Eingangs-Leitungsfunktionen zum gleichen
Zeitpunkt beginnen, die nächste
Zelle zu senden.
- g) Die Kreuzschiene wird am Ende eines jeden Zellenzyklus neu
konfiguriert.
-
Wie
in 1 dargestellt, werden Pakete von Daten, die an
Eingangs-Forwardern 102, 104, 106 über deren
Eingangsport(s) (nicht dargestellt) ankommen, über die Kreuzschiene 110 zum
richtigen Ausgangs-Forwarder 120 geroutet, welcher sie über seine(n)
Ausgangsport(s) (nicht dargestellt) sendet. Jeder Eingangs-Forwarder 102, 104, 106 unterhält eine
separate Paketwarteschlange für
jeden Ausgangs-Forwarder 120,
zum Beispiel q11, q12,
q13, q21, q22, q23, q31, q32, q33.
-
Eine
herkömmliche
zellenbasierte Kreuzschienenanordnung 200 ist in 2 dargestellt.
Die Anordnung 200 umfasst eine Vielzahl von Eingangs-Forwardern 210 und
eine Vielzahl von Ausgangs-Forwardern 220, die an eine
Kreuzschiene oder Backplane 230 angeschlossen sind. Hierbei kann
jeder Eingangs-Forwarder 212, 214, 216, 218 mit
einem oder mehreren der Ausgangs-Forwarder 222, 224, 226, 228 verbunden
sein. Zu einem gegebenen Zeitpunkt kann jedoch jeder Eingangs-Forwarder 212, 214, 216, 218 nur
mit einem Ausgangs-Forwarder 222, 224, 226, 228 verbunden
sein, und jeder Ausgangs-Forwarder 222, 224, 226, 228 kann
zu einem gegebenen Zeitpunkt nur mit einem Eingangs-Forwarder 212, 214, 216, 218 verbunden
sein.
-
Die
Kreuzschienenanordnung 200 wird von einem Kreuzschienen-Controller 240 gesteuert,
welcher mit jedem Eingangs-Forwarder 212, 214, 216, 218 über Verbindungen 242, 244 und
mit jedem Ausgangs-Forwarder 222, 224, 226, 228 über eine
Verbindung 246 verbunden ist. Der Kreuzschienen-Controller 240 koordiniert
das Senden und den Empfang von Zellen über die Verbindungen 242, 244, 246.
-
Jeder
Eingangs-Forwarder 212, 214, 216, 218 übermittelt
Verkehrsmessdaten und Benachrichtigungen, die zur Verwendung durch
den Kreuzschienen-Controller 240 bestimmt sind. Der Kreuzschienen-Controller 240 weist
zeitweilige Verbindungen zwischen Eingangs-Forwardern 212, 214, 216, 218 und
Ausgangs-Forwardern 222, 224, 226, 228 zu
und informiert die jeweiligen Forwarder dementsprechend der Reihe
nach für
jeden Zellenzyklus.
-
3 zeigt
ein System 300 gemäß der vorliegenden
Erfindung. Das System 300 umfasst eine Vielzahl von Eingangs-Forwardern 310,
eine Vielzahl von Ausgangs-Forwardern 320, eine Kreuzschiene 330 und
eine Management-Karte 340, welche Kreuzschienen-Controller-Mittel
(nicht dargestellt) enthält. Die
Eingangs-Forwarder 312, 314, 316 und
Ausgangs-Forwarder 322, 324, 326 sind
als Line-Interface-Karten (LICs) dargestellt, können jedoch auch auf eine andere
Weise implementiert sein.
-
Obwohl
drei Eingangs- und drei Ausgangs-Forwarder dargestellt sind, ist
leicht einzusehen, dass entsprechend der speziellen Anwendung eine
beliebige geeignete Anzahl von Eingangs- und Ausgangs-Forwardern
verwendet werden kann. Bei dieser Anordnung ist es nicht wesentlich,
dass die Anzahl der Eingangs-Forwarder mit der der Ausgangs-Forwarder übereinstimmt;
zum Beispiel kann ein Multiplexer sechzehn Eingangs-Forwarder und nur
vier Ausgangs-Forwarder aufweisen.
-
Jeder
Eingangs-Forwarder 312, 314, 316 besitzt
einen Puffer (nicht im Detail dargestellt), der eine Vielzahl von
Datenwarteschlangen q11, q12,
..., q1n, q21, q22, ..., q2n bzw.
qm1, qm2, ..., qmn enthält
(wobei m die Anzahl der Eingangs-Forwarder 310 und
n die Anzahl der Datenwarteschlangen ist), welche Daten in entsprechende
Scheduler 352, 354, 356 einspeisen.
-
Jede
Warteschlange kann allgemein als qjk dargestellt
werden, wobei j den Eingang angibt, k den Ausgang angibt und qjk die Paketwarteschlange am Eingang j für Pakete,
die für
den Ausgang k bestimmt sind, darstellt.
-
Jeder
Scheduler 352, 354, 356 ist mit einem entsprechenden
Eingangs-Zeitplan 362, 364, 366 verbunden,
welcher die Wahl der Datenwarteschlange steuert, die entsprechend
den Daten von der Management-Karte 340 zur Kreuzschiene 330 übertragen
werden soll.
-
Ähnlich weist
jeder Ausgangs-Forwarder 322, 324, 326 einen
entsprechenden Eingangs-Selektor 372, 374, 376 für den Empfang
von Daten von der Kreuzschiene 330 und für deren Übertragung
zu einem Puffer (nicht im Detail dargestellt) auf, welcher eine
Vielzahl Datenwarteschlangen q'11, q'12, ..., q'1p, q'21,
q'22,
..., q'2p bzw.
q'r1,
q'r2,
..., q'rp enthält (wobei
r die Anzahl der Ausgangs-Forwarder 320 und p die Anzahl
der Datenwarteschlangen ist). Jeder Eingangs-Selektor 372, 374, 376 ist
mit einem entsprechenden Ausgangs-Zeitplan 382, 384, 386 verbunden,
welcher Informationen darüber
zur Verfügung stellt,
welcher Eingangs-Forwarder gemäß den Daten
von der Management-Karte 340 gewählt werden soll. Jede der Datenwarteschlangen
q'11,
q'12,
..., q1p, q'21, q'22,
..., q'2p und
q'r1,
q'r2,
..., q'rp ist
mit einem weiteren Scheduler 392, 394, 396 verbunden,
welcher die entsprechende Warteschlange wählt, die ausgegeben werden
soll. Dies ist jedoch für
die vorliegende Erfindung nicht wesentlich.
-
Nachfolgend
wird der Ablauf des Verfahrens gemäß der vorliegenden Erfindung
anhand des in 3 dargestellten Systems 300 beschrieben.
-
Jede
Eingangs-LIC (Eingangs-Forwarder) 312, 314, 316 ist
mit einem entsprechenden Zeitplan 362, 364, 366 verknüpft, welcher
das Senden von Zellen durch die besagte Eingangs-LIC steuert. Der Zeitplan
hat die Form einer Tabelle, deren Einträge die Kennungen von Ausgangs-LICs
sind. Jede Eingangs-LIC
unterhält
einen Zeiger in den Zeitplan. Zu jedem Zeitpunkt der Übertragung
von Zellen sendet die LIC eine Zelle aus der Warteschlange, die
in dem vom Zeiger bezeichneten Eintrag angegeben ist, und bewegt
den Zeiger zur nächsten
Position. Der Zeitplan ist kreisförmig in dem Sinne, dass, wenn
der Zeiger vom letzten Eintrag aus bewegt wird, seine nächste Position
der erste Eintrag ist.
-
Jede
Ausgangs-LIC (Ausgangs-Forwarder) 322, 324, 326 ist
ebenfalls mit einem entsprechenden Zeitplan 382, 384, 386 verknüpft, welcher
den Empfang von Zellen durch die besagte Ausgangs-LIC steuert. Der
Zeitplan hat die Form einer Tabelle, deren Einträge die Kennungen von Eingangs-LICs
sind, von denen empfangen werden soll. Eine Ausgangs-LIC unterhält einen
Zeiger in den Zeitplan. Zu jedem Zeitpunkt der Übertragung von Zellen empfängt die
LIC die Zelle von dem Eingang, der in dem vom Zeiger bezeichneten
Eintrag angegeben ist, und bewegt den Zeiger zur nächsten Position.
Der Zeitplan ist ebenfalls kreisförmig in dem Sinne, dass, wenn
der Zeiger vom letzten Eintrag aus bewegt wird, seine nächste Position
der erste Eintrag ist.
-
Die
Management-Karte 340 verwaltet den Inhalt der Eingangs-
und Ausgangs-Zeitpläne 362, 364, 366, 382, 384, 386.
Für jede
Eingangs-LIC (Eingangs-Forwarder) 312, 314, 316 berechnet
die Management-Karte 340 die Kreuzschienen-Geschwindigkeiten,
die für
die einzelnen Ausgangs-LICs (Ausgangs-Forwarder) 322, 324, 326 erforderlich
sind. Die Kreuzschienen-Geschwindigkeiten werden entsprechend der
aktuellen Verkehrsbelastung und der erforderlichen Dienstgüte berechnet.
Stattdessen könnten
die Geschwindigkeiten auch fest sein.
-
Nachdem
die Geschwindigkeiten berechnet worden sind, berechnet die Management-Karte 340 die
entsprechenden Eingangs- und Ausgangs-Zeitpläne, die benötigt werden, um ihnen Rechnung
zu tragen. Anschließend
aktualisiert sie die Zeitpläne mit
Hilfe von Aktualisierungsnachrichten, die unter der Bezeichnung "Konfigurations-Primitives" bekannt sind, über die
Verbindungen 342, 344. Es müssen nur Änderungen der Zeitpläne gesendet
werden und nicht die vollständigen
Tabellen. Dadurch wird der Steuerverkehr von der Management-Karte aus verringert.
-
Nach
dem Empfang der Konfigurations-Primitives aktualisieren die LICs
oder Forwarder die Zeitpläne
entsprechend den Anforderungen.
-
Um
Probleme im Zusammenhang mit der Aktualisierung des Zeitplans, das
heißt
einem Lesen und Schreiben an demselben Punkt im Zeitplan, zu vermeiden,
kann der Zeitplan so aufgeteilt werden, dass Lesen und Schreiben
in verschiedenen Teilen erfolgen. Stattdessen können auch zwei getrennte identische
Zeitpläne
vorgesehen werden – ein
Zeitplan, welcher gelesen wird, und ein anderer Zeitplan, welcher
konfiguriert wird.
-
Diese
Vorgehensweise hat die folgenden Vorteile:
Erstens können komplexe
Algorithmen zur Geschwindigkeitsberechnung und Zeitplanberechnung in
der Software oder in programmierbaren Geräten auf der Management-Karte 340 implementiert
werden, wodurch Entwicklungsrisiko und Entwicklungskosten reduziert
werden.
Zweitens ist die zur Unterstützung des Verfahrens erforderliche
Hardware sehr einfach.
Drittens erfordern die Übertragungskanäle zwischen den
LICs 310, 320 und der Management-Karte 340 keine
strengen Bedingungen hinsichtlich des Laufzeitverhaltens, da die
Primitives nicht direkt mit den Übertragungen
von Zellen über
die Backplane 330 synchronisiert sind.
Viertens erfordern
die Übertragungskanäle 342, 344 zwischen
den LICs 310, 320 und der Management-Karte 340 weniger
Bandbreite, als es der Fall wäre,
wenn die Management-Karte
zu jedem Zellen-Zeitpunkt die Kreuzschiene oder Backplane 330 neu
konfigurieren müsste.
Fünftens kann
das Verhalten des Vermittlers/Routers durch Änderungen in den Software-Algorithmen
geändert
werden, die auf der Management-Karte 340 laufen. Dies hat
zwei Konsequenzen. Verschiedene Anwendungen können von ein und derselben
Hardware unterstützt
werden. Zum Beispiel könnte
dieselbe Hardware sowohl Internetprotokoll-(IP-)Routing als auch
Leitungsvermittlung unterstützen,
einschließlich
des asynchronen Übertragungsmodus (Asynchronous
Transfer Mode, ATM) und des zugehörigen synchronen Übertragungsmodus
(Synchronous Transfer Mode, STM). Ferner können Optimierungen und Verfeinerungen
der Algorithmen leicht implementiert werden.
-
Es
ist leicht einzusehen, dass, obwohl in der vorangegangenen Erörterung
auf Terrabit-Router Bezug genommen wurde, die Vorrichtungen der
vorliegenden Erfindung in unterschiedlichsten Vermittlungsvorrichtungen
implementiert werden können, einschließlich von
Vermittlern und Routern, und dass diese Vorrichtungen entweder von
rein elektronischem oder von teilweise elektronischem und teilweise
optischem oder von optischem Typ sein können.