-
Die vorliegende Erfindung bezieht
sich auf eine Netzknotenvorrichtung, wie etwa einen Paketübertragungsknoten,
einen Paketsendeknoten und einen Paketempfangsknoten und ein für Zwischenvernetzen
geeignetes Verbindungsaufbauverfahren.
-
In den letzten Jahren sind, wie durch
den Internetentwurf (draft-ietf-ipatm-framework-doc-06.text und
draft-katsuberouter-atm-overview-01.text) gezeigt, die in 1) und
2) beschriebenen Techniken vorgeschlagen worden.
-
Diese Techniken stellen Verfahren
zum Implementieren einer Durchgangsverbindung in einem weitläufigen,
geschalteten Netz bereit.
-
Eine Verbindung, durch die ein Pakettransfer ohne
Netzschichtverarbeitung innerhalb eines logischen Netzes (z. B.
einem IP-Unternetz) durchgeführt
werden kann, wird eine Datenlinkverbindung genannt. Eine durch Verknüpfen einer
Mehrzahl von Datenlink-Verbindungen in der Netzschicht zur Zwischennetzkommunikation
gebildete Verbindung wird eine "Sprung-für-Sprung"-Verbindung genannt.
Bei einer Sprung-für-Sprung-Verbindung
wird eine Netzschichtverarbeitung durch an Unternetzgrenzen lokalisierte
Router durchgeführt.
-
Im Gegensatz dazu wird bei einer "Durchgangs"-Verbindung die Netzschichtverarbeitung
irgendwie umgangen, selbst falls eine Sprung-zu-Sprung-Paketübermittlung
konventionellerweise notwendig sein würde. Anders ausgedrückt, kann
bei der Durchgangsverbindung eine Paketübermittlung von einem logischen
Netz in ein anderes logisches Netz durch einfaches Verarbeiten in
einer niedrigeren Schicht als der Netzschicht durchgeführt werden.
-
- 1) Nächster-Sprung-Auflösungsprotokoll
(nachfolgend als NHRP, next hop resolution protocol, abgekürzt): Wenn
ein Paketübertragungsknoten,
der zu einem logischen Netz gehört,
einen Server betreffs einer Netzadresse eines Zielknotens abfragt,
der zu einem anderen logischen Netz gehört, gibt der Server die Verknüpfungsadresse des
Zielknotens oder des dem Zielknoten am nächsten befindlichen Routers
aus. Dann wird eine Daten-Link-Verbindung von Übertragungsknoten zum Zielknoten
oder zum dem Ziel nächsten
Router, basierend auf dieser Verknüpfungsadresse, aufgebaut. Diese
Daten-Link-Verbindung ist
eine Durchgangsverbindung.
- 2) Zellenschaltrouter (im folgenden als CSR, cell switch router,
abgekürzt):
Für spezifizierten
Verkehr wird eine Paketübermittlung
nur unter Verwendung der Datenlinkschicht unter Umgehung der Netzschichtverarbeitung
in einem Zwischenrouter durchgeführt.
Dies wird wie folgt implementiert. Der Zwischenrouter speichert
die Entsprechungsbeziehung zwischen einer Datenlinkverbindung, die
zu einem logischen Netz gehört
und einer anderen Datenlinkverbindung, die zu einem anderen logischen
Netz gehört,
für den
angegebenen Paketfluss und übermittelt
Pakete unter Verwendung dieser Entsprechungsbeziehung. Als Ergebnis
wird eine Durchgangsverbindung gebildet.
-
Solche Durchgangsverbindungen können einen
hohen Durchsatz und Niederlatenzpaketübermittlung in Zwischennetzumgebungen
erzielen.
-
Jedoch ist bei NHRP normalerweise
jedes zu übertragende
Paket ein Trigger (Auslöser)
zum Aufbauen einer Durchgangsverbindung. Genauer gesagt wird, wenn
ein Knoten beabsichtigt, zum ersten Mal ein Paket an eine Adresse
zu übertragen,
eine Durchgangsverbindung durch Auflösen der Adresse aufgebaut;
danach werden alle Pakete mit derselben Zielnetzadresse durch diese
Durchgangsverbindung übermittelt.
Dem gemäß wird eine
Durchgangsverbindung selbst dann aufgebaut, wenn die mittels der Durchgangsverbindung
erzielte Durchsatzverbesserung tatsächlich nicht den beim Aufbau
der Durchgangsverbindung beteiligten Überbau aufwiegt. Weiterhin
wird es schwierig, die Bandbreite des Kommunikationskanals effizient
zu nutzen, weil solche Durchgangsverbindungen, die tatsächlich nicht
viel verwendet werden, die Bandbreite belegen.
-
Im Gegensatz dazu ist es beim Aufbau
einer Durchgangsverbindung unter CSR, abgesehen von der Verwendung
jeder Paketübertragung
als Trigger, möglich,
als Trigger zu verwenden, a) die Tatsache, dass mehr als eine fixe
Anzahl von Paketen an ein gegebenes Ziel übertragen worden sind oder
b) die Tatsache, dass eine TCP (transmission control protocol, Übertragungssteuerprotokoll)-Nachricht,
bei der das Flag SYN gesetzt ist, übertragen werden soll. Jedoch
macht im Falle von a) die Tatsache, dass es notwendig ist, die Anzahl
von Paketen für
alle Ziele zu zählen,
die Knotenstruktur kompliziert und nebenher kann eine Durchgangsverbindung
nicht aufgebaut werden, bevor nicht die Anzahl von Paketen einen gewissen
Wert erreicht hat. Und im Fall von b) wird eine Durchgangsverbindung
selbst für
Verkehr aufgebaut werden, bei dem nur kleine Mengen an Daten nur
einige wenige Male ausgetauscht werden (d. h. für Verkehr, in Bezug auf den
ein vorteilhaftes Passendmachen des im Aufbau der Durchgangsverbindung
beteiligten Überbaus
nicht erzielt wird und etablierte Durchgangsverbindungen unnötigerweise
die Kommunikationskanalbandbreite mit Beschlag belegt).
-
Ein Übersichtsartikel mit dem Titel "Virtual LANs Get
Real – Ethernet
Switch Makers are taking the lead in deploying virtual LANs across
campus networks in data communications", Band 24, Nr. 3, 1. März 1995,
Seiten 87–92,
94 und 96, veröffentlicht von
McGraw Hill, diskutiert Routen-versus-Schalten in LANs und erwähnt insbesondere Sprung-für-Sprung-Verbindungen.
-
Es ist daher eine Aufgabe der vorliegenden Erfindung,
ein System bereitzustellen, durch das der Aufbau einer Durchgangsverbindung
auf Verkehr beschränkt
werden kann, für
den ein bestimmter Pegel von Kommunikation (d.h. Gesamtdatenmenge,
Anzahl von Paketen, Lebenslänge
des Paketflusses etc.) angenommen werden kann, nachdem die Durchgangsverbindung
aufgebaut worden ist.
-
In einem ersten Aspekt stellt die
vorliegende Erfindung ein Verfahren zum Aufbau einer Durchgangsverbindung
bereit, durch welche Pakete von einem Quellknoten, der zu einem
logischen Netz gehört,
zu einem Zielknoten, der zu einem anderen logischen Netz gehört, übermittelt
werden, welche Netzschicht-Verarbeiten an zumindest einer Grenze zwischen
logischen Netzen umgeht, umfassend die Schritte des Empfangens eines
Pakets von einem Quellknoten an einem Zielknoten oder eines Pakets von
einem Zielknoten an einem Quellknoten; Bestimmen, ob das empfangene
Paket ein Trigger von Quelleninformationen und/oder Zielinformation
der Netzschicht und/oder einer Schicht, die höher als die Netzschicht ist,
die in dem empfangenen Paket enthalten ist, ist und falls das empfangene
Paket ein Trigger ist, Anweisen eines Knotens, der einen Aufbaubetrieb
initiieren kann, den Aufbaubetrieb zu initiieren, um die Durchgangsverbindung
herzustellen.
-
Dieser Aspekt der vorliegenden Erfindung definiert
ein Verfahren zum Initiieren eines Aufbaubetriebs einer Durchgangsverbindung,
basierend auf der Quell-/Zielinformation
einer Schicht, die höher
als die Netzschicht (beispielsweise Transportschicht) des Pakets
ist. Das Paket, entweder von dem Quellknoten zum Zielknoten oder
vom Zielknoten zum Quellknoten, das als Trigger entdeckt worden
ist, suggeriert die Wahrscheinlichkeit, dass nachfolgend eine relativ
große
Anzahl von Paketen zum Zielknoten erzeugt werden, da die Wahrscheinlichkeit
von einem auf einer höheren Schicht
als der Transportschicht beim Verarbeiten des Pakets durch den Quell/Zielknoten
verwendeten Protokoll abhängt.
-
Auch definiert dieser Aspekt der
vorliegenden Erfindung ein Verfahren zum Initiieren eines Aufbaubetriebs
einer Durchgangsverbindung basierend auf der Quell-/Zielinformation
der Netzschicht des Pakets. Das Paket, entweder von dem Quellknoten zum
Zielknoten oder vom Zielknoten zum Quellknoten, das als Trigger
bestimmt worden ist, suggeriert die Wahrscheinlichkeit, dass nachfolgend
eine relativ große
Anzahl von Paketen zum Quellknoten erzeugt wird, weil es in einigen
Netzumgebungen oft passiert, dass ein spezifischer Knoten eine hohe
Wahrscheinlichkeit von Paketfluss in vergleichsweise großen Anzahlen
hat.
-
Gemäß einem zweiten Aspekt stellt
die vorliegende Erfindung eine Netzknotenvorrichtung bereit, die
erste Empfangsmittel zum Empfangen eines Pakets, Bestimmungsmittel
zum Bestimmen, ob das vom Empfangsmittel empfangene Paket ein Trigger ist,
anhand von Quellinformation und/oder Zielinformation einer Netzschicht
und/oder einer Schicht, die höher
als die im empfangenen Paket enthaltene Netzschicht ist, ist und
Aufbaumittel zum Initiieren, wenn das Bestimmungsmittel feststellt,
dass das Paket ein Trigger ist, eines Aufbaubetriebs, um eine Durchgangsverbindung
herzustellen, durch welche Pakete vom Quellknoten zum Zielknoten übermittelt werden,
wobei Netzschichtverarbeitung an zumindest einer Grenze zwischen
logischen Netzen umgangen wird.
-
Dieser Aspekt der vorliegenden Erfindung definiert
eine Konfiguration eines Netzwerkknotens, der Pakete überträgt und die
Triggerfeststellung gemäß der vorliegenden
Erfindung durchführt.
-
Das Empfangsmittel kann das Paket
von einem Quellknoten empfangen, der zu zumindest einem logischen
Netz oder einer oberen Schicht des Netzwerkknotens gehört, das
zu einem Zielknoten reist, der zu einem anderen logischen Netz gehört, oder
es kann ein Paket von einem Zielknoten empfangen, der zu zumindest
einem logischen Netzwerk gehört,
das zu einem Quellknoten reist, der zu einem anderen logischen Netzwerk
oder einer höheren Schicht
des Netzwerkknotens gehört.
-
Die Vorrichtung kann weiterhin Übertragungsmittel
zum Übertragen
von an den Zielknoten gerichteten Paketen durch die gemäß dem von
den Aufbaumitteln initiierten Aufbaubetrieb hergestellte Durchgangsverbindung
umfassen.
-
Die Vorrichtung kann weiter zweite
Empfangsmittel zum Empfangen von durch die Durchgangsverbindung übertragenen
Paketen umfassen.
-
Andere Merkmale und Vorteile der
vorliegenden Erfindung werden aus der folgenden Beschreibung im
Zusammenhang mit den beigefügten
Zeichnungen ersichtlich.
-
1 ist
ein schematisches Funktionsdiagramm, welches eine Konfiguration
einer Ausführungsform
eines Paketübertragungsknotens
gemäß der vorliegenden
Erfindung zeigt.
-
2 ist
eine diagrammatische Illustration einer Durchgangsverbindungszustandstabelle,
die für
den Betrieb des Knotens verwendet wird.
-
3 ist
ein Flussdiagramm, welches ein Verfahren zum Initiieren eines Aufbaus
einer Durchgangsverbindung durch den Knoten zeigt.
-
4 ist
ein Flussdiagramm, welches eine Prozedur des Zeitnehmers zeigt.
-
5 ist
ein Diagramm eines Netzkonfigurations-Beispiels, das CSR beinhaltet.
-
6 ist
ein Diagramm eines anderen Netzkonfigurations-Beispiels, das CSR beinhaltet.
-
7 ist
ein Diagramm, das eine Beziehung zwischen einem Triggerpaket und
einem Detektionsknoten zeigt.
-
8 ist
ein Diagramm, welches eine andere Beziehung zwischen einem Triggerpaket
und einem Detektionsknoten zeigt.
-
9 ist
ein Diagramm, welches eine andere Beziehung zwischen einem Triggerpaket
und einem Detektorknoten zeigt.
-
10 ist
ein Diagramm, welches eine andere Beziehung zwischen einem Triggerpaket
und einem Detektorknoten zeigt.
-
11 ist
ein schematisches Funktionsblockdiagramm, welches eine Konfiguration
einer anderen Ausführungsform
eines Paketübertragungsknotens
gemäß der vorliegenden
Erfindung zeigt.
-
12 ist
ein schematisches Funktionsblockdiagramm, welches eine Konfiguration
einer anderen Ausführungsform
eines Paketempfangsknotens gemäß der vorliegenden
Erfindung zeigt.
-
13 ist
ein schematisches Funktionsblockdiagramm, welches eine Konfiguration
einer anderen Ausführungsform
eines Paketempfangsknotens gemäß der vorliegenden
Erfindung zeigt.
-
14 ist
ein schematisches Funktionsblockdiagramm, welches eine Konfiguration
einer anderen Ausführungsform
eines Paketübermittlungsknotens
gemäß der vorliegenden
Erfindung zeigt.
-
15 ist
ein Flussdiagramm, welches eine Prozedur zum Initiieren eines Aufbaus
einer Durchgangsverbindung durch den Knoten von 14 zeigt.
-
16 ist
ein schematisches Funktionsblockdiagramm, welches eine Konfiguration
einer NHRP-Ausführungsform
eines Paketübertragungsknotens
gemäß der vorliegenden
Erfindung zeigt.
-
17 ist
eine Diagrammillustration eines NHRP-Pufferspeichers, der für Betriebsvorgänge des
Knotens von 16 verwendet
wird.
-
18 ist
ein Flussdiagramm, welches eine Prozedur zum Initiieren eines Aufbaus
einer Durchgangsverbindung durch den Knoten von 16 zeigt.
-
19 ist
ein Flussdiagramm, welches eine Prozedur des Zeitnehmers zeigt.
-
20 ist
ein Diagramm eines Netzkonfigurationsbeispiels, welches NHRP verwendet.
-
21 ist
ein schematisches Funktionsblockdiagramm, welches eine Konfiguration
einer anderen Ausführungsform
eines Paketübertragungsknotens
gemäß der vorliegenden
Erfindung zeigt.
-
22 ist
ein Flussdiagramm, welches eine Prozedur zum Initiieren eines Aufbaus
einer Durchgangsverbindung durch den Knoten von 21 zeigt.
-
23 ist
ein Diagramm eines anderen Netzkonfigurations-Beispiels, welches CRS beinhaltet.
-
24 ist
ein schematisches Funktionsblockdiagramm, welches eine Konfiguration
einer anderen Ausführungsform
eines Paketübertragungsknotens
gemäß der vorliegenden
Erfindung zeigt.
-
25 ist
ein schematisches Funktionsblockdiagramm, welches eine Konfiguration
einer anderen NHRP-Ausführungsform
eines Paketübertragungsknotens
gemäß der vorliegenden
Erfindung zeigt.
-
26 ist
ein Flussdiagramm, welches eine Prozedur zum Initiieren eines Aufbaus
einer Durchgangsverbindung durch den Knoten von 25 zeigt.
-
27 ist
ein Diagramm eines anderen Beispielnetzkonfigurationsbeispiels,
das NHRP verwendet.
-
Ein Netzknoten überprüft Quellen-/Zielinformationen
der Transportschicht und/oder einer Quellen-/Zielinformation der
Netzschicht eines empfangenen Pakets, und falls die überprüfte Information
eine vorgegebene Bedingung erfüllt,
bestimmt er, welches Paket ein Trigger sein soll. Dann weist der
Netzknoten einem anderen Knoten, der zum Initiieren eines Aufbaubetriebs
in der Lage ist, welcher der Netzknoten selbst sein kann, an, den
Aufbau einer Durchgangsverbindung für, dem Triggerpaket entsprechenden,
Verkehr zu initiieren. Beispielsweise können Pakete, deren Quellen-
oder Zielport FTP, HTTP oder NNTP ist, als Trigger dienen.
-
Nunmehr wird die bevorzugte Ausführungsform
gemäß der vorliegenden
Erfindung im Detail beschrieben.
-
Ein Netzknoten, der in der Lage ist,
Startpunkt oder Endpunkt einer Durchgangsverbindung zu sein, konsultiert
vor Übertragung
eines Pakets oder nach Empfangen eines Pakets nicht nur die Information
der Netzschicht des Pakets, sondern auch die Quelleninformation
und/oder die Zielinformation der Transportschicht.
-
Der Netzknoten kann entweder ein
Host oder ein Router sein. Jeder auf dem Weg von einem Quellenknoten
zu einem Zielknoten lokalisierte Netzknoten kann ebenfalls der Startpunkt
oder Endpunkt einer Durchgangsverbindung sein. Die Quellen- und Zielinformation
der Transportschicht ist in einem Transportschicht-Header (Kopfbereich)
enthalten.
-
Weiterhin konsultiert, falls notwendig,
der Knoten auch aus den Transportschichtdaten (ein anderer Bereich
als der Header) im Paket erhaltene Informationen.
-
Falls der Knoten als ein Ergebnis
dieser Konsultationen zur Entscheidung kommt, dass es lohnenswert
ist, eine Durchgangsverbindung herzustellen, wird das Paket ein
Trigger zum Aufbau einer Durchgangsverbindung. Insbesondere löst der Knoten
die Initiierung des Aufbaubetriebs einer Durchgangsverbindung aus
und überträgt das Paket.
-
Falls er andererseits entscheidet,
dass der Aufbau/Überbau
so groß ist,
dass sich ein Herstellen einer Durchgangsverbindung nicht lohnt, überträgt der Knoten
das Paket wie üblich,
so dass das Paket den Zielknoten durch Sprung-für-Sprung-Übermittlung
erreicht.
-
Es gibt verschiedene Arten, eine
Durchgangsverbindung aufzubauen und die Initiierung des Aufbaubetriebs
auszulösen.
Hier werden CSR und NHRP zum Aufbau einer Durchgangsverbindung beispielhaft
im weiteren Detail beschrieben. Um die Beschreibung zu vereinfachen,
wird angenommen, dass die Netzschicht IP (Internet Protokoll) und
die Transportschicht TCP (Transmission Control Protocol) oder UDP
(User Datagram Protocol) ist.
-
Auch gilt, dass, wenn die Ausdrücke "Quelle" oder "Ziel" verwendet werden,
sofern nichts anders ausgesagt ist, sie "Quelle" oder "Ziel" in
der Netzschicht bedeuten. Wenn die Ausdrücke "Adresse" verwendet werden, geben sie irgendeines
von "Knotenadresse", "Netzmaske des Knotens" und "Fluss ID" an.
-
Im Fall von CSR werden die folgenden
vier Modi beschrieben, die davon abhängen, ob ein Ausgabepaket (zu übertragendes
Paket) als Trigger verwendet wird oder ein Eingangspaket (empfangenes Paket)
als Trigger verwendet wird, oder ob der Knoten, der den Trigger
feststellt, (der entscheidet, ob Initiierung des Aufbauvorgangs
ausgelöst
wird oder nicht) der Quellenseitenknoten (der Knoten, der den Startpunkt
der Durchgangsverbindung werden kann) oder den Zielseitenknoten
(der Knoten, der der Endpunkt der Durchgangsverbindung sein kann)
ist.
-
Der Fall, bei dem der Quellseitenknoten
einen Aufbaubetrieb initiiert (d. h. eine Aufbauinitiierungsnachricht überträgt), wird
unten beschrieben werden, obwohl ein Fall auftreten kann, bei dem
der Zielseitenknoten den Aufbaubetrieb initiiert. Der Aufbaubetrieb
kann durch Austauschen einer Mehrzahl von Nachrichten wie auch durch Übertragung
einer Einzelnachricht implementiert sein. Im ersteren Fall bedeutet
die Aufbauinitiierungsnachricht die erste (Anfangs-)Nachricht, die in
der Durchgangsverbindungsaufbausequenz übertragen wird, und im letzteren
Fall bedeutet die Aufbauinitiierungsnachricht diese Einzelnachricht.
-
- (I) Der Fall, bei dem der Detektionsknoten
die Quellenseite ist und das Ausgangspaket als Trigger verwendet
wird ( 7).
- (II) Der Fall, bei dem der Detektionsknoten die Quellenseite
ist und das Eingangspaket als Trigger verwendet wird ( 8).
- (III) Der Fall, bei dem der Detektionsknoten die Zielseite ist
und das Ausgangspaket als Trigger verwendet wird ( 9).
- (IV) Der Fall, bei dem der Detektionsknoten die Zielseite ist
und das Eingangspaket als Trigger verwendet wird (10).
-
In den 7 bis 10 wird die Richtung des den
Trigger bildenden Pakets durch einen Durchgangslinienpfeil angezeigt
und die Richtung der Durchgangsverbindung, die versucht wird aufzubauen,
wird durch den unterbrochenen Pfeil angezeigt. Zusätzlich ist
es möglich,
eine Mehrzahl der obigen Fälle
zu kombinieren.
-
Hier umfasst ein IP-Paket einen IP-Header, TCP/UDP-Header
und TCP/UDP-Daten. Der IP-Header enthält Quellen- und Zielinformationen
der Netzschicht, was jeweils die Netzwerkadresse des Quellenknotens
und die Netzwerkadresse des Zielknotens des Pakets repräsentiert.
Diese Information wird auf der Netzschicht verwendet. Der IP-Header
enthält
auch Protokollinformationen zum Identifizieren des auf der Transportschicht
verwendeten Protokolls. Der TCP/UDP-Header enthält Quellen- und/oder Zielinformationen
der Schicht, die höher
als die Netzschicht ist, als Quellen/Ziel-Portfeld, welches das
in der höheren
Schicht als der Transportschicht verwendete Protokoll repräsentiert.
-
Fall (I) für CSR
-
1 illustriert
ein Funktionsblockdiagramm zum Durchführen der Paketübermittlung
gemäß der CSR-Technologie
im Paketübertragungsknoten.
Der Paketübertragungsknoten
kann entweder ein Host oder ein Router sein (Paketübermittlungsknoten).
In 1 zeigen durchgehende
Linien den Fluss von Paketen an und gestrichelte Linien zeigen den
Fluss von Steuerinformation an.
-
Wenn die Paketübermittlungsanalyseeinheit 100 ein
Ausgangspaket von des Knotens eigener Oberschicht empfängt (Paket,
dessen Protokoll von einer Schicht ist, die höher als die Netzschicht ist) oder
ein Übermittlungspaket
von einem anderen Knoten, findet sie eine Route in der Routingtabelle 101,
basierend auf der Ziel-IP-Adresse und übergibt das Paket der Verbindungsaufbauentscheidungseinheit 102.
-
Die Verbindungsaufbauentscheidungseinheit 102 überprüft das Paket
und die Durchgangsverbindungsstatustabelle 103 und falls
notwendig, erteilt eine Durchgangsverbindungsaufbauanweisung an die
Verbindungsaufbaueinheit 104.
-
Verbindungsstatustabelle 103 ist
im Falle von 1 wie in 2 gezeigt aufgebaut. Die Ziel-IP-Adresse
ist der Schlüssel,
wenn die Statustabelle 103 überprüft wird. Der Status kann "In Fortsetzung", "Im Aufbau" oder "Fehlen eines Eintrags" sein. "In Fortsetzung" bedeutet, dass eine
Durchgangsverbindung zum entsprechenden Ziel aufgebaut worden ist. "Im Aufbau" bedeutet, dass eine
Anweisung zum Aufbau der Verbindungsaufbaueinheit 104 erteilt worden
ist, aber eine Verbindung noch nicht hergestellt worden ist. Die
Abwesenheit eines Eintrags bedeutet, dass es keine Durchgangsverbindung
zu dem entsprechenden Ziel gibt, noch dass eine Aufbauanweisung
erteilt worden ist.
-
Das Feld "Auszeitzähler" wird periodisch durch Zeitnehmer 105 aktualisiert,
der später
beschrieben wird. Falls dieses Feld eines Eintrags, dessen Status "in Fortsetzung" ist, 0 ist, bedeutet
dies, dass zumindest ein Paket auf dieser Durchgangsverbindung in
einer gewissen Zeitperiode geflossen ist; falls dieses Feld 1 oder
mehr ist, bedeutet dies, dass keine Pakete auf dieser Durchgangsverbindung
während
der zu dieser Zahl proportionalen Zeitperiode geflossen sind. Bei
einem Eintrag, dessen Status "im Aufbau" ist, bedeutet dieses
Feld, dass, selbst wenn eine durch eine Zahl (die 0 sein kann) angezeigte
Zeit verstrichen ist, der Aufbau nicht abgeschlossen ist.
-
3 zeigt
eine Prozedur zum Initiieren eines Durchgangsverbindungsaufbaubetriebs
unter Verwendung der Statustabelle 103. Der Schritt S3
in der Figur ist optional. Der Schritt S1 in der Figur ist auch
optional, obwohl er für
den Fall empfehlenswert ist, bei dem identische Portnummern verschiedene Protokolle
anzeigen, abhängig
von dem oberen Schichtprotokoll (z. B. ob das obere Schichtprotokoll TCP
oder UDP ist).
-
Zu aller erst überprüft die Verbindungsaufbauentscheidungseinheit 102 das
Oberschichtprotokollfeld im IP-Header eines IP-Pakets, das eine
Eingabe von der Paketübermittlungsanalyseeinheit 100 ist
(S1). Falls das Prüfergebnis
(z. B. TCP oder UDP wird als Resultat erhalten) ein Protokoll ist,
das einen Durchgangsverbindungsaufbau gemäß der Vereinbarung des vorliegenden
Systems auslösen
kann (S1 JA), prüft
es die Quellen- und/oder Zielportfelder des TCP/UDP-Headers (S2).
Falls das überprüfte Protokoll
eines ist, das keinen Durchgangsverbindungsaufbau auslösen kann
(S1 Nein), wird das Paket wie üblich
durch Paketübertragungseinheit 107 übertragen.
-
Falls das Ergebnis des Prüfens des
Quellen- oder Zielportfelds im Oberschichtprotokoll (TCP oder UDP)-Header
des Pakets ergibt, dass das Paket eines ist, das einen Durchgangsverbindungsaufbau gemäß der Vereinbarung
des vorliegenden Systems auslösen
ist (S2 Ja), falls von der Systemvereinbarung verlangt, wird eine
weitere Überprüfung des TCP/UDP-Datenfelds
durchgeführt
(S3). Falls das geprüfte
Paket eines ist, das einen Durchgangsverbindungsaufbau auslösen kann
(S2 Nein) wird das Paket wie üblich
durch die Paketübertragungseinheit 107 übertragen.
-
Falls als Ergebnis entschieden wird,
dass das Paket für
die Durchgangsübermittlung
gemäß der Vereinbarung
des Systems geeignet ist (S2 Ja oder S3 Ja), wird die Durchgangsverbindungsstatustabelle 103 überprüft (S4).
Falls die Entscheidung die ist, dass das Paket nicht geeignet ist
(S2 Nein oder S3 Nein), wird das Paket wie üblich übertragen.
-
Falls als Ergebnis der Überprüfung der
Bedingungstabelle 103 gefunden wird, dass es keinen Eintrag
für die
Zieladresse des Pakets gibt, wird ein neuer Eintrag unter dem Status "im Aufbau" zusammengestellt
und der Auszeitzähler "0" (S6, S8, S9) und wird eine Anweisung
zum Aufbau der Verbindungsaufbaueinheit 104 erteilt (S7).
-
Falls andererseits bereits ein Eintrag
bezüglich
der Zieladresse des Pakets existiert, wird der in die Tabelle geschriebene
Zustand geprüft
(S5). Falls dieser "in
Fortsetzung" ist
und der Zeitauszähler
1 oder mehr ist, wird der Zeitauszähler auf "0" gesetzt (S9).
Falls der von der Prüfung
aufgefundene Zustand "in
Aufbau" ist, wird
keine Maßnahme
ergriffen.
-
Nach der oberen Bearbeitung wird
das IP-Paket an die Paketübertragungseinheit 107 ausgegeben
(S10).
-
Der Zeitnehmer 105 wird
jedes Mal betätigt, wenn
eine feste Zeit verstrichen ist, um zu prüfen, ob die Durchgangsverbindung
noch in Verwendung ist (für
die Verbindung, deren Zustand "in
Fortsetzung" ist,
oder um zu prüfen,
ob die Aufbausequenz wiederum durchgeführt werden muss (für die Verbindung, deren
Status "im Aufbau" ist). Dann wird,
falls erforderlich, der Zeitgeber die Zustandstabelle 103 aktualisieren.
-
Der Betrieb des Zeitnehmers ist in 4 gezeigt. Zunächst einmal
erhöht
er für
jeden Eintrag in der Zustandstabelle 103 das "Auszeitzähler"-Feld um die vorgegebene
Zahl (S13). Diese vorgegebene Zahl kann in den Fällen anders sein, bei denen
der Zustand des Eintrags "In
Fortsetzung" oder "im Aufbau" ist oder kann in
diesen beiden Fällen
die gleiche sein.
-
Falls das Ergebnis einen festen Wert übersteigt
(S14 Ja), wird der fragliche Eintrag freigegeben (S17). Dieser feste
Wert kann unterschiedlich sein für die
Fälle,
bei denen der Status "In
Fortsetzung" oder "in Aufbau" ist oder kann in
beiden Fällen
derselbe sein. Falls ein Eintrag freigegeben wird, der "in Fortsetzung" war (S15 Ja), wird
eine; Anweisung an die Verbindungsaufbaueinheit 104 erteilt,
die Durchgangsverbindung in Bezug auf die entsprechende Zieladresse
freizugeben (S16).
-
Die Verbindungsaufbaueinheit 104 beginnt die
Durchgangsverbindungsaufbausequenz beim Empfangen einer in Schritt
S7 von der Verbindungsaufbauentscheidungseinheit 102 erteilten
Anweisung. Das heißt,
sie sendet eine Verbindungsaufbauinitiierungsnachricht an den Nächster-Schritt-Router, der
als CSR dient, und der auf der Route der Durchgangsverbindung lokalisiert
ist.
-
Die obige Verbindungsaufbauinitiierungsnachricht
kann beispielsweise eine Durchgangsverbindungsaufbauanforderung
sein. Bei CSR wird die Durchgangsverbindung durch Registrieren der
Entsprechungsbeziehung zwischen Datenlinkverbindungen an jedem auf
dem Weg der Durchgangsverbindung lokalisierten Router aufgebaut.
Ein Beispiel der Aufbausequenz für
CSR ist wie folgt. Der Knoten, der den Aufbaubetrieb initiiert,
sendet die Durchgangsverbindungsaufbauanforderung, welche die oben
erwähnte
Registrierung der Entsprechungsbeziehung zum Nächster-Sprung-Router anfordert
(CSR).
-
Der Router, der diese Aufbauanforderung empfangen
hat, baut eine Durchgangsverbindung durch Registrieren dieser Entsprechungsbeziehung zwischen
einer ersten Verbindung und einer zweiten Verbindung auf. Die erste
Verbindung ist von dem Knoten, der die Aufbauanforderung sendet,
zum Router, und die zweite Verbindung ist von dem Router zu einem
anderen Nächster-Sprung-Router
(oder dem Zielknoten). Diese Verbindungen werden Teile der Durchgangsverbindung
bilden.
-
Falls ein weiterer nächster Schrittrouter (CSR)
auf dem Weg zum Zielknoten verbleibt, überträgt der Router weiterhin eine
andere Aufbauanforderung an den anderen Nächster-Sprung-Router und dieser
Router erweitert die Durchgangsverbindung durch Registrieren der
Entsprechungsbeziehung der Verbindungen in derselben Weise wie oben
beschrieben. Diese Erweiterung wird durch Wiederholen dieses Prozesses
bis zum Zielknoten oder jedem Router auf dem Weg zum Zielknoten
durchgeführt
und die Durchgangsverbindung endet hier.
-
Schließlich übertragen die Router (CSRs) vom
Quellenknoten gesandte Pakete, nachdem die Durchgangsverbindung
hergestellt ist, wobei sie die Netzschichtverarbeitung umgehen und
die gespeicherten Entsprechungsbeziehungen in der niedrigeren Schicht
verwenden.
-
Das obige Verarbeiten wird dort durchgeführt, wo
die entsprechenden Teile der Durchgangsverbindung bildende Datenlinkverbindungen
zwischen CSRs bereits aufgebaut sind. In diesem Fall ist beispielsweise
eine permanente virtuelle Verbindung (PVC) oder ein virtueller Pfad
(VP) zwischen den Knoten in jedem logischen Netzwerk bereits aufgebaut
worden oder der Kommunikationskanal zwischen den CSRs ist eine physische
Punkt-zu-Punkt Verbindung und der PVC oder ein VC im VP oder eine
VC in der physischen Verbindung wird als Teil der Durchgangsverbindung
verwendet.
-
Im Gegensatz dazu ist es möglich, die
notwendigen Datenlinkverbindungen zum Begründen einer Durchgangsverbindung
aktiv aufzubauen, indem geschaltete virtuelle Verbindung (SVC) verwendet wird.
In diesem Fall baut, wenn die Verbindungsaufbaueinheit 102 eine
Anweisung von der Aufbauentscheidungseinheit 104 empfängt, sie
zu allererst eine Datenlinkverbindung zum Nächster-Sprung-Router CSR mit
Signalisieren auf. Nachdem dieser Aufbau erfolgreich abgeschlossen
ist, sendet die Verbindungsaufbaueinheit 102 eine Verbindungsaufbauanforderung
(Aufbauinitiierungsnachricht) zum Nächster-Sprung-CSR.
-
Der Nächster-Sprung CSR, der die
Verbindungsaufbauanforderung empfangen hat, baut eine SVC zu seinem
Nächster-Sprungrouter
in derselben Weise wie oben auf und speichert die Entsprechungsbeziehung
der Eingabe/Ausgabeverbindungen (SVCs) in derselben Weise wie bereits
für den PVC/VP-Fall
beschrieben. Als Nächstes
sendet der Nächster-Sprung
CSR eine andere Aufbauanforderung an seinen Nächster-Sprung-Router. Wenn
dieser Prozess wiederholt wird, bis der Zielknoten erreicht ist,
wird eine Durchgangsverbindung vom Quellenknoten zum Zielknoten
hergestellt.
-
Ein anderes Beispiel der Aufbauinitiierungsnachricht
ist eine Nachricht, welche Informationen für die Registrierung der obigen
Entsprechungsbeziehung (nicht den Nächster-Sprung-Router zwingend, zu
registrieren) enthält.
Der Router, der diese Nachricht erhalten hat, kann den Verkehr (Paketfluss)
, für den
der Aufbau einer Durchgangsverbindung wünschenswert ist und die Datenlinkverbindung,
die ein Teil der Durchgangsverbindung werden kann, erkennen; somit
kann der Router Information mit seinem Nächster-Sprung-Knoten austauschen
und kann die Entsprechungsbeziehung abhängig von seiner eigenen Entscheidung
registrieren.
-
In dem Fall, bei dem PVC oder SVC
als eine Datenlinkverbindung verwendet wird, kann die Aufbauinitiierungsnachricht
eine Nachricht sein, die Informationen zum Erkennen der Datenlinkverbindung am
Nächster-Schritt-Router
enthält.
-
Es sollte angemerkt werden, dass
es nicht notwendig ist, dass die obige Verarbeitung im Quellenknoten
des Pakets, der als Trigger dient, ausgeführt werden sollte. In den folgenden
Fällen
wird beispielsweise diese Verarbeitung durch einen Router durchgeführt, der
auf dem Weg vom Quellenknoten zum Zielknoten lokalisiert ist und
der Router wird möglicherweise
der Ausgangspunkt der Durchgangsverbindung.
-
- – Der
Fall, bei dem der Quellenknoten keine ATM-Schnittstelle aufweist.
- – Der
Fall, bei dem der Quellenknoten nicht in Übereinstimmung mit dem CSR-Protokoll
ist.
- – Der
Fall, bei dem, aus einem Grund wie unzureichender Bandbreite, es
nicht möglich
ist, eine zu verwendende Datenlinkverbindung als Teil einer Durchgangsverbindung
von dem Quellenknoten zum Nächster-Sprung-Router
aufzubauen.
-
In diesen Fällen wird Sprung-für-Sprung-Übermittlung
vom Quellenknoten zum fraglichen Router durchgeführt und Durchgangsübermittlung
wird ab dem fraglichen Router durchgeführt. Jedoch könnten eine
oder mehrere Durchgangsverbindungen in dem Abschnitt vom Quellenknoten
bis zum fraglichen Router bereitgestellt werden (Pakete vom Quellenknoten
zum Zielknoten könnten
durch eine Durchgangsverbindung übermittelt
werden, bis sie irgendwo auf dem Weg zum Ziel anlangen, dann könnten sie
durch Sprung-für-Sprung-Verbindung übermittelt
werden und nachdem sie den fraglichen Router erreicht haben, könnten sie
durch eine andere Durchgangsverbindung übermittelt werden).
-
Desgleichen ist es für den Endpunkt
der Durchgangsverbindung, die als ein Ergebnis aufgebaut wurde,
dass er der Zielknoten des Pakets ist, das den Aufbau der Durchgangsverbindung
ausgelöst
hat. Beispielsweise wird in den folgenden Fällen ein auf der Route vom
Quellenknoten zum Zielknoten lokalisierter Router möglicherweise
der Endpunkt der Durchgangsverbindung.
-
- – Der
Fall, bei dem der Zielknoten keine ATM-Schnittstelle aufweist.
- – Der
Fall, bei dem der Zielknoten nicht in Übereinstimmung mit dem CSR-Protokoll
ist.
- – Der
Fall, bei dem es aus irgendeinem Grund wie unzureichender Bandbreite
nicht möglich
ist, eine zu verwendende Datenlinkverbindung als Teil einer Durchgangsverbindung
von einem stromaufwärts
gelegenen Knoten zum Zielknoten aufzubauen.
-
In diesen Fällen wird Sprung-für-Sprung-Übermittlung
vom Endpunkt der Durchgangsverbindung zum Zielknoten durchgeführt. Jedoch
kann es eine oder mehrere weitere Durchgangsverbindungen zwischen
dem Endpunkt knoten und dem Zielknoten geben.
-
Man sollte anmerken, dass das obige
Argument nicht nur auf den Fall anwendbar ist, bei dem die Durchgangsverbindungsaufbausequenz
Ende-zu-Ende ist, sondern auch in dem Fall, wo die Aufbausequenz
Verbindung-zu-Verbindung
ist. Bei der Ende-zu-Ende-Sequenz überträgt der Router, der die Durchgangsverbindungsaufbauanforderung
empfangen hat, immer eine andere Aufbauanforderung, außer wenn
er nicht der Endpunkt zu seinem Nächster-Sprung-Knoten ist. In
der Verbindungs-zu-Verbindungs-Sequenz entscheidet der Router, der
die möglicherweise
beim Aufbau der Durchgangsverbindung verwendete Nachricht empfangen
hat, lokal, ob er eine andere Nachricht an seinen Nächster-Sprung-Knoten übermittelt,
oder nicht, basierend auf dem Datenpaket, das er selbst erhalten
hat.
-
Wenn eine Durchgangsverbindung hergestellt
ist, aktualisiert die Aufbaueinheit 104 die Routing-Tabelle 101 durch
Routing-Tabellen-Aktualisierungseinheit 106 und
aktualisiert den Zustand des entsprechenden Eintrags der Verbindungszustandstabelle 103 durch
eine Verbindungsaufbauentscheidungseinheit 104 auf "In Fortsetzung" und "Auszeitzeit 0".
-
Nachfolgende Pakete an diesen Zielknoten werden
durch die Durchgangsverbindung übertragen,
indem auf die aktualisierte Routing-Tabelle 101 Bezug genommen
wird, so dass sie mit höherer
Rate übermittelt
werden, ohne IP-Verarbeitung an einem Zwischenrouter unterworfen
zu werden.
-
Man sollte anmerken, dass die Änderung
der zuvor erwähnten
Routing-Tabelle 101 es nicht erfordert, von der Herstellung
einer Durchgangsverbindung zum Endpunkt in Kenntnis gesetzt zu werden, sondern
durchgeführt
werden könnte,
nachdem der Teil der Verbindungsaufbausequenz, den der Übertragungsknoten
ausführen
sollte, beendet worden ist, oder nach dem eine Benachrichtigung
derart, dass der benachbarte Router die Registrierung der Entsprechungsbeziehung
beendet hat, von diesem benachbarten Router empfangen worden ist.
Falls die zur Übertragung
von Paketen zum Zielknoten vor dem Aufbau der Durchgangsverbindung
verwendete Verbindung als eine Verbindung genommen wird, die einen
Teil der Durchgangsverbindung bildet, muss ein Aktualisieren der
Routing-Tabelle 101 nicht durchgeführt werden.
-
Zusätzlich führt beim Empfangen einer in Schritt
S16 vom Zeitnehmer 105 erteilten Anweisung die Aufbaueinheit 104 die
Freigabe der Durchgangsverbindung durch. Dies kann entweder durch
Durchführen
der harten Zustands-Methode des Sendens einer Freigabenachricht
zum Nächster-Sprung-Router
CSR durchgeführt
werden oder der weichen Zustandsmethode des Nichtsendens einer Auffrischungsnachricht
zum Erhalten der Durchgangsverbindung zum Nächster-Schritt-Router CSR.
Wenn im Ergebnis das für
die Durchgangsübermittlung
gemäß der Systemvereinbarung
geeignete Paket nicht während
einer vorgegebene Zeitperiode übermittelt
wird, wird die Durchgangsverbindung freigegeben. Die Aufbaueinheit 104 aktualisiert,
falls notwendig, die Routing-Tabelle 101, um für nachfolgende
Pakete die Übertragungsverbindung
zu einer gewöhnlichen
abzuändern.
Auf diese Weise kann die Verschwendung von Verbindungsressourcen
durch Freigeben unbenützter
Verbindungen verhindert werden.
-
Die Paketübertragungseinheit 107 übergibt an
die Schnittstellenschicht Pakete, die durch die Verbindungsaufbauentscheidungseinheit 102 hindurchgegangen
sind.
-
Man sollte anmerken, dass, obwohl
im oben beschriebenen Beispiel das Paket selbst, das die Triggeranweisungsübertragung
einer Verbindungsaufbauinitiierungsnachricht gebildet hat, durch
eine übliche
Verbindung durch S10 von 3 gesendet wurde
(dies bedeutet, dass die ersten paar Pakete in einem neuen Paketfluss
durch Sprung-für-Sprung-Verbindung übermittelt
werden und dass die nachfolgenden Pakete im Paketfluss, nachdem
die Routing-Tabelle aktualisiert worden ist, mittels Durchgangsverbindung übermittelt
werden), es für
dieses Triggerpaket und ihm nachfolgende Pakete an den selben Zielknoten
möglich
sein würde,
im Puffer gespeichert zu werden und durch die Durchgangsverbindung übermittelt
zu werden, nachdem die Durchgangsverbindung hergestellt worden ist.
-
Die Orte der verschiedenen Funktionsblöcke links
der gestrichelten Linie 10 in 1 zeigen durch ihre Positionsbeziehung
an, ob ihre Verarbeitung in der Netzschicht oder in der Transport-Schicht
(oder weiter oberhalb) durchgeführt
wird.
-
Paket, das Auslöser sein
soll
-
Zuerst wird ein Paket beschrieben,
bei dem das FTP (file transfer protocol) als Trigger genommen wird. 5 ist ein Diagramm eines
Beispiels einer Netzwerkkonfiguration gemäß CSR.
-
In 5 sind
S (200) und D (201) Hosts und CSR1 (202),
CSRS (203) und CSR3 (204) als CSRs dienende Router.
CSR1 und CSR3 verbinden ein Ethernet und ein ATM (asynchronous transfer
mode, asynchroner Übertragungsmodus)
Netz, die logische Netze sind, und CSR2 verbindet ATM-Netze (logische
Netze).
-
Nun wird der Fall betrachtet, bei
dem eine Durchgangsverbindung von CSR1 (202) zu CSR3 (203)
aufgebaut wird, ausgelöst
durch ein FTP-Datenpaket im Verkehr von S nach D. Um die Beschreibung
zu vereinfachen, wird nachfolgend angenommen, dass der Verkehr vom
Server zum Client das Subjekt einer Durchgangsverbindung ist. Das
heißt, S
in 5 ist ein FTP-Server
und D ist der Client.
-
Im vorliegenden Fall wird ein Dienst,
wie z. B. "get" des FTPs vermittels
der Durchgangsverbindung bereitgestellt. Der umgekehrte Prozess
kann auch erwogen werden, bei dem ein Dienst wie etwa "put" des FTPs durch Verwenden
einer Durchgangsverbindung für
Verkehr vom Client zum Server bereitgestellt wird. In diesem umgekehrten
Fall ist S der FTP-Client und D der FTP-Server.
-
Der FTP-Datenverkehr verwendet normalerweise
einen reservierten (bekannten) Port im Server, so dass in S2 von 3 die Verbindungsaufbauentscheidungseinheit 102 das
Portfeld prüft,
das dem Server entspricht (d. h. das Quellenportfeld im vorliegenden
Fall, das Zielportfeld im umgekehrten Fall) des oberen Protokoll
(TCP)-Headers.
-
Bei FTP werden eine Steuersitzung
und eine Datensitzung getrennt bereitgestellt, so dass es auch möglich ist,
ein Steuersitzungspaket als Trigger zu verwenden. Weiterhin ist
es auch möglich,
im zuvor erwähnten
Entscheidungsprozess eine Entscheidung darüber einzuschließen, ob
das Paket das Anfangspaket der Sitzung ist oder nicht (d. h. ob
das SYN-Flag im Paket gesetzt ist oder nicht). Dementsprechend repräsentieren
die folgenden vier Alternativen zum Auslösen die möglichen Kombinationen des Obigen
im vorliegenden Fall.
-
- (1) Ein beliebiges Paket, dessen Quellenport FTP-Steuerung
anzeigt;
- (2) Ein Paket, dessen SYN-Flag gesetzt ist und dessen Quellenport
FTP-Steuerung anzeigt;
- (3) Ein beliebiges Paket, dessen Quellenknoten FTP-Daten anzeigt;
- (4) Ein Paket, dessen SYN-Flag gesetzt ist und dessen Quellenport
FTP-Daten anzeigt.
-
Normalerweise werden die von S (200)
ausgegebenen Pakete in CSR1 (202), CSR2 (203)
und CSR3 (204) einer IP-Verarbeitung unterworfen und in dieser
Reihenfolge übermittelt
(Standardroute). Wenn jedoch S (200) ein Paket, das den
Aufbau einer Durchgangsverbindung im Hinblick auf FTP-Daten auslösen kann
(irgendeines der obigen (1)–(4) oder
eine Kombination davon), an D (201) sendet, erkennt die
Verbindungsaufbauentscheidungseinheit 102 von CSR1 (202)
dieses Paket in Schritt S2 von 3 und
baut vermittels des oben beschriebenen Aufbaubetriebs eine Durchgangsverbindung
(Umgehungsroute 205) von CSR1 (202) zu CSR3 (204)
auf. Dann passieren nachfolgende Pakete von S (200) zu D
(201) die Umgehungsroute 205, so dass sie der IP-Verarbeitung
durch CSR2 (203) unterworfen werden.
-
Es ist nicht nur für den Router,
sondern auch für
einen Host (S), solange er mit dem CSR-Protokoll klar kommt, möglich, die
Umgehungsroute aufzubauen, weil der oben beschriebene Aufbauprozess
auf in der oberen Schicht erzeugte Pakete angewandt werden kann.
-
Man betrachte nunmehr eine Netzwerkkonfiguration
wie in 6 gezeigt. In
dieser Zeichnung ist die Verbindung zwischen S (206) und
CSR1 (202) ATM und S (206) kann mit dem CSR-Protokoll klar kommen.
In diesem Fall, wenn S (206) ein Paket ausgibt, das den
Aufbau einer Durchgangsverbindung hinsichtlich FTP-Daten an D (201)
auslöst,
und baut eine Durchgangsverbindung (Umgehungsroute 207) von
S (206) nach CSR3 (204) auf. Weiterhin kann, solange
wie der Zielhost (D) das CSR-Protokoll handhaben kann, eine Umgehungsroute
direkt zum Zielhost und nicht zum Router aufgebaut werden.
-
Umgekehrt ist es aus Gründen wie
etwa unzureichender Bandbreite etc. möglich, dass eine Durchgangsverbindung
gebildet werden kann, die kürzer
ist als die Durchgangsverbindung, die aufgebaut werden sollte. Beispielsweise
wird in 6, falls eine
SVC nicht von S (206) nach CSR1 (202) aufgebaut
werden konnte, eine Umgehungsroute 208 von CSR1 (202)
nach CSR3 (204) anstelle von Umgehungsroute 207,
die aufgebaut werden sollte, aufgebaut.
-
Als Nächstes wird der Fall beschrieben,
bei dem eine andere TCP-Sitzung als Auslöser dient. Außer FTP
sind HTTP (hypertext transfer protocol) und NNTP (network news transfer
protocol) etc. Beispiele, bei denen eine vergleichsweise große Zahl
von Paketen übermittelt
wird. Auch in diesen Fällen,
falls angenommen wird, dass Daten vom Server zum Client als Trigger
verwendet werden, gibt es die zwei folgenden Arten von Triggern,
abhängig
davon, ob das erste Paket der Sitzung unterschieden wird oder nicht.
-
- (1) Ein beliebiges Paket, dessen Quellenport HTTP
(oder NNTP) ist;
- (2) Ein Paket, dessen Quellenport HTTP (oder NNTP) ist und dessen
SYN Flag gesetzt ist.
-
Auch in diesem Fall in S2 von 3 prüft die Verbindungsaufbauentscheidungseinheit 102 eines Routers
auf dem Weg oder der Übertragungshost das
Quellenportfeld des oberen Protokoll-Headers (TCP) im Paket und
prüft darüber hinaus,
falls notwendig, ob das SYN Flag gesetzt worden ist. Falls entschieden
wird, dass das Paket als Trigger dient, wird eine Durchgangsverbindung
genau wie im Fall von FTP aufgebaut.
-
Als Nächstes wird der Fall, bei dem
ein NFS (Network File System) als Trigger dient, beschrieben. In
den obigen Beispielen wurde ein TCP-Paket als Trigger gewählt, jedoch
ist dies das Ergebnis von Auswahl als ein "Dienst für den kontinuierlicher (langlebiger)
Verkehr erwartet werden kann" und
nicht aufgrund der speziellen Charakteristik von TCP selbst. Wir
werden nun NFS als ein Beispiel betrachten, bei dem dieselben Vorteile
bei UDP verwendenden Diensten erwartet werden können.
-
Unter RFC1094 ist in der aktuellen
Version der NFS-Server dafür
eingerichtet, eine feste Portnummer zu verwenden. Die für NFS gedachten
Pakete können
daher durch die UDP-Quellen- oder
Zielport-Nummer identifiziert werden.
-
Weiterhin wird in diesem Fall ein
Beispiel, bei dem auch das Transportschichtdatenfeld als Trigger verwendet
wird, beschrieben. Hier wird nicht nur die Port-Nummer, sondern
auch die NFS-Prozedur identifiziert und ein Paket NFS "READ" vom Server zum Client
und ein Paket NFS "WRITE" vom Client zum Server
werden einzig als Trigger verwendet.
-
Die Verarbeitungssequenz kann in
diesem Fall beispielsweise wie folgt sein. Zuerst wird das Protokollfeld
des IP-Headers geprüft
(S1 in 3). Falls dieses
Protokollfeld UDP ist, werden die Quellen- und Zielport-Nummer des
UDP-Headers geprüft (S2
in 3). Falls im Ergebnis
gefunden wird, dass eine von diesen die besagte feste Nummer ist,
wird zusätzlich
das Datenfeld geprüft
(S3 in 3). Genauer gesagt,
falls verifiziert wird, dass das Paket für NFS ist, indem im Datenfeld
auf eine RPC-Programmnummer Bezug genommen ist, wird die Prozedurnummer
im Datenfeld geprüft.
Falls als Ergebnis gefunden wird, dass die Prozedurnummer "READ" vom Server oder "WRITE" zum Server anzeigt,
wird eine Anweisung der Verbindungsaufbaueinheit 104 erteilt
(S7 in 3).
-
Die individuell oben beschriebenen
Beispiele schließen
sich nicht aus. Das Auslösen
kann daher unter Verwendung einer Kombination einiger oder aller
bis zu diesem Punkt gegebenen Beispiele durchgeführt werden. Es ist beispielsweise
möglich,
es einzurichten, eine Durchgangsverbindung aufzubauen, wenn ein
FTP-Datenpaket oder ein HTTP-Datenpaket übertragen werden soll. Auch
in diesem Fall kann die Prozedur der 3 grundsätzlich verwendet
werden, außer
dass eine Mehrzahl von Bedingungen in S1 bis S3 überprüft wird.
-
Welcher der Trigger zum Herstellen
einer oben beispielhaft beschriebenen Durchgangsverbindung verwendet
werden sollte, kann auch basierend auf Erfahrung ausgewählt werden.
Dies beinhaltet den Fall, bei dem der Anwender der Verbindung den Trigger
jedes Mal manuell setzt. Andererseits kann die Triggerauswahl in Übereinstimmung
mit einer gewissen Art quantitativer statistischer Information durchgeführt werden.
Ein Beispiel des quantitativen statistischen Informationsverfahrens
ist wie folgt.
-
In Fällen, bei denen die Anzahl
von Durchgangsverbindungen, die zur gleichen Zeit hergestellt werden
können,
beschränkt
ist, ist es notwendig, Durchgangsverbindungen, die nicht hinreichend
oft verwendet werden, freizugeben. Man nehme daher an, dass Durchgangsverbindungen
freigegeben werden, durch welche keine Daten für eine Periode von ti Sekunden übermittelt
worden sind. Nun wird angenommen, dass Pakete zum Endpunkt der Durchgangsverbindung
mit einer Frequenz von mehr als 1/ti (Pakete/Sekunde) nach Feststellung
eines als Triggers behandelten Pakets für eine Durchschnittsperiode
von T Sekunden übermittelt
worden sind und dass die zur Freigabe der zum Endpunkt hergestellten
Durchgangsverbindung benötigten
Zeit tr Sekunden beträgt.
Dann kann die Verwendungsrate dieser Durchgangsverbindung definiert
werden als T/(T + ti + tr).
-
Wenn nun angenommen wird, dass es
vom Blickpunkt der Kapazität
des Netzwerks als Gesamtes vorteilhaft ist, eine Durchgangsverbindung
aufzubauen, falls die Verwendungsrate an einem Paketübertragungsknoten
R oder mehr ist, können
Pakete, welche T/(T + ti + tr) >=
R erfüllen,
als Auslöser
verwendet werden.
-
T kann statistisch durch Überwachen
der vom fraglichen Knoten übertragenen
Pakete für
jeden Fall bestimmt werden, bei dem der Trigger an eine vorläufige Art
von Paket gebunden ist, anders ausgedrückt, bei dem ein Paket, das
Initiierung eines Durchgangsverbindungsaufbaus auslöst, versuchsweise
dasjenige ist, dessen Transportschicht Quell/Zielinformation (und
falls notwendig dessen Transportschicht Dateninformation) ein jeweils
vorgegebenes Protokoll oder so anzeigt. Für diese Überwachung reicht es aus, sie
für eine
feststehende Periode vor der Auswahl eines Triggers durchzuführen.
-
Dann, falls das festgestellte T die
Bedingung: T/(T + ti + tr) >=
R erfüllt,
wird ein dieselbe Information wie die obige Versuchsinformation
besitzendes Paket als Trigger zum Initiieren von Durchgangsaufbaubetrieb
verwendet.
-
Fall (II) für CSR
-
11 illustriert
ein Funktionsblockdiagramm zum Durchführen der Paketübermittlung
gemäß CSR-Technologie
im Paketübertragungsknoten und
ist die gleiche wie 1,
mit Ausnahme der Paketempfangseinheit 223, der Verbindungsaufbauentscheidungseinheit 224 und
der Paketübertragungsanalyseeinheit 221.
-
Paketempfangseinheit 223 übergibt
ein Eingangspaket an die Verbindungsaufbauentscheidungseinheit 224.
Die Verarbeitungsprozedur ist bei der Verbindungsaufbauentscheidungseinheit 224 identisch
mit derjenigen der Entscheidungseinheit 102 von 1 mit der Ausnahme der Tatsache,
dass die Richtung des den Trigger bildenden Pakets und die Richtung
der herzustellenden Durchgangsverbindung umgekehrt sind, d. h. dass
die Durchgangsverbindung zur Quelle des Pakets hin aufgebaut wird, das
sie ausgelöst
hat. Diese Entscheidungseinheit 224 übergibt, nachdem sie die Verarbeitung
bis S9 von 3 abgeschlossen
ist, das Paket der Paketübermittlungsanalyseeinheit 221.
-
Paketübermittlungsanalyseeinheit 221 empfängt Ausgangspakete
von des Knotens oberer Schicht und ihr von der Verbindungsaufbauentscheidungseinheit 224 übergebenen
Pakete. Von den Paketen, die ihm von der Entscheidungseinheit 224 übergeben
werden, übergibt
es jegliche, die für
den Knoten selbst bestimmt sind, der oberen Schicht. Für Pakete,
die übermittelt
werden sollen (einschließlich Ausgangspakete
von der oberen Schicht) wird eine Route aus der Routing-Tabelle 101,
basierend auf ihren Ziel-IP-Adressen, gefunden und diese werden dann
durch Paketübertragungseinheit 228 an
eine geeignete Schnittstelle ausgegeben.
-
Falls Verbindungsaufbauentscheidungseinheit 224 entscheidet,
dass ein Eingangspaket einen Trigger bildet, wird eine Durchgangsverbindung
in der umgekehrten Richtung zum Eingangspaket aufgebaut und jegliches
nachfolgende an dieses Ziel (d. h. die Quelle des Eingangspakets)
adressierte Paket wird durch die Durchgangsverbindung übermittelt.
-
Dieser Fall wird unten unter Bezugnahme
auf 5 beschrieben, annehmend,
dass die Netzwerkkonfiguration, die herzustellende Umgehungsroute und
die Art der als Trigger zu behandelnden Pakete die gleichen sind.
CSR1 202 entdeckt einen Trigger und sendet dann eine Aufbauinitiierungsnachricht
in der umgekehrten Richtung zu der des den Trigger bildenden Pakets.
Dadurch wird eine Umgehungsroute 205 aufgebaut.
-
Wie beispielsweise im Falle (I) wird
eine Anwendung auf den Fall von FTP erwogen. Es wird nunmehr angenommen,
dass S 200 ein FTP-Server ist, D 201 ein FTP-Client
ist und dass S 200 FTP-Daten enthaltende Pakete an D 201 über Umgehungsroute 205 überträgt. In diesem
Fall wird bevorzugt, dass der Trigger für den Durchgangsverbindungsaufbau
ein Paket der FTP-Steuersitzung
vom Client D 201 an den Server S 200 ist, weil
unter FTP eine Sitzung vom Client zum Server vor der Datenübermittlung
vom Server zum Client existiert. Gemäß diesem Verfahren kann vorhergesehen
werden, dass mehr FTP-Datenpakete
auf der Umgehungsroute fließen
werden, da die Umgehungsroute vor der Datenübermittlung aufgebaut wird.
-
In 5 stellt
zuallererst der Client D 201 eine FTP-Steuersitzung zum Server S 200 her.
In diesem Prozess fließt
ein Paket, dessen Ziel- (S) TCP-Port die FTP-Steuerung ist, durch
CSR1 202. Wenn CSR1 202 dieses Paket entdeckt,
beginnt es den Aufbau einer Umgehungsroute 205 hin zu D 201. Nachdem
diese Umgehungsroute 205 aufgebaut worden ist, passieren
Pakete einschließlich
FTP-Datenpakete von S 200 an D 201 die Umgehungsroute.
-
Man sollte anmerken, dass viele der
im Fall (I) gezeigten alternativen Wege auch auf diesen Fall (II)
anwendbar sind.
-
Fall (III) für CSR
-
12 illustriert
ein Funktionsblockdiagramm des CSR-fähigen
Paketempfangsknotens. Der Paketempfangsknoten kann entweder ein
Host oder ein Router sein (Paketübermittlungsknoten).
Die Routing-Tabelle 210, Paketübermittlungsanalyseeinheit 211 und
Paketübertragungseinheit 212 sind
die gleichen wie in 1.
-
Die Verbindungsaufbauentscheidungseinheit 213 ist
praktisch dieselbe wie Entscheidungseinheit 102 in 1, jedoch wird in diesem
Fall eine Prüfung
des Verbindungszustands nicht durchgeführt. Demzufolge sind in 12 die Verbindungszustandstabelle 103 und
der Zeitnehmer 105 in 1 nicht vorhanden.
Jedoch wird in dem Fall, bei dem der Inhalt der Verbindungszustandstabelle 103,
die vom Übertragungsknoten
bereitgestellt ist, benachrichtigt wird, wie sich an dem Empfangsmodus
Gelegenheit ergibt, eine Zustandstabelle bereitgestellt und eine Verbindungszustandsprüfung würde durchgeführt werden.
-
Wenn sie eine Anweisung von der Entscheidungseinheit 213 empfängt, erteilt
die Aufbaueinheit 214 eine Anforderung zum Paketübertragungsknoten,
welcher der Zielknoten des Triggerpakets ist, zum Initiieren des
Aufbaubetriebs einer Durchgangsverbindung. Die Anforderung wird
von jedem auf der Route der Durchgangsverbindung , die aufgebaut werden
muss, gelegenen Knoten abgefangen und der Knoten, der die Anforderung
abfängt,
beginnt den Aufbau einer Durchgangsverbindung mit einer Aufbauinitiierungsnachricht.
Das heißt,
dass diese Anforderung sich von der Aufbauinitiierungsnachricht selbst
unterscheidet (z. B. der Aufbauanforderung an den Nächster-Sprung-Router
in der End-End-Sequenz).
-
Diese Anforderung wird durch eine Sprung-für-Sprung-Verbindung zum Übertragungsknoten übermittelt
und wird beispielsweise die Durchgangsverbindung von dem Übertragungsknoten
aufgebaut, der diese Anforderung empfangen hat (beispielsweise Quellhost
oder Anfangsstufen CSR) und sendet als Antwort auf die Anforderung
eine Verbindungsaufbauinitiierungsnachricht. Danach kann diese Anforderung
eine Verbindungsanforderungsnachricht genannt werden.
-
Die Aufbaueinheit 214 überprüft nicht,
ob eine Verbindung tatsächlich
aufgebaut worden ist. Wenn jedoch die Verbindungsaufbauentscheidungseinheit 224 entschieden
hat, dass ein Ausgangspaket einen Trigger bildet, wird eine Durchgangsverbindung
in der umgekehrten Richtung zum Ausgangspaket, wie oben beschrieben,
aufgebaut und wird ein Paket von dem Übertragungsknoten durch die Durchgangsverbindung übermittelt
und dieses Paket wird von der Paketempfangseinheit 215 empfangen.
-
Dieser Fall wird auch unten unter
Bezugnahme auf 5 beschrieben,
wo eine Umgehungsroute 205 für Verkehr vom FTP-Server 200 zum
Client 201 hergestellt wird. Ein FTP-Datenpaket vom Client 201 zum
Server 200 wird als Trigger verwendet.
-
Wenn CSR3 204 ein FTP-Datenpaket
für den Server 200 entdeckt,
sendet es eine Verbindungsanforderungsnachricht in Richtung des
Servers 200. Wenn Erststufen CSR1 202 diese Anforderungsnachricht
empfängt,
sendet er eine Aufbauinitiierungsnachricht in Richtung des Clients 201,
um eine Umgehungsroute 205 aufzubauen.
-
In diesem Fall (III) und im nachfolgenden
Fall (IV) ist der Knoten, der den Trigger für eine Durchgangsverbindung
detektiert, nicht der Knoten, der den Aufbau der Durchgangsverbindung
initiiert. Auch in diesen Fällen,
genau wie in den Fällen
(I) und (II) kann, welche die Herstellung einer Durchgangsverbindung
auslösen,
durch Erfahrung ausgewählt
werden oder kann auf Basis einer bestimmten Art von quantitativen
statistischen Informationen ausgewählt werden.
-
Das quantitative statistische Informationsverfahren
wird nunmehr beschrieben werden, konzentriert auf das Merkmal von
Fällen
III und IV, dass der Träger
hauptsächlich
durch einen anderen Knoten als den Knoten, der den Durchgangsverbindungsaufbau
beginnt, entdeckt wird.
-
Wie beschrieben wird angenommen,
dass Durchgangsverbindungen, über
die es keinen Fluss von Paketen während einer Periode ti gegeben
hat, freigegeben werden, um die notwendigen Bedingungen zu suchen.
Falls nun Pakete vom Übertragungsknoten
mit einer Frequenz größer als
1/ti (Pakete pro Sekunde) empfangen worden sind, nachdem ein als Trigger
behandeltes Paket für
eine Durchschnittszeitperiode T entdeckt worden ist, kann die Verwendungsrate
dieser Durchgangsverbindung definiert werden als T/(T + ti).
-
Da jedoch in diesem Beispiel der
Ausgangspunkt der Durchgangsverbindung nicht durch den Knoten, der
den Trigger detektiert, bestimmt werden kann, wird angenommen, dass
die zur Freigabe der Durchgangsverbindung notwendige Zeit hinreichend klein
ist, um vernachlässigt
zu werden. Da auch die Tatsache, dass Pakete, deren Quelle eine
andere ist als die Zieladresse des Triggerpakets im Fall III / die Quellenadresse
des Triggerpakets im Fall IV, auch durch diese Durchgangsverbindung übertragen
werden können,
nicht vom Empfangsknoten erkannt werden kann, mag die definierte
Verwendungsrate niedriger sein als die tatsächliche Verwendungsrate.
-
Falls angenommen wird, dass vom Standpunkt
der Kapazität
des Netzes insgesamt aus es vorteilhaft ist, eine Durchgangsverbindung
aufzubauen, wenn diese Verwendungsrate R oder mehr ist, ist es angemessen,
ein Paket als Trigger zu nehmen, das T/(T + ti) > R erfüllt.
-
Fall IV für CSR
-
13 illustriert
ein Funktionsblockdiagramm des CSR-tauglichen Paketempfangsknotens. Der
Paketempfangsknoten kann entweder einer eines Host oder eines Routers
(Paketübermittlungsknoten)
sein. In 13 sind Paketempfangseinheit 230 und
Paketübermittlungsanalyseeinheit 231 jeweils
identisch mit Empfangseinheit 223 und Analyseeinheit 221 von 11. Verbindungsaufbaueinheit 233 ist
identisch mit der von 12, 214.
-
Verbindungsaufbauentscheidungseinheit 232 ist
identisch mit Entscheidungseinheit 213 von 12 mit Ausnahme der Tatsache, dass es
Pakete von Empfangseinheit 230 empfängt und sie an Transferanalyseeinheit 231 übergibt.
-
Wie im Fall von 12 werden eine Verbindungszustandstabelle
und ein Zeitnehmer nicht vorgesehen. Auch sendet Aufbaueinheit 232 eine
Verbindungsanforderungsnachricht anstelle einer Aufbauinitiierungsnachricht
hin zum Übertragungsknoten
(in diesem Fall der Quellenknoten des Triggerpakets). Weiterhin überprüft die Aufbaueinheit 233 nicht,
ob eine Verbindung tatsächlich
aufgebaut worden ist oder nicht.
-
Wenn Verbindungsaufbauentscheidungseinheit 232 entscheidet,
dass ein Eingangspaket ein Trigger sein soll, wird eine Durchgangsverbindung
in derselben Richtung wie das Eingangspaket zum Empfangsknoten aufgebaut,
so dass Pakete vom Übertragungsknoten,
der die Verbindungsaufbauinitiierungsnachrichtung überträgt, durch
die Durchgangsverbindung übermittelt
werden und diese Pakete werden dann von der Paketempfangseinheit 230 empfangen.
-
Dieser Fall wird auch unter Bezugnahme
auf 5 beschrieben. Ein
FTP-Datenpaket vom Server 200 an den Client 201 wird
als Trigger verwendet. Der Trigger wird von CSR3 204 entdeckt.
Wenn CSR3 204 ein FTP-Datenpaket an den Client detektiert, überträgt er eine
Verbindungsanforderungsnachricht in Richtung des Servers 200.
Wenn diese Anforderungsnachricht durch einen Erststufen-CSR 202 empfangen
wird, überträgt CSR1
eine Aufbauinitiierungsnachricht in Richtung des Clients 201,
so dass eine Umgehungsroute 205 aufgebaut wird.
-
Auch in diesem Fall, genau wie bei
Fall (III), kann die Auswahl eines Triggers unter Verwendung statistischer
Informationen durchgeführt
werden. Im Fall (IV) sind die Quellen bzw. Zieladressen der überwachten
Pakete dieselben wie die des Triggerpakets, obwohl weitere Details
der Prozedur und des verwendeten mathematischen Ausdrucks dieselben
wie für Fall
(III) sein können.
-
Die obige Beschreibung gilt unter
der Annahme, dass der Knoten, der den Aufbau einer Durchgangsverbindung
initiiert, der quellenseitige (stromaufwärts) Knoten ist, d. h. dass
die hergestellte Durchgangsverbindung stromabwärts des Knotens ist, der den
Aufbau initiiert. Jedoch ist es einem Knoten auch möglich, die
Durchgangsverbindung oberhalb von ihm selbst herzustellen. In diesem
Fall braucht ein Empfangs(zielseitiger) Knoten, der einen Trigger
feststellt, keine Verbindungsanforderungsnachricht zum Quellenknoten
hin zu senden, um anzufragen, eine Aufbauinitiierungsnachricht in
der umgekehrten Richtung zu übertragen.
Statt dessen kann der Empfangsknoten, der einen Trigger detektiert,
eine Aufbauinitiierungsnachricht selbst zum Stromauf knoten schicken.
-
Falls genauer gesagt der Stromauf
knoten (Router), der die Aufbauinitiierungsnachricht vom Empfangsknoten
empfangen hat, die Aufbauinitiierungsnachricht an einen weiteren quellenseitigen Knoten
(der Stromauf knoten arbeitet auch wie der Empfangsknoten) sendet
und die Entsprechungsbeziehung zwischen einer ersten Verbindung
von dem weiteren quellenseitigen Knoten und einer zweiten Verbindung
zum Empfangsknoten registriert, wird eine Durchgangsverbindung von
dem weiteren quellenseitigen Knoten zum Empfangsknoten gemäß dem Trigger
hergestellt.
-
Weiterhin sind viele der in den Fällen (I)
bis (III) beschriebenen alternativen Wege auch in diesem Fall I(V)
anwendbar.
-
Der Vorteil des obigen Falls (III)
und (IV) ist, dass die Triggerdetektion durch einen zielseitigen Knoten
durchgeführt
werden kann, selbst falls ein quellenseitiger Knoten, mit anderen
Worten ein Knoten, der zum Initiieren des Aufbaus von Durchgangsverbindungen
in der Lage ist, keine Funktion zum Detektieren des Triggers aufweist.
-
Kombination von Fall (I) bis (IV)
und Modifikation Ein Knoten einer noch komplizierteren Struktur kann
durch Kombinieren der vier oben beschriebenen Fälle implementiert werden. Als
Beispiel zeigt 14 ein
Knoten-Layout, das alle vier der 7 bis 10 einschließt.
-
Der Betrieb des in dieser Fig. gezeigten
Knotens ist im wesentlichen eine Kombination der bereits beschriebenen.
Detaillierter gesagt, werden von der Paketempfangseinheit 243 empfangene
Pakete zuallererst der Verbindungsaufbauentscheidungseinheit 245 übergeben.
-
Die von der Entscheidungseinheit 245 durchgeführte Verarbeitung
wird später
beschrieben. Pakete, die dieser Verarbeitung unterworfen worden sind,
werden als nächstes
zur Paketübermittlungsanalyseeinheit 242 übermittelt.
-
Analyseeinheit 242 empfängt Ausgangspakete
von des Knotens eigener oberen Schicht und ein von der Verbindungsaufbauentscheidungseinheit 245 übergebenes
Paket. Die Analyseeinheit übergibt der
oberen Schicht jegliche Pakete, die an sie selbst adressiert sind,
der an sie von der Entscheidungseinheit 345 übergebenen
Pakete. Für
zu übermittelnde Pakete
(einschließlich
Ausgangspaketen von der oberen Schicht) findet sie eine Route aus
der Routingtabelle 240 basierend auf der Ziel-IP-Adresse und übergibt
dann noch einmal das Paket der Aufbauentscheidungseinheit 245.
-
Die Verarbeitungsprozedur der Verbindungsaufbauentscheidungseinheit 245 wird
unter Bezugnahme auf 15 beschrieben.
Diese Prozedur ist grundsätzlich
dieselbe wie in Fall von 1 (3), jedoch ergeben sich
Unterschiede abhängig
davon, ob der Heimknoten auf der Quellenseite oder der Zielseite
der Durchgangsverbindung, die aufgebaut werden soll, ist, und abhängig davon,
ob die übergebenen
Pakete von der Paketempfangseinheit 243 oder von der Paketübermittlungsanalyseeinheit 242 kommen.
-
Falls der Heimknoten die Quellenseite
ist, ist die Prozedur dieselbe wie in 1.
Falls der Heimknoten die Zielseite ist, ist die Prozedur dieselbe
wie in 12.
-
Zuletzt werden Pakete von der Paketempfangseinheit 243 der
Paketübermittlungsanalyseeinheit 242 übergeben,
während
jeweils Pakete von der Analyseeinheit 242 der Paketübertragungseinheit 244 übergeben
werden.
-
Als Antwort einer Anweisung von der
Entscheidungseinheit 245 überträgt die Aufbaueinheit 248 eine
Aufbauinitiierungsnachricht hin zum Zielknoten oder eine Verbindungsanforderungsnachricht hin
zum Quellenknoten. Die Prozedur im ersteren Fall ist dieselbe wie
in 1 und im letzteren
Fall dieselbe wie in 12.
-
Routingtabelle 240, Routingtabellenaktualisierungseinheit 241,
Zeitnehmer 246 und Verbindungszustandstabelle 247 sind
dieselben wie in 1.
-
Ein Beispiel einer Netzkonfiguration,
wie in 5 gezeigt, erwägend kann
in diesem Fall, falls CSR1 202 und CSR3 204 beide
wie in 14 aufgebaut
sind, ein Trigger durch entweder CSR1 202 oder CSR3 203 detektiert
werden. Auch in diesem Fall können
sowohl Pakete, die sich in Richtung auf den Client 204 bewegen,
als auch solche, die sich in Richtung auf den Server 202 bewegen,
als Trigger dienen.
-
Man sollte anmerken, dass jeweils
in den Fällen
(I) bis (IV), oder in Kombination, die in 3 und 15 gezeigte
Verbindungsaufbauentscheidungsprozedur, modifiziert werden kann.
Beispielsweise wird in diesen Zeichnungen der Quellen-/Ziel-Port des Transportschicht-Headers
jedes übergebenen Pakets
geprüft,
bevor die Verbindungszustandstabelle geprüft wird. Im Gegensatz dazu,
kann es eine alternative Methode geben, bei der erst die Verbindungsstatustabelle
geprüft
wird, und bei der die Prüfung,
ob das Paket ein Trigger ist oder nicht, nur durchgeführt wird,
wenn die entsprechende Durchgangsverbindung noch nicht aufgebaut
worden ist.
-
Bei diesem Verfahren wird, falls
die entsprechende hergestellte Durchgangsverbindung durch die erste
Prüfung
der Verbindungsstatustabelle gefunden wird, nur das Einstellen des
Auszeitzählers auf „0" durchgeführt. In
diesem Fall wird im Ergebnis, wenn einmal die Durchgangsverbindung
gemäß dem Trigger
hergestellt ist, sie nicht freigegeben, solange Verkehr an die entsprechende
Zieladresse fortgesetzt wird, selbst wenn das Paket im Verkehr die
Bedingung, ein Trigger zu sein, nicht erfüllt.
-
Mit anderen Worten ist das Verfahren
in den 3 und 15 zum Herstellen und Freigeben
einer Durchgangsverbindung gemäß derselben
Vereinbarung vorgesehen, während
das alternative Verfahren zum Freigeben unter einer entspannteren
Bedingung als das Herstellen vorgesehen ist. Es ist auch möglich, Freigabemechanismen
getrennt von Triggerdetektion und Durchgangsaufbaubetrieb vorzusehen.
-
Es sollte auch angemerkt werden,
dass über Verkehr,
für den
eine Durchgangsverbindung bestimmt ist, beliebig entschieden werden
kann. Beispielsweise ist in der obigen Beschreibung eine Durchgangsverbindung
für Verkehr
an eine bestimmte Ziel-IP-Adresse
bestimmt. Sie kann auch aufgebaut werden, um für Verkehr von einer spezifischen Quelladresse
an eine spezifische Zieladresse bestimmt zu sein oder für Verkehr,
der sich an eine spezifische Netzwerkmaske oder einen Zielknoten
richtet oder für
Verkehr, der eine spezifische Ipv6-Fluss-ID aufweist oder für Verkehr,
der sich an eine spezifische Zieladresse und Port richtet usw. In jedem
Fall wird ein Eintrag der Verbindungszustandstabelle und der Routingtabelle
bereitgestellt und für jeden
Verkehr geprüft,
für den
eine Durchgangsverbindung bestimmt ist.
-
Fall für NHRP
-
Ein anderes Beispiel, bei dem diese
Erfindung auf Durchgangsverbindungsaufbau unter Verwendung von NHRP
angewendet wird, ist unten beschrieben.
-
16 illustriert
ein Funktionsblockdiagramm zum Durchführen der Paketübermittlung
und NHRP-Verarbeitung in einem NHRP-Client. Der NHRP-Client ist
der Paketübertragungsknoten
und kann entweder ein Host oder ein Router (Paketübermittlungsknoten)
sein. In 16 zeigen durchgehende
Linien den Fluss von Paketen an und zeigen gebrochene Linien den
Fluss von Steuerungsinformationen an.
-
Paketübermittlungsanalyseeinheit 301 akzeptiert
Ausgangspakete von des Knotens eigener oberer Schicht oder von anderen
Knoten empfangene Pakete und findet eine Route aus der Routingtabelle 300,
basierend auf der Ziel-IP-Adresse und übergibt das Paket an die NHRP-Entscheidungseinheit 302.
-
Die NHRP-Entscheidungseinheit 302 untersucht,
falls eine Paketübertragungsschnittstelle NBMA
(Non Broadcast Multiple Access, nicht Broadcast-Mehrfachzugriff)
ist, das Paket und den NHRP-Pufferspeicher 304 und falls
notwendig, gibt eine Anweisung an die NHRP-Verarbeitungseinheit 303 zum
Ausgeben einer Nächster-Sprung-Auflösungs (NHR)-Anforderung.
-
NHRP-Pufferspeicher 304 in 16 ist wie in 17 aufgebaut. Man beachte,
dass in 17 nur die von
der Entscheidungseinheit 304 benötigten Felder dargestellt sind.
Neben diesen Feldern kann es aus der NHR-Antwort erhaltene Informationsfelder (beispielsweise
Nächster-Sprung
NBMA-Adresse etc.)
geben.
-
Wenn der Pufferspeicher 304 untersucht wird,
wird die Ziel-IP-Adresse
als ein Schlüssel
verwendet. Entweder wird die Ziel-IP-Adresse selbst oder die IP-Adresse
des Routers, der am nächsten am
Ziel ist, die in der NHR-Antwort enthalten ist, in das Nächste-Sprung-IP-Adressfeld
eingetragen. Während
der Zeitperiode zwischen der Ausgabe einer NHR-Anforderung bis zum
Empfang einer NHR-Antwort wird in dieses Feld „unvollständig" eingetragen. Falls eine negative Antwort
empfangen wird, wird in dieses Feld „nicht auflösbar" eingetragen.
-
Das "Auszeitzähler"-Feld wird durch Zeitnehmer 305 periodisch
aktualisiert, was später
beschrieben wird. Dieses Feld bedeutet bei einem Eintrag, dessen
Nächster-Sprung-IP-Adresse „unvollständig" ist, dass während der
zur Nummer und proportionalen Periode keine Antwort erhalten worden
ist und bedeutet für
einen anderen Eintrag als diesen, dass eine durch die Zahl angezeigte
Zeit verstrichen ist, seit eine Antwort erhalten worden ist.
-
Das "Lebenszeit"-Feld zeigt eine vorgegebene Zahl. Falls
der Wert des Auszeitzählerfelds
größer wird
als der Wert dieses Felds, wird der Eintrag gelöscht.
-
18 zeigt
eine Prozedur zum Initiieren eines Durchgangsverbindungsaufbaubetriebs
unter Verwendung des NHRP-Pufferspeichers. Die Schritte S103 und
S101 in der Zeichnung sind optional wie unter Bezug auf 3 beschrieben.
-
Zu allererst untersucht die NHRP-Entscheidungseinheit 302 das
obere Schichtprotokollfeld im IP-Header S101. Falls das Ergebnis
(z. B. TCP oder UDP) ein Protokoll ist, das einen Durchgangsverbindungsaufbau
auslösen
kann (S101 Ja), überprüft es das
Quellenportfeld und/oder das Zielportfeld im oberen Schichtprotokoll-Header
(S102). Falls das untersuchte Protokoll eines ist, das nicht als
Trigger dienen kann (S101 Nein), wird das Paket in üblicher Weise übertragen.
-
Falls das Resultat des Prüfens der
Quellen- oder Zielportfelder im TCP/UDP-Header des Paketes zeigt,
dass das Paket als Trigger für
einen Durchgangsverbindungsaufbau dienen soll (S102 Ja), wird, falls
von der Systemvereinbarung verlangt, eine weitere Prüfung des
TCP/UDP-Datenfelds durchgeführt (S103).
Falls das geprüfte
Paket nicht einen Durchgangsverbindungsaufbau auslösen soll
(S102 Nein oder S103 Nein), wird das Paket in üblicher Weise übertragen.
-
Falls als Ergebnis entschieden wird,
dass das Paket für
eine Durchgangsübermittlung
(S102 Ja oder S103 Ja) geeignet ist, wird der NHRP-Pufferspeicher 204 untersucht
(S104).
-
Falls als Ergebnis der Untersuchung
des Zwischenpuffers 304 gefunden wird, dass es keinen Eintrag
in Bezug auf eine Ziel-IP-Adresse
dieses Pakets gibt, wird ein neuer Eintrag im Pufferspeicher 304 mit
der Bedingung "unvollständig" und dem Auszeitzähler "0" zusammengestellt (S107, S109, S110) und wird
die NHRP-Bearbeitungseinheit 303 angewiesen, eine NHR-Anforderung zu erlassen
(S108).
-
Andererseits übergibt, falls ein Eintrag
im Pufferspeicher vorliegt und die IP-Adresse in das Nächster-Sprung-IP-Adressfeld eingetragen
worden ist (S105 Ja), die Entscheidungseinheit 302 die
eingetragene IP-Adresse der Paketübertragungseinheit 306 als
Nächster-Sprung-IP-Adresse
(S106). Falls das Nächster-Sprung-IP-Adressfeld "unvollständig" oder "nicht auflösbar" ist (S105 Nein),
wird eine aus der Routing-Tabelle 200 erhaltene Nächster-Sprung-IP-Adresse in üblicher
Weise der Paketübertragungseinheit 306 übergeben.
-
Nach der obigen Bearbeitung übergibt
die Paketübertragungseinheit 306 die
ausgewählte Nächster-Sprung-IP-Adresse zusammen
mit dem zu übertragenden
Paket an die NBMA-Schnittstelle 307 (S101).
-
Die NBMA-Schnittstelle 307 weist
die Entsprechung zwischen IP-Adressen einschließlich von der NHR-Antwort erhaltenen
IP-Adressen und
Verbindungen einschließlich
basierend auf den erhaltenen IP-Adressen hergestellten Durchgangsverbindungen
auf und überträgt das Paket
durch eine Verbindung entsprechend der über die Übertragungseinheit 306 gegebene
IP-Adresse. Dementsprechend wird, falls eine Durchgangsverbindung
gemäß NHRP hergestellt
worden ist, das Paket durch diese Durchgangsverbindung übertragen;
ansonsten wird es durch die aus der Routing-Tabelle 300 erhaltene übliche Route
gesendet.
-
Die verbleibenden Elemente von 16 werden nun beschrieben.
Beim Empfang einer Anweisung von der Entscheidungseinheit 302 in
Schritt 5108 erteilt die NHRP-Bearbeitungseinheit 303 eine NHR-Anforderung
an den Nächster-Schritt-Server. Bei
NHRP entspricht diese NHR-Anforderung einer Aufbauinitiierungsnachricht.
-
Falls der Knoten eine zustimmende
Antwort vom Server empfängt,
stellt die NHRP-Bearbeitungseinheit 303 eine Verbindung
zu der IP-Adresse her, die in der NHR-Antwort enthalten ist und
trägt die IP-Adresse
in das Nächster-Sprung-IP-Adressfeld des
Pufferspeichers 304 ein. Falls er eine negative Antwort
erhält,
trägt er "nicht auflösbar" in das Nächster-Sprung-IP-Adressfeld
ein. In jedem Fall wird der Auszeitzähler auf 0 gesetzt und wird
die Lebenszeit auf den Wert eingestellt, der basierend auf dem in
ein Haltezeitfeld der NHR-Antwort eingetragenen Wert berechnet ist.
-
Der Zeitnehmer 305 wird
in Intervallen einer festen Zeit betätigt, um zu prüfen, ob
die zwischengespeicherte Information noch gültig ist oder nicht, oder um
zu bestimmen, ob die NHR-Anforderung wieder gesendet werden muss
oder nicht. Dann aktualisiert, falls notwendig, der Zeitnehmer den
Pufferspeicher 304.
-
Die Betriebsprozedur des Zeitnehmers
wird in 19 gezeigt.
Zuerst inkrementiert er für
jeden Eintrag des Pufferspeichers 304 das "Auszeitzähl"-Feld um eine vorgegebene
Zahl (S113). Diese vorgeschriebene Zahl kann für jeden Eintrag unterschiedlich
oder dieselbe sein.
-
Für
jeden Eintrag wird, falls der Auszeitzähler größer als der Lebenszeitzähler wird
(S114 Ja), dieser Eintrag gelöscht
(S117). Falls der gelöschte Eintrag
einer ist, bei dem eine spezifische IP-Adresse im Nächster-Sprung-IP-Adressfeld
steht (S115 Ja), wird eine Anweisung an die NHRP-Bearbeitungseinheit 303 gegeben,
die entsprechende Durchgangsverbindung freizugeben (S116). Falls
der Auszeitzähler
nicht vom Lebenszeitzähler überstiegen
worden ist (S114 Nein) und falls der Eintrag einer ist, bei dem das
Nächster-Sprung-IP-Adressfeld "unvollständig" ist (S118 Ja), wird
jedes Mal, wenn der Auszeitzähler einen
festen Wert erreicht (der für
jeden Eintrag unterschiedlich oder derselbe sein kann) (S119 Ja),
die NHRP-Verarbeitungseinheit 303 angewiesen (S120), eine
NHR-Anforderung wieder zu senden.
-
Auch in diesem NHRP-Fall kann, welche
Art von Paketen als Auslöser
für einen
Durchgangsverbindungsaufbau hergenommen werden sollen, basierend
auf Erfahrung bestimmt werden. Dies schließt den Fall ein, bei dem ein
Anwender der Verbindung die Art von Paketen jedes Mal manuell einstellt.
Im Gegensatz dazu kann die Art von Paketen, die als Trigger dienen
soll, unter Verwendung einer Art von quantitativer statistischer
Information bestimmt werden. In diesem letzteren Verfahren kann ein
Prozedur eingesetzt werden, die identisch ist mit der bereits in "Paket, das ein Trigger
sein soll" beschriebenen.
-
Im Nachfolgenden wird ein Beispiel
beschrieben werden, bei dem eine Durchgangsverbindung für Verkehr
von einem FTP-Server
zu einem FTP-Client aufgebaut wird, die von einem beliebigen Datenpaket
vom FTP-Server an den FTP-Client ausgelöst wird. Man beachte, dass
eine Anwendung auf andere Fälle
in derselben Weise wie im vorliegenden Fall durchgeführt werden
kann, wie im "Paket,
das ein Trigger sein soll" beschrieben.
-
20 ist
ein Diagramm eines Beispiels einer Netzwerkverbindung gemäß NHRP.
In dieser Zeichnung ist S 400 ein FTP-Server, D 402 ein FTP-Client,
R 401 ein Router und NHS 403 ein Nächster-Schritt-Server.
-
S 400 ist wie in 16 gezeigt aufgebaut. Üblicherweise
werden für
D 402 bestimmte Pakete an R 401 gesendet, wo sie
IP-Bearbeitung unterworfen werden und dann an D 402 übermittelt
werden, wie als eine Standardroute gezeigt. Falls jedoch ein FTP-Datenpaket
von S 400 ausgegeben wird, nimmt die NHRP-Entscheidungseinheit 302 dieses
Paket als einen Trigger wahr und erteilt dem NHS 403 eine NHR-Anweisung.
Dann empfängt
S 400 eine NHR-Antwort vom NHS 403, findet, dass
der nächste Schritt
D 403 ist und D's
ATM-Adresse und baut eine Durchgangsverbindung zu D 402 auf.
Dann wird nachfolgender Verkehr von S 400 an D 402 durch
die Durchgangsverbindung ohne Passieren von R 401 übermittelt.
-
Man sollte anmerken, dass die in
den CSR-Fällen
beschriebenen Variationen auch auf diesen NHRP-Fall angewendet werden
können.
Beispielsweise kann R 401 in 20 wie
ein Router (Paketempfangsknoten) im Fall (IV) arbeiten. In diesem Beispiel überträgt S 400 jedes
Paket zuerst mittels der Standardroute. Falls eine Übertragung
des Pakets ein Triggerpaket ist, empfängt und detektiert R 401 den
Trigger, während
er das Paket an D 402 übermittelt.
Dann sendet R 401 eine Verbindungsanforderungsnachricht
an S 400, so dass S 400 eine NHR-Anforderung (eine
Aufbauinitiierungsnachricht) an NHS 403 senden kann. Nachdem
S 400 eine Durchgangsverbindung zu D 402 gemäß der oben
erwähnten
Prozedur aufbaut, wird jedes Paket von S 400 an D 402 durch
die Durchgangsverbindung übermittelt.
Die Freigabe der Durchgangsverbindung wird von S 400 durchgeführt, wobei
R 401 nicht beteiligt ist.
-
Anderes Beispiel
eines Triggers
-
Das System, das die Quellen-/Zielinformation
der Transportschicht zum Detektieren eines Triggers zum Initiieren
eines Durchgangsverbindungsaufbaus verwendet, ist oben beschrieben.
Nun wird das System, das die Quellen/Zielinformation der Netzschicht
verwendet, detailliert beschrieben werden.
-
Das erste Beispiel entspricht Fall
(I) für
CSR. 21 zeigt ein Funktionsblockdiagramm
zum Durchführen
der Paketübermittlung
gemäß CSR-Technologie
in einem Paketübertragungsknoten.
Die in dieser Figur gezeigte Struktur ist fast dieselbe wie die
von 1, unterscheidet
sich jedoch darin, dass die Verbindungsaufbauentscheidungseinheit 455 nicht
Information der Transport- oder einer weiter oben gelegenern Schicht
verwendet und darin, dass eine Triggertabelle 459 hinzugefügt ist.
-
Die Triggertabelle 459 ist
eine Liste angegebener IP-Adressen,
die als Trigger dienen können. Das
heißt,
dass ein Paket, dessen Quelle eine IP-Adresse ist, die auf dieser
Liste auftaucht, den Aufbau einer zum Ziel des Pakets gerichteten
Durchgangsverbindung auslöst.
Diese Liste kann beispielsweise IP-Adressen der Server oder Dienste
wie FTP, HTTP, NNTP, NFS, etc. enthalten, auf die häufig zugegriffen
wird.
-
Ein Paket, dessen Ziel eine in der
Liste enthaltene IP-Adresse
ist, kann auch den Aufbau einer an das Ziel gerichteten Durchgangsverbindung
auslösen.
In diesem Fall kann die Liste IP-Adressen von Clients enthalten,
für die
Prioritätsbehandlung
garantiert ist (z. B. Clients, die einen "QoS"-garantierten Dienst
empfangen).
-
22 zeigt
eine Prozedur zum Initiieren eines Durchgangsverbindungsaufbaus.
Unter Verwendung der Triggertabelle 459 prüft die Verbindungsaufbauentscheidungseinheit 455 zuerst
die Quell- und/oder
die Ziel-IP-Adressen im IP-Header eines IP-Pakets, das von der Paketübermittlungsanalyseeinheit 452 eingegeben
wird (S201). Falls als Ergebnis die Triggertabelle 459 anzeigt,
dass die überprüfte IP-Adresse
einen Durchgangsverbindungsaufbau auslösen kann (S201 Ja), führt sie
dieselbe Bearbeitung wie S4 und die folgenden Schritte von 3 aus (S202 und die nachfolgenden
Schritte).
-
Der Fall, bei dem eine Durchgangsverbindung
für Verkehr
von einem FTP-Server zu einem FTP-Client von einem beliebigen Paket,
von einem angegebenen FTP-Server ausgelöst, aufgebaut wird, wird nun
beschrieben unter Berücksichtigung
einer in 23 gezeigten
Netzkonfiguration. In dieser Figur ist S1
501 der spezifizierte
FTP-Server. Dies ist ein großer
Server, auf den häufig
zugegriffen wird, so dass ein Paket von ihm als ein Trigger für eine Durchgangsverbindung
bezeichnet wird.
-
S2 502 ist ein Host, D 506 ist
ein FTP-Client und CSR1 503, CSR2 504 und CSR3 505 sind
als CSR dienende Router. CSR1 und CSR3 dienen dem Verbinden eines
Ethernets und eines ATM-Netzes, die
logische Netze sind und CSR2 verbindet ATM-Netze.
-
Im vorliegenden Fall detektiert CSR1 503 einen
Trigger. CSR1 untersucht die Quellen-IP-Adresse des zu übertragenden
Pakets und initiiert, falls die Quelle des Pakets S1 501 ist,
einen Aufbaubetrieb einer an das Ziel des Pakets gerichteten Durchgangsverbindung.
-
Folglich werden, während nur
Pakete von S2 502 nach D 506 fließen, Pakete
an D über
die Standardroute übermittelt.
Wenn jedoch ein Paket von S1 an D gesendet wird, wird das Paket
von CSR1 dahingehend erkannt, den Aufbau von Umgehungsroute 507 auszulösen. Wenn
diese Umgehungsroute einmal aufgebaut ist, werden nachfolgende an
D gerichtete Pakete unter Verwendung dieser Umgehungsroute übermittelt.
-
Man sollte anmerken, dass die Umgehungsroute
für den
ausschließlichen
Verkehr von S1 an D hergestellt werden kann. Falls dies der Fall
ist, werden, nachdem die Umgehungsroute aufgebaut ist, nachfolgende
Pakete von S1 an D durch die Umgehungsroute übermittelt und andere Pakete
an D (einschließlich
solcher deren Quelle S2 ist), werden über die Standardroute übermittelt.
Um dies zu implementieren, versehen die Routing-Tabelle 451 und
die Verbindungszustandstabelle 458 jeden Eintrag mit der Quellen-IP-Adresse und der
Ziel-IP-Adresse und werden unter Verwendung einer Kombination von Quellen-
und Ziel-IP-Adressen
als Suchschlüssel
geprüft.
-
Im vorliegenden Fall ist nicht garantiert,
dass ein als Trigger verwendetes Paket tatsächlich ein FTP-Paket war, aber
so ein Effekt wird erwartet, weil das Paket von einem Server stammt,
auf den häufig zugegriffen
wird. Der zusätzliche
Nutzen der Vereinfachung der Verarbeitung kann auch erwartet werden,
da keine Informationen der Transportschicht oder oberer Schichten
bearbeitet werden müssen.
-
Das hier aufgezeigte Verfahren ist
mit Verfahren zur Verwendung von Informationen der Transportschicht
und oberer Schichten kompatibel und in der Tat können beide Verfahren in Kombination
verwendet werden. In solch einem Fall wird das Bearbeiten von S201
in 22 vor, nach oder
während
des Bearbeitens von S1 bis S3 in 3 durchgeführt. Gemäß diesem
Verfahren kann beispielsweise eine Durchgangsverbindung, die von
einem FTP-Datenpaket von einem (spezifischen) FTP-Server, auf den häufig zugegriffen
wird, ausgelöst
ist, aufgebaut werden.
-
Das zweite Beispiel entspricht Fall
(II) für CSR. 24 zeigt ein Funktionsblockdiagramm
zum Durchführen
von Paketübermittlung
gemäß CSR-Protokoll
in einem Paketübertragungsknoten. Die
Struktur ist fast dieselbe wie die von 11, unterscheidet sich aber darin, dass
Informationen der Transportschicht und Schichten weiter oben nicht von
der Verbindungsaufbauentscheidungseinheit 606 verwendet
werden und dass eine Triggertabelle 610 hinzugefügt ist.
-
Die Durchgangsverbindungsaufbauprozedur im
zweiten Beispiel ist mit der des ersten Beispiels identisch, außer dass
die Richtung des den Trigger bildenden Pakets und die Richtung der
herzustellenden Durchgangsverbindung umgekehrt sind; anders gesagt,
wird die Durchgangsverbindung zur Quelle des den Trigger bildenden
Pakets hin aufgebaut. Nachdem die Bearbeitung bis zu S204 von 22 abgeschlossen ist, wird
das Paket der Paketübermittlungsanalyseeinheit 603 übergeben.
-
Dieses zweite Beispiel wird nunmehr
unten unter Bezugnahme auf 23 beschrieben
werden, wobei angenommen wird, dass die Netzkonfiguration dieselbe
wie im ersten Beispiel ist. CSR1 503 untersucht die Ziel-IP-Adresse
des empfangenen Pakets, um einen Trigger zu detektieren. Falls er
findet, dass das Ziel des Paketes S1 501 ist, beginnt er
die Durchgangsverbindungsaufbauaktion hin zur Quelle des Pakets.
-
Folglich wird, solange nur Pakete
von D 506 nach S2 502 fließen, eine Durchgangsverbindung nicht
aufgebaut und Pakete an D werden über die Standardroute übermittelt.
Wenn jedoch ein Paket von D an S1 gesendet wird, wird das Paket
durch CSR1 wahrgenommen, um den Aufbau einer Umgehungsroute 507 auszulösen. Wenn
die Umgehungsroute dann aufgebaut ist, werden an D gerichtete nachfolgende
Pakete (falls nicht ausschließlich,
alle Pakete an D und falls ausschließlich, nur Pakete von S1 an
D) unter Verwendung dieser Umgehungsroute übermittelt.
-
Das Vorstehende kann in derselben
Weise sowohl für
CSR (III) als (IV) implementiert werden. Genauer gesagt wird – wie oben
beschrieben – eine Triggertabelle
hinzugefügt
und es wird in jedem Fall Netzschichtinformation bei der Detektion
anstelle von Transportschichtinformation verwendet.
-
Diese Beispiele sind auch mit der
Verwendung von Informationen der Transportschicht oder oberer Schichten
kompatibel und können
in Kombination damit, wie bereits beschrieben, genutzt werden.
-
Das nächste Beispiel entspricht dem
Fall von NHRP. 25 zeigt
ein Funktionsblockdiagramm zum Durchführen des Pakettransfers und
der NHRP-Bearbeitung in einem NHRP-Client. Dieser ist fast in der
gleichen Weise wie in 16 konstruiert, unterscheidet
sich aber dahin, dass die NHRP-Entscheidungseinheit 705 keine
Informationen der Transportschicht oder oberer Schichten bearbeitet und
dass eine Triggertabelle 709 hinzugefügt ist.
-
Die Triggertabelle 709 weist
eine Liste spezifizierter IP-Adressen
auf, die als Trigger dienen. Genauer gesagt, wird ein Paket, das
eine durch die Liste spezifizierte IP-Adresse enthält, als
ein Trigger zum Erteilen einer NHR-Anforderung in Bezug auf das Ziel
des Pakets dem Nächster-Sprung-Server
dienen. Als Beispiele für
in der Liste zu platzierende IP-Adressen
gibt es IP-Adressen der Server, die Dienste wie FTP, HTTP, NNTP
oder NFS etc., auf die häufig
zugegriffen wird, bereitstellen oder solche der Clients, denen Prioritätsbehandlung
garantiert ist (z. B. Clients, die QoS-garantierten Dienst empfangen).
-
26 zeigt
eine Prozedur zum Initiieren eines Durchgangsverbindungsaufbaus.
Die NHRP-Entscheidungseinheit 705 prüft zuallererst die Quell- und/oder
die Zieladressfelder im IP-Header eines von der Paketübermittlungsanalyseeinheit 702 eingegebenen
IP-Pakets in Bezug auf die Triggertabelle 709 (S301). Falls
sie als Ergebnis findet, dass dies ein Paket ist, das als ein Trigger
für eine
Durchgangsverbindung dienen kann (S301 ja) führt sie die Bearbeitung von
S301 und der nachfolgenden Schritte aus. Diese Bearbeitung ist die
gleiche wie die Bearbeitung von S104 und der nachfolgenden Schritte in 18.
-
Dieses Beispiel ist auch kompatibel
zu dem Verfahren, das Informationen der Transportschicht oder oberer
Schichten nutzt. Falls es notwendig ist, dass beide Verfahren in
Kombination verwendet werden, würde
die Bearbeitung von S301 von 26 vor oder
nach oder während
der Bearbeitung von S101 bis S103 in 18 durchgeführt werden.
-
Dieses Beispiel wird nunmehr unten
unter Bezugnahme auf eine Netzkonfiguration von 27 beschrieben werden, wo eine Durchgangsverbindung
nur für
spezifische Clients in einem gegebenen FTP-Server aufgebaut wird.
In dieser Zeichnung ist D 801 ein FTP-Server, D1 806 und
D2 807 sind FTP-Clients, R 802 ist ein Router
und NHS 804 ist ein Nächster-Sprung-Server.
-
Man nehme nun an, dass S 801 wie
in 25 aufgebaut ist
und die Triggertabelle 459 von S die IP-Adresse von D2
als spezifizierte Ziel- (Client) IP-Adresse enthält. Folglich wird, während ein
Paket von S an D1 weiterhin durch Sprung-für-Sprung-Verbindung 806 gesendet
wird, ein Paket S an D2 durch die NHR-Entscheidungseinheit 705 erkannt,
die dann eine NHR-Anforderung an NHS 804 erteilt. Da sie eine
NHR-Antwort von NHS empfängt,
stellt sie fest, dass der nächste
Sprung D2 ist und auch D2 als ATM-Adresse kennt, baut S eine Durchgangsverbindung 803 zu
D2 auf, so dass nachfolgender Verkehr von S an D2 durch diese Durchgangsverbindung übermittelt
wird.
-
In jedem oben gezeigten Beispiel
kann durch Erfahrung entschieden werden, welcher Trigger zum Herstellen
einer Durchgangsverbindung ausgewählt werden soll, oder die Auswahl
kann auf irgend eine Art von quantitativer statistischer Information
in derselben Weise, wie bereits beschrieben, basieren.
-
Es sollte angemerkt werden, dass
die Triggertabelle jeweils für
Quellen-IP-Adressen und Ziel-IP-Adressen vorgesehen sein kann. Dann
wird das Quellen-IP-Adressfeld des Eingangspakets mit der Quellen-Trigger-Tabelle
verglichen und das Ziel-IP-Adressenfeld
des Pakets wird mit der Ziel-Trigger-Tabelle verglichen. Das heißt, die
folgenden vier Arten von Durchgangsverbindung können implementiert werden:
(1) für
Verkehr von der spezifizierten Quelle zu einem beliebigen Ziel;
(2) für
Verkehr von einer beliebigen Quelle zu einem spezifizierten Ziel;
(3) für
Verkehr, entweder dessen Quelle oder dessen Ziel das spezifizierte
ist; (4) für
Verkehr von der spezifizierten Quelle zum spezifizierten Ziel.
-
Es sollte angemerkt werden, dass,
neben den bereits oben erwähnten,
viele Modifikationen und Variationen der obigen Ausführungsformen
gemacht werden können,
ohne vom Umfang der anhängenden
Ansprüche
abzuweichen.