-
FELD DER ERFINDUNG
-
Die
vorliegende Erfindung bezieht sich auf Vorrichtungen zur Bestimmung
der Dienstqualität (QoS)
in einem Datenkommunikationsschalter und speziell auf Vorrichtungen
zur Implementierung der QoS-Bestimmung in Stufen in einem Datenkommunikationsschalter.
-
HINTERGRUND DER ERFINDUNG
-
Datenkommunikationsschalter
haben typischerweise eine Weiterleitungs-Logik zur Unterstützung des
Paket-Weiterleitungs-Prozesses.
In einer herkömmlichen
Paket-Weiterleitungs-Logik
wird typischerweise ein Schlüssel,
der die Adressierung und weitere Informationen enthält, als
Eingabe verwendet, um ein Ergebnis abzurufen, das Weiterleitungs-Informationen
als Ausgabe enthält.
-
Mit
dem Aufkommen der Dienstqualität (QoS)
erlauben viele Vermittlungsprotokolle, wie z.B. 802.1Q und Differential
Services (DiffServ), als Teil der Paketverarbeitung eine Modifikation
oder "Anpassung" der QoS-Information
in eintreffenden Paketen. Die modifizierte QoS-Information wird
typischerweise als Funktion der eintreffenden QoS-Information und
anderer Flusseigenschaften bestimmt, wie z.B. des Empfangs-Anschlusses.
Die eintreffende QoS-Information muss daher zu den Informationen hinzugefügt werden,
die im Verlauf der Paketverarbeitung berücksichtigt werden.
-
Viele
Paketverarbeitungs-Verfahren erreichen dies durch einfache Hinzufügung der
eintreffenden QoS-Information in einen Paket-Weiterleitungs-Logik-Eingangsschlüssel. Durch
Integration der eintreffenden QoS-Information in den Eingangsschlüssel liefert
die Paket-Weiterleitungs-Logik (durch die resultierende Ausgabe)
kundenspezifische QoS-Anpassungs-Information
für jede
Kombination der eintreffenden QoS-Information, Adressierungs-Information
und anderer Information.
-
Eine
solche individuell zugeschnittene QoS-Anpassungs-Information hat typischerweise den Nachteil
eines beträchtlichen
Anstiegs der Komplexität
des Eingangsschlüssels.
Zum Beispiel wird typischerweise ein beträchtlich größerer Speicher benötigt und
oft mehr Flexibilität
bereitgestellt als benötigt
wird, da Netzwerkverwalter typischerweise eine identische QoS-Anpassung
für Pakete
bereitstellen wollen, die viele verschiedene Kombinationen von Fluss-Eigenschaften
enthalten. Darüber
hinaus können
bis zu dem Umfang, zu dem es gewünscht ist,
die herkömmliche
Paket-Weiterleitungs-Logik um QoS-Anpassungs-Eigenschaften zu vergrößern, Größen-Grenzen
fest codierter Schlüssel,
die schwierig zu erweitern sind, ein technisches Hindernis darstellen.
-
Demgemäß besteht
ein Bedarf für
ein QoS-Anpassungs-Verfahren
für einen
Datenkommunikationsschalter, das realisiert werden kann, ohne die
eintreffende QoS-Information in den Eingangsschlüssel zu integrieren.
-
In
WO 00/03256 wird ein Verfahren zur QoS-(Quality of Service)-Anpassung
für einen
Datenkommunikationsschalter sowie der Datenkommunikationsschalter
der oben erwähnten
Art offen gelegt.
-
ZUSAMMENFASSUNG DER ERFINDUNG
-
Eine
Ausführung
der vorliegenden Erfindung liefert ein Verfahren zur QoS-Anpassung
für einen Datenkommunikationsschalter,
wie in Anspruch 1 spezifiziert.
-
Eine
andere Ausführung
der vorliegenden Erfindung enthält
einen Datenkommunikationsschalter, wie in Anspruch 7 spezifiziert.
Der Datenkommunikationsschalter hat vorteilhaft ein stufen-implementiertes
QoS-Anpassungs-Verfahren für
ein Paket. Das Paket enthält
einen eintreffenden Prioritätswert. Der
Schalter enthält
Mittel einer ersten Stufe und Mittel einer zweiten Stufe. Die Mittel
der ersten Stufe empfangen einen Eingangsschlüssel, der eine oder mehrere
Paket-Fluss-Eigenschaften
enthält
und als Reaktion auf den Eingangsschlüssel als Ausgang QoS-Anpassungs-Daten
liefert. Die Mittel der zweiten Stufe empfangen die QoS-Anpassungs-Daten und liefern
einen internen Prioritätswert
und einen abgehenden Prioritätswert
als Reaktion auf die QoS-Anpassungs-Daten und den Eingangs-Prioritätswert.
-
KURZBESCHREIBUNG DER ZEICHNUNGEN
-
Diese
und andere Aspekte der Erfindung können verstanden werden, indem
man auf die folgende detaillierte Beschreibung zusammen mit den begleitenden
Zeichnungen Bezug nimmt, die im Folgenden kurz erläutert werden.
-
1 ist
ein Schalter in einer Ausführung
der vorliegenden Erfindung;
-
2 ist
ein Vermittlungs-Modul, das in dem Schalter von 1 verwendet
werden kann;
-
3 zeigt
die Abbildung der eintreffenden Prioritätswerte auf abgehende Prioritätswerte
in einer Ausführung
der vorliegenden Erfindung;
-
4 zeigt
QoS-Anpassungs-Tabellen in einer Ausführung der vorliegenden Erfindung;
-
5 ist
ein Flussdiagramm, das die QoS-Anpassung/Konfiguration
entsprechend einer Ausführung
der vorliegenden Erfindung beschreibt; und
-
6 ist
ein Flussdiagramm, das die stufenimplementierte QoS-Anpassung entsprechend
einer Ausführung
der vorliegenden Erfindung beschreibt.
-
DETAILLIERTE BESCHREIBUNG
-
Die
QoS wird typischerweise durch Felder definiert, wie zum Beispiel
(1) das 3 Bit lange Kennungs-Feld in Ebene 2 von 802.1Q, (2) das
8 Bit lange Feld ToS (Type of Service) in Ebene 3 und (3) das 6
Bit lange DiffServ in Ebene 3, das der Definition der QoS dient.
-
Eine
Ausführung
der vorliegenden Erfindung liefert ein stufen-implementiertes QoS-Anpassungs-Verfahren
für einen
Schalter, wie z.B. eine Bridge nach 802.1Q. Das stufenimplementierte QoS-Anpassungs-Verfahren
umfasst viele Aspekte von zur QoS gehörenden Aufgaben und kann eine Prioritäts-Anpassung, eine gemeinsame
Nutzung von Verbindungen, eine Bandbreiten-Konfiguration und Bandbreitenbegrenzung
enthalten, ist aber nicht darauf beschränkt. Der Schalter kann auch
als Datenkommunikationsschalter bezeichnet werden.
-
Ein
analoges stufen-implementiertes QoS-Anpassungs-Verfahren kann auch auf andere Arten
von Schaltern angewendet werden, wie z.B. DiffServ-(Differentiated
Services)-Router. In DiffServ-Routern kann das stufen-implementierte QoS-Anpassungs-Verfahren
bezüglich
eines DiffServ-Feldes in der Kopfinformation eines Ebene-3-Paketes
implementiert werden, z.B. des IP-Datagramms, wie in dem IETF Request
for Comment 2475 mit dem Titel "An
Architecture for Differentiated Services" (RFC 2475) spezifiziert.
-
Das
stufen-implementierte QoS-Anpassungs-Verfahren kann bereitgestellt
werden, indem eine vorhandene Paket-Weiterleitungs-Logik erweitert wird.
Ein solches stufenimplementiertes QoS-Anpassungs-Verfahren wird
vorzugsweise leicht von einem Netzwerk-Administrator verwaltet.
-
Das
stufen-implementierte QoS-Anpassungs-Verfahren enthält vorzugsweise
zwei oder mehr Stufen. In einer ersten Stufe gibt eine Paket-Weiterleitungs-Logik
vorzugsweise ein Ergebnis, das einen QoS-Anpassungs-Index enthält als Reaktion
auf einen Eingangsschlüssel,
der zu dem Paket gehörende
Fluss-Eigenschaften
enthält,
zurück.
In einer zweiten Stufe wird der von der Paket-Weiterleitungs-Logik
zurückgelieferte
QoS- Anpassungs-Index
vorzugsweise zusammen mit der eintreffenden QoS-Information dazu
verwendet, interne QoS-Information zur Priorisierung des Paketes
zu bestimmen, während
es sich in dem Schalter befindet, und/oder abgehende QoS-Information
zur Aufnahme in das Paket, bevor es als abgehendes Paket gesendet wird.
-
Die
Verwendung des QoS-Anpassungs-Index zur Bestimmung der internen
und/oder abgehenden QoS-Information für das Paket kann die Rückgabe einer
QoS-Anpassungs-Tabelle von der QoS-Anpassungs-Logik als Reaktion auf den
QoS-Anpassungs-Index umfassen. Die Bestimmung der internen und/oder
abgehenden QoS-Information
kann die Auswahl von Daten in der QoS-Anpassungs-Tabelle als interne und/oder abgehende
QoS-Information in Übereinstimmung
mit der eintreffenden QoS-Information umfassen.
-
Die
eintreffende QoS-Information, die interne QoS-Information und die abgehende QoS-Information
können
zum Beispiel auch als eintreffender Prioritätswert, als interner Prioritätswert und
als abgehender Prioritätswert,
oder als Eingangs-QoS-Wert, als interner QoS-Wert und als Ausgangs-QoS-Wert bezeichnet werden.
Die eintreffende QoS-Information und die abgehende QoS-Information
kann zum Beispiel auch als Eingangs-Prioritätswert bzw. Ausgangs-Prioritätswert bezeichnet
werden. Das eintreffende Paket und das abgehende Paket können zum Beispiel
auch als Eingangs-Paket bzw. als Ausgangs-Paket bezeichnet werden.
-
1 zeigt
einen Schalter 100 in einer Ausführung der vorliegenden Erfindung.
Der Schalter 100 enthält
vorzugsweise eine Vermittlungs-Rückwandplatine 111,
die mit Vermittlungsmodulen 101a–101c verbunden ist.
Die Vermittlungs-Rückwandplatine 111 kann
einen Koppelbaustein enthalten, oder Koppelbaustein-Funktionen können auf
die Vermittlungs-Rückwandplatine
und die Vermittlungsmodule verteilt sein. Der Koppelbaustein (nicht
gezeigt) kann auch die Schnittstelle zwischen der Vermittlungs-Rückwandplatine 111 und
den Vermittlungsmodulen 101a–101c bilden.
-
Die
Vermittlungsmodule 101a–101c sind vorzugsweise über Steuerpfade 103a bzw. 103b miteinander
verbunden, und jedes Vermittlungsmodul ist vorzugsweise einem oder
mehreren LANs 121a–121c zugeordnet.
Die LANs 121a–121c enthalten
vorzugsweise ein oder mehrere virtuelle lokale Netze (VLANs). Die
Vermittlungsmodule kommunizieren mit den LANs über Datenschnittstellen 104a–104c.
-
Die
Vermittlungsmodule sind vorzugsweise über die Datenpfade 102a–102c mit
der Vermittlungs-Rückwandplatine 111 verbunden.
Die Vermittlungsmodule senden vorzugsweise Paketdaten an die Vermittlungs-Rückwandplatine 111 und
empfangen Paketdaten von der Vermittlungs-Rückwandplatine 111.
Abhängig
von den Quell- und Zieladressen kann ein eintreffendes Paket von
einem Vermittlungsmodul über
die Vermittlungs-Rückwandplatine 111 als
abgehendes Paket für
dasselbe oder ein anderes Vermittlungsmodul bereitgestellt werden.
-
Die
Vermittlungsmodule 101a–101c und die LANs 121a–121c sind
nur zu Illustrationszwecken gezeigt. Es können tatsächlich mehr oder weniger Vermittlungsmodule
und LANs in dieser oder anderen Ausführungen der vorliegenden Erfindung
vorhanden sein. Weiterhin kann in anderen Ausführungen der Schalter eine Konfiguration
haben, die sich von der Konfiguration des Schalters 100 in 1 unterscheidet.
-
2 ist
ein Vermittlungsmodul 200 in einer Ausführung der vorliegenden Erfindung.
Das Vermittlungsmodul 200 kann als eines der Vermittlungsmodule 101a–101c von 1 benutzt
werden. Das Vermittlungsmodul 200 enthält vorzugsweise ein stufen-implementiertes
QoS-Anpassungs-Verfahren, in dem die Paketverarbeitung und das QoS-Anpassungs-/Konfigurations-Verfahren in mehreren
Stufen durchgeführt
werden. Das Vermittlungsmodul 200 enthält eine Zugangs-Steuerung 201,
die mit einem oder mehreren LANs über eine oder mehrere Datenschnittstellen 202 und
mit einer Vermittlungs-Steuerung 211 über eine interne Schnittstelle 204 verbunden
ist. Die LANs können
VLANs enthalten.
-
Die
Zugangs-Steuerung 201 kann einen Media Access Controller
(MAC) enthalten. Die Zugangs-Steuerung 201 empfängt vorzugsweise
eintreffende Pakete von den LANs, formatiert sie und sendet sie
an die Vermittlungs-Steuerung 211. Die Zugangs-Steuerung 201 empfängt vorzugsweise auch
abgehende Pakete von der Vermittlungs-Steuerung 211, formatiert
sie und sendet sie an die LANs.
-
Der
Schalter 200 enthält
vorzugsweise auch andere Elemente, die dazu verwendet werden, die Funktion
der Paketverarbeitung zu erleichtern. Diese Vermittlungs-Elemente
enthalten vorzugsweise eine Paket-Weiterleitungs-Logik 220 und
eine QoS-Anpassungs-Logik 215, sind aber nicht auf sie
begrenzt. Die QoS-Anpassungs-Logik 215 und die Paket-Weiterleitungs-Logik 220 sind
vorzugsweise mit der Vermittlungs-Steuerung 211 verbunden.
Der Schalter 200 kann auch andere Untermodule zur Durchführung verschiedener
Aufgaben enthalten.
-
Der
Schalter 200 ist vorzugsweise ein Schalter mit Eingangs-Puffer,
bei dem das meiste der großen
Puffer sich auf der Eingangsseite befindet. Somit werden die Bestimmungen
der internen und abgehenden Prioritätswerte vorzugsweise auf der
Eingangsseite durchgeführt,
wo sich die meisten der Puffer befinden. In anderen Ausführungen
kann die Bestimmung der internen und abgehenden Prioritätswerte
auf der Ausgangsseite durchgeführt
werden. In noch weiteren Ausführungen
kann die Bestimmung der internen und abgehenden Prioritätswerte
durch verteilte Verarbeitung durchgeführt werden, wobei ein Teil
der Verarbeitung zur Bestimmung der Prioritätswerte auf der Eingangsseite
und ein Teil der Verarbeitung auf der Ausgangsseite durchgeführt wird. Wenn
die Prioritätswerte
zum Beispiel zur Paketkopfinformation hinzugefügt werden, kann die QoS-Anpassung/Konfiguration
auf der Ausgangsseite unter Verwendung von Ausgangspuffern durchgeführt werden.
-
Die
QoS-Anpassung kann auch auf der Ausgangsseite durchgeführt werden,
um eine echte Anpassung durchzuführen.
Eine echte Anpassung erfordert typischerweise, dass Pakete sehr
nahe an der Verbindung warten, auf der sie übertragen werden sollen und
erfordert typischerweise auch eine Sortierungsoperation dieser Pakete.
Wenn eine große Menge
Pakete in den Ausgangspuffern wartet, kann eine QoS-Anpassung wünschenswert
sein, um auszurechnen, welches Paket als nächstes zu senden ist.
-
Die
Vermittlungs-Steuerung 211 empfängt vorzugsweise eintreffende
Pakete, setzt ausgewählte
von ihnen vorzugsweise der internen und abgehenden QoS-Anpassung
aus und sendet ausgewählte
von ihnen über
die interne Schnittstelle 204 zur Zugangs-Steuerung 201.
In dieser Ausführung
wird die QoS-Anpassung
vorzugsweise mit Unterstützung
der QoS-Anpassungs-Logik 215 und
der Paket-Weiterleitungs-Logik 220 bereitgestellt. In anderen
Ausführungen
kann die QoS-Anpassung unter Verwendung anderer Elemente und/oder
Logik bereitgestellt werden.
-
Ein
an der Vermittlungs-Steuerung 211 eintreffendes Paket hat
typischerweise einen eintreffenden Prioritätswert in der Ebene 2 der 802.1Q/p-Kopfinformation
oder das ToS-(Type of Service)-Feld in der IP-Kopfinformation der
Ebene 3. Die Felder, die drei Bits enthalten, entweder in der 802.1Q/p-Kopfinformation oder
in der IP-Kopfinformation, können
verwendet werden, es werden jedoch typischerweise nicht beide Felder
gleichzeitig verwendet. Zum Beispiel kann die eintreffende Priorität in einem
3-Bit-Unterfeld ToS precedence (ToSp) des ToS-Feldes enthalten sein.
Das ToS-Feld in der IP-Kopfinformation kann
auch als DSCP-(Differentiated Services Code Point)-Feld oder als
DiffServ-Feld bezeichnet werden.
-
Wenn
das eintreffende Paket in die Vermittlungs-Steuerung 211 gelangt,
liefert die Vermittlungs-Steuerung vorzugsweise die Kopfinformation des
eintreffenden Paketes an die Paket-Weiterleitungs-Logik 220. In
anderen Ausführungen
kann die Vermittlungs-Steuerung das gesamte eintreffende Paket an
die Paket-Weiterleitungs-Logik liefern. Die Paket-Weiterleitungs-Logik enthält einen
Weiterleitungs-Informations-Finder 222 und einen Weiterleitungs-Index-Finder 224.
Der Weiterleitungs-Informations-Finder 222 kann
auch als Kopfinformations-Cache bezeichnet werden, und der Weiterleitungs-Index-Finder 224 kann
auch als Lookup-Engine oder Pseudo-CAM (pseudo content addressable
memory, Pseudo-Inhalsadressierbarer Speicher) bezeichnet werden.
-
Der
Weiterleitungs-Index-Finder 224 empfängt vorzugsweise die eintreffende
Paket-Kopfinformation. Der Weiterleitungs-Index-Finder 224 benutzt vorzugsweise
die Kopfinformation der Ebenen 2, 3 oder 4, um aus einer Leitweglenkungs-Tabelle
einen Index abzurufen. Die Adressierung und andere Informationen
in der Kopfinformation, die dazu verwendet werden, den Index abzurufen,
werden auch als Schlüssel
oder als Eingangsschlüssel
bezeichnet. Der Weiterleitungs-Index-Finder klassifiziert das Paket
vorzugsweise in einen Fluss, der einen zugeordneten Index aufweist.
Der Index für
den Fluss kann auch als ID oder Fluss-ID bezeichnet werden. Jedem Fluss
wird vorzugsweise ein eindeutiger Index zugeordnet, und die Pakete,
die in denselben Fluss klassifiziert sind, werden vorzugsweise demselben
Index zugeordnet. Jeder Fluss wird vorzugsweise auch einer Prioritätsklasse
zugeordnet, die später
detailliert mit Bezug auf interne und abgehende Prioritäts-Abbildungen
beschrieben wird.
-
Der
Weiterleitungs-Index-Finder 224 liefert vorzugsweise den
Index an die Vermittlungs-Steuerung 211. Die Vermittlungs-Steuerung 211 benutzt den
Index vorzugsweise dazu, einen Tabelleneintrag in einer großen Tabelle
aufzurufen, die dem Weiterleitungs-Informations-Finder 222 zugeordnet
ist. Die große,
dem Weiterleitungs-Informations-Finder zugeordnete Tabelle kann
z.B. eine Tabelle der nächsten
obersten Kopfinformation (Next Top Header Table, NHHT) enthalten.
-
Der
Tabelleneintrag, der auch als Fluss-Deskriptor bezeichnet werden
kann, hat vorzugsweise eine Anzahl von Feldern für jedes Paket im Fluss. Der
Tabelleneintrag kann Informationen enthalten, um Aufgaben durchzuführen, wie
z.B. eine Warteschlangen-ID (QID) zur Angabe der von einem abgehenden
Paket zu benutzenden Anschluss-Nummer, eine maximale Rahmenlänge, ob
die 802.1Q-Kennung entnommen werden soll oder nicht und ob das Paket
durch Software verarbeitet wird oder nicht. Zum Beispiel enthält der Tabelleneintrag
in einer Ausführung
vorzugsweise Informationen der Ebene 2 und der Ebene 3, wie z.B.
Informationen, wie die Kopfinformation zu ändern ist, eine VLAN-ID und
einen 6-Bit-Prioritäts-Beschreibungs-Index
(PDI), der auch als QoS-Anpassungs-Index bezeichnet werden kann.
In anderen Ausführungen
kann der Tabelleneintrag auch Informationen der Ebene 4 enthalten. Der
PDI vereinfacht vorzugsweise die Abbildung der eintreffenden Pakete
auf unterschiedliche Prioritätsklassen.
In anderen Ausführungen
kann die Anzahl von Bits im PDI mehr oder weniger als sechs sein.
-
Der
Tabelleneintrag wird dann vorzugsweise an die Vermittlungs-Steuerung 211 geliefert,
um zur weiteren Verarbeitung des eintreffenden Paketes benutzt zu
werden. Die Vermittlungs-Steuerung liefert den Tabelleneintrag vorzugsweise
auch an die QoS-Anpassungs-Logik 215 zur Paketverarbeitung, welche
die Prioritäts-Anpassung,
die gemeinsame Nutzung von Verbindungen, die Bandbreiten-Konfiguration und
die Bandbreiten-Begrenzung umfasst, aber nicht darauf beschränkt ist.
Die QoS-Anpassungs-Logik 215 enthält QoS-Anpassungs-Tabellen 217 und
einen QoS-Anpasser 219. Der QoS-Anpasser kann einen Warteschlangen-Manager
enthalten, und Funktionen des QoS-Anpassers können über die Vermittlungsmodule
und den Koppelbaustein (nicht gezeigt) verteilt sein, der die Schnittstelle
zwischen mehreren Vermittlungsmodulen bildet. Die QoS-Anpassungs-Tabellen 217 empfangen
vorzugsweise den PDI und den eintreffenden 3-Bit-Prioritätswert vom Paket und suchen
vorzugsweise in der Tabelle nach Prioritätswerten der internen und der
abgehenden Pakete.
-
3 ist
ein Beispiel-Blockdiagramm, das die Abbildung von eintreffenden
802.1p-Prioritätswerten
und eines eintreffenden ToS-Prioritätswertes in einen internen
Prioritätswert,
einen abgehenden 802.1p-Prioritätswert,
einen abgehenden ToS-Prioritätswert
und einen abgehenden DSCP (Differentiated Services Code Point) zeigt.
-
Die
Eingangs-Prioritätswerte,
die durch den Eingangs-802.1p-Wert 300 und
einen Eingangs-ToS-Wert 302 repräsentiert werden, werden vorzugsweise
dazu benutzt, einen internen Prioritätswert 305 und einen
abgehenden Prioritätswert 307 abzuleiten.
Der Eingangs-802.1p-Wert ist in der 802.1Q/p-Kopfinformation der Ebene 2 enthalten, und
der ToS-Wert ist in der IP-Kopfinformation der Ebene 3 enthalten.
Abhängig
von der Betriebsart kann der verwendete Eingangs-Prioritätswert der eintreffende
802.1p-Prioritätswert 300 oder
der eintreffende ToS-Prioritätswert 302 sein.
Zusätzlich dazu
kann der abgehende Prioritätswert 307 ein
abgehender 802.1p-Prioritätswert 312 oder
ein abgehender ToS-Prioritätswert 314 sein.
-
In
anderen Ausführungen
können
der eintreffende 802.1p-Wert
und der eintreffende ToS-Wert auch an eine DSCP-Tabelle 308 geliefert
werden. Zum Beispiel kann ein eintreffender 8-Bit-DSCP-Wert identisch mit dem eintreffenden
8-Bit-ToS-Wert sein. Die DSCP-Tabelle 308 enthält eine
Ausgangs-DSCP-Tabelle 309 und eine Ausgangs-DSCP-Maske 310.
Ein Ausgangs-DSCP-Wert 311 wird abhängig von der Betriebsart vorzugsweise entweder
als DSCP-Wert in dem Tabelleneintrag des Weiterleitungs-Informations-Finders
oder als modifizierter eintreffender DSCP-Wert bereitgestellt. Der eintreffende
DSCP-Wert kann durch Abbildung auf die DSCP-Tabelle 309 und
die Ausgangs- DSCP-Maske 310 modifiziert
werden, wobei die DSCP-Maske dazu verwendet werden kann, einige
der Bits in der DSCP-Maske zu modifizieren.
-
4 zeigt
einen Satz von Anpassungs-Tabellen 400 in den QoS-Anpassungs-Tabellen 217 in einer
Ausführung
der vorliegenden Erfindung. Die QoS-Anpassungs-Tabellen 217 enthalten
eine Vielzahl von Prioritäts-Deskriptor-Zeilen.
Die Anpassungs-Tabellen 400 enthalten interne Prioritäts-Tabellen 404 und
Ausgangs-Prioritäts-Tabellen 406. Jede
Prioritäts-Deskriptor-Zeile
enthält
in dieser Ausführung
vorzugsweise eine interne Prioritäts-Tabelle, die acht 2-Bit-Werte
enthält,
und eine abgehende Prioritäts-Tabelle,
die acht 3-Bit-Werte enthält.
Da der PDI in dieser Ausführung
eine Größe von sechs
Bit hat, sind bis zu 64 verschiedene Prioritäts-Deskriptor-Zeilen möglich, auf
die unter Verwendung des PDI als Index zugegriffen werden kann.
In anderen Ausführungen
kann der PDI eine Größe von mehr
oder weniger als sechs Bit haben und entsprechend kann es mehr oder
weniger als 64 mögliche
verschiedene Prioritäts-Deskriptor-Zeilen
geben.
-
Da
interne Prioritätswerte
nur zwei Bit haben und in dieser Ausführung Werte zwischen 0–3 haben können, werden
die eintreffenden 3-Bit-Prioritätswerte
während
der internen Prioritäts-Abbildung
vorzugsweise auf einen 2-Bit-Wert abgebildet. Da andererseits abgehende
Prioritätswerte
drei Bit haben, können
die eintreffenden Prioritätswerte
auf die abgehenden Prioritätswerte
abgebildet werden, ohne dass signifikante Bits verloren gehen.
-
Jede
Prioritäts-Deskriptor-Zeile
ist vorzugsweise einer Prioritätsklasse
zugeordnet. Die Prioritätsklassen
werden vorzugsweise während
der Paket-Klassifizierung aus Informationen in der Paket-Kopfinformation
abgeleitet, wie z.B. aus der Quell- und Zieladresse der Ebene 2
und der Ebene 3 und aus Anschluss-Nummern der Ebene 4. Jede Prioritätsklasse
hat vorzugsweise die internen und abgehenden Prioritäts-Abbildungs-Werte,
die sich von den internen und abgehenden Prioritäts-Abbildungs-Werten anderer
Prioritätsklassen
unterscheiden. In anderen Ausführungen
können
zwei oder mehr Prioritäts-Deskriptor-Zeilen,
die unterschiedlichen Prioritätsklassen
zugeordnet sind, dieselben internen und/oder abgehenden Prioritäts-Abbildungs-Werte
haben.
-
Zum
Beispiel können
in dieser Ausführung die
Prioritätsklassen
die Klassen PASS, FORCE und INVERT 403 enthalten, die Prioritäts-Deskriptor-Indizes
(PDIs) 402 zugeordnet sind. Diese Prioritätsklassen
können
zum Beispiel auf der Grundlage der Quelladressen der eintreffenden
Pakete ausgewählt werden.
-
Jeder
der PDIs 402 ist vorzugsweise einer bestimmten Prioritätsklasse
zugeordnet. Zum Beispiel ist in 4 der Prioritäts-Index <000000> der Klasse PASS zugeordnet,
der Prioritäts-Index <000001> ist der Klasse FORCE
zugeordnet, und der Prioritäts-Index <111111> ist der Klasse INVERT zugeordnet.
Weiterhin kann die Klasse PASS einem Server zugeordnet sein, die
Klasse FORCE kann einem PC zugeordnet sein, und die Klasse INVERT kann
einer irrtümlicherweise
konfigurierten Netzwerk-Einrichtung zugeordnet sein.
-
Wie
die Bezeichnung "pass" andeutet, gibt die
der Klasse PASS zugeordnete Tabelle der abgehenden Priorität vorzugsweise
den eintreffenden Prioritätswert
weiter und liefert ihn als abgehenden Prioritätswert. Da in dieser Ausführung in
jedem internen Prioritätswert
nur zwei Bit zur Verfügung
stehen, werden vorzugsweise die beiden höchstwertigen Bits der Eingangs-Prioritätswerte
als interner Prioritätswert
benutzt.
-
Wie
die Bezeichnung "force" andeutet, zwingen
die der Klasse FORCE zugeordneten Tabellen der internen und abgehenden
Priorität
vorzugsweise den internen und den abgehenden Prioritätswert auf 3
bzw. 7. In anderen Ausführungen
können
der Klasse FORCE andere interne und abgehende Prioritätswerte
zugeordnet werden. In noch anderen Ausführungen können mehrere unterschiedliche
Klassen FORCE mit unterschiedlichen internen und abgehenden Prioritätswerten
vorliegen.
-
Wie
die Bezeichnung "invert" andeutet, invertiert
die der Klasse INVERT zugeordnete Tabelle der internen Priorität vorzugsweise
die beiden höchstwertigen
Bits des eintreffenden Prioritätswertes,
um ihn als internen Prioritätswert
bereitzustellen. Weiterhin invertiert die Tabelle der abgehenden
Priorität
den gesamten eintreffenden Prioritätswert, um ihn als abgehenden
Prioritätswert
zu liefern.
-
Zum
Beispiel werden in 4 eine Tabelle der internen
Priorität
von <0,0,1,1,2,2,3,3> bzw. eine Tabelle
der abgehenden Priorität
von <0,1,2,3,4,5,6,7> für einen PDI von <000000> bereitgestellt. Daher
kann, wenn ein eintreffendes Paket mit einer Quelladresse, welche
die Prioritätsklasse PASS
hat, empfangen wird, es mit dem PDI von <000000> bereitgestellt werden. Wenn das eintreffende
Paket einen Eingangs-Prioritätswert
von 3 hat, wird der Eingangs-Prioritätswert auf
einen internen Prioritätswert
von 1 und einen abgehenden Prioritätswert von 3 abgebildet. Auf
die gleiche Weise können, wenn
eintreffende Pakete mit Quelladressen, welche die Prioritätsklassen
FORCE und INVERT haben, empfangen werden, sie mit dem PDI von <000001> bzw. <111111> ausgestattet werden.
Andere Prioritätsklassen
und andere Verfahren der Abbildung können in anderen Ausführungen
verwendet werden.
-
Wenn
ein neuer Satz von Abbildungs-Daten gewünscht wird, kann der Benutzer
eine QoS-Anpassungs-Tabellen-Aktualisierungs-Schnittstelle 228 aus 2 benutzen,
um neue interne und/oder abgehende Tabellen an einer PDI-Stelle
von <000000> bis <111111> in die Anpassungs-Tabellen 400 einzugeben.
Ein Anpassungs-Tabellen-Aktualisierungs-Signal sowie die Tabellen-Daten
zur Aktualisierung können über die
QoS-Anpassungs-Tabellen-Aktualisierungs-Schnittstelle 228 an
die QoS-Anpassungs-Tabellen geliefert werden.
-
In
dieser und anderen Ausführungen
können andere
Fluss-Eigenschaften
als die Quelladresse, zum Beispiel eine Zieladresse verwendet werden, um
den Typ der verwendeten Abbildung auszuwählen, die dazu verwendet wird,
die eintreffenden Prioritätswerte
auf interne Prioritätswerte
bzw. abgehende Prioritätswerte
abzubilden.
-
Geht
man zurück
zu 2, liefern, nachdem die internen und abgehenden
Prioritätswerte
erkannt wurden, die QoS-Anpassungs-Tabellen 217 vorzugsweise
diese Prioritätswerte
zurück
zur Vermittlungs-Steuerung 211. Die Vermittlungs-Steuerung 211 ändert das
eintreffende Paket vorzugsweise so, dass es die neuen Prioritäten enthält. Die
Vermittlungs-Steuerung
sendet dann das eintreffende Paket, das die neuen internen und abgehenden
Eigenschaften hat, an den QoS-Anpasser 219, so dass das eintreffende
Paket in einen Zustand versetzt werden kann, um es auf der Grundlage
seiner neuen Prioritätswerte
als abgehendes Paket zu senden.
-
Der
neue abgehende Prioritätswert
wird typischerweise nicht vom Vermittlungsmodul 200 benutzt.
Ein Vermittlungsmodul in einem nächsten Schalter
benutzt vorzugsweise diesen neuen abgehenden Prioritätswert,
um den nächsten
Satz von internen und abgehenden Prioritätswerten zu erzeugen.
-
Wenn
auf der Grundlage des neuen internen Prioritätswertes die Priorität des Paketes
gewählt wird,
liefert der QoS-Anpasser
das Paket an die Vermittlungs-Steuerung 211, die das Paket
dann an die Zugangs-Steuerung 201 liefert, um es über die
Datenschnittstelle 202 zu den LANs zu übertragen.
-
5 ist
ein Flussdiagramm der QoS-Anpassung/Konfiguration
in einer Ausführung
der vorliegenden Erfindung. In Schritt 510 wird ein eintreffendes
Paket, das eine QoS hat, von einer Zugangs-Steuerung in einem Schalter
empfangen. Die Zugangs-Steuerung kann z.B. die Zugangs-Steuerung 201 aus 2 sein.
Die QoS kann einen 802.1p-Prioritätswert und
einen ToS-Prioritätswert enthalten,
ist aber nicht darauf beschränkt.
Wenn das eintreffende Paket keine QoS hat, kann ihm eine voreingestellte
Priorität
gegeben werden, die auf seinem Eingangs-Anschluss und Protokoll basiert.
Die voreingestellte Priorität
kann auch auf anderen Fluss-Eigenschaften beruhen, wie z.B. auf
Quell- und Zieladressen der Ebene 2 und der Ebene 3 sowie auf Anschluss-Nummern der Ebene
4.
-
Die
Zugangs-Steuerung verarbeitet vorzugsweise das eintreffende Paket
und sendet es an eine Vermittlungs-Steuerung, die gleich der Vermittlungs-Steuerung 211 in 2 sein
kann. Die Vermittlungs-Steuerung bestimmt in Schritt 520 vorzugsweise
neue interne und abgehende QoS für
das eintreffende Paket auf der Grundlage der Fluss-Eigenschaften,
die einen Wert aus Paket-Feldern enthalten können, die nicht zur Definition
von QoS vorgesehen sind, wie z.B. Quell- und Zieladressen der Ebene
2 und der Ebene 3 sowie Anschluss-Nummern der Ebene 4.
-
In
Schritt 530 wendet die Vermittlungs-Steuerung 211 vorzugsweise
die neue interne QoS auf das eintreffende Paket an, um eine QoS-Priorisierung
für das
eintreffende Paket im Schalter bereitzustellen. In Schritt 540 fügt die Vermittlungs-Steuerung die
abgehende QoS in das eintreffende Paket ein. Das eintreffende Paket
wird dann an das Vermittlungsmodul geliefert, das mit dem LAN verbunden
ist, an welches das eintreffende Paket als abgehendes Paket geliefert
wird. Das abgehende Paket wird mit der neuen QoS-Ausgangs-Priorität gesendet.
Abhängig
von der Quell- und der Zieladresse des Paketes kann das Vermittlungsmodul,
welches das abgehende Paket sendet, dasselbe sein oder sich von
dem Vermittlungsmodul unterscheiden, welches das eintreffende Paket
empfangen hat, da die von einem Vermittlungsmodul empfangenen eintreffenden
Pakete während
der Paketverarbeitung über
die Vermittlungs-Rückwandplatine
an ein anderes Vermittlungsmodul geliefert werden können.
-
6 ist
ein Flussdiagramm einer stufen-implementierten QoS-Anpassung in
einer Ausführung der
vorliegenden Erfindung. Zum Beispiel kann Schritt 520 aus 5 in
Stufen implementiert werden, wie in 6 gezeigt.
In Schritt 610 wird ein QoS-Anpassungs-Index vorzugsweise
aus den Fluss-Eigenschaften
eines eintreffenden Paketes bestimmt, zum Beispiel in der Paket-Weiterleitungs-Logik 220 aus 2.
Dann werden in Schritt 620 eine interne und eine abgehende
QoS-Anpassungs-Tabelle, z.B. in den QoS-Anpassungs-Tabellen 217, vorzugsweise
auf der Grundlage des QoS-Anpassungs-Index ausgewählt. Weiterhin
werden in Schritt 630 interne und abgehende QoS-Werte unter
Verwendung der Eingangs-QoS ausgewählt.
-
Es
kann ein Schalter verwendet werden, der eine Konfiguration hat,
die sich von dem in dieser Spezifikation beschriebenen Schalter
unterscheidet. Zum Beispiel wird in den beschriebenen Ausführungen
die QoS-Anpassung vorzugsweise in einem QoS-Anpasser der Vermittlungsmodule
durchgeführt.
In anderen Ausführungen
kann die QoS-Anpassungs-Funktion ein verteilter Prozess sein, bei dem
die gesamte oder ein Teil der QoS-Anpassung in anderen Komponenten
durchgeführt
wird, wie z.B. in einem Koppelbaustein. Weiterhin wird in den beschriebenen
Ausführungen
die QoS-Anpassung vorzugsweise durch den Schalter während der
Eingangs-Verarbeitung der Pakete durchgeführt. In anderen Ausführungen
kann die QoS-Anpassung
vom Schalter während
der Ausgangs-Verarbeitung der Pakete durchgeführt werden. In noch weiteren
Ausführungen
können
einige Teile der QoS-Anpassung/Konfiguration während der Eingangs-Verarbeitung
durchgeführt
werden und andere Teile der QoS-Anpassung/Konfiguration können während der Ausgangs-Verarbeitung durchgeführt werden.