-
Die
vorliegende Erfindung betrifft s Kommunikationsvorrichtungen mit
Mehrschichten-Klassenidentifikation, die in einem IP-Netzwerk einer
Netzwerkschicht eines OSI-Referenzmodells verwendet werden.
-
Vor
kurzem wurde das Internet, das als de-facto-Standard betrachtet
wird, basierend auf einem Übertragungssteuerprotokoll/Internetprotokoll (TCP/IP)
als ein globales Netzwerk standardisiert. Üblicherweise dient in den sieben
Schichten des OSI-Referenzmodells das IP als die Vermittlungs- oder
Netzwerkschicht und das TCP als die Transportschicht. Daten werden
von dem Ethernet der untersten Schicht und dem Token-Ring-Netzwerk
zu dem IP geführt
und werden von dem TCP zu der Anwendungsschicht geführt.
-
Ein
Router ist als eine Übertragungsvorrichtung
zwischen lokalen Netzwerken (LAN) zwischen einem Repeater, einem
Verbindungsglied und einem Gateway angeordnet. Der Router wird dazu
verwendet, Datenpakete (frames), die von einer Kommunikationsleitung
geschickt worden sind, zu sammeln und diese zu einer geeigneten
Kommunikationsleitung gemäß einer
Netzwerkadresse, die in den Daten der Datenpakete enthalten ist,
zu übertragen.
-
Ein
herkömmlicher
Router handhabt so ziemlich alle IP-Pakete und führt grundsätzlich keine Prioritätssteuerung
an den IP-Paketen durch. Jedes IP-Paket hat in seinen Kopfdaten
eine IP-Adresse und bleibt in einem Puffer des Routers.
-
Da
das IP-Paket aus dem Puffer in der Eingangsreihenfolge (FIFO) ausgelesen
wird, wird keine Übertragungsprioritätssteuerung
durchgeführt.
Wenn die IP-Pakete sich einem gewissen Ausgangsport annähern, tritt
eine Überlastung
auf, wodurch bewirkt wird, daß die
Pakete im Puffer des Routers gestrichen werden. Üblicherweise wird über die
Streichung der Pakete keine Prioritätssteuerung durchgeführt.
-
Im
Gegensatz hierzu führt
die bekannte ATM-(asynchrone Übertragungsmodus)-Technologie das
Konzept der Verbindung ein, bei der eine Route, die eine Quelladresse
mit einer Zieladresse verbindet, klar durch eine virtuelle Wegkennung/eine
virtuelle Kanalkennung (VPI/VCI) definiert ist. Dieses Konzept erlaubt
die Servicequalität
(QOS), wie beispielsweise Übertragungscharakteristika
und Streichungsverhältnisse,
die für
das Definieren einer Verbindungseinheit notwendig sind. Zusätzlich führen Netzwerkgeräte Prioritätssteuerungen
durch, so daß die
Servicequalität
der Verbindungen zufriedengestellt ist.
-
(IP-QOS)
-
Es
werden nun Technologien zum leichten Durchführen der Prioritätssteuerung
im Internet betrachtet. Typische Beispiele sind das Intserve/Resource
Reservation Setup Protocol (RSVP) als ein Protokoll zur Durchführung der
Netzwerkbandsteuerung, und ein abgeleiteter Service (Differentiated
Service). Der erstere simuliert das Konzept der Verbindung, wie
im ATM eingeleitet, während
der letztere soweit als möglich
die Prioritätssteuerung
basierend auf Paketdaten durchführt.
-
Das
Intserve/RSVP-System ist bei einem großräumigen Fernnetz nicht mit niedrigen
Kosten anzuwenden. Das heißt,
dem System fehlt die Skalierbarkeit und es wird dadurch nicht in
breitem Umfang verwendet. Um das Problem zu lösen, berücksichtigt der Differentiated
Service primär
die Skalier barkeit, das zur Verfügung
stehen bei niedrigen Kosten und das zur Verfügung stehen der Hochgeschwindigkeitsleistung
einer optischen Träger-(OC)-48-Klasse
als Schnittstelle für
ein Glasfaserfernnetz gemäß den Übertragungsgeschwindigkeiten.
-
Der
Differentiated Service garantiert einen quantitativen Service wie
beim ATM/QOS. Anstatt vom Standpunkt des besten Aufwandes aus betrachtet,
setzt der Service eine relative Qualitätsdifferenz, um die Differenzierung
des Service zu erleichtern. Dies wird als eine im wesentlichen praktische
Lösung akzeptiert,
die aus dem Spezifizierungsfortschritt von der Internet Engineering
Task Force (IETF) als eine Netzproblemlösungsorganisation und Lieferantenrückmeldungen
ermittelt worden ist.
-
(Differentiated Service)
-
Das
Differentiated-Service-System ist in der IETF erörtert worden, die die Internettechnologien
regelt. Der Differentiated Service ist ein System zur Differenzierung
der Servicelevel und garantiert nicht die Servicequalität (QOS).
Dieses ist strikt für
ein relatives Prioritätssteuerungsrahmenwerk.
Das heißt,
der Differentiated Service definiert nur die Rahmenwerke der QOS-Klassen.
Die Details der QOS-Klassen
und Ablaufsteuerungsformate zwischen den QOS-Klassen beziehen sich
auf die Lieferanten und Benutzer.
-
(Serviceklassen im Differentiated
Service)
-
Der
Differentiated Service hat drei Arten von definiertem Verkehr (Serviceklassen),
die als einen Premiumservice einen Expreßübertragungsservice (EF-Klasse)
aufweisen, einen Sicherheitsübertragungsservice
(AF-Klasse) und einen Bestaufwandsservice (BE-Klasse). Die Premium-Expreßübertragungs-(EF)-Klasse
schafft einen virtuellen Zugeordnete-Leitung-Service, wie beispielsweise
eine IP-CBR (Konstantbit rate) in einem IP-Netzwerk. Somit ist es
notwendig, eine präzise Übertragungssteuerung
durchzuführen,
die eine Benutzungsparametersteuerung (UPC) umfaßt, indem zusätzlich ein Formabschnitt
verwendet wird. Da die EF-Klasse als eine Klasse für einen
Bandgarantieservice betrachtet wird, nimmt sie gegenüber dem
Sicherheitsübertragungsservice
(AF-Klasse) und
dem Bestaufwandsservice (BE-Klasse) eine erste Priorität ein, was
im folgenden beschrieben wird.
-
Anders
als die Expreßübertragungs-(EF)-Klasse
als Premiumklasse ist die Sicherheitsübertragungsservice-(AF)-Klasse
nur für
ein relatives Prioritätssteuerungsrahmenwerk.
Der Sicherheitsübertragungsservice
hat vier Arten von Weiterleitklassen und drei Arten von Nichtberücksichtigungsklassen.
Die Weiterleitprioritätssteuerung
wird durchgeführt,
indem einer Reihenfolge, in welcher IP-Pakete in einem Netzwerkapparat übertragen werden,
eine Priorität
verliehen wird. Beispielsweise ist es wirksam, die Übertragungslaufzeit
einer Anwendung in Antwort auf die Laufzeit zu verringern. Die Nichtberücksichtigungssteuerung
wird durchgeführt,
indem dem Nichtberücksichtigen
von Paketen an einem Ort, wo in dem Netzwerkgerät Überlastung auftritt, eine Priorität verliehen
wird. Der Bestaufwandsservice (BE-Klasse) wird neben der EF-Klasse und
der AF-Klasse als dritter Verkehr angewandt. Von den Serviceklassen
hat die BE-Klasse die niedrigste Prioritätssteuerung bekommen.
-
Die
vorstehende Beschreibung umreißt
den Differentiated Service. Die Empfehlung des Differentiated Service
ist jedoch noch im Fluß.
Somit können sich
die vorstehend beschriebenen Definitionen und die Verwendung noch ändern.
-
In
Verbindung mit der vorstehenden Beschreibung ist ein Paketübertragungs-
und -empfangsknoten in der japanischen offengelegten Patentanmeldung
(JP-A-Heisei 2-87747) offenbart. In dieser Veröffentlichung ist der Paketsende-
und -empfangsknoten zusammengesetzt aus einem Empfangspuffer, einer
Kopfdatenanalysiersektion, einer Empfangspaketspeichersektion, einer
Durchgangspaketspeicher- und -analysesektion, einer Paketgenerationsspeicher-
und -analysesektion, einer Steuersektion und einem Übertragungsschalter.
Der Empfangspuffer speichert die empfangenen Pakete. Die Kopfdatenanalysiersektion
analysiert ein Ziel und eine Serviceklasse aus den Kopfdaten jedes
empfangenen Pakets, das in dem Empfangspuffer gespeichert ist. Die
Empfangspaketspeichersektion speichert die empfangenen Pakete aus
dem Empfangspuffer, wenn die empfangenen Pakete den Knoten als Ziel
haben. Die Durchgangspaketspeichersektion speichert die empfangenen
Pakete von dem Empfangspuffer, wenn die empfangenen Pakete andere Knoten
als Ziel haben. Die Paketerzeugungsspeicheranalysesektion speichert
und analysiert für
jede Serviceklasse Pakete, die von dem Knoten zu anderen Knoten
zu schicken sind. Die Steuersektion erhält die Anzahl der Pakete und
eine Paketerzeugungszeit als Analyseergebnisse der Durchgangspaketspeicher-
und -analysesektion und die Anzahl der Pakete und eine Paketerzeugungszeit
als die Analyseergebnisse der Paketerzeugungsspeicher- und -analysesektion,
wenn auf einen Prioritätslevel
Bezug genommen wird, der für
die Durchgangspaketspeicher- und -analysesektion und die Paketerzeugungsspeicher- und -analysesektion
vorbestimmt worden ist, um eine Sendereihenfolge der Pakete von
den Speicher- und Analysesektionen zu bestimmen, und um zu bestimmen,
ob die Anzahl der Pakete, die in jeder Speicher- und Analysesektion
einen vorbestimmten Speichergrenzpaketzählwert übersteigt, und ob die Differenz zwischen
der Paketerzeugungszeit und einer vorab eingestellten Zeit eine
vorbestimmte Laufzeitgrenzzeit für
jede Speicher- und Analysesektion überschreitet. Die Steuerungssektion
bestimmt, daß das Paket
primär
ohne Relation zum Prioritätslevel
des Paketes geschickt werden sollte, wenn die Paketerzeugungszeit
oder die Anzahl der Pakete die Grenze überschreitet. Der Übertragungsschalter
nimmt das Paket aus der Speicher- und Analysesektion, um es zu übertragen.
-
In
der japanischen offengelegten Patentanmeldung (JP-A-Heisei 5-191455)
ist ebenfalls ein Paketschaltapparat offenbart. In dieser Veröffentlichung wird
für das
ganze Paketschaltnetzwerk eine Wegsteuerungsoperation basierend
auf Prioritätsklassen durchgeführt. Für jede Prioritätsklasse
ist ein Puffer vorgesehen, dem eine Verzögerungs- und eine Verwerfungsrate
als Übertragungsqualität separat
und unabhängig
zugewiesen sind. Pakete, die in dem Puffer von einer Sendeleitung
beim Übertragen
der Pakete gespeichert werden, werden einem Paketklassifizierungsvorgang
unterzogen. Für
jede Prioritätsklasse
wird die Anzahl der Pakete nach der Klassifikation überwacht
und eine geschätzte
Verzögerung
berechnet. Die Pakete mit zulässig
langen Verzögerungen
werden für
die Lastverteilung bei schnellem Ansteigen der Last so gesetzt,
daß sie
lange Routen haben. Pakete mit großen Verzögerungsraten werden verworfen.
Der Paketschaltapparat ist aus der Leitungsunterbringungssektion
und einer Steuersektion zusammengesetzt. Die Leitungsunterbringungssektion
hat eine Wegsteuerungstabelle, die eine Routen- und Verwerfungsinstruktion
für jede
Prioritätsklasse
für die
vorstehend beschriebenen Operationen anzeigt. Die Steuerungssektion
aktualisiert die Wegsteuerungstabelle für jede Prioritätsklasse, basierend
auf Verzögerungsdaten
von der Leitungsunterbringungssektion und Schaltapparatzustandsdaten
der anderen Stationen.
-
In
der offengelegten japanischen Patentanmeldung (JP-A-Heisei 7-154421)
ist ein Schaltapparat offenbart. In dieser Veröffentlichung werden Datenpakete
jeweils für
wenigstens zwei unterschiedliche Prioritätsklassen in Puffern gespeichert.
Jedem der Puffer ist ein Schwellenwert zugewiesen. Der Schwellenwert
für eine
höhere
Prioritätsklasse
ist gleich oder höher
als derjenige für
eine niedrigere Prioritätsklasse.
Wenn ein Paket neu am Puffer ankommt, werden der Prioritätslevel
des Paketes und eine Belegungsrate des Puffers bestimmt. Die Belegungsrate
wird mit dem Schwellenwert für
den Puffer verglichen und das Paket wird basierend auf dem Vergleichsergebnis
in dem Puffer gespeichert oder verworfen (ausrangiert). Zumindest
der Schwellenwert wird dynamisch gesteuert.
-
In
der offengelegten japanischen Patentanmeldung (JP-A-Heisei 9-205441)
ist ein Zellenübertragungssteuerverfahren
offenbart. In dieser Veröffentlichung
werden, wenn eine Verbindung errichtet ist, die zu einer spezifischen
Verkehrsklasse ohne Bandreservierung gehört, aus einer Generatoreinheit erhaltene
Ausrangierprioritätsdaten
in Übereinstimmung
mit einer Kennung der Verbindung in einer Knoteneinheit gespeichert.
Eine Zelle, die zu der spezifischen Verkehrsklasse gehört, wird
basierend auf einer vorbestimmten Ausrangierbedingung selektiv ausrangiert,
die einen Überlastungszustand
und den Prioritätslevel
bestimmt, wenn die Route für
die Verbindung im Überlastungszustand
ist.
-
Auch
in der offengelegten japanischen Patentanmeldung (JP-A-Heisei 10-23012)
ist ein Sendeverkehrssteuerungsgerät offenbart. Gemäß dieser Veröffentlichung
werden Daten in Form eines Paketes oder einer Zelle mit feststehender
Länge übertragen.
Ein Sendeverkehrssteuerungsgerät
ist an ein Virtueller-Weg-VP-Schaltnetzwerk angeschlossen und besteht
aus einer Kopfdatenumwandlersektion, einer Steuersektion, einem Übertragungssteuerungsprogramm
und einer Lesesteuerungssektion. Die Kopfdatenumwandlersektion weist
einen Ausgangsseiten-VPI/VCI-Wert zu, der bei der Errichtung der
Verbindung bestimmt worden ist, und weist eine Klassenkennung entsprechend
einer geräteeigenen Klasse
einer Empfangszelle zu. Die Steuerungssektion klassifiziert die
Empfangszelle basierend auf dem VPI-Wert und der Klassenkennung,
die den geräteeigenen
Kopfdaten verliehen worden ist, um eine Klassenschlange einzuschreiben. Üblicherweise
gibt es einen Klassenpuffer und einen variablen Klassenpuffer. Das Übertragungssteuerungsprogramm
steuert die maximale Rate für
jedes VP und eine Rate der variablen Schlange. Die Lesesteuerungssektion
liest Daten aus der Klassenschlange in Antwort auf einen Befehl
von dem Übertragungssteuerungsprogramm. Der
variable Puffer hat eine Vorwärtsbetriebsverwaltungszellen-(FRM-Zelle)-Einsetzsektion
zum Einsetzen einer FRM-Zelle. Ein Empfangsseitengerät, das über das
VP-Schaltnetzwerk
verbunden ist, besteht aus einer FRM-Zellenextraktionssektion zum
Extrahieren der FRM-Zelle, die eingesetzt worden ist, Mitteln zum Überwachen
des Inhaltes der EFCI basierend auf dem Inhalt der Empfangszelle
für jede
VP, einem EFCI-Register zum Halten der spätesten EFCI-Daten, einer Funktion
zum Stempeln des Inhaltes des EFCI-Registers an einem Überlastungsanzeigebit
(CI) einer Rückwärtsbetriebsverwaltungszelle (BRM-Zelle),
und einer BRM-Zelleneinsetzsektion zum
Einsetzen der BRM-Zelle in einen Abwärtsstrom. Das Übertragungssteuerungsprogramm
besteht aus Mitteln zum Steuern der Maximalrate für jede VP,
einem Steuerungsparameter, verschiedenen Parametern zum Steuern
der variablen Klassenschlangenrate und Mitteln zum Steuern des Einsetzens
der FRM-Zelle und der Überwachung
des Empfangs der BRM-Zelle. Das Übertragungssteuerungsprogramm
hat auch eine Funktion zum Steuern einer variablen Übertragungsrate
in Übereinstimmung
mit dem Empfang der RM-Zellen und dem Überlastungsanzeigebit, und
weist jeder VP eine Priorität
zu, die eine Relation von (Normalklasse) > (FRM-Zelle) > (variable Klasse)
im Bereich zur Maximalrate hat.
-
Die
Verwendung von differenzierten Services zur Unterstützung von
IP QOS in Metz, Chris: IP QOS: Traveling in First Class on the Internet.
IEEE Internet Computting, März/April
1999, S. 84-88 beschrieben. Demnach können zur Klassifizierung in unterschiedliche
Serviceklassen Felder in Paketen analysiert werden, um das Paket
einer bestimmten Serviceklasse zuzuordnen.
-
JP
09-331348 A offenbart die Verwendung einer Routingtabelle die eine
Art eines Hostlayerprotokolls eines IP-Pakets und einer Zielportzahl
oder einer Übertragungsportzahl
von TCP und UDP enthält. Bei
Empfang des IP-Pakets werden die Ziel-IP-Adresse, die Art des Hostlayerprotokolls,
die Zielportnummer und die Übertragungsportnummer aus
dem Hostlayerprotokoll extrahiert. Damit ist es möglich, zeitkritische
Anwendungen, wie etwa Telnet, gegenüber nichtzeitkritischen Anmeldungen
bei der Übertragung
durch das Netzwerk zu bevorzugen.
-
Aufgabe
der Erfindung ist es, eine Kommunikationsvorrichtung mit Mehrschichten-Klassenidentifikation
bereitzustellen, die flexibel an die Funktion eines Routers anpassbar
ist, der lokale Netzwerke verbindet, in dem nur Parameter in Übereinstimmung
mit Serviceklassen in einer Netzwerkschicht eines ATM-Netzwerkes
geändert
werden, das IP-Pakete verarbeitet.
-
Diese
Aufgabe wird gelöst
durch die Kommunikationsvorrichtung mit Mehrschichten-Klassenidentifikation
gemäß Anspruch
1 sowie ein Verfahren zur Mehrschichten-Klassenidentifikation gemäß Anspruch
5. Die Unteransprüche
betreffen vorteilhafte Ausführungsformen
der Erfindung.
-
1 ist
ein Blockschaltbild der Struktur eines Mehrschichtklassenidentifizierungs-Kommunikationsgeräts gemäß der vorliegenden
Erfindung;
-
2 ist
ein Diagramm einer Operation des Mehrschichtklassenidentifizierungs-Kommunikationsgeräts gemäß der vorliegenden
Erfindung;
-
3 ist
ein Schaltbild eines Hauptteils der IP-QOS-Klassenbestimmungssektion
gemäß der vorliegenden
Erfindung;
-
4 ist
ein Diagramm einer Operation einer Klassensuchsektion gemäß der vorliegenden
Erfindung;
-
5 ist
ein Flußdiagramm
eines Ablaufs der Klassensuchsektion gemäß der vorliegenden Erfindung;
-
6A und 6B sind
ein Diagramm einer Tabellenstruktur einer CAM-Bereichsunterteilung
gemäß der vorliegenden
Erfindung und ein Diagramm der Struktur einer IP-Src-Präfix-Eintrittsspeicherregion;
-
7A und 7B sind
ein Diagramm einer Tabellenblockstruktur der IP-Src-Präfix-Eintrittsspeicherregion
gemäß der vorliegenden
Erfindung und ein Diagramm der Struktur der IP-Src-Präfix-Eintrittsspeicherregion;
-
8 ist
ein Diagramm einer Tabellenblockstruktur einer IPINFO-Eintrittsspeicherregion
gemäß der vorliegenden
Erfindung;
-
9 ist
ein Diagramm des Formats der Kopfdaten IPv4 & TCP/UDP/andere, die bei der vorliegenden
Erfindung verwendet werden;
-
10 ist
eine Prinzipskizze einer IP-QOS-Klassenablaufsteuerung gemäß der vorliegenden
Erfindung;
-
11 ist
ein Diagramm einer Ausrangiersteuerungslogik gemäß der vorliegenden Erfindung;
-
12 ist
ein Flußdiagramm
eines Prozesses der Ablaufsteuerung gemäß der vorliegenden Erfindung;
-
13 ist
ein Flußdiagramm
eines Prozesses der Ablaufsteuerung gemäß der vorliegenden Erfindung;
-
14 ist
ein Diagramm eines Hauptteils eines WRR-Objektpuffers gemäß der vorliegenden
Erfindung;
-
15 ist
ein Diagramm der Überwachung und
Formung in einem Token-Bucket-Modell gemäß der vorliegenden Erfindung;
und
-
16 ist
ein Diagramm der Überwachung und
Formungsoperation gemäß der vorliegenden
Erfindung.
-
Beschreibung
der bevorzugten Ausführungsformen
-
Im
folgenden wird ein Mehrschichtklassenidentifizierungs-Kommunikationsgerät gemäß der vorliegenden
Erfindung im einzelnen und unter Bezugnahme auf die Figuren beschrieben.
-
<Die erste Ausführungsform>
-
(1) Struktur
-
1 zeigt
ein Blockschaltbild der Struktur eines Mehrschichtklassenidentifizierungs-Kommunikationsgeräts gemäß der vorliegenden
Erfindung. Das Kommunikationsgerät
ist aus Eingangs-/Ausgangsschnittstellenleitungskarten, einem N × N-Kreuzungsschalter 1g und
einer Schaltablaufsteuerung 1h zusammengesetzt.
-
Die
Eingangsschnittstellenleitungskarte ist aus einer IP-Paketempfangssektion 1a,
einer empfangsseitigen Schaltschnittstellensteuerungssektion 1b,
einer empfangsseitigen Schaltschnittstelle 1d, einem empfangsseitigen
Nutzlastspeicher 1c, einer IP-QOS-Klassenbestimmungssektion 1e und
einem IP-QOS-Codebestimmungsspeicher 1f zusammengesetzt.
Die Ausgangsschnittstellenleitungskarte besteht aus einer übertragungsseitigen
Schaltschnittstelle 1j, einer übertragungsseitigen Schaltschnittstellensteuerungssektion 1k,
einer IP-QOS-Klassenablaufsteuerung 1m, einem Klassenpaketdatenwartespeicher 1p und
einer IP-Paketübertragungssektion 1q.
-
In
diesem Fall werden die Eingangsschnittstellenleitungskarte und die
Ausgangsschnittstellenleitungskarte verwendet. Dies ist deshalb
der Fall, weil Kartenblöcke,
die die erforderlichen Mitglieder haben, an dem Kreuzungsschalter
(cross bar) 1g angeschlossen sind, der von einer Quelladresse
auf eine Zieladresse umschaltet. Diese Schnittstellenleitungskarten
können
jedoch einfach als Eingangsschnittstelle und Ausgangsschnittstelle
vorgesehen sein. Das Mehrschichtklassenidentifizierungs-Kommunikationsgerät hat Eingangs-/Ausgangsschnittstellen
und eine Schaltablaufsteuerung 1h zusätzlich zu dem Kreuzungsschalter 1g.
Zusätzlich
kann das Kommunikationsgerät
eine einfachere Struktur aufweisen, die weder den Kreuzungsschalter 1g noch die
Schaltablaufsteuerung 1h hat, welche das Schalten des Kreuzungsschalters 1g steuert.
In diesem Fall können
die Funktionen und die Softwareprogramme gemäß der Ausführungsformen der vorliegenden
Erfindung bei einem Router angewendet werden, der IP-Pakete im Internet
handhabt und von der Bitübertragungsschicht
zu einer Netzwerkschicht und einer Brücke, die die Funktionen der
Bitübertragungsschicht
und einer Datenverknüpfungsschicht und
Filtern der IP-Pakete hat, unterstützt.
-
(Eingangsschnittstellenleitungskarte)
-
In
den Eingangsschnittstellenleitungskarten werden auf der Empfangsseite
von der IP-Paketempfangssektion 1a IP-Paketkopfdaten und TCP/UDP-Kopfdaten
extrahiert, die in einer höheren Schicht
als einer Schicht für
die IP-Paketkopfdaten enthalten sind, und zwar aus den Paketdaten
jedes IP-Pakets, das durch Teilen eines Pakets in einer Anwendungsschicht
basierend auf TCP einer Transportschicht als Schicht 4 in dem OSI-Referenzmodell erhalten
wird. Die extrahierten Daten werden auf die IP-QOS-Klassenbestimmungssektion 1e übertragen.
-
Die
IP-Paketempfangssektion 1a ermittelt verschiedene Arten
von Bedingungen, die basierend auf den Inhalten der CAMs oder eines
SRAM basierend auf den empfangenen IP-Paketdaten, definiert sind,
aus den IP-Paketen. Zusätzlich
führt die
IP-Paketempfangssektion 1a als die Bedingungen erfüllende Aktionen
einen Satz von Prozessen durch, wie beispielsweise einen Warteschlangenprioritätssteuerungsprozeß, einen
Filterungsprozeß (Ausrangier-/Passierprozeß), einen
SW-Priorität-/Nichtprioritätssteuerungsprozeß und die
Addition eines DSCP-Wertes des differenzierten Services durch.
-
Die
IP-QOS-Klassenbestimmungssektion 1e greift auf den IP-QOS-Code-(Klassenkennungs)-Bestimmungsspeicher 1f zu,
um eine Klassenkennung zu akquirieren, und zwar unter Verwendung
der Kopfdaten des empfangenen IP-Paketes als Ermittlungsschlüssel, als
eine Kombination der Daten der Schicht 3, die durch die IP-Kopfdaten
typisiert sind, und der Daten der Schicht 4, die durch die TCP/UDP-Kopfdaten
typisiert sind, der oberhalb der Schicht 3 liegt. Die IP-QOS-Klassenbestimmungssektion 1e kündet die
Klassenkennung des IP-QOS-Codes
der empfangsseitigen Schaltschnittstellensteuerungssektion 1b an.
-
Die
IP-QOS-Klassenbestimmungssektion 1e überwacht den hereinkommenden
Verkehr, der eine übertragbare
Kapazität übersteigt,
welche für
jede IP-QOS-Klasse vorab eingestellt worden ist. Wenn der Verkehr
die vorab eingestellte übertragbare
Kapazität überschreitet,
führt die
IP-QOS-Klassenbestimmungssektion 1e eine Überwachungssteuerung durch,
dergestalt, daß Pakete,
die IP-QOS-Codes haben, ausrangiert werden oder die Übertragungspriorität der Pakete
verringert wird. Mit diesen Funktionen bestimmt die IP-QOS-Klassenbestimmungssektion 1e die Übertragungsfrequenz
der Pakete in Übereinstimmung
mit einer Netzwerkressourcenquantität, die dem IP-QOS-Code jedes
der Pakete zugewiesen ist.
-
Die
empfangsseitige Schaltschnittstellensteuerungssektion 1b führt eine
Prioritätssteuerung für den Kreuzungsschalter 1g durch,
und zwar unter Verwendung der Paketdaten, die von der IP-Paketempfangssektion 1a empfangen
worden sind, und eines IP-QOS-Klassencodes, der dem Paket entspricht
und durch die IP-QOS-Klassenbestimmungssektion 1e bestimmt
ist.
-
Die
empfangsseitige Schaltschnittstelle 1d steuert die Sendeanfragen
für jede
Klasse und für jede
Ausgangsschnittstellenkarte. Die empfangsseitige Schaltschnittstelle 1d überträgt üblicherweise eine Übertragungsanfrage,
die eine hohe Priorität hat,
an die Schaltablaufsteuerung 1h. Diese Prioritätssteuerung
entspricht dem Lesen der Pakete aus dem empfangsseitigen Nutzlastspeicher 1c zu
dem Kreuzungsschalter 1g und wird als Verzögerungsprioritätssteuerung
bezeichnet. Die empfangsseitige Schaltschnittstelle 1d gibt
die IP-Pakete an den Kreuzungsschalter 1g für das Wählen/Verbinden
der Zieladressen aus.
-
Der
empfangsseitige Nutzlastdatenspeicher 1c speichert die
eingegebenen IP-Paketdaten und leere Paketdaten, die erforderlich
sind, wenn das IP-Paket übertragen
wird.
-
(Ausgangsschnittstellenleitungskarte)
-
Die übertragungsseitige
Schaltschnittstelle 1j speichert die Paketdaten, die von
dem Kreuzungsschalter 1g empfangen worden sind, in dem übertragungsseitigen
Nutzlastspeicher 1i und erzeugt gleichzeitig Paketdaten
entsprechend den gespeicherten Paketdaten, um diese in einen FIFO-Speicher 1n einzuschreiben.
Die Paketdaten haben eine virtuelle Verarbeitungseinheit, die für jede Paketeinheit
in einem Netzwerkgerät
definiert ist und die im nachfolgenden als ein "Objekt" bezeichnet wird. Das Objekt sind nicht
die Paketdaten und ist definiert, um zu verhindern, daß die Paketdaten
im Gerät
herumgeführt
werden. Die Paketübertragung
wird durch Einleiten des Objektes in das Gerät durchgeführt.
-
Der
FIFO-Speicher 1n überträgt die Paketkopfdaten
von der übertragungsseitigen
Schaltschnittstelle 1j in einer Eingangsfolge-Weise (FIFO), wobei
eine vorbestimmte Verzögerungszeit
eingehalten wird.
-
Die
IP-QOS-Klassenablaufsteuerung 1m führt eine Warteschlangenbildung
für jede
Klasse basierend auf den IP-QOS-Klassencodes
durch, die in den Objekten enthalten sind. Die IP-QOS-Klassencodes
entsprechen einer Anzahl von Verzögerungsklassen und einer Anzahl
von Ausrangierklassen. Ein Objekt, das in einer Warteschlange gespeichert
ist, die eine hohe Verzögerungspriorität hat, wird
vorzugsweise auf die übertragungsseitige
Schaltschnittstellensteuerungssektion 1k übertragen.
Die IP-QOS-Klassenablaufsteuerung 1m hat eine Ablaufsteuerungsfunktion
basierend auf dem gewerteten zyklischen Warteschlangenbetriebsablaufsteuerungs-(WRR)-System, um
eine solche Steuerung durchzuführen,
daß eine
erforderliche Servicequalität geschaffen
werden kann. Zusätzlich
wird im IP-Netzwerk eine präzise Übertragungssteuerung,
die eine Benutzungsparametersteuerung (UPC) und eine Formsektion
aufweist, an einer Premiumserviceklasse durchgeführt, die eine virtuell Standleitung
schafft.
-
Die übertragungsseitige
Schaltschnittstellensteuerung 1k gibt die IP-Pakete von
der übertragungsseitigen
Schaltschnittstelle 1j an die IP-Paketübertragungssektion 1q in
der Reihenfolge der Ablaufsteuerung aus, und zwar basierend auf
der Priorität
der IP-QOS-Klassenablaufsteuerung 1m.
-
Die
IP-Paketübertragungssektion 1q gibt
die IP-Pakete an die niedrigeren Schichten, wie beispielsweise die
Datenverknüpfungsschicht
und die Netzwerkschicht, welche die Ethernet- und Token-Ring-Netzwerke
enthält,
aus.
-
(2) Funktionen
-
Die 2 zeigt
die Funktionen des Kommunikationsgerätes gemäß der vorliegenden Erfindung. Ein
Beispiel der Prioritätssteuerung,
die bei der vorliegenden Erfindung angewandt wird, wird unter Verwendung
der Struktur des in der 1 gezeigten Kommunikationsgerätes beschrieben.
-
Als
erstes erfolgt ein Zugriff der IP-QOS-Klassenbestimmungssektion 1e auf
den CAM/SRAM, um die IP-QOS-Klassencodes zu bestimmen, die in einem
Gerät gespeichert
sind, und zwar unter Verwendung der vorbestimmten Daten der Schicht
3 oder der Schicht 4 als Ermittlungsschlüssel. In diesem Fall unterstützt die IP-QOS-Klassenbestimmungssektion 1e sowohl
den Verhaltensaggregat-(BA)-Klassifizierer als auch den Mehrfeld-(MF)-Klassifizierer.
-
Hinsichtlich
der Addition der EF-Klasse und der Überwachungssteuerung unterstützt die IP-QOS-Klassenbestimmungssektion 1e eine Überwachungsfunktion,
die an den bestimmten IP-QOS-Klassen (EF, AF1 bis AF4 und BE) durchgeführt wird.
Die Überwachungssteuerung
ist der Vergleich zwischen der Tokenlänge jeder Klasse und der Länge eines übertragenen
Paketes. Wenn die Tokenlänge
kürzer
ist als die Datenpaketlänge,
wird das Paket ausrangiert.
-
Die
IP-QOS-Klassenbestimmungssektion 1e überträgt die IP-QOS-Codes (Klassenkennungen) auf die
empfangsseitige Schaltschnittstellensteuerungssektion 1b.
Der IP-QOS-Codebestimmungsspeicher 1f teilt die IP-QOS-Codes
beispielsweise in 16 Arten (5 × 3
+ 1) von (EF. H), (AF1 bis AF4. H/M/L) und (BE. H/M/L) als Verzögerungsklassen
und Ausschußklassen.
Der IP-QOS-Code (Klassenkennung) akquiriert die Adresse eines leeren
Bereiches zwischen der empfangsseitigen Schaltschnittstellensteuerungssektion 1b und
der empfangsseitigen Schaltschnittstelle 1d.
-
Die
IP-QOS-Klassenablaufsteuerung 1m funktioniert als eine
IP-QOS-Klasseneinheitsablaufsteuerung und führt einen Ausgabeprozeß zur übertragungsseitigen
Schaltschnittstellensteuerung (1K) von dem Objekt einer hohen Prioritätsklasse
EF > (AF1 bis AF4/BE)
durch, und zwar zur Ablaufsteuerung basierend auf der IP-QOS-Klasse
(geräteinterner
QOS-Code), die auf der Empfangsseite bestimmt ist. Anzumerken ist,
daß (AF1
bis AF4/BE) die Ablaufsteuerung basierend auf dem WRR-System durchführt.
-
Bei
der Ausschußsteuerung
durch die IP-QOS-Klassenablaufsteuerung 1m vergleicht die Ablaufsteuerung 1m die
Schwellenwerte der drei Klassen von H/M/L, mit einer Pufferlänge, um
die Ausschußsteuerung
durchzuführen
(die Erzeugung eines fallen zu lassenden Objektes), bezogen auf AF1
bis AF4/BE. Hinsichtlich EF unterstützt die IP-QOS-Klassenablaufsteuerung 1m durch
Addieren einer Klasse von H.
-
In
Termen der Additionen zur EF-Klasse und einer Formfunktion wird
eine s-Form-(Verzögerungsablaufsteuerung)-Funktion
durchgeführt,
um eine bestimmte IP-QOS-Klasse zu bestimmen (nur die EF-Klasse).
Die Formsteuerung ist ein Token-Bucket-System, das der Überwachungssteuerung äquivalent
ist. Bei diesem System wird die Tokenlänge jeder Klasse mit der Länge eines
zu übertragenden
Pakets verglichen. Wenn die Tokenlänge kürzer als die Paketlänge ist,
wird die Übertragung
des Paketes zurückgestellt.
-
Die
IP-QOS-Klassenablaufsteuerung 1m verwendet den Klassenobjektwarteschlangenspeicher
SRAM 1p dazu, die Ablaufsteuerung der Objekte durchzuführen.
-
(Prioritätssteuerung)
-
Als
Schaltprioritätssteuerung
des Gerätes werden
die folgenden vier Prozesse angenommen.
- (1)
Kartierung (mapping) in einer geräteinternen Verzögerungsklasse
durch die empfangsseitige Schaltschnittstellensteuerungssektion 1b
-
Das
Kartieren in der geräteinternen
Verzögerungsklasse
ist ein Verfahren zum Übertragen
einer Übertragungsanfrage.
Bei diesem Verfahren führt
die Zuweisung der Verzögerungsprioritätssteuerung
für die
zwei Klassen (H/L) zu sechs Verzögerungsklassen.
-
Vor
dem Übertragen
eines Paketes auf eine Ausgangs-IF-Leitungskarte auf der Übertragungsseite
gibt die empfangsseitige Schaltschnittstelle 1b eine Verbindungsanfrage
an die Schaltablaufsteuerung 1h. Die Schaltablaufsteuerung 1h vermittelt Übertragungsanfragen
von den Eingangsleitungskarten und notiert die Verbindungsdaten
der Eingangs-/Ausgangswege des Kreuzungsschalters 1g. Zusätzlich gibt
die Ablaufsteuerung 1h eine resultierende Verbindungsentscheidungsnotiz
an jede der Eingangsleitungskarten auf der Empfangsseite.
-
Die
empfangsseitige Schaltschnittstelle 1d steuert die Anfragen
jeder Klasse und jeder Ausgangs-IF-Karte. Die empfangsseitige Schaltschnittstelle 1d überträgt üblicherweise
primär
eine Anfrage hoher Priorität
an die Schaltablaufsteuerung 1h. Die Prioritätssteuerung
entspricht dem Lesen der Pakete aus dem empfangsseitigen Nutzlastdatenspeicher 1c für den Kreuzungsschalter 1g und
dies wird als eine Verzögerungsprioritätssteuerung
betrachtet.
-
Für den Fall
der Abbildung in einer geräteinternen
Verzögerungsklasse
bestimmt eine empfangsseitige Schaltschnittstellensteuerung 1b,
die auf einer vorhergehenden Stufe der empfangsseitigen Schaltschnittstelle 1d positioniert
ist, die Verzögerungspriorität in Übereinstimmung
mit den Verkehrsklassen der Pakete. In der 2 sind sechs
Arten von Verzögerungsprioritätsklassen
als Verkehrsklassen der Pakete bestimmt, um mit der Anzahl der Klassen,
die dem differenzierten Service unterworfen sind, zusammenzupassen.
In dieser Figur ist ein Beispiel entsprechend den zwei Arten (hoch/niedrig)
der Klassenwarteschlagen bezogen auf den Kreuzungsschalter 1g gezeigt.
- (2) Kartierung in eine Ausschußklasse,
die durchgeführt
wird, wenn ein eingegebenes Paket in den empfangsseitigen Nutzlastspeicher 1c eingeschrieben
wird
-
Beim
Kartieren in die Ausschußklasse
werden zum Akquirieren der Adresse eines leeren Bereiches (eine
freie Seitenadresse) die Ausschußprioritätssteuerung der drei Arten
von Klassen (H/M/L) bezeichnet. Auf diese Art und Weise entsprechen
die drei Arten der Ausschußklassen
der EF-Klasse.
-
Wenn
das Eingangspaket in den empfangsseitigen Nutzlastdatenspeicher 1c eingeschrieben ist,
ermittelt die empfangsseitige Schaltschnittstellensteuersektion 1b,
die in der vorhergehenden Stufe des Nutzlastdatenspeichers 1c positioniert
ist, die Adresse des leeren Bereiches (freie Seitenadresse) in dem
empfangsseitigen Nutzlastdatenspeicher 1c. Unter Verwendung
der freien Seitenadresse wird das eingegebene Paket in den empfangsseitigen
Nutzlastdatenspeicher 1c eingeschrieben.
-
Bezüglich der
Erfassung der Leerer-Bereich-Adresse hat die empfangsseitige Schaltschnittstelle 1d wenige
Arten von Prioritäten.
Für eine
einfache Beschreibung zeigt die 2 ein Beispiel,
bei dem drei Arten von Ausschußklassen
(H/M/L) verwendet werden.
-
Die
empfangsseitige Schaltschnittstelle 1d überwacht die Kapazität des leeren
Bereiches des empfangsseitigen Nutzlastdatenspeichers 1c.
Wenn die Kapazität
kleiner als ein vorbestimmter hoher Schwellenwert ist, erlaubt die
empfangsseitige Schaltschnittstelle 1d nur das Einschreiben
eines Paketes hoher Priorität.
Wenn die Kapazität
kleiner als ein vorbestimmter niedriger Schwellenwert ist, erlaubt
die empfangsseitige Schaltschnittstelle 1d nur das Einschreiben
eines Pakets mittlerer Priorität.
Mit Ausnahme dieser Fälle
erlaubt die empfangsseitige Schaltschnittstelle 1d, daß Pakete
irgendwelcher Klassen in den Speicher eingeschrieben werden. Dies
ist die Ausschußsteuerung
für den
Speicher 1c. Die Ausschußsteuerung wird in Übereinstimmung
mit den drei Arten von ausrangierten Verkehrsklassen gebracht.
- (3) Prioritätssteuerung,
die durchgeführt
wird, wenn ein ausgegebenes Paket aus dem übertragungsseitigen Nutzlastspeicher 1i ausgelesen worden
ist (Verzögerungsprioritätssteuerung)
-
Das
Auslesen eines Paketes aus dem übertragungsseitigen
Nutzlastdatenspeicher 1i wird durch die IP-QOS-Klassenablaufsteuerung 1m,
die übertragungsseitige
Schaltschnittstellensteuerung 1k und die übertragungsseitige
Schaltschnittstelle 1j gesteuert.
-
Die
Prioritätssteuerung
des Kommunikationsgerätes
ist die Steuerung einer Reihenfolge, in welcher Pakete aus dem übertragungsseitigen
Nutzlastdatenspeicher 1i ausgelesen werden und ist mit der
Verzögerungsprioritätssteuerung
ver gleichbar. Die Verzögerungsprioritätssteuerung
handhabt sechs Arten von Verzögerungsklassen,
die IP-QOS-Codes haben.
- (4) Prioritätssteuerung,
die durchgeführt
wird, wenn ein Paket, das vom Kreuzungsschalter übertragen wird, in den übertragungsseitigen Nutzlastdatenspeicher
eingeschrieben ist (Ausschußprioritätssteuerung)
-
Das
Paket, welches von dem Kreuzungsschalter 1g übertragen
wird, ist in den übertragungsseitigen
Nutzlastspeicher eingeschrieben. Die IP-QOS-Klassenablaufsteuerung 1m ist
von den Daten des eingeschriebenen Pakets als Objekt benachrichtigt.
Die IP-QOS-Klassenablaufsteuerung 1m steuert die Schlangenlängen durch
Klassen in dem übertragungsseitigen
Nutzlastdatenspeicher. Somit vergleicht die IP-QOS-Klassenablaufsteuerung 1m die
Schlangenlänge
mit dem Schwellenwert der Ausschußklasse, um zu bestimmen, ob
Pakete in dem übertragungsseitigen
Nutzlastspeicher enthalten sind, die ausgesondert werden oder nicht.
Das Ergebnis entspricht der Ausschußklasse der Verkehrsklasse.
-
Die übertragungsseitige
Schaltschnittstellensteuerungssektion 1k führt die
Paketübertragung/Paketaussonderung
unter Verwendung von zwei Arten (Übertragung/Aussonderung) von
Objekten durch. Bei der Übertragung
eines Paketes wird ein Paket, welches in einem FSU-Speicher sitzt,
ausgelesen und in Antwort auf einen Lesebefehl übertragen. Für den Fall
des Aussonderns eines Paketes wird ein Paket, das in dem FSU-Speicher
sitzt, in Antwort auf einen Fallen-Laß-Befehl ausgesondert.
-
(IP-QOS-Klassenbestimmungssektion)
-
3 zeigt
den Hauptteil der IP-QOS-Klassenbestimmungssektion 1e.
Die Einzelheiten der IP-QOS-Klassenbestimmungssektion 1e werden
anhand der 3 beschrieben.
-
Wie
in der Figur gezeigt, ist die IP-QOS-Klassenbestimmungssektion 1e aus
einer Kopfdatenextrahiersektion 3a, einer Kopfdatenprüfsektion 3b,
einer IP-QOS-Code-Suchsektion 3c, einer Überwachungssteuerungssektion 3d,
einer IP-QOS-Code-Ausgangssektion 3e und
einer Parameterregistersteuerungssektion 3f zusammengesetzt.
-
Die
Kopfdatenextrahiersektion 3a extrahiert vorbestimmte Daten
aus den Formaten der IP-Kopfdaten und TCP/UDP-Kopfdaten des in der 9 gezeigten
IPv4-Kopfdatenformates und überträgt Feldwerte,
die in den extrahierten Daten enthalten sind, als IP-Daten zu der
IP-QOS-Code-Suchsektion 3c. In der 9 zeigt
ein eng schraffierter Bereich (Ver) ein zu überprüfendes Feld. Mittelbreit schraffierte
Abschnitte (TOS, Src-IP-Adresse, Dst-IP-Adresse, L4-Src-Port und
L4-Dst-Port) zeigen
Felder zum Spezifizieren der Klassen als Objekte eines Suchschlüssels.
-
Die
extrahierten Daten umfassen eine 4-Bit-Version (Ver), eine 8-Bit-TOS-(Servicetyp)-Kennung,
eine Quellen-(Src)-IP-Adresse,
eine Ziel-(Dst)-IP-Adresse, eine L4-Src-Portnummer von Schicht-4-Kopfdaten
und eine L4-Dst-Portnummer der Schicht-4-Kopfdaten. Eine Internetkopfdatenlänge (IHL)
zeigt die Größe der IP-Kopfdaten
an, eine Datagrammlänge
zeigt die Gesamtlänge
des gesamten Paketes an, welches die IP-Kopfdaten und die IP-Daten
enthält,
und eine Identifikation zeigt eine Kennung an, die ein Fragment
wieder herstellt. Ein Flag M ist aus drei Bits zusammengesetzt,
ein 13-Bit-Fragmentversatz zeigt den Ort eines Fragmentes nach der
Teilung in Originaldaten an, und eine Lebenszeit zeigt eine Zeit
an, während
welcher die Anwesenheit in einem Netzwerk zugelassen ist. Zusätzlich spezifiziert
ein Protokoll das obere Schichtprotokoll und eine Kopfdatenprüfsumme zeigt die
Prüfsumme
der IP-Kopfdaten an.
-
Die
IP-Kopfdatenprüfsektion 3b überprüft die Normalität der IP-Kopfdaten
und gibt das Ergebnis an das IP-Kopfdaten- oder Encap-Feld an die IP-QOS-Code-Ausgangssektion 3e.
Die IP-QOS-Code-Suchsektion 3c greift auf den inhaltsadressierbaren
Speicher (CAM) und den SRAM zu, und zwar unter Verwendung von Daten,
die von der Kopfdatenextrahiersektion 3a erhalten worden
sind, als Suchschlüssel,
um einen IP-QOS-Code
zu bestimmen. Der bestimmte IP-QOS-Code enthält Daten, die eine Klassenkennung
des Gerätes,
die Priorität
der Schaltsteuerung usw. betreffen.
-
Die Überwachungssteuersektion 3d überwacht
den Verkehr jeder Klasse, die durch die in der vorhergehenden Stufe
positionierte IP-QOS-Code-Suchsektion 3c bestimmt worden
ist, um einen übermäßigen Verkehrsfluß zu steuern
oder zu beschränken.
Bei dieser Verarbeitung wird das Token-Bucket-System verwendet, um die Verkehrsübertretung
oder übermäßige Übertragung
zu überwachen.
Im Token-Bucket-System steigt eine Tokenquantität, die in einem Bucket enthalten
ist, mit dem Verhältnis,
das basierend auf dem Ausdruck: T (abgelaufene Zeit) × r (mittlere
Rate) berechnet worden ist. Selbst wenn ein Paket empfangen ist,
wird, wenn keine Token vorhanden sind, die eine Länge ergeben,
die ausreicht, um das empfangene Paket zu enthalten, das Paket ausgesondert.
Bei der vorstehenden Verarbeitung wird die Länge eines Paketes mit einer
Tokenlänge
verglichen. Wenn die Tokenlänge kürzer als
die Paketlänge
ist, wird der Wert des Ausschußbits
auf "1" gesetzt, um anzuzeigen,
daß das Paket
auszusondern ist, und das Paket wird zu einem Block einer rückwärtigen Stufe übertragen.
Im Gegensatz hierzu wird für
den Fall der "Tokenpaketlänge" der Wert des Ausschußbits auf "0" gesetzt. Dies ist eine einfache logische
Verarbeitung. Um schnell zu bestimmen, ob die Verkehrsübertretung
verursacht ist oder nicht, kann bei der Herstellung und Einstellung
der Hardware und der Software das folgende Verfahren angewandt werden.
-
Die
Bedingung für
das Durchlassen eines eingegebenen Paketes. ist so gesetzt, daß "Token 0" anstatt von "Tokenpaketlänge" gilt.
-
Nach
der Übertragung
des Paketes wird die Menge entsprechend der Größe des Paketes von der vorhandenen
Menge Token abgezogen. Als ein Ergebnis kann die Tokenmenge negativ
sein. Wenn sie ein negativer Wert ist, wird das übertragene Paket als ein Objekt
betrachtet, das eine Verkehrsübertretung verursacht.
Unter Verwendung der Bestimmungsschaltung ist es möglich, zu
bestimmen, ob das übertragene
Paket ein Verkehrsübertretungsobjekt
ist oder nicht, und zwar nur basierend auf dem Tokencodedatum (1-Bit-Datum).
Das heißt,
die vorliegende Schaltung hat eine einfache Struktur.
-
Die
IP-QOS-Code-Ausgangssektion 3e führt die Taktwiederherstellung
eines IP-QOS-Codes durch, der bestimmt ist durch die IP-QOS-Code-Suchsektion 3c,
ein Filterbit aus der Überwachungssteuersektion 3d und
Fehlerdaten aus der Kopfdatenprüfsektion 3b,
um an die empfangsseitige Schaltschnittstellensteuersektion 1b der
rückwärtigen Stufe
eine Ausgabe zu machen. Ein Operator bestimmt, wie die Felder zu
kombinieren sind, die in der Aufzeichnung (MF/BA-Kennung) der IP-Kopfdaten der
Verkehrsklassen enthalten sind, und wie die kombinierten Felder
mit den Verkehrsklassen korrespondieren. Diese Ergebnisse sind nicht
in den Empfehlungen der RFC oder IETF spezifiziert. Um die vorstehende
Korrespondenz mit den Verkehrsklassen möglich zu machen, ist es notwendig,
die Aufzeichnung der Verkehrsklassen basierend auf einer beliebigen
Kombination aus extrahierten Kopfdaten durchzuführen.
-
Wenn
beispielsweise die Prioritätssteuerung am
spezifizierten IP-Verkehr zwischen gewissen Vertragsbenutzern durchgeführt wird,
wird die Klassifikation der Verkehrsklassen basierend auf der Kombination
aus einer Quellen-(Src)-IP-Adresse
und einer Ziel-(Dst)-IP-Adresse durchgeführt. Bei dem spezifizierten
IP-Verkehr ist, wenn die Prioritätssteuerung nur
am Verkehr des HTTP (Protokoll für
Austauschen von Hypertexten mit einem WWW-Server im Internet) durchgeführt wird,
es notwendig, die Verkehrsklasse durch Kombinieren des Src-Portnummer
und einer Ziel-Portnummer, die in den Kopfdaten der oberen Schicht
enthalten sind, zu kombinieren. Zusätzlich ist es, wenn die Prioritätssteuerung
nur für
den Verkehr durchgeführt
wird, der von einem bestimmten Server übertragen wird, notwendig,
die Verkehrsklassen zu klassifizieren, indem nur auf eine Src-IP-Adresse als die IP-Adresse
des Servers und eine Src-Portnummer Bezug genommen wird. Wie hier
gezeigt, wird dieses Verfahren als ein Mehrfeld-(MF)-Klassifizierer bezeichnet,
wenn die Verkehrsklassen basierend auf einer Kombination aus der
Vielzahl von Feldern der IP-Kopfdaten und der oberen Schicht klassifiziert werden.
-
Anders
als das vorstehend beschriebene Verfahren, gibt es ein Klassifizierungsverfahren,
das als Verhaltensaggregat-(BA)-Klassifizierer
bezeichnet wird. Ein BA-Klassifizierer klassifiziert Verkehrsklassen
durch Bezugnahme auf nur das TOS-Feld der IP-Kopfdaten. Das TOS-Feld,
das in den IP-Kopfdaten
definiert ist, ist ein Spezialfeld, welches für den differenzierten Service
definiert ist. Das TOS-Feld wird dazu verwendet, eine Prozedur zum
Klassifizieren der Verkehrsklassen basierend auf einer Kombination
von Feldern der IP-Kopfdaten in einem Router zu verringern. Das
heißt,
ein Router der oberen Stufe klassifiziert die Verkehrsklassen basierend
auf den Feldern in den IP-Kopfdaten und addiert die Klassendaten
dem TOS-Feld, auf welches übertragen
wird. Die Router für
die nächste
Stufe, die dem Router für die
obere Stufe folgen, müssen
nur die Prioritätssteuerung
für jede
Verkehrsklasse durchführen,
indem sie nur auf die TOS-Felder Bezug nehmen. Hersteller müssen jedoch
bestimmen, wie die TOS-Felder zu verwenden sind. Somit ist es notwendig,
die Geräte der
gleichen Tochtergesellschaften (Hersteller) miteinander zu verbinden
oder es werden Ein schränkungen
geschaffen, indem Operationsregeln zwischen benachbarten Routern
errichtet werden müssen.
Wie vorstehend angegeben, erfordert die Abbildung der Verkehrsklasse,
daß Registrierungen
in Übereinstimmung
mit verschiedenen Arten von Kombinationen beliebiger Felder erlaubt
sind. Bei der vorliegenden Erfindung können der MF-Klassifizierer und
der BA-Klassifizierer simultan durch das folgende Verfahren unterstützt werden.
-
(Betrieb der Klassensuchsektion)
-
Der
Betrieb der Klassensuchsektion wird unter Bezugnahme auf die 4 und 5 beschrieben.
-
4 zeigt
die Struktur und den Betrieb der Klassensuchsektion 3c. 5 zeigt
einen Suchoperationsfluß.
Wie in der 4 gezeigt, ist die IP-QOS-Klassensuchsektion 3c aus
einem Schicht-4-(L4)-Port-Umwandlungs-SRAM, einem Quellen-IP-Adressensuch-CAM,
einem Ziel-IP-Adressensuch-CAM, einem Prioritätskartiersuch-CAM und einem
Prioritätssetz-SRAM zusammengesetzt.
Mit dieser Struktur extrahiert die IP-QOS-Klassensuchsektion 3c die
Software-Prioritätssteuerdaten.
Zusätzlich
hat das in der 5 gezeigt Flußdiagramm
eine CAM-Suchsektion, die die Source-IP-Adresse, die Ziel-IP-Adresse,
eine TOS-Kennung und ein Protokoll eingibt, um eine gesuchte Adresse
Q auszugeben, und eine SRAM-Zugriffssektion,
die die gesuchte Adresse Q, den Obere-Schicht-TCP-Quellport und den Obere-Schicht-TCP-Zielport
zum Ausgeben eines IP-QOS-Codes eingibt.
-
In
dieser Situation werden die Bedingungsdaten hauptsächlich auf
dem CAM beschrieben und die Aktionsdaten auf dem SRAM beschrieben.
Die Aktionen, die auf dem SRAM beschrieben sind, entsprechend den
Bedingungen, die auf dem CAM beschrieben sind. Somit ist die Anordnung
von CAM und SRAM, beide als Aufzeichnungsmedium kein notwendiges
Erfordernis. Unter Berücksichtigung des
Hochgeschwindigkeitsbetriebes des SRAM kann jedoch der CAM durch
Unterteilen der Speicherfläche
des SRAM gebildet sein. In diesem Fall ist es primär notwendig,
ein Implementierungsverfahren zum effektiven Verwenden der Quelle
(Fläche:
Anzahl der Eingänge)
des CAM anzuwenden.
-
Wie
vorstehend beschrieben, klassifiziert der MF-Klassifizierer Verkehrsklassen
basierend auf beliebigen Kombinationen aus einer Src-IP-Adresse,
einer Dst-IP-Adresse, einer Src-Portnummer, einer Dst-Portnummer,
einer Protokollnummer und einer TOS. Wird der MF-Klassifizierer
betrachtet, ist das einfachste Suchverfahren ein Verfahren, bei
dem die Werte einer Src-IP-Adresse, einer Dst-IP-Adresse, einer
Src-Portnummer, einer Dst-Portnummer, einer Protokollnummer und
eines TOS-Feldes als registrierte Daten auf dem CAM gesetzt werden,
die in der Lage sind, eine Maske für jeden Eingang zu bezeichnen,
und die Suchoperation wird basierend auf den Paketkopfdaten jedesmal
dann durchgeführt,
wenn ein Paket eingegeben wird. Da jedoch bezüglich der Bitbreite des CAM
Einschränkungen
bestehen, sind praktische Ideen für die Implementierung notwendig.
-
Die
vorliegende Erfindung hat eine Sequenz zur Ermittlung eines IP-QOS-Codes
unter Verwendung des Mehrzweck-CAM und des erfolgenden zweistufigen
Suchverfahrens. Der BA-Klassifizierer führt den Prozeß des Umwandelns
eines IP-QOS-Codes durch, indem er nur auf die TOS-Felder in dem
gleichen Rahmenwerk als wie der Prozeß, der durch den MF-Klassifizierer
durchgeführt
wird, Bezug nimmt. Das heißt,
der Prozeß durch
den BA-Klassifizierer kann als ein Fall betrachtet werden, bei dem
nur die TOS-Felder im Fall des MF-Klassifizierers verwendbar sind.
-
Wenn
die Konfiguration des CAM berücksichtigt
wird, ist es möglich,
unter Verwendung beider Klassifizierer eine Operation durchzuführen.
-
Als
erstes werden als eine erste Verarbeitung Felder zu Schlüsselwerten
degeneriert, um in dem CAM und dem SRAM registriert zu werden. Als nächstes werden
als ein Klassifizierungsprozeß Eingaben
als die registrierten Schlüsselwerte
auf dem CAM gesucht.
-
Eine
detaillierte Erläuterung
wird im folgenden anhand der 4 und 5 gegeben.
-
(Vorregistrierung in dem
CAM)
-
Vorverarbeitung
1: Die Registrierung/Degenerierung einer Src-IP-Adresse ist im Schritt ➀ in
der 4 gezeigt.
-
Im
voraus sind alle Src-IP-Adressen/Voranstellungen, die in den Eingängen für die Klassifikation enthalten
sind, registriert. In dem Vorprozeß wird, wenn die Src-IP-Adresse
und die Dst-IP-Adresse degeneriert werden, die Src-IP-Adresse als
ein Suchschlüssel
verwendet, um die Suchoperation unter Verwendung der längsten Präfixübereinstimmung unter
Regulierungen durchzuführen,
die auf dem klassenlosen Interdomain-Routing (CIDR) basieren. Eine
CAM-Adresse, die durch die Suchoperation erhalten worden ist, wird
als die Adresse A gesetzt. Wenn kein Schlüsselwert registriert ist, sind
alle "0" ein Wert, der die
Adresse A anzeigt. Dieser Prozeß ist äquivalent
dem Schritt S1, der in der 5 gezeigt ist.
-
Vorverarbeitung
2: Die Registrierung/Degenerierung einer Dst-IP-Adresse, die im
Schritt ➁ der 4 gezeigt ist.
-
Ähnlich wie
bei der Vorverarbeitung 1 sind im voraus alle Src-IP-Adressen/Voranstellungen,
die in den Eingängen
für die
Klassifikation enthalten sind, registriert. Die Dst-Adresse wird als
ein Suchschlüssel
verwendet, um das Suchen durch die längste Präfixübereinstimmung durchzuführen. Eine CAM-Adresse,
die durch die Suchoperation erhalten worden ist, wird als Addr B
gesetzt. Wenn kein Schlüsselwert
registriert ist, sind alle "0s" der Wert der Addr
B. Dieser Prozeß ist
ein Äquivalent
zu dem Prozeß des
Schrittes S2, der in der 5 gezeigt ist. Wenn die CAMs
zueinander parallel geschaltet sind, können die in der 5 gezeigten
Schritt S1 und S2 parallel durchgeführt werden.
-
Vorverarbeitung
3: Die Registrierung/Degenerierung der Portnummern (der Daten der
Schicht 4), die in den Schritten ➀' und ➁' der 4 gezeigt sind.
Der Zweck der Verarbeitung 3 ist es, die Anwendung der Schicht 4
von der Src-Portnummer
oder der Dst-Portnummer zu klassifizieren, um diese in einen vorbestimmten
Schlüsselwert
zu degenerieren. Die Portnummern werden in allgemein bekannte Portnummern,
die das Protokoll der Schicht 4 definieren, und in Nummern, die
beliebig durch Anschlüsse
addiert werden, klassifiziert. Bei dem Einsatz der Normalschicht
4 wird die gut bekannte Portnummer der Anwendung der Schicht 4,
die durch einen Server durchgeführt
ist, der Dst-Portnummer eines Paketes addiert, das von einem Klienten
zu einem Server geleitet worden ist. Die gut bekannte Portnummer
ist in einem Speicher (Tabelle) registriert. Die gut bekannten Portnummern,
die bei der Operation erforderlich sind, sind auch auf wenige Arten
von Nummern begrenzt (HTTP, TELNET, FTP, etc.). Somit wird nur eine
geringe Speichergröße (256 × 8 = 2064
Bit) benötigt.
-
Bei
der Verarbeitung 3 wird die Portnummer als die Adresse verwendet
und der Zugriff wird auf den Speicher ausgeübt, um von der Portnummer auf einen
Schlüsselwert
umzuwandeln, um einen vorbestimmten Schlüsselwert zu ermitteln. Der
Schlüssel ist
aus einem Code, der die Schicht 4 spezifiziert, und einem Flag,
welches bezeichnet, ob der Schlüsselwert
für einen
Scr-Port oder einen Dst-Port gültig
ist oder nicht, zusammengesetzt. Der Grund für das Bezeichnen der Flags
für die
Src/Dst-Ports ist, daß es möglich ist,
einen Einwegverkehr zu klassifizieren. Beispielsweise kann die Klasse
des Verkehrs, der auf einen Server übertragen wird, als eine Klasse
hoher Priorität
behandelt werden, während
die Klasse des Verkehrs, welcher zu einem Klienten übertragen wird,
als die Bestaufwandsklasse behandelt wird. Wie in den Schritten
S3 und S4 der 5 gezeigt, wird die Verarbeitung
an jeder Src-Portnummer und Dst-Portnummer implementiert. Das Lesen
eines Umwandlungsschlüssels
basierend auf Src-Portnummer ist äquivalent dem Schritt S3 der 5.
Das Lesen eines Umwandlungsschlüssels
basierend auf der Dst-Portnummer ist äquivalent den Schritten ➀' und ➁' der 4 und
dem Schritt S4 der 5. Die Ergebnisse der beiden
vorstehend genannten Prozesse erzeugen einen Schlüsselwert,
in welchem eine gut bekannte Portnummer degeneriert ist, und ein
Flag, welches anzeigt, ob der Schlüsselwert von einem Src-Port
oder einem Dst-Port kommt. Dieser Prozeß ist äquivalent dem Schritt S5 der 5 zum Berechnen
des Portschlüssels.
-
(Klassenbestimmungsprozeß, der in
den Schritten ➂ und der 4 gezeigt
ist)
-
Der
CAM wird wiederum basierend auf den Schlüsselwerten, TOS-Feldern und
Protokollnummern, die in dem Vorprozeß, wie er in den Schritten S1
bis S5 der 5 gezeigt ist, erhalten worden
sind, gesucht. Dieser Prozeß ist äquivalent
einem Schritt S6 in der 5. Die Kombination der Schlüssel, das heißt Schlüssel, die
für die
Suchoperation als gültige Daten
verwendet werden, sind als Maskendaten für jede Eingabe in den CAM definiert.
Dieser Prozeß kann
eine CAM-Adresse (addr Q) schaffen, in welcher jede Eingabe gespeichert
ist.
-
Zum
Schluß wird
in einem Schritt S7 der 5 die CAM-Adresse (addr Q) als Zeigerdaten für einen
externen Speicher verwendet. Als Ergebnis können schließlich erforderliche Verkehrsklassendaten
erhalten werden.
-
Die
empfangsseitige Schaltschnittstellensteuerungssektion 1b kartiert
Daten (IP INFO), die in dem in der 5 gezeigten
Operationsfluß erhalten worden
sind, in einem Objekt und überträgt diese
auf die empfangsseitige Schaltschnittstelle 1d. Dann führen die
Eingangs-IF-Karten eine Vielfalt an Prioritätssteuerung durch.
-
Anzumerken
ist, daß,
wenn es in den registrierten Daten bei der Suchoperation im CAM
kein Treffer gibt, der CAM zur Adresse "0" zurückkehrt. Dies
ist als ein Klassencode definiert, der den BE-Verkehr anzeigt. In
dem externen Speicher wird ähnlich
der Wert des externen Speichers zu einem Rücksetzzeitpunkt so gesetzt,
daß alle
Werte "0" sind, und der Bereich
der Adresse "0" speichert die Daten
der BE-Verkehrsklasse. Somit wird der Verkehr, der in der CAM-Suchoperation
nicht getroffen ist, als BE-Verkehr betrachtet. Die Details der
in den CAM gespeicherten Tabellen sind in den 6A bis 8 gezeigt.
-
Die 6A und 6B zeigen
strukturelle Beispiele einer Tabelle, die in dem Speicher CAM (adressierbarer
Inhalt des Speichers) gespeichert sind, und eine Tabelle eines Speicherbereiches
für die
IP-Src-Präfixeintritte.
Die 7A und 7B zeigen
eine Tabelle eines Speicherbereiches für die IP-Dst-Präfixeingaben
und eine Tabelle eines Speicherbereiches für die IPINFO-Adresseneintritte. Zusätzlich zeigt
die 8 eine Tabelle eines Speicherbereiches für die IPINFO-Eintritte.
Für den Fall
der 6A bis 8 zeigt der Bezugsbuchstabe D
Aussonderung (0: normal und 1: Aussonderung) bei der Filterung an.
Zusätzlich
zeigt der Bezugsbuchstabe P die Paketpriorität an (0: niedere Priorität und 1:
hohe Priorität);
die Referenzzeichenroute zeigt ein oberes 1-Bit-Routenänderungsflag
an (0: fehlerhafte Routensetzung und 1: untere 4-Bit-Routenfeldsetzung). Das Ausgeben
des TOS-Bits 9 zeigt ein DSCP-Update-Flag an (0: nicht Wiedereinschreiben
des TOS-DSCP-Feld-Bits 7 – 2
und 1: Implementierung des Wie dereinschreibens desselben). Das Ausgeben
des TOS-Bits 8 zeigt ein CU-Update-Flag an (0: nicht Wiedereinschreiben
des TOS-CU-Feld-Bits 1 und 0 und 1: Implementierung des Wiedereinschreibens
derselben). Das Ausgeben des TOS-Bits 7 – 2 zeigt ein TOS-DSCP-(differenzierter
Servicecodepunkt)-Feld an. Das Ausgeben des TOS-Bits 1 – 0 zeigt
ein TOS-CU-(derzeit nicht verwendet)-Feld an.
-
(Verkehrsregelungsverfahren)
-
Wie
in der 15 gezeigt, werden in dem Verkehrsregelungsverfahren
gemäß der vorliegenden
Erfindung die Verkehrscharakteristika durch ein Token-Bucket-Modell
ausgedrückt.
Das Token-Bucket-Modell wird in der Überwachungssektion 3d der empfangsseitigen
Schaltschnittstellensektion und der Formsektion 8f der übertragungsseitigen
Schaltschnittstellensektion angewandt.
-
Das
heißt,
wenn der Algorithmus für
das Detektieren der Verkehrscoderegelübertretung betrachtet wird,
haben die Form- und Überwachungssektion beide
eine gleiche Schaltkreisstruktur. 15 zeigt das
Token-Bucket-Modell. Das Token-Bucket-Modell hat ein Token enthaltendes
Register (Bucket b), um Token im Bucket zyklisch zu addieren. In
diesem Fall steigen Token mit einer mittleren Rate (r). In dem Tokenaddierprozeß wird der
Wert von (WC + Token) mit dem oberen Tokengrenzwert b verglichen,
und wenn der Wert den oberen Grenzwert b übersteigt, wird der Wert b
gesetzt.
-
Als
eine Bedingung für
das Übertragen
eines Paketes ist es notwendig, daß ein Token, welches eine Größe entsprechend
der Größe eines
zu übertragenden
Paketes angibt, in dem Bucket präsent
ist. Nachdem das Paket übertragen
worden ist, wird die Nummer des Tokens, das eine Länge äquivalent
der übertragenen
Paketlänge
gegeben hat, gegenüber der
gegenwärtigen
Nummer des Tokens reduziert. Bei der Paketübertragung ist, wenn ein Token
das ausreicht, eine Länge
gleich oder größer als
die Paketlänge
anzugeben, in dem Bucket nicht vorhanden ist, das übertragene
Paket ein Verkehrscoderegelübertretungsobjekt.
Wenn der Zustand an die Überwachungssektion 3d angelegt
wird, wird das Paket als das Verkehrscoderegelübertretungsobjekt ausgesondert
oder es wird beispielsweise eine Markierung mit niedriger Priorität durchgeführt. Für den Fall
der Formsektion 8f, wird nach dem Warten, bis genügend Token
in dem Bucket sich angesammelt haben, um die Übertragung des Verkehrscoderegelübertretungsobjektes
zu erlauben, das Paket übertragen.
-
(Zusätzliche Beschreibung des in
der 16 gezeigten)
-
Die
Verkehrscoderegelübertretung
tritt auf, wenn nicht genügend
akkumulierte Token im Bucket vorhanden sind, um ein Paket zu übertragen.
Die Anzahl der Token, die in dem Bucket enthalten sind, steigt in
einem Verhältnis,
das durch den Ausdruck: T (abgelaufene Zeit) × r (mittlere Rate) berechnet
wird. Wenn Token, die in dem Bucket akkumuliert sind, selbst dann
nicht eine erforderliche Länge
erreichen, obwohl ein Paket empfangen worden ist, wird die Übertragung
des Paketes solange zurückgestellt,
bis Token unter Erreichung der erforderlichen Länge in dem Bucket akkumuliert
sind.
-
16 zeigt
die Operationsbilder der Überwachung
und der Formung. Unter Bezugnahme auf die 16 wird
die folgende Beschreibung gegeben.
-
(Beispiel der Überwachungsoperation)
-
Es
wird angenommen, daß das
Paket 1 zum Zeitpunkt T1 ankommt. Wenn dieses nicht das Verkehrscoderegelübertretungsmuster
hat, wird das Paket 1 zum selben Zeitpunkt T1' ausgegeben. Die Anzahl der Token, die
in einem Bucket zum Ausgangszeitpunkt verbleiben, ist mit X1 angezeigt.
Es wird angenommen, daß das
Paket 2, welches die Größe s2 hat,
zum Zeitpunkt T2 ankommt. Die Anzahl der Token, die notwendig ist,
um das Paket 2 auszugeben, ist äquivalent
zu S2. Es wird jedoch angenommen, daß der Wert von S2 größer als
{X1 + (T2 – T1) × r} angenommen
worden ist. In diesem Fall wird eine Verkehrscoderegelübertretung
verursacht. Als ein Ergebnis wird das Paket 2 ausgesondert.
-
(Beispiel der Formoperation)
-
Es
wird angenommen, daß das
Paket 1 zum Zeitpunkt T1 ankommt. Zu diesem Zeitpunkt wird, da eine
Verkehrscoderegelübertretung
nicht verursacht ist, das Paket 1 zum selben Zeitpunkt T1' ausgegeben. Die
Anzahl der Token, die in dem Bucket zum Ausgangszeitpunkt übrig bleiben,
ist durch X1 angezeigt.
-
Es
wird angenommen, daß das
Paket 2, welches die Größe s2 hat,
zum Zeitpunkt T2 ankommt. Die Anzahl der Token, die notwendig sind,
um das Paket 2 auszugeben, ist äquivalent
zu s2. Es wird jedoch angenommen, daß S2 > {X1 + (T2 – T1) × r} ist. In diesem Fall ist
eine Verkehrscoderegelübertretung nicht
verursacht. Somit wird das Paket 2 nach einer Wartezeit τ, während der
eine erforderliche Anzahl von Token in dem Bucket akkumuliert worden
sind, ausgegeben. In diesem Fall kann die Zeit τ durch eine Gleichung S2 = X1
+ {(T2 – τ) – T1} × r berechnet werden.
-
(Einzelheiten der Prioritätssteuerung
durch die Ausgangsschnittstellenkarten)
-
Unter
Bezugnahme auf die 2 wird die Prioritätssteuerung
durch die Ausgangsschnittstellen-(IF)-Karten gegeben. Die Ausgangs-(IF)-Karten betrachtend,
führt die
IP-QOS-Klassenablaufsteuerung 1m basierend
auf IP-QOS-Codes (Verkehrsklassen), die in Objektdaten definiert
sind, eine vorbestimmte Prioritätssteuerung
durch. Die IP-QOS-Codes
sind als Daten zum Identifizieren der Verkehrsklassen definiert
und zeigen eine Anzahl von Verzögerungsklassen
und eine Anzahl von Ausschußklassen.
Die Prioritätssteuerung,
die durch die IP-QOS-Klassenablaufsteuerung 1m durchgeführt wird,
ist äquivalent
den Schritten ➂ und ➃ der 4. 10 zeigt
eine Konzeptansicht der Prioritätssteuerung
durch die IP-QOS-Klassenablaufsteuerung 1m.
-
(Prioritätssteuerung
durch die IP-QOS-Klassenablaufsteuerung)
-
Die
IP-QOS-Klassenablaufsteuerung 1m empfängt Objekte über einen
FIFO 1n von der übertragungsseitigen
Schaltschnittstelle 1j und ein Klassifizierer 8a klassifiziert
die Objekte. Die klassifizierten Objekte werden in einem gemeinsamen
Puffer 8c unter Wahl der Warteschlange für jede Klasse
gespeichert. Der gemeinsame Puffer 8c speichert die Objekte
für jede
Klasse. Es gibt sechs Arten von Objektwarteschlangen 8c insgesamt,
die den Klassen EF, AF1 bis AF4 und BE zugewiesen sind. Diese Objektwarteschlangen
werden alle durch den gemeinsamen Puffer 8c gesteuert.
Die Definitionen für
die EF-, AF- und BE-Klassen sind bereits in der Beschreibung des
Standes der Technik angegeben worden.
-
Da
die EF-Klasse als ein Bandgarantieservice betrachtet wird, wird
eine präzise Übertragungssteuerung
durchgeführt,
indem zusätzlich
eine Formsektion 8f verwendet wird. Eine bewertete zyklische Warteschlangensteuerung 8d,
die in der 10 gezeigt ist, führt die
Wahlsteuerung an einem Ausgangsklassenwähler 8e so durch,
daß die
EF-Klassenwarteschlange zuerst vor den AF-/BE-Klassenwarteschlangen
gelesen wird. Die RF- und BE-Klassenwarteschlangen werden im folgenden
beschrieben. Die Formsektion 8f hat eine Schaltungsstruktur, die
aus einem Token- Bucket-Modell
zusammengesetzt ist, welches ein Äquivalent der Überwachungseinheit
ist. Die Differenz zwischen der Formsektion und einer Überwachungssektion
besteht nur bezüglich
dessen, ob die Übertragung
des Paketes, welches eine Verkehrscoderegelübertretung hat, zurückgestellt
wird oder ob das Paket ausgesondert wird. Diesbezüglich und
wie im Fall der Überwachungssektion
und in Termen der Implementierung ausgedrückt, kann der Übertragungsprozeß mit hoher
Geschwindigkeit durchgeführt
werden, wenn die Paketübertragung
bestimmt wird, indem nur Bits verwendet werden, die den Token addiert
werden. Weiterhin kann die Schaltungsstruktur vereinfacht werden.
-
Die
Ablaufsteuerung der AF- und BE-Klassen wird durch das bewertete
zyklische Warteschlangenbetriebs-(WRR)-System durchgeführt.
-
(Zusätzliche Erläuterung des WRR)
-
Die
WRR-Ablaufsteuerung zeigt ein expandiertes zyklisches Warteschlangenbetriebsablaufsystem.
Gemäß einem
vorbestimmten Bewertungsverhältnis
ist der Service für
jede Klasse vorgesehen. In dem WRR-System hat jede Klasse einen
Zähler. Jeder
Zähler
zeigt die Anzahl der Zellen (oder Pakete, die feststehende Längen haben),
die zum Zeitpunkt, da der Zähler
rückgesetzt
wird, auf den Weg schickbar sind. Zum Rücksetzzeitpunkt ist der Wert des
Zählers
so gesetzt, daß er
der bewertete Wert jeder Klasse ist. Wenn der Zählerwert einer gewählten Klasse
gleich oder größer als "0" ist und der Puffer eine oder mehrere
Zellen enthält,
wird eine Zelle der Klasse ausgegeben, um den Zählerwert zu senken. Wenn die
Bewertungswerte aller Klassen "0" sind oder die Anzahl
der Zellen im Puffer "0" ist, werden alle
Bewertungszähler
rückgesetzt.
Wenn somit alle Klassen ausreichende Eingangsverkehre haben, entspricht
die Anzahl der Ausgangszellen einem Bewertungsverhältnis.
-
Jede
Klasse der AF-Klassen und BE-Klassen hat einen Bewertungszähler 8g und
einen Bewertungswert. Eine bewertete zyklische Warteschlangenbetriebssteuerung 8d bestimmt
die Objekte der AF/BE-Klassen, die zu lesen sind, basierend auf
den Bewertungswerten und den Daten der Warteschlangenlängen der
Klassenwarteschlagen 8c eines gemeinsamen Puffers, um den
Wähler
zu steuern. Die Warteschlangen der gewählten AF-Klasse und BE-Klasse
geben ihre Objekte in der Reihenfolge des FIFO aus.
-
(Aussonderungssteuerung)
-
Eine
Aussonderungssteuerungslogikeinheit 8b, die in der 10 gezeigt
ist, führt
die Aussonderungssteuerung basierend auf einer Logik, die in der 11 gezeigt
ist, durch. Die Warteschlagenlänge 8h jeder
Klasse wird auf der Basis der eingegebenen Objektdaten gesteuert.
Für jede
Klasse ist ein Aussonderungssteuerungsschwellwert 8k definiert.
Zusätzlich
ist der Schwellenwert des gesamten gemeinsamen Puffers 8c definiert.
Die Aussonderungssteuerungslogik 8b führt die Aussonderungssteuerung durch,
indem sie die Warteschlangenlänge
jeder Klasse mit den Schwellenwerten 8k jeder Klasse vergleicht
und eine übertragungsseitige
Schaltschnittstelleneinheit 1j von einem Objekt, das als
ein fallen zu lassendes Objekt ausgesondert werden soll, informiert.
Zusätzlich
zu der Aussonderungssteuerung, die durch den vorstehend beschriebenen,
auf der Klasseneinheit basierenden Vergleich durchgeführt wird,
wird eine weitere Aussonderungssteuerung durch Vergleichen der Gesamtwarteschlangenlängen der
gleichen Aussonderungsklasse mit deren Schwellenwerten in dem gemeinsamen
Gesamtspeicher 8c durchgeführt. In der 11 sind
drei Arten von Aussonderungsklassen und drei entsprechende Schwellenwerte
vorgesehen. Im einzelnen gibt es vier Aussonderungsbedingungen,
wobei (1) in allen Klassen keine Aussonderungssteuerung durchgeführt wird;
(2) die Aussonderungssteuerung nur bei der Klasse niedriger Priorität durchgeführt wird;
(3) die Aussonderungssteuerung sowohl bei einer Klasse mit niedriger
Priorität
als auch mit mittlerer Priorität durchgeführt wird;
und (4) die Aussonderungssteuerung über alle Klassen durchgeführt wird.
Wenn in der 11 der Wert einer Klassenwarteschlangenlänge gleich
oder größer als
der Wert des Schwellenwertes 3 wird, werden ungeachtet dessen, ob
ein leerer Bereich vorhanden ist oder nicht, alle Pakete ausgesondert.
-
Nicht
nur in der AF-Klasseneinheit, sondern auch in den gesamten gemeinsamen
Speichern sind Schwellenwerte bezüglich der Summe der Aussonderungsklassen ähnlich definiert,
um die Aussonderungssteuerung durchzuführen.
-
(Der für das WRR-System verwendete
Puffer)
-
14 zeigt
den Hauptteil des Puffers, der für
das WRR-System verwendet
wird. Bezüglich
der Klassenobjektwarteschlangen 8c sind Bewertungszähler 111 bis 1n1 vorgesehen,
die die vorhandenen Bewertungswerte steuern und vorläufige Bestimmungszähler 112 bis 1n2 vorgesehen,
die die Bewertungswerte steuern, nachdem die Bewertungszähler zurückgesetzt
worden sind. Wenn die Klassenbestimmung nicht sofort bei der ersten
Verarbeitung durch die bewertete zyklische Warteschlangenbetriebssteuerung
durchgeführt
werden kann, wird die ähnliche
Klassenbestimmungsverarbeitung mit dem Bewertungswert des vorläufigen Bestimmungsbewertungszählers durchgeführt, der
nach der Rücksetzung
des Bewertungszählers
erhalten worden ist. Aber wenn diese Verarbeitung die Klassenbestimmung
nicht machen kann, wird eine feststehenden Verzögerungsprioritätssteuerung
durchgeführt,
um die AF-Klassen zu wählen.
Die vorstehenden Klassenbestimmungsverarbeitungen werden parallel durchgeführt, wobei
eine Schleifenverarbeitung ausgeschlossen wird. Somit können die
Verarbeitungen mit hoher Geschwindigkeit durchgeführt werden.
-
(Fluß der Ablaufsteuerungsoperation)
-
Jede
der 12 und 13 zeigt
das Flußdiagramm
der vorstehenden Ablaufsteuerung. Als Verarbeitungspfade existieren
ein EF-Klassenbestimmungspfad und ein AF/BE-Klassenbestimmungspfad.
Die EF-Klasse hat gegenüber
den AF/BE-Klassen den absoluten Vorrang. Somit wird, wenn eine Übertragungsanfrage
für ein
EF-Klassenpaket besteht, das EF-Klassenpaket gewählt. Nur wenn keine Übertragungsanfrage
für ein
EF-Klassenpaket
besteht, wird eine vorbestimmte AF/BE-Klasse gewählt.
-
Bezüglich der
AF/BE-Klassenbestimmung führt
das bewertete zyklische Warteschlangenbetriebssystem erste und zweite
Bestimmungen durch und es wird eine feststehende Verzögerungsprioritätssteuerung
durchgeführt,
um als dritte Bestimmung aus den AF/BE-Klassen auszuwählen.
-
Wenn
die in den 12 und 13 gezeigten
Verarbeitungsflüsse
gelesen werden, müssen
die folgenden Punkte in Betracht gezogen werden. In jeder der 12 und 13 sind
Parameter gezeigt, die im folgenden beschrieben werden. In der EF-Klasse
zeigt der Parameter W[EF] eine anfängliche Bewertung (addierter
Tokenwert) der EF-Klasse an; der Parameter WH[EF] zeigt einen oberen
Grenztokenwert an; der Parameter WC[EF] zeigt einen Tokenwert (variabel)
der EF-Klasse an;
und der Parameter Add Time [EF] zeigt einen Tokenadditionszyklus
an, der beispielsweise durch eine mittlere unter Kontrakt stehende
Rate gesetzt ist. In den AF/BE-Klassen (AF1, 2, 3 und 4 und BE)
zeigt der Parameter W[i] einen anfänglichen Klassenbewertungswert
an; der Parameter WH[i] zeigt einen oberen Grenzwert eines Bewertungszählers an,
WC[i] zeigt einen Bewertungszählerwert
(variabel) an; der Parameter WC[i]r zeigt einen Bewertungszählerwert (variabel)
nach einer einzelnen Rücksetzung
des Bewertungszählers
an; der Parameter WC[i] r WC[i] + _ class ptr zeigt einen Zeiger
an, der eine übertragene/gesuchte
Klasse zeigt; der Parameter MPSZ (maximale Paketgröße), der
in den AF/BE-Klassen angewandt wird, zeigt eine maximale Paketlänge an,
die als eine Bewertungsreferenz für seltene Fälle verwendet wird; und Q[i] > 0 zeigt die Abwesenheit
oder Anwesenheit eines Objektes in einer Warteschlange an. Zusätzlich zeigt
eine parameter-fixierte Priorität (Q[i])
eine Situation an, in welcher eine Ausgangsanfrage in der feststehenden
Prioritätsreihenfolge
von AF1, AF1, AF2, AF3, AF4 und BE nur basierend auf dem Parameter
Q[i] > 0, ungeachtet
eines WC-Wertes übertragen
ist. Die Parameterlänge
zeigt die Länge
eines Paketes an und wird als ein allen Klassen gemeinsamer Parameter
verwendet.
-
Als
erstes wird der Prozeß der
EF-Klassenwahl im folgenden beschrieben.
-
(Zyklische Tokenaddition)
-
In
der 12 wird als eine Initialisierungsverarbeitung
im Schritt S0a ein Token WC[EF] initialisiert, so daß es "0" ist. Im Schritt S0b wird ein Tokenadditionszeitpunkt
erzeugt. Wenn er ein vorbestimmter Zeitpunkt ist (cnt = = Add_time
[EF]) wird ein Token addiert (Schritt S0c). Ein Anfangstoken W[EF] wird
dem gegenwärtigen
WC[EF] addiert. Als nächstes
wird der Tokenadditionszyklus beispielsweise durch eine mittlere
Rate, die unter Vertrag steht, gesetzt. Dann wird der Wert von WC[EF]
+ W[EF] mit dem oberen Tokengrenzwert (WH[EF]) verglichen. Wenn
der erstere Wert den letzteren Wert übersteigt, wird der letztere
Wert gesetzt.
-
(Erzeugung von EF-Klasse-Sendeanfragen)
-
Als
nächstes
wird, wie in der 13 gezeigt, wenn eine Objektleseanfrage
empfangen ist (Schritt S1a), die Warteschlangenlänge bestimmt (Schritt S1b),
und es wird die An wesenheit oder Abwesenheit eines Tokens bestimmt
(Schritt S1c).
-
Wenn
bei dem vorstehenden Bestimmungsprozeß die Warteschlange der EF-Klasse
ein oder mehrere Objekte hat und ein oder mehrere Token präsent sind,
wird eine Sendeanfrage (Send_req [EF] = ON) weg-gesteuert (Schritt
S1d). Als nächstes
werden, nachdem ein Paket übertragen
worden ist, Token, die eine Länge äquivalent
einer übertragenen Paketlänge ergeben,
reduziert (Schritt S1e). Bei der Wählverarbeitung der letzten
Stufe, wie dem Schritt S3, wird eine Sendeanfrage für die EF-Klasse
als die Klasse mit der höchsten
Priorität
akzeptiert.
-
Als
nächstes
wird die AF/BE-Klassenwählverarbeitung
erläutert.
-
(AF/BE-Klassenwahloperation)
-
Im
folgenden wird unter Bezugnahme auf die 12 und 13 die
AF/BE-Klassenwahlverarbeitung erläutert.
- (1)
Die Werte der beiden Klassenzeiger und Bewertungszähler werden
initialisiert (Schritte S0d und S0e).
- (2) Nachdem eine Objektleseanfrage empfangen ist, wird nur dann,
wenn das EF-Klassenobjekt nicht übertragen
werden kann, das heißt,
nur wenn die Ergebnisse der Bestimmungen, die in den Schritten S1b
und S1d erhalten worden sind, beide "Nein" sind,
die Wahl der AF/BE-Klasse durchgeführt. Im
Schritt S2b wird die Warteschlangenlänge bestimmt und im Schritt
S2c wird die Bewertungsgültigkeit
bestimmt.
- (3) Da eine Anzahl von AF/BE-Klassen vorgesehen sind, wird die
vorstehende Bestimmungsverarbeitung (2) bei allen Klassen durchgeführt (Schritt
S2e). Im Schritt S2g wird ein Klassenzeiger (ein Zeiger, der eine
gesuchte Klasse anzeigt) in Übereinstimmung
mit der Reihenfolge des zyklischen Warteschlangenbetriebes aktualisiert.
- (4) Wenn eine Klasse vorhanden ist, die mit den Sendebedingungen
korrespondiert: Warteschlangenlänge > 0 und Bewertungswert > 0, wird eine Sendeanfrage
der entsprechenden Klasse (Send_req [class] = ON) weggesteuert (Schritt S2d)
geroutet.
-
Die
vorstehenden ersten bis vierten Operationen sind äquivalent
der Klassenwahl durch die erste Routine.
- (5)
Bei der vorstehenden Ermittlungsverarbeitung (3) wird, wenn alle
der Klassen nicht mit den Sendebedingungen korrespondieren, ein
anfänglicher Bewertungswert,
der für
jede Klasse definiert ist, dem vorhandenen Bewertungswert in allen
der Klassen addiert. Dies ist eine Bewertungszählerrücksetzverarbeitung.
- (6) Wenn die Klassenwahl in der ersten Routine nicht durchgeführt werden
kann, das heißt,
wenn dort kein Sendeklassenkandidat ist, wird die Klassenwahl erneut
durch einen Bewertungswert durchgeführt, der nach einer einzelnen
Rückübertragung
des Bewertungszählers,
der bei der Verarbeitung (5) rückgesetzt
worden ist, erhalten worden ist. Wie in der 11 gezeigt,
gibt es ein Register (WC[class]), das einen vorhandenen Bewertungswert
steuert, und zusätzlich
ein Register (WC[class]r), das einen Bewertungswert nach der einzelnen
Rücksetzung
des Bewertungszählers steuert.
Wie im Fall der Verarbeitung (4) wird, wenn eine Klasse vorhanden
ist, die mit den Sendebedingungen korrespondiert: Warteschlangenlänge > 0 und Bewertungswert > 0, eine Sendeanfrage
der entsprechenden Klasse (Send_req [Class] = ON) ausgegeben.
-
Die
vorstehenden Operationen (5) und (6) sind äquivalent der Klassenwahl durch
die zweite Routine.
- (7) In der zweiten Routine
wird, wenn die Klassenwahl nicht durchgeführt werden kann, das heißt, wenn
kein Ausgangsklassenkandidat vorhanden ist, als einem außergewöhnlichen
Fall, eine feststehende Prioritätssteuerung
für die
Klassenwahl durchgeführt.
Der Zweck der Prioritätssteuerung ist
es, eine Situation zu vermeiden, bei der kein Paket weg-gesteuert
werden kann, obwohl in der Kapazität einer Leitung ein leerer
Raum ist. Eine auszugebende Klasse wird basierend auf einer vorbestimmten
feststehenden Priorität
gewählt. Beispielsweise
wird in dem in der 8 gezeigt Fall die Klassenwahl
in der Prioritätsreihenfolge AF1,
AF2, AF3, AF4 und BE durchgeführt.
Die Verarbeitung hängt
nicht von einem Bewertungswert ab. In diesem Fall wird ein Ausgangskandidat nur
durch die Bestimmung, ob ein Objekt in einer Warteschlange vorhanden
ist oder nicht, bestimmt. Bei dieser Verarbeitung treten niemals zwei
oder mehr Bewertungszählerrücksetzungen in
einer einzelnen Klassenwählverarbeitung
auf. Eine normale Bestimmung wird durch das bewertete zyklische
Warteschlangenbetriebssystem durchgeführt. Zusätzlich ist eine feststehende Verzögerungspriorität (die in
der 13 als ein feststehender Prioritätsmodus
bezeichnet wird) gegeben, um eine außergewöhnliche Bestimmung durchzuführen.
- (8) Eine Ausgangsklasse wird durch eine Sendeanfrage für die entsprechende
Klasse, die in den Operationen (4), (6) und (7) gewählt worden
ist, gewählt
(Schritt S2n).
-
In
der Operation des Schrittes S2n wird als ein Parameter die maximale
Paketgröße MPSZ
verwendet. Dies ist deshalb der Fall, weil es notwendig ist, eine
Situation zu vermeiden, in welcher, wenn ein Paket, das eine übermäßige Länge hat,
ankommt, daß der
Wert des Bewertungszählers
ein großer
negativer Wert wird. Beispielsweise ist die maximale Länge des
IP-Paketes 64 KB, was als Größe eines übertragenen
Paketes unüblich
sein kann. Statistisch wird angenommen, daß eine übliche Paketlänge maximal
wenige KB ist. Somit ist die Anordnung so getroffen, daß es möglich ist,
eine maximale Paketlänge zu
setzen, die als eine unübliche
Paketlänge
betrachtet wird. Bei dieser Anordnung wird, wenn ein sehr großes Paket
ankommt, die angekommene Paketlänge
mit der maximalen Paketlänge
verglichen. Wenn die angekommene Paketlänge größer als die maximale Paketlänge ist,
wird dies als ein außergewöhnlicher
Fall betrachtet. Als ein Ergebnis wird die Reduktionsverarbeitung
eines Bewertungszählers übersprungen
oder der Bewertungswert wird zwangsweise auf "0" gesetzt,
um eine gewisse Strafe aufzuerlegen.
-
Gemäß der vorstehenden
Ausführungsform wird
bei dem differenzierten Service, dessen Spezifizierungen noch im
Fluß sind,
die TCP-Schicht des OSI-Referenzmodells mit dessen IP-Schicht verglichen.
Aus den IP-Paketen sind die IP-QOS-Codes unabhängig von dem IP-Paket zugewiesen.
Vorzugsweise sind verschiedene Arten von Kommunikationsservicequalitäten basierend
auf den IP-QOS-Codes klassifiziert. Die Klassifikation der IP-QOS-Codes
erlaubt eine Verringerung der Verkehrsüberlastung in Kommunikationssystemen.
-
Gemäß der vorliegenden
Erfindung werden die folgenden Vorteile erzielt.
- (1)
Ein Operator kann einen priorisierten Verkehr durch Kombinieren
der Paketdaten der Schicht 3 und derjenigen der Schicht 4 einstellen
(die Flußeinheit
jeder höheren
Anwendung).
- (2) Unter Annahme einer vielseitigen Operation kann eine bewertete
zyklische Warteschlangenbetriebsablaufsteuerung (WRRS) mit einem
Festprioritätsablaufsteuerungs system
kombiniert werden. Jede QOS-Klasse kann durch die Festprioritätsablaufsteuerung
gewählt
werden und es kann auch ein Mindestfrequenzband zugewiesen werden.