-
Technisches Gebiet
-
Die
Erfindung betrifft ein Verfahren und eine Vorrichtung zum Steuern
des Datenverkehrs in einem ATM-Netzwerk, bei welchem eine Mehrzahl
von Knoten über
eine Ringleitung verbunden sind und an jedem Knoten eine Mehrzahl
von Access Ports für das
Senden und Empfangen von ATM-Zellen vorhanden sein können.
-
Stand der Technik
-
In
einem Netzwerk mit paketorientierter Datenübertragung zwischen mehreren
Knoten ist das Traffic-Management von zentraler Bedeutung. Bei einem
ATM-System (ATM = Asynchronous Transfer Mode) mit Ringstruktur ergibt
sich das Bedürfnis nach
einer Steuerung des Datenverkehrs daraus, dass die Summe der Bandbreite
aller Systemanschlüsse
(access Ports) in aller Regel grösser
ist als die Bandbreite der Ringleitung.
-
Aus
der
US-5.475.682 A ist
z.B. ein ATM-Netzwerk bekannt, bei welchem die in einem Knoten eintreffenden
ATM-Zellen entsprechend ihrer Destination auf verschiedene Output-Warteschlangen
aufgeteilt und dann weitergeschickt werden. Die Knoten können eine Überlastungssituation
mit sogenannten Backpressure-Signalen an die stromaufwärts liegenden
Knoten signalisieren. Im stromaufwärts liegenden Knoten werden
die für
den signalisierenden Knoten bestimmten Datenpakete in einem Buffer
zwischengespeichert. Ist der Buffer voll, werden die Datenpakete
trotzdem an den stromabwärts liegenden
Knoten übertragen.
Dort werden im Fall einer Überlastung
Pakete des längsten
Bursts aus dem Speicher geschoben und gehen verloren. Mit diesem Verfahren
soll verhindert werden, dass ein Knoten alle vorangehenden blockieren
kann.
-
Aus
der
US-5.339.317 A ist
ein Verfahren zum Steuern des Datenverkehrs in einem ATM-Netzwerk
bekannt, bei welchem eine Mehrzahl von Knoten über eine Ringleitung verbunden
sind und an jedem Knoten eine Mehrzahl von Accessports für das Senden
und Empfangen von ATM-Zellen vorhanden sein können. In jedem Knoten werden
die ATM-Zellen nach einer vorgegebenen QoS-Klassifikation getrennt
behandelt, wobei für
jede Klasse der QoS-Klassifikation eine eigene Warteschlange vorgesehen
wird und mit einem Zellenmonitor der Datenverkehr auf der Ringleitung,
nach QoS-Klassen aufgeschlüsselt, überwacht
wird.
-
Da
die Daten meist unregelmäßig anfallen. kann
es wichtig sein, die Länge
des Bursts zu bestimmen und statistisch zu kontrollieren. Zur Durchführung dieser
Kontrolle sind verschiedene Leaky-Bucket-Systeme bekannt (vgl. z.
B.
US-5.448.567 ,
US-5.295.135 ,
US-5.339.332 ,
US-5.418.777 ).
-
Aus
ATM-Forum (Hrsg.): Traffic Management Specification, Version 4.0,
af-tm-0056.000, April
1996 ist dem Fachmann bekannt, zur Steuerung der Rate der innerhalb
eines ATM-Netzwerk von einer Quelle zu einem Ziel übertragenen
Zellen sogenannte Resource-Management-Zellen zu verwenden.
-
Ein
wichtiger Vorteil von ATM-Systemen besteht bekanntlich darin, dass
unterschiedlichste Dienstleistungen mit ein und demselben Netzwerk erbracht
werden können.
Das Problem liegt nun darin, das Traffic-Management so zu konzipieren,
dass die unterschiedlichen Spezifikationen (maximale zulässige Verzögerung,
Zellenverlustrate, Bandbreite etc.) auch eingehalten bzw. erfüllt werden.
Insbesondere gilt es zu vermei den, dass ein Dienst mit niedriger
Priorität
einen solchen mit höherer
stören
oder sogar blockieren kann.
-
Darstellung der Erfindung
-
Aufgabe
der Erfindung ist es, ein Verfahren sowie eine Vorrichtung der eingangs
genannten Art anzugeben, das bzw. die einen paketorientierten Datenverkehr
mit unterschiedlich definierten Übertragungsdiensten
unterstützt.
-
Die
Lösung
der Aufgabe ist durch die Merkmale des Anspruchs 1 definiert. Gemäss der Erfindung
werden die ATM-Zellen in jedem Knoten nach ihrer Zugehörigkeit
zu einer QoS-Klasse einer vordefinierten QoS-Klassifikation separat
behandelt. Pro Access Port ist für
jede QoS-Klasse eine eigene Warteschlage vorgesehen. Mit einem Zellenmonitor
wird der Datenverkehr auf der Ringleitung in jedem Knoten nach QoS-Klassen
getrennt überwacht.
Wird ein Leistungsmerkmal einer QoS-Klasse auf der Ringleitung nicht erfüllt, dann
werden in jedem Knoten Backpressure-Signale für einzelne oder mehrere Warteschlangen
des Knotens erzeugt, welches zum Drosseln mindestens einer zugeordneten
Warteschlange der Access Ports dient.
-
Die
Aufgabe wird auch mit einer Schaltungsanordnung mit den Merkmalen
des Anspruchs 9 gelöst.
-
Anders
als beim Stand der Technik werden die ATM-Zellen nicht alle gleich
behandelt. Vielmehr wird aufgrund der unterschiedlichen Spezifikationen der
Dienste im Netzwerk eine Klassifikation durchgeführt. Es soll also in jedem
Knoten die Klassifikation der ATM-Zellen festgestellt werden. Einerseits
werden die zu übertragenden
ATM-Zellen im voraus entsprechend ihrer Klassenzugehörigkeit
in die entsprechende Warteschlange gegeben. Andererseits werden
die durchlaufenden Zellen (Transit-Verkehr) detektiert und statistisch
registriert.
-
Ein
wichtiges Merkmal der Erfindung ist die Erzeugung von Backpressure-Signalen,
die auf einzelne spezifische Warteschlangen gerichtet sind. Damit
wird eine undifferenzierte Drosselung des Insert-Datenverkehrs verhindert.
Ein Vorteil der Erfindung besteht schliesslich auch darin, dass
der Transit-Verkehr mit hoher Geschwindigkeit und minimalem schaltungstechnischem
Aufwand verarbeitet werden kann. Damit wird insbesondere die Verwendung
von optischen oder optoelektronischen Schaltungselementen ermöglicht.
-
Vorzugsweise
wird auch der Insert-Datenverkehr nach QoS-Klassen getrennt überwacht.
Auf diese Weise lassen sich die Bedürfnisse der verschiedenen Knoten
erfassen, so dass das System gezielt so konfiguriert bzw. adaptiert
werden kann, dass gewisse Bandbreiten reserviert werden können.
-
Zum
Bestimmen und Steuern des Datenverkehrs kann ein Leaky-Bucket-Verfahren
eingesetzt werden. Bei einem solchen sind zwar gewisse obere bzw.
untere Grenzen vorgegeben, diese können jedoch vorübergehend
um ein bestimmtes Mass über- bzw.
unterschritten werden.
-
Die
Backpressure-Signale können
tel quel (so wie sie sind) zur Drosselung der entsprechenden Warteschlagen
benutzt werden. D.h. dass eine bestimmte Warteschlange nicht mehr
bedient wird, wenn für
sie ein Backpressure-Signal vorliegt. Hochwertigen QoS-Klassen kann
so eine absolute bzw. strikte Priorität über diejenigen mit geringerem
Wert zukommen.
-
Es
sind aber auch feiner abgestufte Warteschlangen-Bedienungsschemata
möglich.
Werden z.B. aufgrund einer bestimmten Überlastungssituation gleich
mehrere Backpressure-Signale erzeugt und werden die entsprechenden
Warteschlangen überhaupt
nicht mehr bedient, dann kann eine sogenannte „Aushungerung" entstehen. Um dies
zu vermeiden, können
die Backpressure-Signale
z.B. mit einem Arbiter so verarbeitet werden, dass die Warteschlangen
mit niedriger Priorität
trotzdem von Zeit zu Zeit bedient werden.
-
Um
den Datenverkehr und die zur Verfügung stehende Bandbreite überwachen
zu können,
ist z.B. eine Zentrale (oder ganz allgemein ein Resource-Manager)
am Netzwerk angeschlossen. Die lokal erfassten Daten über den
Datenverkehr und den Insert-Datenstrom werden vorzugsweise periodisch oder
sporadisch an diese Zentrale weitergeleitet, welche dann für jeden
Knoten geeignete Parameter (z.B. Leaky-Bucket- Parameterwerte) errechnet und dadurch
eine Optimierung der Übertragungsleistung des
Gesamtsystems für
die verschiedenen QoS-Klassen ermöglicht. Es ist zu betonen,
dass die Zentrale im echtzeitmässigen
Traffic-Management nicht involviert ist. Sie dient allein dazu,
die optimalen Systemparameter (mit Hilfe von Langzeitstatistiken) zu
finden und die Zuteilung der Bandbreite zu überwachen. Die Funktionalität der Zentrale
braucht nicht in einen physikalisch eigenständigen Server verwirklicht
zu sein. Es kann auch in einzelnen oder allen Knoten eine entsprechende
Netzwerk-Funktion implementiert sein.
-
Gemäss einer
bevorzugten Ausführungsform
werden zumindest die Bandbreite und die Burstlänge ausgangsseitig des Knotens
für jede QoS-Klasse
separat gemessen und überwacht. Selbstverständlich können auch
noch weitere relevante Parameter bestimmt werden.
-
Um
die ATM-Zellen möglichst
schnell und effizient bearbeiten zu können, werden sie beim Eintritt in
das Netzwerk (d. h. beim Access-Port) mit einer klassenspezifischen
Markierung (Identifier) versehen bzw. ergänzt. Vor dem Verlassen des Übertragungssystems
wird die Markierung wieder entfernt, so dass der Benutzer (User)
von dieser Massnahme nichts merkt.
-
Die
schaltungstechnische Umsetzung des Verfahrens kann mit an sich bekannten
Elementen erfolgen. Die Ringleitung ist vorzugsweise ein Lichtleiter
(Glasfaserkabel). Die Demultiplexer und Multiplexer (eingangs- und
ausgangsseitig des Knotens) sind als elektronische Schaltungen implementiert.
Allerdings steht einer Skalierung der Übertragungsgeschwindigkeit
nach oben mit Hilfe von optischen Multiplexern/Demultiplexern nichts
entgegen.
-
Aus
der nachfolgenden Detailbeschreibung und der Gesamtheit der Patentansprüche ergeben sich
weitere vorteilhafte Ausführungsformen
und Merkmalskombinationen der Erfindung.
-
Kurze Beschreibung der Zeichnungen
-
Die
zur Erläuterung
des Ausführungsbeispiels
verwendeten Zeichnungen zeigen:
-
1 Eine
schematische Darstellung eines Netzwerkes;
-
2 ein
Blockschaltbild zur Erläuterung
der erfindungsgemässen
Funktionen.
-
Grundsätzlich sind
in den Figuren gleiche Teile mit gleichen Bezugszeichen versehen.
-
Wege zur Ausführung der
Erfindung
-
Das
vorliegende Ausführungsbeispiel
geht von einer Netzwerkstruktur aus, wie sie in 1 gezeigt
ist. Eine Mehrzahl von Knoten 2,..., 6 ist durch eine
Ringleitung 1 (z. B. ein faseroptisches Kabel) verbunden.
An jedem Knoten 2,..., 6 können nach Bedarf User 7.1,..., 7.10 über Access
Ports angeschlossen werden. Jeder User 7.1,..., 7.10 kann
an irgendeinen anderen Daten übertragen.
Es kann sich dabei um (digitalisierte) Sprachsignale, Videosignale, Steuerbefehle
für Maschinen
oder Produktionsanlagen oder um Datenfiles handeln. Die Richtung
des Datenflusses in der Ringleitung 1 kann Z. B. fest vorgegeben
sein (z. B. entsprechend dem Uhrzeigersinn).
-
Gemäss einer
bevorzugten Ausführungsform
ist zur Optimierung des Traffic-Managements eine Zentrale 8 (Server)
vorgesehen. Diese kann an irgendeinem Knoten 5 angeschlossen
sein. Sie erhält von
den Knoten 2,..., 6 Informationen über den
Datenverkehr (z.B. bei Beginn eines Verbindungsaufbaus) und erstellt
eine Systemkonfiguration aufgrund der erhaltenen Langzeitstatistik.
Sie gibt den Knoten 2,..., 6 die Parameterwerte über die
für die
verschiedenen QoS-Klassen zu reservierenden Bandbreiten und/oder
die zu erwartenden Burstlängen
vor.
-
2 zeigt
ausschnittsweise ein Blockschaltbild des Knotens 6. Am
Eingang 9 ist die Ringleitung 1 auf einen Demultiplexer 11 geführt, welcher diejenigen
ATM-Zellen ex trahiert (Extract-Leitung 14), die an einen
User des vorliegenden Knotens 6 gerichtet sind. Alle anderen
ATM-Zellen werden über eine
Transit-Leitung 13 direkt an den Multiplexer 12 weitergegeben.
Dieser kombiniert den Insert-Datenstrom (Insert-Leitung 15)
mit dem durchlaufenden und schickt ihn über den Ausgang 10 zum
nächsten Knoten.
-
Die
Extraktion der ATM-Zellen ist im vorliegenden Zusammenhang nicht
von Interesse. Entsprechend ist die Extract-Leitung 14 nur
andeutungsweise eingezeichnet und es fehlen die Zwischenspeicher
bzw. Warteschlangen. Von Bedeutung ist dagegen die Kontrolle und
Steuerung des Insert-Datenstroms. Dieser enthält ATM-Zellen, die sich hinsichtlich
des zu erfüllenden
Standards der Übertragung unterscheiden
können.
Im folgenden sollen beispielhaft ein paar QoS-Klassen (QoS = Quality
of Service) charakterisiert werden.
-
CBR-Kategorie:
Für gewisse
Anwendungen ist es z. B. wichtig, dass während des Bestehens der Kommunikationsverbindung
ständig
eine ganz bestimmte Bandbreite zur Verfügung steht. Die Grösse der
Bandbreite kann durch einen bestimmten PCR-Wert (PCR = Peak Cell
Rate) charakterisiert werden. Um einen solchen Dienst anbieten zu
können,
muss das Netzwerk eine entsprechende Bandbreite während der
Dauer der Verbindung freihalten bzw. reservieren. Weitere CBR-Parameter
sind z.B. die Zellenverzögerungszeit
CD (Cell Delay) und die Variation der Zellenverzögerungszeit CDV (CDV = Cell
Delay Variation).
-
rt-VBR-Kategorie:
Weiter lässt
sich z.B. eine Kategorie für
Echtzeit-Anwendungen mit variabler Bitrate definieren. Bei dieser
wird eine enge Toleranz für
die maximale Verzögerungszeit
(CDV) bei der Übertragung
der Zellen verlangt. Zusätzlich
werden z. B. eine maximale Burstlänge (MBS = Maximum Burst Size)
und ein PCR-Wert definiert.
-
UBR-Kategorie:
Für den
File-Transfer und ähnliche
Kommunikation ist es nicht nötig,
einen hohen Standard für
die Übertragungsqualität zu verlangen,
da weder Verzögerungen
noch Datenverluste zu einem nichtbehebbaren Fehler führen.
-
Weitere
Einzelheiten können
dem Dokument ATM FORUM Traffic Management Specification 4.0, AF-95-0013,
R13, April 96 entnommen werden.
-
Gemäss der Erfindung
wird innerhalb des Netzwerkes die Verarbeitung der ATM-Zellen entsprechend
ihrer Zugehörigkeit
zu einer der verfügbaren
QoS-Klassen aufgeteilt. Dies soll in folgenden anhand der 2 näher erläutert werden.
-
Im
Knoten 6 sind z. B. drei Access Ports 22.1 bis 22.3 vorhanden,
welche alle gleich ausgebildet sind. Im folgenden werden die wesentlichen
Funktionen und Bestandteile anhand des Access Ports 22.2 beschrieben.
Dieser verfügt über einen
Dateneingang 16 und einen Datenausgang 17 für die ATM-Zellen.
Die zu übertragenden
ATM-Zellen werden zunächst
mit einem Mapper 18 identifiziert. Dieser bestimmt, welcher
QoS-Klasse eine
Zelle angehört,
und führt
sie der entsprechenden Warteschlange 19.1 bis 19.4 zu.
ATM-Zellen mit hoher Übertragungspriorität werden
also von solchen mit niedriger Übertragungspriorität separiert.
Die Länge
der Warteschlangen 9.1 bis 19.4 ist auf die maximale
(oder durchschnittliche) Burstlänge
des entsprechenden Übertragungsdienstes
abgestimmt.
-
Ausgangsseitig
werden die Warteschlangen 19.1 bis 19.4 von einen
Arbiter 20 bedient. D. h. dieser bestimmt, welche der Warteschlangen 19.1 bis 19.4 über die
Insert-Leitung 15 und den Multiplexer 12 in die
Ringleitung 1 entleert wird. Sofern auf der Ringleitung 1 genügend Übertragungskapazität vorhanden
ist, bietet das Einfügen
der Daten in den Transit- Datenstrom kein Problem. Ist dagegen der Transit-Datenstrom
vorübergehend
zu gross, als dass die momentan anstehende Insert-Datenmenge vollständig verarbeitet
werden könnte,
muss in den Datenverkehr steuernd eingegriffen werden. Dies läuft gemäss der Erfindung
im einzelnen wie folgt ab.
-
Zunächst gilt
es, den Datenverkehr zu überwachen.
Zu diesem Zweck ist ausgangsseitig des Multiplexers 12 und
an der Insert-Leitung 15 je ein Datenmonitor 23 respektive 24 vorgesehen.
Diese registrieren die QoS-Klasse der durchlaufenden ATM-Zellen
und ermitteln die aktuell genutzte Bandbreite, die Burstlänge der
Datenübertragung
und erforderlichenfalls weitere Parameter. Um eine ATM-Zelle einer
QoS-Klasse zu ordnen zu können, kann
ein Mapper vorgesehen sein, welcher aufgrund der im Kopf der Zelle
enthaltenen Informationen und einer Zuordnungstabelle die Klassenzugehörigkeit bestimmt.
Es ist aber auch möglich,
systemintern eine spezielle Markierung im Kopf der Zelle anzubringen
(z. B. beim Durchlauf durch den Mapper 18), so dass die
klassenmässige
Identifikation der ATM-Zellen in den Datenmonitoren 23, 24 vereinfacht
und beschleunigt wird.
-
Ein
Backpressure-Generator 25 wertet die von den Datenmonitoren 23, 24 gelieferten
Daten aus, um über
die Backpressure-Leitungen 21 gezielt den Daten-Insert
bremsen zu können.
Bei der Auswertung geht es darum festzustellen, in welcher QoS-Klasse
die vordefinierten Werte (Konfigurationswerte) überschritten werden und welche
Warteschlangen deshalb zu bremsen sind.
-
Zur
Messung bzw. Überwachung
des Datenverkehrs kann pro QoS-Klasse ein Leaky-Bucket-System vorgesehen sein. Ein solches
umfasst im Prinzip einen Zähler,
der einerseits mit jeder registrierten ATM-Zelle inkrementiert und
andererseits jeweils nach Ablauf eines bestimmten Zeitintervalls
um einen bestimmten Wert zurückgesetzt
wird. Aus dem eingangs zitierten Stand der Technik sind diverse Leaky-Bucket-Verfahren
bekannt. Es erübrigt
sich daher, an dieser Stelle weiter in die Einzelheiten zu gehen.
-
Es
ist zu beachten, dass im Rahmen der Erfindung für jede Warteschlange 19.1,..., 19.4 ein
eigenes Backpressure-Signal erzeugt wird. Das Backpressure-Signal
für die
Warteschlange 19.1 beispielsweise steuert aber nicht nur
die genannte Warteschlange des Access Ports 22.2, sondern
alle gleichwertigen Warteschlangen aller Access Ports 22.1,..., 22.3.
-
In
jedem Access Port 22.1,..., 22.3 ist ein Arbiter 20 vorgesehen,
welcher die Warteschlangen 19.1,..., 19.4 entsprechend
einem vorgegebenen Schema und in Abhängigkeit der an den Backpressure-Leitungen 21 anliegenden
Signale bedient.
-
Im
einfachsten Fall wird die Bedienung derjenigen Warteschlange gestoppt,
für welche
ein Backpressure-Signal vorliegt. Wird beispielsweise mit dem Datenmonitor 23 fest gestellt,
dass die im Umlauf befindlichen ATM-Zellen der UBR-Kategorie die
konfigurationsmässig
vorgegebene bzw. zulässige Bandbreite
ausfüllen
oder sogar überschreiten,
dann wird ein Backpressure-Signal für die entsprechende Warteschlange
erzeugt, so dass ATM-Zellen dieser Kategorie vorübergehend nicht in den Insert-Datenstrom
gelangen können.
-
Weiter
ist es möglich,
alle Warteschlangen zu stoppen, deren QoS-Klasse eine niedrigere
Priorität
geniesst als diejenige, deren Qualitätsmerkmale Gefahr laufen, verletzt
zu werden. Überschreiten
beispielsweise die ATM-Zellen der obersten Kategorie (CBR) die vorgegebenen
Grenzwerte, dann können z.
B. alle anderen Kategorien vorübergehend
gebremst werden.
-
Der
Arbiter 20 braucht nicht streng prioritär organisiert zu sein. D. h.
selbst wenn er ein Backpressure-Signal für die Warteschlange 19.3 erhält, muss
er diese nicht zwingend stoppen. Denkbar ist z. B., dass er die
fragliche Warteschlange 19.3 viel seltener (z. B. zehnmal
seltener) bedient als im Normalfall. Es ist auch möglich, einen
sogenannten Bedienungszeiger zu definieren, der immer dann aktiviert wird,
wenn gleichzeitig mehrere Backpressure-Signale vorliegen, und der
auf irgendeine der zu drosselnden Warteschlangen gerichtet wird.
Die auf diese Weise identifizierte Warteschlange wird in reduziertem
Ausmass bedient, die übrigen
Warteschlangen mit Backpressure-Signalen dagegen gar nicht. Von Zeit
zu Zeit wird der Bedienungszeiger auf eine der vollständig gestoppten
Warteschlangen gerichtet. Infolgedessen wird die eine Warteschlange
gar nicht mehr bedient, dafür
die andere ein wenig. Auf diese Weise können die gedrosselten Warteschlangen
sukzessive und erforderlichenfalls zyklisch durchgearbeitet werden.
Eine vollständige
Blockierung eines bestimmten Dienstes aufgrund einer Netzwerkbelastung
durch höhergeordnete
kann auf diese Weise verhindert werden.
-
Mit
der optional vorgesehenen Zentrale 8 kann die Systemkonfiguration
an die sich im Lauf der Zeit ändernden
Bedürfnisse
angepasst werden. Indem die Knoten 2,..., 6 statistische
Informationen über
den lokalen Datenverkehr sammeln und diese an die Zentrale 8 übertragen,
können
dort z. B. die Bandbreiten neu konfiguriert bzw. verteilt werden. Die
Zentrale gibt den Knoten 2,..., 6 die neue Systemkonfiguration
z. B. alle paar Sekunden vor.
-
Zusammenfassend
ist festzustellen, dass es mit dem erfindungsgemässen Traffic-Management möglich wird,
eine Vielzahl von unterschiedlichen Übertragungsdiensten so zu erbringen,
dass auch bei erhöhter
Belastung des Netzwerkes die Dienste niedrigerer Priorität diejenigen
höherer
nicht blockieren können.
Ein wichtiger Vorteil der Erfindung besteht darin, dass kein zentrales
Zugriffsprotokoll (media access protocol) erforderlich ist. Die Übertragungsgeschwindigkeit
im Ring lässt
sich dadurch leichter in den Bereich von mehreren Gbit/s hochskalieren.