-
Gebiet der Erfindung
-
Die
vorliegende Erfindung bezieht sich auf ein Verfahren und Vorrichtung
zum Messen und Steuern der Last, die von einem Telekommunikations-System
für Transaktions-Anwendungen übertragen
wird, und ein System, das dieses bzw. diese beinhaltet.
-
Hintergrund der Erfindung
-
Paketvermittelte
Netzwerke erzielen eine sehr hohe Geschwindigkeit dadurch, dass
der Umfang der Interpretation jedes Paketes an Knoten im Kern des
Netzwerkes auf ein Minimum gehalten wird. Allgemein müssen zwei
Entscheidungen über
das Paket an jedem Knoten getroffen werden, an dem es eintrifft:
an welche Ausgangs-Verbindungsstrecke
es zu lenken ist; und welche Behandlung (beispielsweise Prioritätsbehandlung)
ihm in dem Knoten gegeben werden sollte, sowohl absolut als auch
verglichen mit anderen Paketen.
-
In
Produktions-Netzwerken, die die Internet-Protokoll-Version 4 (IPv4)
verwenden, beruhten die Entscheidungen bis in sehr neuer Zeit auf
einer sehr beschränkten
Teilmenge der Felder in dem IP-Kopffeld. Typischerweise wird die
Ausgangs-Entscheidung
ausschließlich
auf der Grundlage der Ziel-Adresse getroffen. Behandlungen innerhalb
eines Knotens sind auf zwei Klassen der Prioritätsbehandlung für normalen
Datenverkehr und Netzwerk-Steuerverkehr auf der Grundlage von zwei
unterschiedlichen Werten des Präzedenz-Feldes
(Teil des Dienst-Typ-(ToS-)Oktettes) beschränkt. Netzwerk-Steuerverkehr,
der vollständig
von Administrations- und Betriebs-Mechanismen des Netzwerkes anstatt
durch Benutzer erzeugt wird, wird typischerweise die absolute Priorität gegenüber allen
anderen Verkehr gegeben. Der gesamte Benutzerverkehr (der Rest)
wird identisch behandelt. Normalerweise werden keine Garantien hinsichtlich
der Zustellung des Verkehrs gegeben, und der den Benutzern dieser
Netzwerke gebotene Dienst wird als Dienst „besten Bemühens" beschrieben.
-
Somit
wird in jedem Knoten (Router, Host-Arbeitsstation) der Pakete in
einem IPv4 lenkt oder weiterleitet, jedes Paket, das an einer ankommenden
oder Eintritts-Schnittstelle
ankommt, wie folgt behandelt:
- • Das Paket
wird von der ankommenden Schnittstelle gelesen.
- • Das
Ziel-Adressenfeld und wahlweise das Diensttyp-(ToS-)Feld werden
von dem Paket abgeleitet.
- • Das
Ziel-Adressenfeld und wahlweise das ToS-Feld werden als Indizes
in einer Weiterleitungstabelle verwendet, die mit Hilfe der dynamischen
Routenführungs-Protokolle
konstruiert wird, um die korrekte Ausgangs-Verbindungsstrecke für das Paket zu finden. Die
Routenführung
in Abhängigkeit
von den Inhalten des ToS-Feldes ist derzeit äußerst ungewöhnlich, obwohl sie im Prinzip
seit der frühen
Definition des IP verfügbar
ist.
- • Wenn
der Knoten in der Lage ist, eine unterschiedliche Behandlung von
Paketen, die an einen vorgegebenen Ausgang gelenkt werden, bereitzustellen,
so wird das ToS-Feld inspiziert, um die zu erteilende Behandlung
zu bestimmen. Typischerweise wird eine unterschiedliche Behandlung
auf der Grundlage des Präzedenz-Wertes
in dem ToS-Feld ausgeführt,
und sie kann auf zwei unterschiedliche Klassen der Behandlung beschränkt sein,
eine für
Netzwerk-Steuerverkehr (eine kleine, jedoch vitale Komponente) und eine
zweite für
normalen Verkehr (den Rest); die Klassen des Verkehrs werden in
einem Satz von getrennten, die zuerst ankommenden Daten als erstes
ausgebenden (FIFO-)Warteschlangen gelenkt, die jedem Ausgang zugeordnet
sind.
- • Die
Pakete werden in die verfügbare
Ausgangs-Bandbreite von den Warteschlangen aus entsprechend einem
Ablaufsteuerungs-Algorithmus ablaufgesteuert eingeführt. Typischerweise
ist dies ein absoluter Prioritäts-Mechanismus, bei
dem irgendeinem Netzwerk-Steuerpaket die absolute Priorität gegenüber jedem normalen
Datenpaket gegeben wird: wenn es irgendwelche wartenden Netzwerk-Steuerpakete
gibt, wenn ein Schlitz auf der Ausgangs-Verbindungsstrecke verfügbar ist,
so wird das Paket an dem Kopf der Netzwerk-Steuerverkehr-Warteschlange
bevorzugt gegenüber
irgendwelchen wartenden normalen Paketen auf die Verbindungsstrecke
ausgegeben, und das Paket wird aus der Warteschlange entfernt. Anderenfalls wird,
wenn ein Paket auf der normalen Datenverkehr-Warteschlange wartet, dieses Paket ausgegeben
und aus der Warteschlange entfernt.
-
Einige
heutige Router schließen
komplexere Mechanismen ein, wie zum Beispiel zusätzliche Klassifizierungs-,
Filter-, Warteschlangenbildungs- und Ablaufsteuerungs-Mechanismen
ein, doch gibt es keine Gleichförmigkeit,
wie diese Einrichtungen aufgerufen werden, und sie werden nicht
in weitem Umfang in Produktions-Netzwerken eingesetzt.
-
Die
beschränkten
Fähigkeiten
vorhandener IP-Netzwerke hinsichtlich ihrer Möglichkeiten zur Unterscheidung
von Klassen von Verkehr beschränken
die Fähigkeiten
von Netzwerk-Betreibern, ihren Kunden Dienste mit verbesserter Dienstgüte (QoS)
anzubieten. Unter QoS verstehen wir solche Dinge, wie Beschränkungen
hinsichtlich der Verzögerung,
die ein Paket erfährt,
die Änderungen
der Verzögerung,
die ein Paket erfährt,
und die relative Priorität
von Paketen einer bestimmten Klasse, und die Menge an Bandbreite,
die für eine
Klasse von Paketen verfügbar
ist, die durch ein Netzwerk hindurchlaufen.
-
Es
wird klar, dass bestimmte Kunden und Arten von Anwendungen einen
Dienst benötigen
(und Kunden bereit wären,
hierfür
zu zahlen) der eine Verbesserung gegenüber dem vorhandenen Dienst
besten Bemühens
ist.
-
Eine
der Gruppen von Diensten, die wahrscheinlich am meisten von Benutzern
eines IP-Datennetzwerkes benutzt werden, sind Transaktions-Dienste.
Transaktions-Dienste schließen
ohne Beschränkung
hierauf Zugriffe auf das Web (weltweite Datennetz) und Fern-Prozedur-Anrufe
ein, die beispielsweise einen interaktiven Datenbank-Zugriff einschließen. Transaktions-Dienste
sind eine Hauptkomponente – vielleicht
bis zu 70% – des
heutigen Datenverkehrs.
-
In
einem IP-Paket-Vermittelten Datennetzwerk werden alle Daten in Form
von IP-„Datagrammen" übertragen. Ein IP-Datagramm
ist ein Paket, das aus einem IP-Kopffeld
und IP-Nutzdaten besteht, wie dies in 2 gezeigt
ist.
-
Das
IP-Kopffeld liefert die gesamte Information, die zur Routenführung des
Paketes über
das Netzwerk benötigt
wird.
-
IP-Datagramme
werden zur Übertragung
von Information von einer Vielzahl von unterschiedlichen Protokollen über das
Netzwerk verwendet (das verwendete Protokoll wird durch ein spezielles
Bit-Muster in dem Protokoll-Feld des IP-Kopffeldes angegeben). Eines dieser
Protokolle ist das Transport-Steuerprotokoll (TCP) eines zuverlässigen Byte-Strom-Transportprotokolls.
In diesem Fall bestehen die IP-Nutzdaten aus einem TCP-Kopffeld
und den TCP-Benutzer-Nutzdaten. TCP wird als das Transport-Protokoll
für einen
großen Anteil
des gesamten Benutzerverkehrs verwendet, der über IP-Netzwerke übertragen
wird.
-
Das
TCP-Kopffeld wird zur Übertragung
von Information verwendet, die es der empfangenden Station ermöglicht,
den ausgesandten Byte-Strom zu rekonstruieren, wodurch die gewünschte Zuverlässigkeit
der Zustellung erreicht wird. Pakete, die an dem Empfangsende einer
Verbindung erfolgreich empfangen werden, werden positiv durch das
Senden einer speziellen Bestätigung
zurück
zum Ursprung des Paketes bestätigt.
-
Eine
grundlegende Charakteristik des TCP besteht in seiner Fähigkeit,
die Rate des Datenstroms über ein
Netzwerk anzupassen, um eine nahezu optimale Nutzung de verfügbaren Netzwerk-Bandbreite
zu schaffen. TCP passt seine Übertragungsrate
an die verfügbare
Bandbreite dadurch an, dass:
- • es seine Übertragungsrate
als Antwort auf den erfolgreichen Empfang und die Bestätigung der
Pakete vergrößert
- • es
eine Übertragungsrate
als Antwort auf fehlende Bestätigungen
verringert, was Paketverluste (typischerweise aufgrund einer Netzwerküberlastung)
anzeigt.
-
Im
Normalbetrieb beginnt die Datenstrom-Rate eines TCP-Datenstroms
mit einem niedrige Wert und steigt rampenförmig über eine „langsame Startphase" und eine „Überlast-Vermeidungs-Phase" bis zu einem Maximalwert
an, während
die ersten wenigen Pakete bestätigt
werden. Zu irgendeinem Punkt bei diesem anfänglichen rampenförmigen Anstieg
wurden entweder alle Daten ausgesandt, oder ein Paket ist verloren
gegangen. Wenn ein Paket verloren gegangen ist (was durch fehlende
Bestätigungen
angezeigt wird), so wird die Datenstrom-Rate um 50% verringert,
und der rampenförmigen
Anstieg wird erneut von diesem verringerten Wert gestartet.
-
Wenn
mehrfache Pakete verloren gehen, so wird der Datenstrom auf ein
Minimum verringert, und der gesamte Prozess wiederholt sich nach
einer Verzögerung,
die so ausgelegt ist, dass sich das Netzwerk von der Überlastung
erholen kann, die die verworfenen Pakete hervorgerufen hat.
-
Typische
Transaktions-Dienste öffnen
eine zuverlässige
TCP-Byte-Strom-Verbindung
von einem Klienten zu einem Server und geben eine „Anforderung" ab, die in der Größenordnung
von wenigen zehn bis zu einigen hundert Byte lang ist (das heißt ein oder
zwei Pakete). Die Anforderung wird von dem Klienten an einen Server
gesandt, der die Anforderung verarbeitet, irgendeine örtliche
Operation ausführt
und dann irgendwelche „Antwort"-Daten zurück liefert,
die sich von einigen wenigen Bytes (wie zum Beispiel ein Erfolg-Code)
bis zu einigen zehn Kilobyte (wie zum Beispiel ein Bild für eine Web-Seite) über eine
Periode von beispielsweise wenigen hundert Millisekunden bis 20
Sekunden ändern
können.
-
Ein
Problem bei der Integration derartiger Transaktions-Dienste in die
neuesten Standard-QoS-Schemas besteht darin, dass der Zusatzaufwand
für die
Reservierung von Ressourcen zum Garantieren der Zustellung von Daten
gegenüber
der Größe der zugestellten
Daten und der beschränkten
Dauer der Verbindung unproportional ist. Jede Transaktion oder ein
kleiner Satz von Transaktionen benötigt wahrscheinlich eine getrennte
Reservierung, insbesondere im Fall des Dienstes eines Zugriffs auf
das weltweite Datennetz.
-
Ein
weiteres Problem besteht darin, dass die kurze Dauer des Datenstroms,
die mit einer Anforderung oder Antwort verbunden ist, es den konventionellen
Datenstrom- Algorithmen
von TCP nicht ermöglicht,
einen stetigen Zustand zu erreichen, dies wirkt in dem Sinne, dass
ein Datenstrom als „fragil" kategorisiert wird:
der Verlust eines einzelnen Paktes setzt den TCP-Datenstrom-Steuer-Algorithmus
auf die langsame Start-Betriebsweise zurück mit einer entsprechenden
Auswirkung auf den Durchsatz der Verbindung. Im Gegensatz hierzu
verläßt sich
ein gut ausgebildeter Datenstrom auf wenige verworfenen Pakete,
um die verwendete Bandbreite zu steuern, und das TCP ist so ausgelegt,
dass es mit gelegentlich verworfenen Paketen fertig wird, sobald
ein stetiger Zustand ausgebildet wurde.
-
Ein
drittes Problem besteht darin, dass es die von Natur aus gegebene
Burst-Eigenart von
von dem Menschen ausgehenden Wechselwirkungen (beispielsweise Zugriffen
auf das weltweite Datennetz) es schwierig macht, einen Dienst einzusetzen,
der es dem Netzwerk ermöglicht,
die Last derartiger Transaktionen zu steuern oder vorherzusagen
und damit einen vorhersagbaren Dienst für diese zu bieten.
-
Weiterhin
machen die im Wesentlichen zufälligen
Ziele, die an derartige Zugriffe auf das weltweite Datennetz gelenkt
werden, die Bereitstellung derartiger Dienste schwierig.
-
Die
US 5390188 beschreibt ein
Betriebsleistungs-Mess-, Kommunikationsfehler-Detektions- und Fehlerisolations-System
für ein
Ring-basiertes Kommunikations-Netzwerk.
Das System schließt
Mechanismen und Verfahren ein, die in jeder Port-Logik-Einrichtung eines Kommunikations-Netzwerkes
betreibbar sind, um die Anzahl von Mitteilungs-Paketen, die in dem
Netzwerk verloren gehen, gegenüber
der Anzahl von Mitteilungs-Paketen zu zählen, deren Verlust an dem
speziellen Port oder der damit verbundenen Kommunikations-Station
auftritt. Das Ergebnis ist eine generische Verlust-Metrik für diesen
speziellen Port. Positive Zählungen
stellen Pakete dar, die in den verbleibenden (das heißt den speziellen
Port nicht einschließenden)
Teil des Netzwerkes verloren gehen, während negative Zählungen
Pakete darstellen, die an dem Port oder seiner damit verbunden Station
verloren gehen. Das System schließt weiterhin Ausführungsformen
ein, bei denen die vorstehenden Fähigkeiten für eine Gruppe von Ports bereitgestellt
werden, jedoch lediglich für
Mitteilungen, die eine bestimmte Ziel-Adresse als Ursprung des Paketes
enthalten (das heißt
eine Ziel-Verlust-Metrik). Eine Quellen-Adressen- Ausführungsform
ist vorgesehen, so dass individueller Port lediglich auf Mitteilungen
anspricht, die die Adresse seiner damit verbundenen Station enthalten.
Wenn die mit ihm verbundene Einrichtung eine einzige Station ist,
so wird durch Berechnen der Differenz zwischen der generischen Verlust-Metrik
und der Quellen-Adressen-Verlust-Metrik
für einen
vorgegebenen Port die Verlust-Metrik für eine einzige angeschlossene
Station bestimmt. Durch Übertragung
jedes Verlust-Metrik-Ergebnisses
an eine zentrale NMS und Analysieren der Ergebnisse der generischen
Verlust-Metriken in dieser können
einzelne und mehrfache Fehler innerhalb des Kommunikations-Netzwerkes
festgestellt und isoliert werden. Doppeladressen-Durchgangs-Verbindungsfehler
und Duplikat-Adressenfehler-Konfigurationen
können
ebenfalls durch das System isoliert werden.
-
Ziel der Erfindung
-
Die
Erfindung ist auf die Schaffung eines verbesserten Verfahrens und
einer Vorrichtung zur Ableitung einer Messung der Verkehrs-Last
für ein
Netzwerk unter Berücksichtigung
der von Natur aus gegebenen Burst-Charakteristik von vom Menschen
herbeigeführten
Wechselwirkungen gerichtet.
-
Diese
Aufgabe wird durch ein Verfahren gemäß Anspruch 1 und eine entsprechende
Vorrichtung, ein System und ein Computerprogramm nach den Ansprüchen 12,
14 und 15 gelöst.
-
Zusammenfassung der Erfindung
-
Gemäß einem
ersten Gesichtspunkt der vorliegenden Erfindung wird ein Verfahren
zur Überwachung des
Telekommunikations-Netzwerk-Verkehrs geschaffen, das die Folgenden
Schritte umfasst:
Empfangen eines Paket-Stromes, der Pakete
umfasst, die jeweils als zu einer von zumindest ersten, zweiten und
dritten Klassen zugehörig
identifiziert sind, wobei jedes Anfangs-Paket eines Transaktions-Bursts
als zu der ersten Klasse zugehörig
identifiziert ist, und jedes abschließende Paket eines Transaktions-Bursts
als zu der zweiten Klasse zugehörig
identifiziert ist;
Berechnen einer Differenz zwischen der Anzahl
von Paketen in dem empfangenen Paket-Strom, die als zu der ersten
Klasse zugehörig
identifiziert wurden, und der Anzahl von Paketen, die als zu der
zweiten Klasse zugehörig
identifiziert wurden;
Empfangen von statistischen Verteilungs-Daten,
die die Verkehrs-Last auf dem Netzwerk beschreiben; und
Ableiten
eines Schätzwertes
der Verkehrs-Last auf dem Netzwerk auf der Grundlage einer Kombination
der berechneten Differenz in der Anzahl von Paketen und den statistischen
Verteilungs-Daten.
-
Vorzugsweise
wird, wenn ein Transaktions-Burst ein einziges Paket umfasst, das
einzige Paket als sowohl zu der ersten Klasse als auch zu der zweiten
Klasse zugehörig
markiert.
-
Vorzugsweise
ist eine Anzeige, zu welcher Klasse ein Paket gehört, in einem
Kopffeld des Paketes enthalten.
-
Vorzugsweise
ist das Paket ein Internetprotokoll-"IP"-Paket.
-
Vorzugsweise
ist das IP-Paket ein IP-Version 4 „IPv4"-Paket mit einem Kopffeld, und die Anzeige
befindet sich in einem zweiten Oktett des Kopffeldes.
-
Vorzugsweise
ist das IP-Paket ein IP-Version 6 „IPv6"-Paket mit einem Kopffeld, und die Anzeige
befindet sich in den Bits 4–7
eines ersten Oktettes und den Bits 0–3 eines zweiten Oktettes des
Kopffeldes.
-
Vorzugsweise
umfasst das Kopffeld ein differenziertes Dienste-Codepunkt-„DSCP"-Feld, und die Anzeigen werden unter
Verwendung von vier Werten des DSCP-Feldes codiert.
-
Vorzugsweise
umfasst das Verfahren weiterhin die Annahme oder die Zurückweisung
von Pakten zur Übertragung
auf das Netzwerk in Abhängigkeit
von dem Schätzwert
der Verkehrs-Last auf dem Netzwerk.
-
Vorzugsweise
umfasst das Verfahren weiterhin die Folgenden Schritte:
Empfangen
eines Paketes auf einem vorgegebenen Verkehrs-Strom;
wenn das
Paket als zu der ersten Klasse zugehörig identifiziert ist, und wenn
ein vorher gespeicherter Schätzwert
der derzeitigen Verkehrs-Last auf das Netzwerk anzeigt, dass eine
Zulassungs-Zurückweisungs-Bedingung
bezüglich
des empfangenen Paketes erfüllt
ist, dann Verwerfen des Paketes, anderenfalls Inkrementieren der
Messung und Weiterleiten des Paketes auf das Netzwerk;
wenn
das Paket als zu der dritten Klasse zugehörig identifiziert wird, dann
Weiterleiten des Paketes auf das Netzwerk; und
wenn das Paket
als zu der zweiten Klasse gehörig
identifiziert ist, dann Dekrementieren des Schätzwertes der derzeitigen Verkehrs-Last
und Weiterleiten des Paketes auf das Netzwerk.
-
Vorzugsweise
ist der Schätzwert
der derzeitigen Verkehrs-Last eine Differenz zwischen der Anzahl von
Pakten der ersten Klasse, die vorher weitergeleitet wurden, und
der Anzahl der Pakete der dritten Klasse, die vorher weitergeleitet
wurden.
-
Vorzugsweise
umfasst das Verfahren weiterhin die Folgenden Schritte:
Etikettieren
jedes Anfangs-Paketes eine Transaktions-Bursts in dem empfangenen
Paket-Datenstrom als zu der ersten Klasse zugehörig; und
Etikettieren
jedes abschließenden
Paketes des Transaktions-Bursts als zu der zweiten Klassen zugehörig;
um
auf diese Weise Anfänge
und Enden der Transaktions-Bursts zu identifizieren.
-
Gemäß einem
zweiten Gesichtspunkt der Erfindung wird ein Paket-Netzwerk-Knoten für ein Telekommunikations-Netzwerk
geschaffen, wobei der Knoten Folgendes umfasst:
einen Eingang
der zum Empfang eines Paket-Stromes angeordnet ist, der Pakete umfasst,
die jeweils als zu einer von zumindest ersten, zweiten und dritten
Klassen zugehörig
identifiziert sind, wobei jedes Anfangs-Paket eines Transaktions-Bursts als zu der
ersten Klasse zugehörig
identifiziert ist und jedes abschließende Paket eines Transaktions-Bursts
als zu der zweiten Klasse zugehörig
identifiziert ist; und
einen Prozessor, der so angeordnet ist,
dass er:
eine Differenz zwischen der Anzahl von Paketen in
dem empfangenen Paket-Strom, die als zu der ersten Klasse zugehörig identifiziert
sind, und der Anzahl von Pakten, die als zu der zweiten Klasse zugehörig sind,
berechnet;
statistische Verteilungs-Daten empfängt, die
eine Verkehrs-Last auf das Netzwerk beschreiben; und
einen
Schätzwert
der Verkehrs-Last auf dem Netzwerk auf der Grundlage einer Kombination
der berechneten Differenz in der Anzahl von Paketen und den statistischen
Verteilungs-Daten ableitet.
-
Vorzugsweise
ist für
einen empfangenen Paket-Verkehrs-Strom der Prozessor weiterhin so
angeordnet, dass er für
jedes auf dem Verkehrs-Strom empfangene Paket bestimmt:
- (a) ob das Paket von der ersten Klasse ist, und falls dies der
Fall ist, Feststellen, ob ein vorher gespeicherter Schätzwert der
derzeitigen Verkehrs-Last anzeigt, das eine Zulassungs-Zurückweisungs-Bedingung
bezüglich
des empfangenen Paktes erfüllt
ist, und wenn dies der Fall ist, das Paket verwirft, oder anderenfalls die
Messung inkrementiert und das Paket auf das Netzwerk weiterleitet;
- (b) ob das Paket von der dritten Klasse ist, und wenn dies der
Fall ist, das Paket auf das Netzwerk weiterleitet; und
- (c) ob das Paket von der zweiten Klasse ist, und wenn dies der
Fall ist, den Schätzwert
der derzeitigen Verkehrs-Last dekrementiert und das Paket auf das
Netzwerk weiterleitet.
-
Gemäß einem
dritten Gesichtspunkt der Erfindung wird ein Kommunikations-System geschaffen,
das eine Vielzahl von Paket-Netzwerk-Knoten gemäß dem zweiten Gesichtspunkt
der Erfindung umfasst.
-
Gemäß einem
vierten Gesichtspunkt der Erfindung wird ein Computerprogramm geschaffen,
das bei seinem Laden auf ein Computersystem und bei seiner Ausführung auf
diesem alle die Schritte eines Verfahrens gemäß dem ersten Gesichtspunkt
der Erfindung ausführt.
-
Die
bevorzugten Merkmale können
kombiniert werden, falls geeignet, wie dies für den Fachmann ersichtlich
ist, und sie können
mit irgendwelchen der Gesichtspunkte der Erfindung kombiniert werden.
-
Kurze Beschreibung der Zeichnungen
-
Um
zu zeigen, wie die Erfindung in die Praxis umgesetzt werden kann,
werden nunmehr Ausführungsformen
der Erfindung lediglich in Form eines Beispiels und unter Bezugnahme
auf die beigefügten
Zeichnungen beschrieben, in denen:
-
1 ein
Beispiel eines Internetprotokoll-Netzwerkes zeigt;
-
2 ein
Beispiel der Struktur eines Internetprotokoll-Datagramms zeigt;
-
3 eine
schematische Darstellung der Struktur eines Internetprotokoll-Version 4-Paket-Kopffeldes zeigt;
-
4 eine
schematische Darstellung der Struktur des Typs des Dienste-Feldes in einem Internetprotokoll-Version
4-Paket zeigt;
-
5 eine
schematische Darstellung der Struktur eines vorgeschlagenen Internetprotokoll-Version 6-Paket-Kopffeldes
zeigt; und
-
6 eine
schematische Darstellung der Struktur des differenzierte Dienste-Feldes
in einem vorgeschlagenen Internetprotokoll-Version 6-Paket zeigt.
-
Ausführliche Beschreibung der Erfindung
-
Die
vorliegende Erfindung ist so ausgelegt, dass sie in dem Kontext
der differenzierte Dienste-(DS-)Architektur der Internet Engineering
Task Force (IETF) arbeitet, die ein Rahmenwerk zur Implementierung
zusätzlicher
Dienste mit verbesserter QoS bereitstellt.
-
Um
Probleme der Skalierbarkeit in dem Kern großer Netzwerke zu vermeiden,
wo es viele Hunderte oder Tausende oder Millionen von Paket-Strömen gibt,
kann die QoS nicht mit der Granularität von einzelnen Strömen in dem
Kern des Netzwerkes spezifiziert werden. Die Behandlung der Pakete
in dem Kern des Netzwerkes zur Erzielung der gewünschten QoS muss sehr einfach
sein: es steht nur wenig Zeit und Verarbeitungs-Leistung für jedes
Paket in einem Netzwerk-Kern-Element zur Verfügung in dem ein neues Paket
so häufig
wie alle 50 bis 100 ns ankommen kann.
-
DS
umgeht diese Schwierigkeiten dadurch, dass lediglich mit Aggregaten
von Verkehrs-Strömen
statt mit einzelnen Strömen
gearbeitet wird und dass so viel Funktionalität wie möglich an den Rand des Netzwerkes
verschoben wird, wodurch einige sehr einfache Mechanismen in dem
Kern verbleiben.
-
Die
vorgeschlagene Architektur für
DS sieht vor, dass zwei Arten von Knoten (normalerweise Router) in
eine geschlossene DS-Netzwerk-Domäne eingebaut werden. An den
Eintritts- und Austritts-Knoten dieser Netzwerk-Domäne sind
DS-Rand-Einrichtungen
vorgesehen, die die Verkehrs-Konditionierung s-Funktionalität implementieren.
Die innenliegenden Knoten (falls vorhanden), die die Zwischenverbindung
der Domäne
bereitstellen, sind innere DS-Einrichtungen.
-
Sowohl
die DS-Rand- als auch die inneren DS-Einrichtungen in einer vorgegebenen
DS-Domäne müssen einen übereinstimmenden
Satz von Weiterleitungs-Behandlungen implementieren, die als Verhalten pro
Sprungabschnitt (Hop) (PHBs) bekannt sind. Die DS-Architektur unterstützt eine
verbesserte Dienstgüte (QoS)
für Internetprotokoll-(IP-)Dienste
mit Hilfe einer Markierung jedes einzelnen Paketes, das zur Zustellung von
Daten über
ein IP-Netzwerk
verwendet wird, mit einem Code, der eine kleine Anzahl von Bits
umfasst.
-
Jedes
Verkehrs-Aggregat, das durch eine DS-Knoten hindurch läuft, wird
mit einem DS-Codepunkt (6-Bit-Zahl) markiert, der die Klasse des
Verkehrs anzeigt. Der Codepunkt wird (beispielsweise unter Verwendung
einer Umsetzungs-Tabelle) zur Auswahl des PHB verwendet, dem der
Verkehr unterworfen wird, während
er durch einen Knoten hindurchläuft.
-
Die
Verkehrs-Konditionierungs-Funktionalität in dem DS-Rand-Knoten wird
dazu Verwendet, sicherzustellen, dass die Verkehrs-Aggregate korrekt
markiert werden und innerhalb irgendeines Vertrages (Dienstgüte-Vereinbarung)
liegen, die ein Kunde der DS-Domäne
mit dem Domäne-Inhaber
schließen
kann. Die Verkehrs-Konditionierung
beinhaltet normalerweise Zulassungs-Steuer-Mechanismen, die dynamisch
Teile des Verkehrs-Aggregats zulassen oder zurückweisen können, um sicherzustellen, dass
nicht gegen die SLA verstoßen
wird. Dies kann auf verschiedene Weise, auf eine paketweisen Grundlage
oder durch Zulassen oder Zurückweisen
vollständiger
Komponenten-Datenströme
erfolgen.
-
Bisher
wurde die paketweise Zulassungs-Steuerung auf die Messung der Datenstrom-Rate,
die einem Aggregat zugeordnet ist, und entweder Verwerfen von Paketen,
die über
der vereinbarten Rate liegen, oder durch Anbieten verschlechteter
Dienste für
diese Pakete durch Ändern
ihres Codepunktes gerichtet.
-
Ein
derartiger Mechanismen ist für
Anwendungen geeignet, die Langzeit-Datenströme (wie zum Beispiel Datei-Übertragungen
oder Sprach-Kommunikationen)
erzeugen, ist jedoch für
Transaktions-Datenströme ungeeignet,
bei denen das Konzept einer vereinbarten Datenstrom-Rate nicht relevant
ist. Typischerweise würden
alle Pakete, die einem einzigen (Langzeit-)Datenstrom zugeordnet
sind, anfänglich
mit dem gleichen Code markiert; ein Verkehrs-Konditionierungs-Mechanismus würde dann
die Markierungs-Rate auf einen alternativen Wert für den Anteil
der Pakete ändern,
die den vereinbarten Datenstrom überschreiten
(oder alternativ würden überschüssige Pakete
verworfen).
-
Router,
die die Pakete verarbeiten während
sie über
das IP-Netzwerk weitergeleitet werden, inspizieren den Code und
behandeln jedes Paket, das mit dem gleichen Wert markiert ist, in
der gleichen Weise, wenn die Priorität oder Präferenz bestimmt wird, die diesen
Paketen auf dem nächsten
Sprungabschnitt ihres Pfades durch das Netzwerk gegeben wird. Jeder
Satz von in ähnlicher
Weise markierten Paketen stellt eine Klasse dar, und durch Anwenden
unterschiedlicher Behandlungen auf unterschiedliche Klassen kann
eine unterschiedliche Dienstgüte
für jede
Klasse erreicht werden. Beispielsweise kann der Zugang an einen
Teil des Netzwerkes für
Verkehr in einer vorgegebenen Klasse verweigert werden, der in irgendeiner
messbaren Weise einen vorher vereinbarten Vertrag übersteigt,
der typischerweise als Dienstgüte-Vereinbarung
(SLA) bekannt ist.
-
Aufgrund
der Eigenart des Paket-Verkehrs, der durch eine Anwendung erzeugt
wird, die einen Transaktions-Dienst erfordert (beispielsweise eine
Web-Seiten-Anforderung
und ein Herunterladen) ist es schwierig, eine derartige Dienstgüte-Vereinbarung auf
der Grundlage einer einziger Klasse für derartige Pakete zu erzeugen.
Das Netzwerk ist nicht in der Lage, die durch Verkehr dieser Art
hervorgerufene Last vorherzusagen oder in einfacher Weise zu steuern.
-
Im
Wesentlichen kann die durch einen derartigen Verkehr erzeugte Last
wie folgt charakterisiert werden: eine Anforderung bedingt, dass
eine Last von dem Klienten zum Server übertragen wird, die als ein
zeitlich begrenztes Daten-"Stück" charakterisiert
wird, die Anforderung ruft eine Antwort, die ebenfalls ein zeitlich begrenztes
Daten-"Stück" ist, in der Server-Klienten-Richtung
hervor; und für
jede spezielle Art von Anwendung können die Größen dieser Stücke statistisch
charakterisiert werden.
-
Daher
kann auf einem Netzwerk, das eine beträchtliche Anzahl dieser Transaktionen
unterstützt,
die Gesamtlast mit beträchtlicher
Gewissheit vorausgesagt werden, vorausgesetzt das die Anzahl von
Anforderungen und Antworten, die sich im Durchlauf befinden, durch
das Netzwerk überwacht
werden kann.
-
Um
in der Lage zu sein, die von einem Dienst für Transaktions-Anwendung übertragene
Last zu kontrollieren, benötigen
die Router und andere Netzwerk-Elemente,
die eine Routenführung
der Pakete ausführen,
einen Mechanismus, der es diesen ermöglicht, Verkehr entsprechend
der tatsächlichen
und der vorhergesagten Last zuzulassen und auszuschließen, die
an das Netzwerk während
der Dauer einer Transaktion übertragen
wird, die gerade beginnt.
-
In
allgemeinen Ausdrücken
ist es nicht möglich,
dass ein Gerät
oder Netzwerk, von dem dieser Verkehr nicht ausgeht, den Anfang
und das Ende derartiger Transaktionen bestimmt. Entsprechend kann
ein geeigneter Dienst unter Verwendung einer einzigen Klasse für alle derartige
Pakete nicht bereitgestellt werden.
-
Bei
einer ersten Ausführungsform
der Erfindung erfolgt folgendes:
- • das Anfangs-Paket
jeder Anforderung und Antwort wird als zu einer speziellen Klasse,
A, zugehörig
markiert.
- • Diejenigen
Pakete die weder als erste noch als letzte in einer Anforderung
oder Antwort übertragen
werden, werden mit einer dritten Klasse, B, markiert, die von A
verschieden ist.
- • Das
abschließende
Paket jeder Anforderung und Antwort wird als zu einer Klasse, C,
zugehörig
markiert, die sowohl von A als auch von B verschieden ist.
- • Wenn
eine Anforderung oder Antwort ein einziges Paket umfasst, so wird
eine zusätzliche
Marke verwendet, um die Mitgliedschaft zu beiden Weiterleitungs-Klassen
A und C anzuzeigen.
-
Zusätzlich und
für jede
Klasse von Verkehr kann der Router mit einer statistischen Verteilungs-Information
versehen werden, die die Art der Transaktionen dieser Klasse charakterisiert.
-
Unter
Bezugnahme auf 1 ist ein Netzwerk von Routern 10–11 gezeigt,
von denen einige 10 eine Netzwerk-Zugangs-Funktionalität unterstützen, während dies
andere 11 nicht tun können.
Jeder Router umfasst einen Prozessor 10a, der mit Eingangs-Strömen an seinen
Verbindungen 12 verbunden ist und ein Speichermedium 10b umfassen
kann. Während
jedes Paket durch einen Router in einem Netzwerk hindurchläuft, kann
der Router die Differenz zwischen der Anzahl von Transaktions-Start-(A)
und Transaktions-Ende-(C-)Paketen verfolgen, die in einer bestimmten
Richtung hindurchgelaufen sind. Dies gibt eine Zählung der Anzahl von Transaktionen,
die derzeit zu irgendeiner vorgegebenen Zeit ablaufen. Die Kombination
diese Information mit der bekannten statistischen Verteilung des
Daten-Verkehrs, die für
die die Daten erzeugende Anwendung relevant ist, ermöglicht es
dem Router, einen statistischen Schätzwert der derzeitigen Last
auf das Netzwerk zu bilden, und insbesondere der Last auf die nächste Verbindungsstrecke
in dem Netzwerk, entlang der die Daten übertragen werden. Sowohl die
Zählung
der Anzahl von Transaktionen, die derzeit ablaufen, als auch die
statistischen Daten können
auf dem örtlichen
Speichermedium 10b gespeichert werden.
-
Der
Router kann dann diese Verkehrs-Information zur Begrenzung der Gesamtzahl
der gerade ablaufenden Transaktionen verwenden. Die wird dadurch
erreicht, dass die Datenstrom-Steuer-Mechanismen des TCP verwendet
werden, die wie folgt arbeiten. Im Normalbetrieb ist eine Transport-Schicht-Verbindung
unter Verwendung des TCP-Protokolls ein ein Fenster bildendes, Datenstromgesteuertes
zuverlässiges Byte-Strom-Protokoll.
Zur Erzielung einer Zuverlässigkeit
wird ein System für
positive Bestätigungen
von der empfangenen Station verwendet (das heißt jedes empfangene Datenpaket
wird durch das Senden eines ACK-(Besätigungs-)Paketes
von dem Empfänger
an den Sender bestätigt).
-
Der
Datenstrom-Steuer-Mechanismus, der von dem TCP verwendet wird, ist
kompliziert und so ausgelegt, dass es dem TCP ermöglicht wird,
die verfügbare Übertragungs-Bandbreite
und den Überlastungs-Zustand
von praktisch jeder Übertragungsstrecke
anzupassen.
-
Als
ein zuverlässiges
Transport-Schicht-Protokoll ist das TCP verantwortlich für die Lieferung
eines fehlerfreien Stromes von Bytes, die in der richtigen Folge
zugestellt werden. Weil der Verlust von Paketen möglich ist,
muss das TCP erneute Aussendungen ausführen, um diese Charakteristiken
zu erzielen.
-
Zusätzlich führt das
in zwei miteinander kommunzierenden Endsystemen ablaufende TCP eine
Ende-zu-Ende-Datenstrom-Kontrolle an dem Datenstrom aus. Die Menge
an Daten, die von einer TCP-Quelle ausgesandt werden, ist durch
den Fenster-Mechanismus beschränkt.
Zu Beginn einer TCP-Verbindung kann die TCP-Quelle lediglich eine kleine Anzahl
von Datenpaketen senden. Bei Empfang der ACK-Rahmen für diese
Datenpakete vergrößert die
TCP-Quelle dann die Fenster-Größe und sendet
mehr Daten. Auf diese Weise verhindert der TCP-Fenster-Mechanismus, das
eine große
Anzahl von Datenpaketen anfänglich
auf das Netzwerk ausgesandt wird.
-
Das
Fenster-Öffnungs-Verfahren
hat drei Phasen:
- • ein schneller Anstieg (P1),
der als „langsamer
Start" bekannt ist,
- • ein
langsamer Anstieg (P2), der als „Überlastungs-Vermeidung" bekannt ist,
- • konstant;
wobei das Fenster vollständig
offen ist (P3).
-
Zu
Anfang ist die Fenster-Größe gleich
eins, und die Quelle kann nur ein Datenpaket senden. Bei Empfang
des ACK-Rahmens wird das Fenster auf zwei Pakete vergrößert, und
zwei neue Pakete können
ausgesandt werden. Für
jeden empfangenen ACK-Rahmen wird das TCP-Fenster um eine Paket-Größe vergrößert, und
eine Menge von neuen Datenpaketen entsprechend einem Fenster wird
ausgesandt. Entsprechend wird diese Phase als die exponentielle
Wachstums-Zone bezeichnet,
weil der Wert der TCP-Fenster-Größe exponential
ansteigt: 1, 2, 4, 8, 16, und so weiter, für jeden Umlauf-Zyklus.
-
Wenn
das TCP-Fenster die Hälfte
seiner maximalen Größe erreicht,
so erfolgt ein Eintritt in die Phase mit langsamen Anstieg. Bei
dieser Phase verlangsamt sich das Wachstum, und es vergrößert sich
lediglich um ein Datenpaket pro Umlaufzeit (RTT), das heißt, wenn
alle Pakete von dem derzeitigen Fenster bestätigt werden. Diese Phase endet,
wenn das TCP-Fenster vollständig
geöffnet
wurde. Wenn das TCP-Fenster vollständig geöffnet wurde, so befindet sich
die TCP-Verbindung in einer Art von Gleichgewichts-Zustand, weil
während
ein Paket das Netzwerk verläßt, ein
neues Paket eintritt. Das TCP hat einen Eigen-Takt-Zeit-Fenster-Größen-Mechanismus,
der durch ACK-Rahmen unterhalten wird. Die Verzögerung, die ein Datenpaket
und dessen ACK-Rahmen erfährt,
wird zur dynamischen Einstellung des Datenstromes auf sowohl die
verfügbare Bandbreite
als auch die vorherrschende Netzwerk-Last verwendet.
-
Wenn
ein TCP-Datenpaket verloren geht, kann der Sender eine Wiederherstellung
unter Verwendung entweder des schnellen Neuaussendungs-Schemas ausführen oder
darauf warten, dass der Neuaussendungs-Zeitablauf abläuft. Das
schnelle Neuaussendungs-Schema wird durch die Ankunft von zumindest
drei Duplikat-ACK-Rahmen
ausgelöst,
was die Notwendigkeit anzeigt, dass das fehlende Paket neu ausgesandt wird.
Auf diese Neuaussendung folgt das Überlastungs-Vermeidungs-Verfahren, das die TCP-Fenster-Größe auf die
Hälfte
verkleinert. Wenn im Gegensatz hierzu der Sender auf dem Neuaussendungs-Zeitablauf
beruht, wird die Paket-Aussendungs-Rate drastisch verringert, weil
auf die Neuaussendung die Prozedur des langsamen Starts folgt, bei
der die Fenster-Größe auf ein
Paket zurückgesetzt
wird. Wie dies zu erkennen ist, verringert sich in beiden Fällen der
Wert des Verkehrs, der von einem Sender an das System angeboten
wird, doch ist in dem zweiten Fall die Verringerung drastischer.
-
Gemäß der vorliegenden
Erfindung werden Pakete vorzugsweise verworfen, während sich
das Protokoll in der langsamen Start-Phase befindet, wenn die Fenster-Größe gleich
eins ist, statt zu irgendeiner späteren Stufe. Dies entspricht
dem Verwerfen von Anfangs-Paketen von einer vorgegebenen Transaktion
(das heißt
demjenigen der Klasse A). Dies verhindert effektiv, dass die TCP-Sitzung
irgendwelche weiteren Pakete auf die Verbindung sendet, bis der
Neuaussendungs-Zeitablauf abgelaufen ist, wodurch die Last, die
das Netzwerk erfährt,
beschränkt
wird, ohne das solche unnötigen
Paketen ausgesandt werden. Wenn ein anfängliches Paket einer Transaktion
(das heißt
ein Paket, das als Paket der Klasse A markiert ist) von einem Router
auf seinem Pfad durch ein Netzwerk verworfen wird (beispielsweise,
weil das Netzwerk-Verwaltungs-System das Netzwerk als zu derzeit
zu stark belastet betrachtet, um neue Transaktionen anzunehmen),
so wird das Paket nicht an seinem Ziel empfangen und daher nicht
an den Ursprungs-Sender zurück
bestätigt.
Entsprechend dem TCP-Übertragungs-Schema, das vorstehend
beschrieben wurde, wurde das Anfangs-Paket während der langsamen Start-Phase
des TCP ausgesandt, und speziell dann, wenn das Fenster nur eine
Breite von einem Paket hat (die Situation, in der die Sitzung gerade
eingeleitet wurde). Keine folgenden Pakete (der Klassen B und C)
von der gleichen Transaktion werden ausgesandt, bevor nicht das
Start-Paket (der Klasse A) erfolgreich bestätigt wurde.
-
Zu
geeigneter Zeit sendet der TCP-Sitzungs-Sender das Start-Paket im
normalen Verlauf des Betriebs des TCP-Protokolls erneut aus. Wenn
sich zu der Zeit dieser Neuaussendung die Last auf das Netzwerk
verringert hat, wird die neue Kopie des Start-Paketes erfolgreich
weitergeleitet und bestätigt,
worauf der Rest der Transaktions-Daten (in Paketen, die als Pakete
der Klassen B und C markiert sind) über das Netzwerk wie normal
weitergeleitet wird. Das Start-Paket wird gezählt, wobei die ausstehende
Transaktions-Last inkrementiert wird und damit die laufende Schätzung der
Verkehrs-Last vergrößert. Die
Verarbeitung des entsprechenden End-Paketes (der Klasse C) bewirkt,
dass der Zähler
dekrementiert wird, wodurch der laufende Schätzwert der Verkehrs-Last verringert
wird.
-
Entsprechend
ist ein Netzwerk-Verwaltungs-System in der Lage, einfach durch Zählen von
Paketen, die mit dem Codes für
die erste und letzte Klasse markiert sind, die angenäherte Last,
die von einem Transaktions-Dienst im Netzwerk auferlegt wird, als
die Differenz zwischen den Gesamt-Summen derartiger Pakete abzuschätzen, die
ausgesandt und bestätigt
werden, und die die Anzahl von derzeit ablaufenden Transaktionen
darstellen. Dies kann in eine Näherung
der Last durch Bezugnahme auf das statistische Profil der entsprechenden
Anforderungen und Antworten umgewandelt werden.
-
Dieser
Schätzwert
der Last, die von dem Dienst auferlegt wird, kann von einem Netzwerk-Verwaltungs-System
dazu verwendet werden, neuen Anforderungen und Antworten im Zugang
auf das Netzwerk dadurch zu verweigern, dass einfach bewirkt wird,
dass Netzwerk-Knoten absichtlich alle Pakete verwerfen, die als
Pakete der ersten Klasse, A, markiert sind. Dieses absichtliche
Verwerfen wird am besten an der ersten Gelegenheit auf den Pfad
ausgeführt,
dem das Paket in dem Netzwerk folgt, in idealer Weise an dem Zugangs-Knoten
am Umfang des Netzwerkes, so dass ein unnötiger Zwischen-Netzwerk-Verkehr
vermieden wird, der nachfolgend verworfen wird. Ein derartiges Verwerfen
der Anfangs-Pakete wird fortgesetzt, bis die Netzwerk-Last auf einen
Pegel verringert ist, bei dem neue Transaktionen zugelassen werden
können,
und zwar gemäß einem
gewissen Zulassungs-Steuer-Kriterium. Das TCP-Protokoll sendet derartige
Anfangs-Pakete erneut aus, bis eines durchgelassen wird.
-
Die
vorliegende Erfindung ergibt daher eine verbesserte Einrichtung
für die
paketweise Zulassungs-Steuerung in einem DS-Kontext. Die Klassen-Markierung
ergibt eine Einrichtung, durch die ein Dienst geboten werden kann,
der es sowohl einer Benutzer-Anwendung ermöglicht, das Verhalten des Netzwerkes so
zu beeinflussen, dass es sich in einer Weise verhält, die
besser die Notwendigkeiten des Netzwerkes wiedergibt, als auch es
einem Netzwerk-Betreiber ermöglicht,
die von Kunden erzeugte Last durch selektives Blockieren von Teilen
der Kundenverkehrs-Ströme
zu steuern.
-
Dieser
Paket-Markierungs-Mechanismus ermöglicht es, brauchbar quantitative
SLA's für Transaktions-Dienste
anzubieten, die vorher nicht möglich
waren. Mit dieser zusätzlichen
Fähigkeit
zur Kontrolle der Last auf das Netzwerk in dieser Weise können Transaktions-Dienste
verbesserte Zusicherungen hinsichtlich der Zustellung der Daten „Stücke" durch passende Verwendung
der Priorität
und Reservierung von Ressourcen bieten.
-
Obwohl
die Erfindung hinsichtlich eines einzigen Satzes von drei Klassen
beschrieben wurde, kann die Erfindung auch gleichzeitig auf einer
Grundlage von einer Klasse von Verkehr angewandt werden, wobei unterschiedliche
Pegel der Steuerung und unterschiedliche statistische Charakteristiken
für unterschiedliche Klassen
von Verkehr verwendet werden können.
-
Bei
einer ersten bevorzugten Ausführungsform
der vorliegenden Erfindung wird ein Internetprotokoll-Kopffeld,
das als das differenzierte Dienste-(DS-)Feld bezeichnet wird, definiert,
das die vorhandenen Definitionen des Internetprotokoll-Version 4-(IPv4-)ToS-Oktettes
und des Internetprotokoll-Version 6-(IPv6-)Verkehrsklassen-Oktetts ersetzt.
-
Es
wird nunmehr auf 3 Bezug genommen, in der eine
schematische Zusammenfassung der Inhalte eines Internetprotokoll-Version
4-Paket-Kopffeldes gezeigt ist, wobei die Felder gezeigt sind, die
dieses Kopffeld umfasst: Version, Internet-Kopffeld-Länge (IHL),
Dienst-Typ (ToS), Gesamtlänge,
Identifikation, Flaggen, Fragment-Offset, Lebensdauer, Protokoll,
Kopffeld-Prüfsumme,
Quellen-Adresse,
Ziel-Adresse, Optionen und Auffüllung.
Jede Skalenmarkierung in der Figur bezeichnet eine Bit-Position.
-
Von
diesen Feldern ist es das Dienst-Typ-(ToS-)Feld, das in dem vorliegenden
Kontext von Interesse ist. Wie dies in 4 gezeigt
ist, besteht es aus 8 Bits und ergibt eine Anzeige der abstrakten
Parameter der gewünschten
Dienstgüte.
Die ToS-Parameter sollen zur Führung
der Auswahl der tatsächlichen
Dienst-Parameter verwendet werden, wenn ein Datagramm über ein
bestimmtes Netzwerk ausgesandt wird. Einige Netzwerke bieten ein
Dienst-Präzedenz-Merkmal,
das einen Verkehr mit hoher Präzedenz
als wichtiger als anderen Verkehr behandelt. Dies wird allgemein
dadurch erzielt, das zu Zeiten hoher Last lediglich Verkehr oberhalb einer
bestimmten Präzedenz
akzeptiert wird. Die Hauptauswahl ist ein dreifacher Kompromiss
zwischen niedriger Verzögerung,
hoher Zuverlässigkeit
und hohem Durchsatz.
-
In
dem ToS-Feld werden die Bits 0–2
zur Anzeige der Präzedenz
verwendet, das Bit 3 wird zur Anzeige der Verzögerung (D) verwendet (0 = normale
Verzögerung; 1
= niedrige Verzögerung),
das Bit 4 wird zur Anzeige des Durchsatzes (T) verwendet (0 = normaler
Durchsatz; 1 = hoher Durchsatz), das Bit 5 wird zur Anzeige der
Zuverlässigkeit
(R) verwendet (0 = normale Zuverlässigkeit; 1 = hohe Zuverlässigkeit),
und die Bits 6–7 werden
für zukünftige Verwendung
reserviert.
-
Die
Präzedenz-Kombinationen
und ihre entsprechenden Funktionen sind wie folgt:
- 111 – Netzwerk-Steuerung
- 110 – Zwischennetzwerk-Steuerung
- 101 – CRITIC/ECP
- 100 – Flash-Übersteuerung
- 011 – Flash
- 010 – Unmittelbar
- 001 – Priorität
- 000 – Routine
-
Die
Verwendung von Verzögerungs-(D-),
Durchsatz-(T-) und Zuverlässigkeits-(R-)Anzeigen
kann zur Bestimmung des Preises verwendet werden, der für eine vorgegebenen
Dienst-Typ in Rechnung gestellt wird. Lediglich eine dieser Anzeigen
kann an einem Paket gesetzt werden.
-
Das
Dienst-Typ-Feld wird zur Spezifizierung der Behandlung des Datagramms
während
seiner Aussendung über
das IP-Netzwerk verwendet.
-
Die
Netzwerk-Steuer-Präzedenz-Bezeichnung
ist lediglich zur Verwendung innerhalb eines Netzwerkes bestimmt.
Die tatsächliche
Verwendung und Steuerung dieser Bezeichnung hängt von der Entscheidung jedes
Netzwerk-Betreibers ab. Die Inter-Netzwerk-Steuer-Bezeichnung ist
zur Verwendung lediglich durch Überleiteinrichtungs-Steuer-Urheber
bestimmt. Wenn die tatsächliche
Verwendung dieser Präzedenz-Bezeichnungen
von irgendeiner Bedeutung in einem bestimmten Netzwerk ist, so liegt
es in der Verantwortlichkeit des Betreibers dieses Netzwerkes, den
Zugang zu und die Verwendung von diesem Präzedenz-Bezeichnungen zu kontrollieren.
-
In 5 ist
eine schematische Darstellung der entsprechenden Struktur eines
vorgeschlagenen Internetprotokoll-Version 6-Paket-Kopffeldes gezeigt,
das die Felder zeigt, aus denen es besteht: Version, Verkehrs-Klasse,
Datenstrom-Etikett, Nutzdaten-Länge,
nächstes
Kopffeld, Sprung-Begrenzung, Quellen-Adresse und Ziel-Adresse.
-
Von
diesen Feldern ist es das Verkehrsklassen-(TC-)Feld, das in dem
vorliegenden Kontext von Interesse ist. Das TC-Feld besteht aus
8 Bits.
-
Sowohl
das ToS-Feld von IPv4 als auch das TC-Feld von IPv6 sind auf eine
Länge von
8 Bits beschränkt.
Diese können
jeweils in zweckmäßiger Weise
durch ein Acht-Bit-Differenzierte Dienste-(DS-)Feld ersetzt werden,
wie dies in 4 gezeigt ist. Die Bits 0–5 des BS-Feldes
werden als ein differenzierter Dienste-Codepunkt (DSCP) verwendet, um das Verhalten
pro Hop (PHB) auszuwählen,
das auf das Paket an jedem Knoten angewandt wird; die Bits 6–7 des DS-Feldes
werden als ein derzeit unbenutztes (CU-)Feld mit zwei Bit verwendet,
das später
zugeordnet werden kann (beispielsweise für eine ausdrückliche Überlastungs-Benachrichtigung),
das jedoch derzeit nicht für
eine spezielle Verwendung zugeordnet ist. Der Wert der CU-Bits wird durch
den für
differenzierte Dienste ausgebildeten Knoten ignoriert, wenn festgestellt
wird, dass das PHB auf ein empfangenes Paket anzuwenden ist.
-
DS-konforme
Knoten wählen
PHB's durch einen
Vergleich mit dem gesamten 6-Bit-DSCP-Feld
aus, beispielsweise durch Behandeln des Wertes des Feldes als einen
Tabellen-Index, der zur Auswahl eines bestimmten Paket-Handhabungs-Mechanismus verwendet
wird, der in dieser Einrichtung implementiert wurde. Das DSCP-Feld
ist als ein unstrukturiertes Feld definiert, um die Definition von
zukünftigen
Verhaltensweisen pro Hop zu erleichtern.
-
Weil
die Umsetzung von DSCP auf PHB vollständig flexibel ist, wird eine
permanente Zuordnung von Werten in dem DSCP-Feld zu Klassen nötig. Ein
typisches Beispiel könnte
wie folgt sein:
DS-Codepunkt | Weiterleitungs-Klasse |
00100 | A |
00101 | B |
00110 | C |
00111 | A
und C |
-
Zulassungs-Steuer-Mechanismen,
wie zum Beispiel der vorstehend vorgeschlagene, sind einer Ausnützung durch
skrupellose Benutzer ausgesetzt, die sich nicht an das vorgeschlagene
Markierungs-Muster halten (beispielsweise durch Senden aller Pakete
mit einer Markierung B).
-
Das
Netzwerk kann sich gegen diese Art von Ausnutzung dadurch schützen, das
vorgeschlagen wird, das wenn Ende-Start-Paare nicht innerhalb einer
vorgegebenen Spanne von Paketen identifiziert werden, die sich auf
die erwartete Größe einer
Transaktion von dieser Quelle bezieht, das Netzwerk als solches
(beispielsweise willkürlich)
zwei Pakete von der Klasse B auf die Klasse C beziehungsweise die
Klasse A markiert. Das Paket der Klasse A würde dann genauso einer Zulassungs-Steuerung
unterworfen werden, wie auf diese Weise durch den Benutzer markierte
Pakete.
-
Wenn
der Benutzer weiterhin das Senden von Pakten der Klasse A auslässt, so
kann die Rate der Markierung durch das Netzwerk vergrößert werden,
bis abwechselnde Pakete als Klasse A und dann als Klasse C markiert
werden. Die resultierende Verringerung des möglichen Durchsatzes für den Transaktions-Strom dieses
Benutzers – im
Schlimmstfall könnte
die gesamte Transaktions-Übertragung
in der Betriebsart mit langsamen Start ausgeführt werden – bewirkt im Sinne eines ausreichenden
Anreizes für
Benutzer, Pakete entsprechend dem vorgeschlagenen Schema zu markieren,
um ein zufälliges
Verwerfen seiner Pakete und einen schlechten Durchsatz zu vermeiden.
-
Irgendein
Bereich oder Geräte-Wert,
der hier angegeben ist, kann erweitert oder geändert werden, ohne die angestrebte
Wirkung zu verlieren, wie dies für
den Fachmann bei einem Verständnis
der vorliegenden Lehren ersichtlich ist.