-
Gebiet der
Erfindung
-
Die
Erfindung bezieht sich allgemein auf die Konditionierung oder Aufbereitung
von Verkehr an einem Knoten eines Datennetzwerkes. Insbesondere
ist sie auf eine Technik gerichtet, mit der der Verkehr dynamisch an
einem Knoten klassifiziert und entsprechend der Dienstgüte (QOS)
netzabwärts
geliefert wird, die durch die zugeordnete Klasse oder durch einen
solchen Netzwerkverwalter, wie den Netzwerkbetreiber bestimmt ist.
-
Hintergrund
der Erfindung
-
Multimedia-Netzwerke
erfordern es, dass einem Datenstrom eine bestimmte QOS für eine Netzwerkverbindung
gegeben wird. Das in letzterer Zeit vorgeschlagene Ressourcen-Reservierungsprotokoll
(RSVP) für
das IP (und die Signalisierung in ATM-Netzwerken) stellt eine Möglichkeit
der Anforderung einer bestimmten QOS dar, doch ist eine vorhergehende
Aushandlung dieser Art dem derzeitigen Datenvernetzungsmodell fremd
und würde Änderungen
auf der Anwendungsebene erfordern.
-
Die
hauptsächliche
treibende Kraft hinter der Forderung nach unterschiedlichen Dienstgüten in dem Datennetzwerk
ist die Notwendigkeit, Echtzeit-Datenströme einzuführen, die deutliche Grenzen
hinsichtlich der Toleranz gegenüber
Verzögerungen
und Änderungen
dieser Verzögerungen
aufweisen. Interaktive Sprache- und Video-Anwendungen fordern, dass
die Gesamtverzögerung
den Schwellenwert nicht überschreitet, jenseits
dessen die Wechselwirkung mit einem Menschen in uneinnehmbarer Weise
beeinträchtigt
wird. Nicht-interaktive Sprach- und
Video-Datenströme,
die in Echtzeit übertragen
werden, erfordern es, dass die maximale Verzögerungsänderung begrenzt wird, so dass
Puffer auf einer annehmbaren Größe gehalten
werden können
und garantiert wird, dass diese keinen Unterlauf erfahren. Die Erfüllung der
Verzögerungsanforderungen
für Echtzeit-Datenströme bedeutet üblicherweise,
dass diesen Datenströmen
eine Priorität
gegenüber
anderem Verkehr gegeben werden muss. Dies führt andererseits zu einer Forderung
zur Begrenzung des Umfanges eines derartigen eine hohe Priorität aufweisenden
Verkehrs durch irgendeine Zugangs-Kontrollrichtlinie, um sicherzustellen,
dass andere Verkehrsklassen einen Teil der verfügbaren Bandbreite erhalten.
-
Es
gibt andere Anwendungen als Sprache und Video, für die eine kontrollierte Latenz
vorteilhaft ist. Netzwerk-Steuerverkehr, wie z. B. DNS-Transaktionen
stellen einen kleinen Bruchteil des Gesamtverkehrs dar, ergeben
jedoch ein wesentlich verbessertes Betriebsverhalten, wenn sie mit
Priorität
behandelt werden.
-
Es
gibt eine andere Klasse von Verkehr, die nicht die scharfen Anforderungen
wie Sprache oder Video hat, jedoch die Wechselwirkung eines Menschen
mit Computern erfordert und zu beträchtlichen Verringerungen der
Produktivität
(oder zu einer Vergrößerung der
Frustration) führen
kann, wenn sie langen Verzögerungen
ausgesetzt sind. Diese Verkehrsart wird durch Anwendungen, wie z.
B. X-Windows, Telnet und heute immer häufiger durch das Browsen im
weltweiten Datennetz erzeugt. Dieser Verkehr kann gegenüber langen Warteschlangen-Verzögerungen,
die durch Massendaten-Übertragungen,
wie z. B. FTP oder NFS hervorgerufen werden, dadurch geschützt werden,
dass ihm ein gewisser garantierter Teil der Bandbreite als Teil
einer Ausgangs-Ablaufsteuerungs-Richtlinie
zugeteilt wird.
-
Selbst
der Massendaten-Verkehr kann unter einem zu großen Wettbewerb leiden. In vielen
Fällen
wird eine Dateiübertragung
abgebrochen, nachdem eine Menge an Netzwerkressourcen verbraucht
wurde, weil die Gesamtzeit die Verzögerungstoleranz der Anwendung
oder des Benutzers oder Verwaltungsrichtlinien in den zwischengeschalteten
Servern überschritten
wurde. Auch wenn die Überlastung
das Verwerfen von Datenpaketen hervorruft, kann dies viele Datenströme sehr
leicht beeinflussen und kann eine erneute Aussendung hervorrufen.
Dadurch, dass einer bestimmten Anzahl von Datenströmen eine
minimale Bandbreite garantiert wird, und der Rest nach bestem Bemühen behandelt
wird, ist es möglich,
Paketverluste über
so viele Datenströme aufzuteilen
um die Anzahl von abgebrochenen Strömen zu verringern.
-
Es
würde wesentlich
annehmbarer sein, wenn die QOS-Anforderungen durch das Netzwerk
automatisch und dynamisch ohne die Notwendigkeit einer Signalisierung erfüllt würden. Dies
würde in
einer natürlicheren
Weise mit dem derzeitigen IP-Netzwerk-Paradigma
zusammenpassen.
-
Traditionell
sind Internet-Dienste (wie z. B. FTP, Telnet, NFS) lediglich den
Endsystemen und nicht dem Netzwerk selbst bekannt. Die vorliegende
Erfindung ermöglicht
es dem Netzwerk, die Art des Dienstes für jeden Verkehrs-Datenstrom
zu ermitteln, ihn dynamisch zu klassifizieren und eine Verkehrsaufbereitung
oder Konditionierung mit Hilfe derartiger Techniken, wie z. B. Zugangskontrolle
und Ablaufsteuerung auszuüben, wenn
der Verkehr netzabwärts
zugestellt wird, um den Dienst in geeigneter Weise zu unterstützen. Die
Ablaufsteuerung trennt den Echtzeitverkehr von anderem Verkehr durch
die Priorität
und teilt Bandbreite zwischen verschiedenen Verkehrsklassen zu.
In Verbindung mit der Ablaufsteuerung garantiert die Zugangssteuerung oder
Zugangskontrolle die Betriebsleistung. Die Ablaufsteuerung ermöglicht weiterhin
die Realisierung von überlagerten
Verwaltungsrichtlinien, um beispielsweise bestimmten Gruppen eine
andere Behandlung als anderen Gruppen zu geben. Die Klassifizierung
muss nicht präzise
die Wirkung von vorher ausgehandelten Netzwerkverbindungen emulieren,
sondern sollte ähnliche
Verbesserungen hinsichtlich der Dienstgüte ergeben, wie sie von den
Benutzern und dem Netzwerk gesehen wird.
-
In
einem IP-über-ATM-Netzwerkmodell,
wie es von Newman P. et al. in „Flow labeled IP: A connectionless
approach to ATM" Proceedings
IEEE Infocom '96,
Band 3 (1996), Seiten 1251–1260
beschrieben ist, wird die IP-Weiterleitungs-Entscheidung in der ATM-Hardware gepuffert,
um festzustellen, ob Pakete, die zu dem gleichen Datenstrom gehören, direkt
in der ATM-Hardware vermittelt werden oder weiter Sprungabschnitt für Sprungabschnitt
durch die Router-Software weitergeleitet werden sollten.
-
In
der EP-0 658 999, die am 21. Juni 1995 veröffentlicht wurde, ist ein Verkehrssteuermechanismus für ATM-Netzwerke
beschrieben. Der Mechanismus verwendet eine zellenbasierte Zugangskontrollen-Richtlinie
auf der Grundlage von integrierten Nutzungsparametern. Die integrierten
Nutzungsparameter schließen Verkehrsparameter,
beispielsweise Spitzenrate, Dauerbelastung, Burstgrößenrate
usw. ein. Ein QOS-Parameter ist ebenfalls enthalten.
-
Es
sei selbstverständlich
bemerkt, dass in dieser Beschreibung das Datennetzwerk auch irgendwelche
paketbasierten oder zellenbasierten Netzwerke unter Einschluss von
ATM-Netzwerken einschließen
kann.
-
Ziele der
Erfindung
-
Es
ist daher ein Ziel der Erfindung, ein Verfahren zur dynamischen
Konditionierung oder Aufbereitung von Verkehr an einem Knoten eines
Datennetzwerkes zu schaffen.
-
Es
ist ein weiteres Ziel der Erfindung, ein Verfahren zur kontinuierlichen Überwachung
und dynamischen Klassifizierung von Verkehr in eine einer Vielzahl
von vorher festhelegten Klassen entsprechend einem Satz von Klassifizierungsparametern
zu schaffen.
-
Es
ist ein weiteres Ziel der Erfindung, ein Verfahren zur Steuerung
der Zustellung des Verkehrs netzabwärts entsprechend der Dienstgüteparameter
zu schaffen, die durch die dynamisch ausgewählte Klasse festgelegt sind.
-
Zusammenfassung
der Erfindung
-
Gemäß der Erfindung
wird ein Verfahren zur dynamischen Konditionierung oder Aufbereitung
eines Verkehrs-Datenstromes in einem Paketdatennetzwerk für Multimedia-Verkehr
geschaffen, das eine oder mehrere Knoten aufweist, wobei das Verfahren
die folgenden Schritte umfasst:
kontinuierliches Überwachen
des Verkehrs-Datenstromes hinsichtlich seiner Datenstrom-Charakteristiken
an einem Knoten des Netzwerkes;
Klassifizieren des Verkehrs-Datenstromes
an dem Knoten in eine einer Vielzahl von Klassen entsprechend voreingestellter
Kriterien der Datenstrom-Charakteristiken,
wobei die voreingestellten Kriterien Protokollarten des Verkehrs-Datenstromes umfassen,
die das Übertragungs-Steuerprotokoll
(TCP) und das Benutzer-Datagramm-Protokoll (UDP) einschließen, wobei
die Vielzahl von Klassen jeweilige Grade der Dienstgüte bestimmt,
mit der der Verkehrs-Datenstrom zu konditionieren ist, wobei: die
Vielzahl von Klassen zwei Vorgabeklassen, TCP interaktiv und UDP
mit niedriger Latenz, umfasst; wobei die interaktive TCP- Vorgabeklasse zwei Teilklassen
umfasst, garantierte TCP-Massendaten-Übertragung
und Massendaten-TCP-Übertragung
mit bestem Bemühen;
und wobei die UDP-Vorgabeklasse mit niedriger Latenz zwei Teilklassen
umfasst, nämlich UDP-Echtzeit
und UDP-Massendaten-Übertragung
mit bestem Bemühen;
und Zustellen des Verkehrs-Datenstromes netzabwärts entsprechend der Dienstgüte, die
durch eine der Vielzahl von Klassen festgelegt ist.
-
Kurze Beschreibung
der Zeichnungen
-
1 ist
eine schematische Darstellung der Verkehrs-Aufbereitungs- oder Konditionierungseinrichtung
gemäß einer
Ausführungsform
der Erfindung.
-
2 und 3 zeigen
mögliche
Positionen der Verkehrs-Konditionierungseinrichtungen
der Erfindung.
-
4 zeigt,
dass Verkehrs-Konditionierungsmerkmale der Erfindung an einem Router
oder einem Switch installiert werden können.
-
5 ist
eine schaubildliche Ansicht der Zustandsübergänge.
-
6 zeigt,
wie Klassifizierungsinformation netzabwärts weitergeleitet wird.
-
7 zeigt,
dass die Zurückweisungs-
(REJECT-) Information vorwärts
weitergeleitet und zu dem Quellen-Host zurückreflektiert wird.
-
8 zeigt
einen Fall, in dem eine Stopp-Mitteilung in Netzaufwärtsrichtung
von einem Knoten zurückgesandt
wird.
-
Ausführliche
Beschreibung der bevorzugten Ausführungsformen der Erfindung
-
Gemäß 1 schließt die Verkehrs-Konditionierungseinrichtung
gemäß einer
Ausführungsform
der Erfindung eine Vielzahl von Warteschlangen 10 ein,
zumindest eine für
jede Klasse. Sie befindet sich an einem Knoten des Datennetzwerkes.
Jedes Paket eines Eingangs-Datenstromes wird bei 12 inspiziert
und identifiziert, wobei zum Beispiel IP-Adressen, Ports und Protokolle
verwendet werden. Eine Steuerung 14 charakterisiert den
Datenstrom (unter Verwendung der Rate, Dauer usw.) und ordnet ihn
einer Klasse zu. Eine Vielzahl von Klassen wird entsprechend den
Ausführungsformen
der Erfindung in Betracht gezogen und wird weiter unten beschrieben.
Die Steuerung bezieht sich auf eine Datenbank 16 und verwendet
eine Ausgangs-Ablaufsteuerung, um Bandbreite den einzelnen Klassen
zuzuteilen, und sie realisiert eine Zugangskontroll-Richtlinie für Klassen,
bevor ein Ausgangs-Datenstrom in Richtung auf netzabwärts gelegene
Knoten oder an Peripheriegeräte
geliefert wird. Sie verwirft weiterhin Pakete von nicht zugelassenen
Datenströmen
und übergibt
die Datenstrom-Klassifizierung an netzabwärts gelegene Knoten.
-
Die
Verkehrskonditionierung gemäß der Erfindung
kann an verschiedenen Stellen in dem Datennetzwerk stattfinden.
Weil beispielsweise Überleiteinrichtungen
(Gateways) einen Flaschenhals darstellen und Massendaten-Ströme die Ansprechzeiten
für interaktive
Nutzer verringern können,
kann eine Verkehrs-Konditioniereinrichtung
an einer in 2 gezeigten Stelle angeordnet
werden, wodurch dieses Problem gemildert wird. In 3 befinden
sich Verkehrs-Konditioniereinrichtungen
an einer Vielzahl von IP-Vermittlungen oder Switches, die ein Datennetzwerk 40 bilden.
Paket-Switches sind nicht in der Lage, eine gute Betriebsleistung für neue Dienste,
wie z. B. Echtzeitvideo, bereitzustellen, sofern keine Verkehrs-Konditionierung
realisiert wird. Eine Konditioniereinrichtung an einem Ausgangsport
einer Vermittlung 42 überwacht
und steuert den gesamten Verkehr, der in diese Vermittlung gelangt
und aus diesem Ausgangsport zum netzabwärts gelegenen Knoten 44 verläuft. Ein
integriertes Verkehrs-Konditionierungsmerkmal
kann an einem Router oder einem Server installiert werden, wie dies
in 4 gezeigt ist.
-
In
einem Fall der IP-Vernetzung ist die Identifikation einzelner Verkehrs-Datenströme einfach.
Dies erfordert lediglich eine Überprüfung von
Adressen und Protokoll-Portnummern sowohl für die Quelle als auch das Ziel.
Diese Lösung
wurde über
eine gewisse Zeit in anderen Anwendungen verwendet, wie z. B. der
TCP-Leitweglenkung, und in letzterer Zeit auch bei der IP-Vermittlung
verwendet.
-
Irgendein
Schema, das Datenströme
für eine
unterschiedliche Behandlung charakterisiert und klassifiziert, sollte
zu einer Modifikation fähig
sein, um eine Anpassung an die spezielle Betriebsumgebung zu ermöglichen.
Gemäß einer
Ausführungsform
werden die folgenden sechs Klassen des Verkehrs-Datenstromes, die
in einem typischen TCP/IP-basierten Netzwerk verwendet werden könnten, betrachtet
und weiter unten ausführlicher
beschrieben.
-
(Klasse 1) – Interaktive
Benutzer (TCP)
-
Diese
Klasse wird zur Erfassung von TCP-Datenströmen für Anwendungen wie X-Windows, Telnet und
Web-Browsing mit geringem Umfang vorgesehen. Telnet- und X-Windows
können
sehr lange Sitzungen sein, haben jedoch überwiegend kurze Pakete. Bei
dieser Ausführungsform
definiert diese Klassifizierung ein kurzes Paket als weniger als
oder gleich 128 Bites und ein langes Paket als mehr als 128 Bites.
Das Web-Browsen führt
zu einer Mischung von Paketgrößen und
Transaktionslängen
und kann Ströme
mit langen Paketen hervorrufen, insbesondere dann, wenn Bilddateien
geladen werden. Diese Klasse ist die Vorgabeklasse für TCP-Datenströme doch
wird der Datenstrom, wenn er eine lange Serie (beispielsweise 200)
von fangen Paketen ohne eine dazwischenliegende Serie von zwei oder
mehr kurzen Paketen enthält,
als eine Massendaten-Übertragung
betrachtet und ist nicht mehr für
diese Klasse gültig.
Ein TCP-Massendaten-Strom
kann gelegentlich kurze Pakete einschließen, die lediglich die TCP-ACK-
(Bestätigungs-)
Mitteilung oder das Abschlussende eines Sendepuffers enthalten.
Daher wird, sofern sich die kurzen Pakete nicht in einer Serie mit einer
Anzahl von zwei oder mehr befinden, der Datenstrom immer noch als
eine Massendaten-Übertragung betrachtet.
-
(Klasse 2) – Massendaten-Übertragung
mit garantierter Bandbreite (TCP)
-
Wenn
der TCP-Verkehr nicht interaktiv ist, so wird er als Massendaten-Übertragung
klassifiziert. Einige der Massenübertragungs-Datenströme werden
zu einer Ablaufsteuerungs-Klasse zugelassen, die einen geschützten Teil
der Bandbreite und eine begrenzte Anzahl von Mitgliedern hat, so
dass eine gewissen minimale Bandbreite für diese Datenströme garantiert
wird.
-
(Klasse 3) – Massendaten-Übertragung,
bestes Bemühen
(TCP)
-
Irgendwelche
Massen-TCP-Datenströme,
die nicht zu der garantierten Bandbreiten-Klasse zugelassen werden, werden in
dieser Klasse auf der Grundlage besten Bemühens behandelt. Die Klassen
(2) und (3) sind für
die Abwicklung großer
FTP-Datenmengen
oder großer
Datennetz-Bilder vorgesehen.
-
(Klasse 4) – Niedrige
Latenz (UDP)
-
Diese
Klasse enthält
Datenströme,
die sehr geringe Bandbreite erfordern. Im Allgemeinen bestehen diese
Datenströme
aus eine niedrige Bandbreite aufweisenden Sprach-Daten, NFS-Anforderungen,
kurzen NFS-Antworten und Netzwerk-Steuerpaketen, wie z. B. DNS-Transaktionen.
Die meisten Echtzeit-Sprach-Daten
weisen eine kontinuierliche Strömung
von UDP-Daten (Benutzer-Datagramm-Protokoll)
von weniger als 20 Paketen pro Sekunde auf. Dies ist die Vorgabeklasse
für UDP,
und Datenströme
oberhalb einer Schwellenwert-Bandbreite
werden sehr schnell herausbewegt. Es würde eine Zugangskontroll-Richtlinie derart
geben, dass wenn die zugeteilte Bandbreite für diese Klasse verbraucht ist,
neue Datenströme
zu der Klasse mit bestem Bemühen
bewegt würden.
-
(Klasse 5) – Echtzeit
(UDP)
-
Irgendein
Datenstrom mit Echtzeit-Charakteristiken wird nachfolgend definiert,
und eine Bandbreite, die zu hoch für die Klasse mit niedriger
Latenz ist, wird in dieser Klasse erfasst. Sprache mit großer Bandbreite und
Streaming-Video sind die erwarteten Mitglieder. Beispielsweise weist
Video einen kontinuierlichen UDP-Strom bis zu 4 Mb/s = (1000 pps)
auf. Ströme,
die Echtzeit-Charakteristiken aufweisen, für die es jedoch keine Ressource
unter Zugangssteuer-Richtlinie gibt, würden zurückgewiesen und nachfolgende
Pakete würden
verworfen.
-
(Klasse 6) – Massendaten-Übertragung,
bestes Bemühen
(UDP)
-
Alle
anderen UDP-Ströme
werden in diese Klasse eingruppiert. Erwartete Mitglieder sind NFS-Dateikopien
und Sicherungssitzungen, die durch viele lange Pakete mit einer
erheblichen Rate charakterisiert sind.
-
Zusammenfassend
ist festzustellen, dass gemäß dieser
Ausführungsform
die Unterscheidung zwischen Verkehrstypen auf einer einfachen Analyse
der Paket-Ankunftsraten
und der Paketlänge
plus einem zusätzlichen
Test auf Echtzeit-UDP-Verkehr
beruhen, der weiter unten beschrieben wird. Die Charakteristiken
eines Datenstromes werden kontinuierlich überwacht, und der Strom kann
während seiner
Lebensdauer umklassifiziert werden. Die Fähigkeit zur Umklassifizierung
deckt auch die Fälle
ab, in denen aufeinanderfolgende Datenströme die gleiche Identität annehmen,
jedoch unterschiedliche Charakteristiken haben.
-
Es
ist möglich,
eine Port-Nummern-Information in manchen Fällen zu verwenden, um den Diensttyp zu
bestimmen und um die vorstehend beschriebene dynamische Klassifizierung
zu ergänzen.
Beispielsweise ist der TCP-Port 23 der gut bekannte Port
für den
Telnet-Server. Weil eine Telnet-Sitzung immer interaktiven Verkehr überträgt, ist
es möglich,
irgendeinen TCP-Datenstrom, bei dem einer seiner Port-Nummern 23 ist,
als TCP-interaktiv zu klassifizieren. Eine einzelne Port-Nummer
kann jedoch manchmal für
mehrere Dienste mit sich ändernder
Natur verwendet werden. Beispielsweise könnte der TCP-Port Nummer 80,
die für
den HTTP-Server reserviert ist, sowohl für interaktive TCP- als auch
für Massen-TCP-Datenströme verwendet
werden. Ein Klassifizierungsschema sollte eine statische Information
in dem Paket-Kopffeld, wie z. B. die Port-Nummer und Protokolltypen
sowie die dynamisch gesammelte Information verwenden.
-
5 eine
schaubildliche Darstellung der Zustandsübergänge, die diese Klassen gemäß der Ausführungsform
beinhalten. In der Figur werden die folgenden Abkürzungen
verwendet:
P | =
Paket |
sp | =
kurzes Paket |
lp | =
langes Paket |
con
lp | =
aufeinanderfolgende lange Pakete |
bw | =
Bandbreite verfügbar |
chosen | =
durch Richtlinie gewählt |
pps | =
Ankunft von Paketen pro Sekunde |
-
Die
folgenden Kriterien werden ebenfalls angewandt:
- (a)
für alle
Klassen, Rückkehr
zum Ausgangszustand, wenn es keine Pakete über eine Zeit von 30 Sekunden
gibt.
- (b) Für
alle Datenströme,
prüfe das
Optionsfeld, und wenn eine Klasse definiert ist, so zwinge den Datenstrom
in diese Klasse über
100 Pakete oder über
30 Sekunden.
-
Gemäß 5 enthält die Zustandsmaschine
die folgenden Zustände:
- (A) Ausgangszustand
- (B) TCP interaktiv
- (C) TCP Massendaten, bestes Bemühen
- (D) TCP Massendaten garantiert
- (E) UDP, niedrige Latenz
- (F) UDP, Echtzeit
- (G) UDP Massendaten, bestes Bemühen
- (H) Zurückweisung
-
In
der folgenden ausführlichen
Beschreibung zeigt „>" „wahr" für alle die
Zustände
an.
-
-
-
-
Verwerfe
alle Pakete mit Ausnahme von denen, die zur Weiterleitung der Zurückweisungs-Information verwendet
werden.
-
Echtzeit-Datenstrom-Detektion
-
Wie
dies weiter oben beschrieben wurde, ist es erforderlich, Echtzeit-Verkehr
von anderen Massendaten-UDP-Strömen
zu unterscheiden. Es ist sinnvoll, anzunehmen, dass beim derzeitigen
Stand der Technik NFS den einzigen UDP-Verkehr darstellt, der Massendaten umfasst
und nicht Echtzeit ist. Dann besteht eine einfache Möglichkeit
in einer Inspektion der Port-Nummern des betreffenden Datenstroms.
Wenn keine der Port-Nummern 2049 ist, die reservierte Port-Nummer
für NFS-Server,
so wird der Datenstrom als Echtzeit klassifiziert.
-
In ähnlicher
Weise können,
wenn angenommen werden kann, dass interessierende Echtzeit-Datenströme alle
Server mit reservierten Port-Nummern verwenden, diese durch die
statische Information über Port-Nummem
klassifiziert werden. Heute scheinen die meisten Echtzeit-Audio-
und Video-Server einen Satz von speziellen Ports zu verwenden, die
leicht erkannt werden können.
-
Für Umstände, unter
denen diese Annahmen nicht gelten, ist es erforderlich, ein dynamisches
Verfahren zur Identifikation von Echtzeit-Datenströmen zu schaffen.
Der Hauptunterschied zwischen Echtzeit-UDP-Datenströmen und
anderen UDP-Anwendungen,
wie z. B. NFS, besteht darin, dass in (a) Echtzeit-Datenströme nicht
selbst getaktet sind, das heißt
die Pakete werden kontinuierlich ohne Bestätigungen von dem Empfänger gesandt,
und (b) die mittlere Paketerzeugungsrate eine Konstante ist.
-
Es
gibt zwei Möglichkeiten,
wie diese Attribute dazu verwendet werden können, den Echtzeit-Datenstrom
festzustellen. Unter Überlastungsbedingungen
wächst
die Warteschlange für
Echtzeit-Datenströme ohne
Begrenzung, während
die Warteschlange für
einen selbstgetakteten Datenstrom lediglich bis zu der Größe eines
bestätigten
Burst anwächst
(der maximale Burst ohne Bestätigung
ist bei NFS 8 Kilobyte). Eine weitere Lösung besteht darin, eine Historie
der Zwischenankunftszeiten für
die Pakete eines Datenstromes zu führen. Selbstgetaktete Datenströme zeigen
eine bi-modale Verteilung, während
die Echtzeit-Datenströme
um die mittlere Rate herum uni-modal sind. Bei einer Ausführungsform
kann diese Lösung
dadurch realisiert werden, dass ein Schwellenwert verwendet wird,
der auf einen Wert eingestellt ist, der etwas größer als die mittlere Zwischenankunftszeit
ist. Zwei Zählungen
werden geführt;
eine für
Zwischenankunftszeiten unterhalb des Schwellenwertes, und eine für Zwischenankunftszeiten
oberhalb des Schwellenwertes. Wenn die zweite Zählung größer als ein bestimmter Wert
ist, beispielsweise 10% der ersten Zählung, so wird der Datenstrom
als Nicht-Echtzeit klassifiziert. Dieses zweite Verfahren kann bevorzugt
werden, weil es kein Warten auf eine Überlastung erfordert, um den
Datenstrom zu identifizieren. Eine schnelle Zulassung oder Zurückweisung
des Datenstromes ist wichtig.
-
Ablaufsteuerung
von Datenströmen
-
Es
sind verschiedene Techniken zur Ablaufsteuerung mehrfacher Warteschlangen
an Ausgangsports eines Vermittlungsknotens verfügbar. In jedem Fall würde typischerweise
den Echtzeit-Klassen und Klassen mit niedriger Latenz, die vorstehend
beschrieben wurden, eine absolute Priorität gegeben (daher die Notwendigkeit
für die
Zugangskontrolle), und die anderen Klassen würden in einer Weise hinsichtlich
ihres Ablaufs gesteuert, die diesen den Teil der Bandbreite zuteilt,
die von der Netzwerkverwaltung zugeteilt ist.
-
Gemäß 6 leitet
bei einer weiteren Ausführungsform
anstelle der Durchführung
der vorstehenden Klassifizierung in autonomer Weise durch jeden
Knoten, wie dies soweit beschrieben wurde, der erste Knoten (Knoten
A) auf der Route seine Feststellungen zu den netzabwärts gelegenen
Knoten, wodurch sich eine effizientere Verkehrs-Konditionierung
ergibt. In einer weiteren zusätzlichen
Ausführungsform
gibt es keinen Grund dafür,
dass die Quellen-Host-Maschine nicht als der erste Knoten betrachtet
werden kann, der den Verkehr klassifiziert und die Klassifikation
an Knoten entlang der Route sendet. Diese netzabwärts gelegenen
Knoten können
dann die gewonnene Kenntnis anstelle einer örtlichen Klassifizierung verwenden
und dem Datenstrom eine gleichförmige
Behandlung über
seinen gesamten Pfad geben. Sie akzeptieren die netzaufwärts durchgeführte Klassifizierung,
bis diese abläuft,
und breiten sie in Netzabwärts-Richtung
aus. Die Information kann in verschiedener Weise weitergeleitet
werden, doch besteht eine Möglichkeit
darin, dass sie in dem Datenstrom dadurch übertragen wird, dass die Information
in eines oder mehrere Pakete in dem Datenstrom eingefügt wird (beispielsweise
durch einen Eintrag in dem IP-Optionsfeld). Jedes n-te Paket könnte die
Information übertragen,
und der netzabwärts
gelegene Knoten würde
auf der Grundlage dieser Information arbeiten, bis diese nach einem
Vielfachen von n Paketen veraltet ist. In einem ATM-basierten Netzwerk
könnte
die Klassifikation durch den VPI/VCI-Wert bedingt werden, der für den Datenstrom
gewählt
ist.
-
Gemäß 7 kann
die Klassifikation ZURÜCKWEISUNG
(REJECT) von dem Ziel-Host zu dem Quellen-Host zurückreflektiert
werden, wodurch die Effizienz des Netzwerkes verbessert wird. Um
dies zu erleichtern, würden
nicht alle Pakete von dem Datenstrom verworfen. Statt dessen würde jedes
k-te Paket mit der Klassifikation in dem Optionsfeld weitergeleitet.
Wenn beispielsweise der Knoten B feststellt, dass das Paket aus
irgendeinem Grund zurückgewiesen
werden muss, so verwirft er alle Pakete mit Ausnahme jedes k-ten Paketes,
das an den Ziel-Host weitergeleitet wird, der seinerseits eine Mitteilung
an den Quellen-Host sendet, damit dieser stoppt. In einem anderen
Szenarium, das in 8 gezeigt ist, kann anstelle
des Hosts ein Knoten, der den Verkehrs-Datenstrom aus irgendeinem
Grund zurückweist,
eine Mitteilung in Rückwärtsrichtung
netzaufwärts
senden, die anzeigt, dass der Verkehr zurückgewiesen wurde und daher
gestoppt werden sollte.
-
Kompliziertheit
-
In
jedem Netzwerk, in dem unterschiedliche Dienstgüten unterstützt werden, muss irgendein
Prozess vorhanden sein, um die Datenstrom-Attribute zu klassifizieren,
und dann eine Möglichkeit,
um zu überprüfen, dass
der Datenstrom die Attribute einhält. Diese Überprüfung oder Richtlinie kann an
den Rändern
eines Teilnetzes oder an jedem Knoten erfolgen. Das hier beschriebene
Verfahren verwendet die Mechanismen, die für die Überprüfung zur Feststellung der Datenstrom-Attribute
eingesetzt würden,
jedoch ohne die Notwendigkeit einer vorhergehenden Aushandlung,
wie z. B. einer Signalisierung. Sie hat daher eine äquivalente Kompliziertheit
hinsichtlich der Realisierung an den Knoten, erfordert jedoch nicht
die Signalisierungs-Überlagerung.
-
Die
für Richtlinien
hinsichtlich der Bandbreitenzuteilung zu den verschiedenen Klassen
erforderliche Überlagerung
und die Reservierung von Bandbreite für vorher gebuchte Videositzungen
würde hinsichtlich
ihrer Kompliziertheit von einem auf Signalisierung basierten System
nicht verschieden sein.
-
Koexistenz
mit RSVP und verwalteten Verbindungen
-
Obwohl
die dynamische Klassifizierung ohne die Notwendigkeit einer Signalisierung
ablaufen kann, ist es auch möglich,
die Klassifizierung des Datenstromes als Ergebnis eines Prozesses
höherer
Ebene zu erzwingen. Einem Datenstrom, dem ein reservierter Pfad
und eine Behandlung über
das Netzwerk hinweg durch Signalisierung oder durch Verwaltung gegeben
wurde, kann als solcher markiert werden. Die automatische Klassifizierung
kann abgeschaltet werden oder dazu verwendet werden, die Charakteristiken
des markierten Datenstromes zu überprüfen.
-
Gemäß der vorliegenden
Erfindung werden Paket-Verkehrs-Datenströme klassifiziert, um sie für unterschiedliche
Behandlungen zu gruppieren. Dies ermöglicht es, dass Dienstgüte-Unterscheidungen
unterstützt
werden, selbst wenn eine Anwendungs-Signalisierungsunterstützung nicht
verfügbar
ist. Die Realisierung ist nicht komplizierter als die, die für Richtlinien
erforderlich ist, wenn eine Signalisierung verwendet wird, und sie
kann zumindest genauso effektiv bei der Verbesserung der wahrgenommenen
Netzwerk-Betriebsleistung und bei der Ermöglichung neuer Dienste sein,
wie z. B. Video.