-
Die
vorliegende Erfindung bezieht sich auf einen Tunneldienst, der eine
Datenkommunikation zwischen unterschiedlichen Kommunikationsnetzwerken
führen
kann, und insbesondere auf ein Verfahren und ein System zum Einrichten
eines bidirektionalen Tunnels zwischen einem Tunnelendpunkt (TEP)
und einem Benutzerknoten, die mit Hilfe des Internetprotokolls Version
6 (IPv6) in einer Netzwerkumgebung des Internetprotokolls Version
4 (IPv4) kommunizieren wollen.
-
Internet-Kommunikationsnetzwerke
können auf
IPv4 oder IPv6 basieren.
-
IPv4
ist ein Netzwerkebenenprotokoll, das 32-Bit Internetprotokoll-(IP-)Adressen
nutzt. Da die Zahl verfügbarer
Adressen von den Nutzern des Internet verbraucht wird, scheint ein
Mangel an IPv4-Adressen auf lange Sicht unvermeidlich zu sein. Um
den Mangel an IPv4-Adressen beseitigen, wurde IPv6, das IP Next
Generation (IPng) genannt wurde, von der Internet Engineering Task
Force (IETF) vorgeschlagen. IPv6 verwendet 128-Bit-Internet-Protokolladressen.
Ein IPv6-Header gestattet Erweiterungen des Headerbereiches, so
dass der große
Antrieb für
IPv6 neue Verwendungen sind, wie etwa Paketauthentizität, die Erweiterung
der Datenintegrität,
die Erweiterung der Privatsphäre
und dergleichen.
-
Da
IPv4 und IPv6 unterschiedliche Protokolle sind, muss, wenn es ein
Benutzerknoten, der mit dem IPv4 basierten Netzwerk verbunden ist, wünscht, die
IPv6 Kommunikation zu verwenden, ein bidirektionaler IPv6-über-IPv4-Tunnel
unter Verwendung eines TEP eingerichtet werden, der sowohl mit IPv4-basierten
Netzwerken als auch IPv6-basierten Netzwerken verbunden ist. Der
bidirektionale IPv6-über-IPv4-Tunnel
unterstützt
die IPv6-Verbindung im IPv4-basierten Netzwerk.
-
Um
den IPv6-über-IPv4-Tunnel
einzurichten, benötigt
der Benutzerknoten Netzwerkinformationen, wie etwa die IPv4-Adresse
des TEP und die IPv6-Adresse des Benutzerknotens, und der TEP benötigt Netzwerkinformationen,
wie etwa die IPv4-Adresse
des Benutzerknotens und die IPv6-Adresse des TEP.
-
Da
bestehende Netzwerke jedoch unaufgefordert keine Netzwerkinformationen
bereitstellen, müssen
ein Benutzer und eine TEP-Verwaltungseinrichtung Netzwerkinformationen,
die für
die Einrichtung des IPv6-über-IPv4-Tunnels
erforderlich sind, mit Hilfe eines Anrufes, eines Messengers, einer E-Mail,
einer erweiterten Mitteilung und dergleichen austauschen. Der Benutzer
und die TEP-Verwaltungseinrichtung
richten den bidirektionalen IPv6-über-IPv4-Tunnel manuell mit
Hilfe der ausgetauschten Netzwerkinformationen ein. Beispielsweise
bereiten der Benutzer und die TEP-Verwaltungseinrichtung ein Skript
unter Verwendung der Netzwerkinformationen vor, speichern das Skript
als Datei und richten den bidirektionalen IPv6-über-IPv4-Tunnel unter Verwendung
der gespeicherten Skriptdatei ein.
-
Wenn
Netzwerkinformationen des Benutzerknotens und des TEP ausgetauscht
werden, müssen der
Benutzer und die TEP-Verwaltungseinrichtung somit den IPv6-über-IPv4-Tunnel
manuell mit Hilfe der geänderten
Netzwerkinformationen einrichten. Wenn sich beispielsweise der Benutzerknoten
zu einem weiteren Netzwerkbereich bewegt, was eine Änderung
der Netzwerkinformationen des Benutzerknotens oder des TEP bewirkt,
müssen
der Benutzer und die TEP-Verwaltungseinrichtung
den IPv6-über-IPv4-Tunnel
manuell einrichten. Da jedoch der TEP eine Diensteinheit ist, erschwert
es die Änderung
der Netzwerkinformationen einer Vielzahl von Benutzerknoten, die
TEP-Verwaltungseinrichtung mit geänderten Netzwerkinformationen
zu versorgen. Die Änderungen
der Netzwerkinformationen des Benutzerknotens und des TEP macht
es für
den Benutzer und die TEP-Verwaltungseinrichtung unmöglich, die
Netzwerkinformationen des jeweils anderen zu erfassen, was bedeutet,
das ein ununterbrochener Tunneldienst dem Benutzerknoten nicht bereitgestellt werden
kann.
-
US 2004/0133692 beschreibt
ein Verfahren zum Einrichten von IPv6-in-IPv4-Netzwerken, um es IPv6-Knoten zu gestatten, über ein
IPv4-Netzwerk zu kommunizieren.
-
US 2004/0205233 beschreibt
ein Push-Datensystem zum Pushen von Daten zu mobilen Kommunikationssystemen.
-
Gemäß der vorliegenden
Erfindung wird eine Vorrichtung und ein Verfahren angegeben, wie
sie in den beiliegenden Ansprüchen
definiert sind. Bevorzugte Merkmale der Erfindung werden aus den
abhängigen
Ansprüchen
und der folgenden Beschreibung deutlich.
-
Zusätzliche
Aspekte und/oder Vorteile der Erfindung werden zum Teil in der folgenden
Beschreibung erläutert
und werden zum Teil aus der Beschreibung deutlich oder können durch
Umsetzen der Erfindung in die Praxis verstanden werden.
-
Die
vorliegende Erfindung gibt ein Verfahren und ein System zum Einrichten
eines bidirektionalen Tunnels durch direkte Kommunikation zwischen
einem Tunnelendpunkt (TEP) und einem Benutzerknoten, der kommunizieren
möchte,
unter Verwendung des Internetprotokolls Version 6 (IPv6) in einer
Netzwerkumgebung mit der Internet Protokoll Version 4 (IPv4) an.
-
Zudem
gibt die vorliegende Erfindung ein Verfahren und ein System zum
Einrichten eines bidirektionalen Tunnels zwischen dem TEP und dem
Benutzerknoten an, um die Mobilität des Benutzerknotens zu unterstützen.
-
Die
vorliegende Erfindung gibt zudem ein Verfahren und ein System zum
Einrichten eines bidirektionalen Tunnels zwischen dem TEP und dem
Benutzerknoten an, um dem Benutzerknoten einen kontinuierlichen
Tunneldienst trotz den Änderungen
der Netzwerkinformationen des Benutzerknotens und des TEP bereitzustellen.
-
Die
vorliegende Erfindung gibt zudem ein Verfahren und ein System zum
Einrichten eines bidirektionalen IPv6-über-IPv4-Tunnels ohne Unterstützung des
Benutzers an.
-
Zum
besseren Verständnis
der Erfindung und um darzustellen, wie Ausführungsformen derselben in die
Praxis umgesetzt werden können,
wird nun beispielhaft auf die schematischen Zeichnungen Bezug genommen.
-
1 ist
ein Diagramm eines Netzwerkes, auf das ein System zum Einrichten
eines bidirektionalen Tunnels gemäß einer Ausführungsform
der vorliegenden Erfindung angewendet wird;
-
2 ist
ein Diagramm des Aufbaus einer UDP-Nachricht (UDP – User Datagram
Protocol), die von einem IPv4/IPv6-Benutzerknoten zu einem Tunnelendpunkt
(TEP) gesendet wird, der in 1 gezeigt
ist;
-
3 ist
ein Blockschaltbild des IPv4/IPv6-Benutzerknotens und des TEP aus 1;
-
4 ist
ein Bildschirm, der den IPv4/IPv6-Benutzerknoten darstellt, der
den bidirektionalen Tunnel in einem neuen Netzwerk einrichtet;
-
5 ist
ein Flussdiagramm, das ein Verfahren zum Einrichten eines bidirektionalen
Tunnels gemäß einer
Ausführungsform
der vorliegenden Erfindung darstellt; und
-
6 ist
ein Flussdiagramm, das ein Verfahren zum Einrichten eines bidirektionalen
Tunnels gemäß einer
weiteren Ausführungsform
der vorliegenden Erfindung zeigt.
-
Es
wird nun im Detail auf die Ausführungsformen
der vorliegende Erfindung Bezug genommen, von denen Beispiele in
den beiliegenden Zeichnungen dargestellt sind, wobei sich ähnliche
Bezugszeichen auf ähnliche
Elemente beziehen. Die Ausführungsformen
sind im folgenden beschrieben, um die vorliegende Erfindung durch
Bezugnahme auf die Zeichnungen zu erläutern.
-
Die
vorliegende Erfindung wird nun umfassender unter Bezugnahme auf
die beiliegenden Zeichnungen beschrieben, in denen bevorzugte Ausführungsformen
der Erfindung dargestellt sind.
-
1 ist
ein Diagramm eines Netzwerkes, auf das ein System zum Einrichten
eines bidirektionalen Tunnels gemäß einer Ausführungsform
der vorliegenden Erfindung angewendet wird.
-
Unter
Bezugnahme auf 1 richtet das System einen bidirektionalen
IPv6-über-IPv4-Tunnel 125 für die Datenkommunikation
zwischen einem IPv4/IPv6-Benutzerknoten 111 in
einem Nur-IPv4-Netzwerk 100 und einem IPv6-Benutzerknoten 131 in
einem IPv6-Netzwerk 130 ein.
-
Das
IPv4-basierte Netzwerk 100, das ein IPv4-basiertes Internet-Kommunikationsnetzwerk
ist, enthält
eine Vielzahl von IPv4-Netzwerken 110 und 120,
die in 1 gezeigt sind. Die Vielzahl von IPv4-Netzwerken 110 und 120 sind
unterschiedliche Teilnetze für
die IPv4-Kommunikation. Der IPv4/IPv6-Benutzerknoten 111 und ein
Tunnelendpunkt (TEP) 121 sind mit demselben IPv4-basierten Netzwerk
oder unterschiedlichen IPv4-Netzwerken verbunden.
-
Das
IPv4-Netzwerk 110 enthält
den IPv4/IPv6-Benutzerknoten 111, einen DHCP-Server (DHCP – dynamisches
Host-Konfigurationsprotokoll) 112 und einen IPv4-Router 113.
-
Der
IPv4/IPv6-Benutzerknoten 111 kann einen Dual-Stack-Aufbau
haben, um Internetprotokolladressen zu speichern. Um genauer zu
sein, speichert der IPv4/IPv6-Benutzerknoten 111 IPv4-basierte
Internetprotokolladressen (im folgenden als "IPv4-Adressen" bezeichnet) und IPv6-basierte Internetprotokolladressen
(im folgenden als "IPv6-Adressen" bezeichnet) in separaten
Stacks und verwendet eine IPv4-Adresse und eine IPv6-Adresse als
Ursprungsadressen, die verwendet werden, um Daten zu kommunizieren.
-
Der
IPv4/IPv6-Benutzerknoten 111 kann eine statische IPv4-Adresse
oder eine dynamische IPv4-Adresse verwenden. Verwendet der IPv4/IPv6-Benutzerknoten 111 die
statische Adresse, lässt
der IPv4/IPv6-Benutzerknoten 111 die dynamische IPv4-Adresse,
die durch den DHCP-Server 112 zugeordnet wird, außer Acht.
Jedoch verwendet der IPv4/IPv6-Benutzerknoten 111, für den keine
statische IPv4-Adresse
eingerichtet wurde, die dynamische IPv4-Adresse, die dem IPv4/IPv6-Benutzerknoten 111 vom
DHCP-Server 112 zugeordnet wurde.
-
Die
IPv6-Adresse wird auf der Basis einer IPv6-RA-Nachricht (RA – Router
Advertisement) vom TEP 121 erzeugt, nachdem der bidirektionale
Tunnel eingerichtet wurde. Der IPv4/IPv6-Benutzerknoten 111 parst
ein Präfix
der IPv6-RA-Nachricht und führt einen
IPv6-Adressen-Autokonfigurationsvorgang aus der Basis des Parsing-Ergebnisses
aus, um die IPv6-Adresse zu erzeugen.
-
Der
IPv4/IPv6-Benutzerknoten 111 fragt den DHCP-Server 112 nach
Netzwerkinformationen ab, die zum Einrichten des bidirektionalen IPv6-über-IPv4-Tunnels 125 notwendig
sind. Die Netzwerkinformationen enthalten eine IPv4-Adresse des
TEP 121. Somit kann eine Anfrage nach einer Netzwerkinformation
als eine Anfrage nach der IPv4-Adresse des TEP 121 definiert
werden.
-
Der
IPv4/IPv6-Benutzerknoten 111 empfängt Netzwerkinformationen,
die die IPv4-Adresse
des TEP 121 enthalten, vom DHCP-Server 112 und
extrahiert die IPv4-Adresse
des TEP 121 aus den Netzwerkinformationen. Die Netzwerkinformationen
haben ein DHCP-Format. Somit können
die Netzwerkinformationen als eine DHCP-Nachricht definiert werden.
-
Der
IPv4/IPv6-Benutzerknoten 111 richtet einen unidirektionalen
Tunnel vom IPv4/IPv6-Benuzterknoten 111 zum TEP 121 unter
Verwendung der IPv4-Adresse des TEP 121 ein. Beispielsweise
bereitet der IPv4/IPv6-Benutzerknoten 111 ein Skript unter Verwendung
der IPv4-Adresse des TEP 121 vor, der aus den Netzwerkinformationen
extrahiert wurde, und richtet den unidirektionalen Tunnel mit Hilfe
des Skripts ein.
-
Der
IPv4/IPv6-Benutzerknoten 111 sendet eine Tunnelkonfigurations-Anfragenachricht
zum TEP 121 über
den IPv4-Router 113, um den unidirektionalen Tunnel vom
TEP 121 zum IPv4/IPv6-Benutzerknoten 111 einzurichten.
Der IPv4/IPv6-Benutzerknoten 111 kann die Tunnelkonfigurations-Anfragenachricht
entweder mit Hilfe des TCP (Transport Control Protokoll), des UDP
(User Datagram Protokoll) oder des ICMP (Internet Control Message
Protokoll) gemäß einer
IPv4-Netzwerkumgebung senden. Wird das UDP verwendet, um die Tunnelkonfigurations-Anfragenachricht
zu senden, sendet der IPv4/IPv6-Benutzerknoten 111 eine
UDP-Nachricht, wie es in 2 gezeigt ist, zum TEP 121.
-
Wenn
der IPv4/IPv6-Benutzerknoten 111 die IPv6-RA-Nachricht
vom TEP 121 empfängt,
nachdem der unidirektionale Tunnel vom TEP 121 zum IPv4/IPv6-Benutzerknoten 111 eingerichtet
worden ist, führt
er den IPv6-Adressen-Autokonfigurationsvorgang
aus. Zu diesem Zweck enthält
der IPv4/IPv6-Benutzerknoten 111 ein
Element (nicht gezeigt), um den IPv6-Adressen-Autokonfigurationsvorgang auszuführen. Die
IPv6-Adresse, die vom IPv6-Adressen-Autokonfigurationsvorgang
erzeugt wurde, wird als globale IPv6-Adresse des IPv4/IPv6-Benutzerknotens 111 bezeichnet.
Ist die globale IPv6-Adresse
erzeugt, so ist der bidirektionale IPv6-über-IPv4-Tunnel 121 5
vollständig
eingerichtet. Der IPv4/IPv6-Benutzerknoten 111 kann normalerweise
mit dem IPv6-Benutzerknoten 131 unter Verwendung
von IPv6 kommunizieren.
-
Der
IPv4/IPv6-Benutzerknoten 111 kann ein mobiler Host, wie
etwa ein Notebook-Computer
oder ein PDA (Personal Digital Assistant), oder ein nicht mobiler
Host, wie etwa ein Schreibtischcomputer, sein.
-
Der
DHCP-Server 112 verwaltet die IPv4-Adresse wenigstens eines
TEP, der mit dem Nur-IPv4-Netzwerk 100 verbunden ist, das
von einem Internetdienstanbieter (ISP) (nicht gezeigt) bereitgestellt
wird, und versorgt den IPv4/IPv6-Benutzerknoten 111 mit
der DHCP-Nachricht, die die IPv4-Adresse wenigstens eines TEP enthält, bei
der Anfrage des IPv4/IPv6-Benutzerknotens 111 nach den
Netzwerkinformationen oder der TEP-Adresse.
-
Die
IPv4-Adresse des TEP kann in einem Optionsfeld der DHCP-Nachricht
enthalten sein. Eine Vielzahl von IPv4-Adressen des TEP können im
Optionsfeld der DHCP-Nachricht enthalten sein. Wenn das Optionsfeld
der DHCP-Nachricht eine Vielzahl von IPv4-Adressen des TEP enthält, wählt der IPv4/IPv6-Benutzerknoten 111 eine
aus der Vielzahl von IPv4-Adressen des TEP auf der Basis eines vorbestimmten
Auswahlverfahrens, wie etwa des Rundlaufverfahrens.
-
Der
IPv4-Router 113 ist ein typischer IPv4-Router, der das
IPv4-Netzwerk 110 und das IPv4-Netzwerk 120 verbindet.
Der IPv4/IPv6-Benutzerknoten 111 richtet den IPv6-über-IPv4-Tunnel 125 mit
dem TEP 121 über
den IPv4-Router 113 ein, wie es in 1 gezeigt
ist. Der IPv4/IPv6-Benutzerknoten 111 kann jedoch den IPv6-über-IPv4-Tunnel 125 über die
Verwendung einer Vielzahl von IPv4-Routern einrichten, die in 1 nicht
gezeigt sind.
-
Wenn
der TEP 121 die Tunnelkonfigurations-Anfragenachricht vom
IPv4/IPv6-Benutzerknoten 111 empfängt, authentifiziert
er den IPv4/IPv6-Benutzerknoten 111 mit Hilfe eines ISP-immanenten
Protokolls und richtet den unidirektionalen Tunnel vom TEP 121 zum
IPv4/IPv6-Benutzerknoten 111 ein. Wenn der TEP 121 den
unidirektionalen Tunnel einrichtet, sendet er die IPv6-RA-Nachricht
zum IPv4/IPv6-Benutzerknoten 111 über den
unidirektionalen Tunnel. Der bidirektionale IPv6-über-IPv4-Tunnel 125 zwischen
dem TEP 121 und dem IPv4/IPv6-Benutzerknoten 111 ist
eingerichtet.
-
Der
IPv4/IPv6-Benutzerknoten 111 kann IPv6-Daten mit dem IPv6-Benutzerknoten 131 über den
TEP 121 kommunizieren. Der TEP 121 wird als Tunnelrouter
bezeichnet.
-
Der
IPv4/IPv6-Benutzerknoten 111 und der TEP 121 sind
so beschaffen, wie es in 3 gezeigt ist. 3 ist
ein Blockschaltbild des IPv4/IPv6-Benutzerknotens 111 und
des TEP 121, die in 1 dargestellt
sind. Unter Bezugnahme auf 3 enthält der IPv4/IPv6-Benutzerknoten 111 einen
Tunnel-Konfigurationsagenten 300, eine IPv6-Adressen-Autokonfigurationseinheit 320,
einen Dual-Stack 320 und eine Kommunikationsverarbeitungseinheit 340.
-
Der
Tunnel-Konfigurationsagent 300 enthält einen TEP-Adressenempfänger 301,
eine Tunnelkonfigurations-Steuereinrichtung 302, einen
Tunnelinformationen-Handler 303,
eine Tunnelkonfigurationseinheit 304, eine Nachrichten-Erzeugungs- und -Sendeeinrichtung 305 und
einen UDP-Client 306.
-
Der
TEP-Adressenempfänger 301 extrahiert die
IPv4-Adressen des TEP 121 aus den Netzwerkinformationen,
die vom DHCP empfangen werden, und sendet die extrahierten IPv4-Adressen
zur Tunnelkonfigurations-Steuereinrichtung 302.
-
Die
Tunnelkonfigurations-Steuereinrichtung 302 fragt die IPv4-Adresse
des TEP 121 oder die Netzwerkinformationen zum Einrichten
eines Tunnels zum DHCP-Server 112 an,
steuert den Tunnelinformations-Handler 303, um einen unidirektionalen Tunnel
vom IPv4/IPv6-Benutzerknoten 111 zum TEP 121 unter
Verwendung der IPv4-Adresse des TEP 121 einzurichten, der
vom TEP-Adressempfänger 301 empfangen
wurde, und steuert die Nachrichten-Erzeugungs- und Sendeeinrichtung 305,
um den unidirektionalen Tunnel und einen unidirektionalen Tunnel
abzufragen, der die entgegengesetzte Richtung zum unidirektionalen
Tunnel vom IPv4/IPv6-Benutzerknoten 111 zum einzurichtenden
TEP 121 hat. Die Tunnelkonfigurations-Steuereinrichtung 302 stellt
eine IPv4-Adresse des IPv4/IPv6-Benutzerknotens 111 bereit,
der in den Netzwerkinformationen enthalten ist, die vom DHCP-Server 112 als
Dual-Stack 330 empfangen werden.
-
Der
Tunnelinformations-Handler 303 verwaltet die IPv4-Adresse
des TEP 121, der von der Tunnelkonfigurations-Steuereinrichtung 302 bereitgestellt
wird, und weist die Tunnelkonfigurationseinheit 304 an,
den unidirektionalen Tunnel vom IPv4/IPv6-Benutzerknoten 111 zum
TEP 121 einzurichten. Das heißt, der Tunnelinformations-Handler 303 speichert
die IPv4-Adresse eines TEP, der von der Tunnelkonfigurations-Steuereinrichtung 302 bereitgestellt
wird, und kann, wenn jede der IPv4-Adressen einer Vielzahl von TEPs
gespeichert ist, eine Adresse beispielsweise auf Basis eines First-In-First-Out-(FIFO-)Algorithmus
wählen.
-
Die
Tunnelkonfigurationseinheit 304 bereitet ein Skript unter
Verwendung einer IPv4-Adresse des TEP 121 vor, der vom
Tunnelinformations-Handler 303 bereitgestellt wird, speichert
das Skript als Datei und richtet den unidirektionalen Tunnel vom IPv4/IPv6-Benutzerknoten 111 zum
TEP 121 mit Hilfe der Skriptdatei ein.
-
Die
Nachrichten-Erzeugungs- und -Sendeeinrichtung 305 erzeugt
eine Unidirektionaltunnel-Konfigurations-Anfragenachricht, die zum
TEP 121 gesendet werden soll, der von der Tunnelkonfigurations-Steuereinrichtung 302 gesteuert
wird. Die Tunnelkonfigurations-Anfragenachricht ist ein Paket, das
ein Format aufweist, dass sich für
TCP, UDP oder ICMP eignet. Der Tunnel-Konfigurationsagent 300 sendet
die Tunnelkonfigurations-Anfragenachricht unter Verwendung des UDP.
-
Die
Nachrichten-Erzeugungs- und -Sendeeinrichtung 305 sendet
die Nachricht zum UDP-Client 306.
-
Die
Nachrichten-Erzeugungs- und -Sendeinrichtung 305 empfängt die
Nachricht vom TEP 121 vom UDP-Client 306 und sendet
sie zur Tunnelkonfigurations-Steuereinrichtung 302.
Die Nachricht vom TEP 121 kann eine Nachricht über den
Abschluss der Tunnelkonfiguration oder eine Nachricht über den Fehlschlag
einer Tunnelkonfiguration beinhalten.
-
Der
UDP-Client 306 sendet ein UDP-Paket, das er von der Nachrichten-Erzeugungs- und -Sendeeinrichtung 305 empfangen
hat, für
eine Tunnel-Konfigurationsanfrage
zum TEP 121, und die Nachricht, die er vom TEP 121 empfangen
hat, zur Nachrichten-Erzeugungs- und -Sendeeinrichtung 305.
-
Die
Nachrichten-Erzeugungs- und -Sendeeinrichtung 305 und der
UDP-Client 306 kommunizieren Daten zwischen dem TEP 121 und
dem IPv4/IPv6-Benutzerknoten 111, um den bidirektionalen
IPv6-über-IPv4-Tunnel 125 einzurichten.
-
Die
Nachricht über
die Vervollständigung
einer Tunnelkonfiguration oder die Nachricht über den Fehlschlag einer Tunnelkonfiguration,
die vom TEP 121 empfangen wird, wird der Tunnelkonfigurations-Steuereinrichtung 302 über die
Nachrichten-Erzeugungs- und -Sendeeinrichtung 305 und den UDP-Client 306 zugestellt.
Die Tunnelkonfigurations-Steuereinrichtung 302 analysiert
die Nachricht über
den Fehlschlag einer Tunnelkonfiguration und informiert einen Benutzer über den
Fehlschlag einer Tunnelkonfiguration oder steuert den Tunnelinformations-Handler 303 unter
Verwendung einer weiteren IPv4-Adresse eines weiteren TEP, um die
Einrichtung einer Tunnelkonfiguration erneut zu versuchen.
-
Wenn
der unidirektionale IPv6-über-IPv4-Tunnel 125 vom
TEP 121 zum IPv4/IPv6-Benutzerknoten 111 eingerichtet
ist, sendet die Kommunikations-Verarbeitungseinheit 350 des
TEP 121 die IPv6-RA-Nachricht rund. Die Kommunikations-Verarbeitungseinheit 340 des IPv4/IPv6-Benutzerknotens 111 empfängt die IPv6-RA-Nachricht.
-
Die
Kommunikations-Verarbeitungseinheiten 340 und 350,
die ein Socket für
die Datenkommunikation von IPv6 zwischen dem IPv4/IPv6-Benutzerknoten 111 und
dem IPv6-Benutzerknoten 131 sind, der sich auf den IPv6-über-IPv4-Tunnel 125 bezieht, ermöglichen
es, ein Paket mit Layer-2-(L2-)Ebene zwischen dem TEP 121 und
dem IPv4/IPv6-Benutzerknoten 111 zu senden. Die Kommunikations-Verarbeitungseinheit 340 empfängt die
IPv6-RA-Nachricht, um sie zur IPv6-Adressen-Autokonfigurationseinheit 320 zu
senden, um es zu gestatten, dass die IPv6-Adresse des IPv4/IPv6-Benutzerknotens 111 automatisch
erzeugt wird.
-
Die
IPv6-Adressen-Autokonfigurationseinheit 320 empfängt die
IPv6-RA-Nachricht von der Kommunikations-Verarbeitungseinheit 340 und
erzeugt automatisch die IPv6-Adresse des IPv4/IPv6-Benutzerknotens 111 auf
der Basis eines Präfixes
der IPv6-RA-Nachricht. Die erzeugte IPv6-Adresse wird dem Dual-Stack 330 zugeführt.
-
Der
Dual-Stack 330 speichert die IPv4-Adresse des IPv4/IPv6-Benutzerknotens 111, die
vom Tunnel-Konfigurationsagenten 300 zugeführt wird,
und die IPv6-Adresse,
die von der IPv6-Adressen-Autokonfigurationseinheit 320 zugeführt wird,
in separaten Stacks. Wenn die statische IPv4-Adresse im Dual-Stack 330 gespeichert
ist, lässt
er die IPv4-Adresse des IPv4/IPv6-Benutzerknotens 111, der
vom Tunnel-Konfigurationsagenten 300 zugeführt wird,
außer
Acht.
-
Der
TEP 121 enthält
einen Tunnel-Konfigurationsagenten 310 und die Kommunikations-Verarbeitungseinheit 350.
Der Tunnel-Konfigurationsagent 310 enthält eine Tunnelkonfigurations-Steuereinrichtung 311,
einen Nachrichten-Parser 312, einen Tunnelinformations-Handler 313,
einen UDP-Anschluss 314 und eine Tunnelkonfigurationseinheit 315.
-
Die
Tunnelkonfigurations-Steuereinheit 311 steuert den Nachrichten-Parser 312 und
den Tunnelinformations-Handler 313, um den unidirektionalen Tunnel
vom TEP 121 zum IPv4/IPv6-Benutzerknoten 111 einzurichten.
-
Der
Nachrichten-Parser 312 parst das UDP-Paket, das über den
UDP-Anschluss 314 empfangen wird, und sendet das geparste
UDP-Paket zur Tunnelkonfigurations-Steuereinheit 311. Die
Tunnelkonfigurations-Steuereinheit 311 empfängt die Tunnelkonfigurations-Anfragenachricht,
die vom IPv4/IPv6-Benutzerknoten 111 gesendet wird.
-
Der
UDP-Anschluss 314 empfängt
das UDP-Paket, das vom IPv4/IPv6-Benutzerknoten 11 gesendet
wurde, und sendet das UDP-Paket zum IPv4/IPv6-Benutzerknoten 111. Der UDP-Anschluss 314 wurde
zuvor in die Bereitschaft versetzt, um das UDP-Paket zu empfangen,
das dasselbe Format hat, wie es in 2 gezeigt
ist. Das UDP-Paket definiert ein Nachrichtenfeld auf der Basis zuvor
definierter Code-Informationen, um dessen Verwendung zu bestimmen.
-
Wenn
beispielsweise ein UDP-Paket, das von UDP-Anschluss 314 zum
UDP-Client 306 gesendet
wurde, das Nachrichtenfeld (Nachrichtenbereich in 2)
als "01" definiert, ist das
UDP-Paket eine Tunnelkonfigurations-Anfragenachricht; wenn ein UDP-Paket
das Nachrichtenfeld als "EE" definiert, ist das
UDP-Paket eine Tunnelbeendigungs-Anfragenachricht; wenn ein UDP-Paket
das Nachrichtenfeld als "77" definiert, ist das
UDP-Paket eine Tunnelkonfigurations-OK-Nachricht; wenn ein UDP-Paket das Nachrichtenfeld
als "FF" definiert, ist das
UDP-Paket eine Tunnelkonfigurations-Fehlschlagsnachricht infolge
eines vollen Schlitzes des TEP 121; wenn ein UDP-Paket
das Nachrichtenfeld als "F0" definiert, ist das
UDP-Paket eine Tunnelkonfigurations-Fehlschlagsnachricht, die eine
Tunnelkonfiguration erneut abfragt; wenn ein UDP-Paket das Nachrichtenfeld
als "FA" definiert, ist das
UDP-Paket eine Tunnelkonfigurations-Fehlschlagsriachricht, das eine Nicht-Verfügbarkeit
des Dienstes kennzeichnet; wenn ein UDP-Paket das Nachrichtenfeld
als "FD" definiert, ist das
UDP-Paket eine Tunnelkonfigurations-Fehlschlagsnachricht, die eine
Tunnelkonfiguration für
den IPv4/IPv6-Benutzerknoten 111 nicht
zulässt;
und wenn ein UDP-Paket das Nachrichtenfeld als "94" definiert,
ist das UDP-Paket eine Tunnelkonfigurations-Fehlschlagsnachricht, die die Nicht-Verfügbarkeit
des Dienstes kennzeichnet, während
sie einen weiteren TEP empfiehlt. Das UDP-Paket wird auf der Basis
der zuvor definierten Code-Informationen (01, EE, FF, ...) gemäß dem Typ
des UDP-Paketes
konfiguriert. Die Tunnelkonfigurations-OK-Nachricht und die Tunnelkonfigurations-Fehlschlagsnachricht
sind in der Tunnelkonfigurations-Antwortnachricht enthalten, die
vom TEP 121 zum IPv4/IPv6-Benutzerknoten 111 gesendet
wird.
-
Der
Tunnelkonfigurations-Handler 313 speichert die IPv4-Adresse
des IPv4/IPv6-Benutzerknotens 111,
der von der Tunnelkonfigurations-Steuereinrichtung 311 zugeführt wird,
und fragt die Tunnelkonfigurationseinheit 315 ab, den unidirektionalen Tunnel
vom TEP 121 zum IPv4/IPv6-Benutzerknoten 111 einzurichten.
-
Die
Tunnelkonfigurationseinheit 315 richtet den unidirektionalen
Tunnel vom TEP 121 zum IPv4/IPv6-Benutzerknoten 111 mit
Hilfe der IPv4-Adresse des IPv4/IPv6-Benutzerknotens 111 ein, der
vom Tunnelinformations-Handler 313 bereitgestellt wird.
Die Tunnelkonfigurationseinheit 315 bestätigt die
unidirektionale Einrichtung des Tunnels vom TEP 121 zum
IPv4/IPv6-Benutzerknoten 111 über den UDP-Anschluss 314.
-
Die
Tunnelkonfigurations-Agenten 300 und 310 senden
ein Paket unter Verwendung des UDP. Die Nachrichten-Erzeugungs-
und Sendeeinrichtung 305, der UDP-Client 306,
der UDP-Anschluss 314 und der Nachrichten-Parser 312 sind
so ausgelegt und konfiguriert, dass sie ein Paket zwischen dem IPv4/IPv6-Benutzerknoten 111 und
dem TEP 121 unter Verwendung des TCP, UDP oder ICMP senden. Der
Tunnelkonfigurations-Agent 310 enthält beispielsweise weiterhin
einen TCP-Anschluss für
eine TCP-Kommunikation, um eine Tunnelkonfiguration über den
TCP-Anschluss zu bestätigen,
oder richtet einen benutzbaren Typ für die ICMP-Kommunikation ein,
um die Tunnelkonfiguration zu bestätigen. Der Tunnelkonfigurations-Agent 3000 ist
darauf ausgelegt, eine Nachricht zu senden, die ein Format entsprechend
dem Tunnelkonfigurations-Agent 310 hat.
-
Wenn
ein Tunnel vom TEP 121 zum IPv4/IPv6-Benutzerknoten 111 eingerichtet
ist, sendet die Kommunikations-Verarbeitungseinheit 350 die
IPv6-Nachricht zum IPv4/IPv6-Benutzerknoten 111. Der IPv4/IPv6-Benutzerknoten 111 erzeugt
die IPv6-Adresse
mit Hilfe der IPv6-RA-Nachricht, um den bidirektionalen IPv6-über-IPv4-Tunnel 125 zwischen
dem TEP 121 und dem IPv4/IPv6-Benutzerknoten 111 einzurichten,
und kommuniziert mit dem IPv6-Benutzerknoten 131 mit Hilfe
IPv6 über
den TEP 121. Der IPv6-Benutzerknoten 131, der
eine IPv6-Funktion hat, kann ein mobiler Host oder ein nicht mobiler
Host sein.
-
4 ist
ein Bildschirm, der den IPv4/IPv6-Benutzerknoten 111 darstellt,
der den bidirektionalen Tunnel durch den Tunnel-Konfigurationsagenten 300 für die IPv6-Kommunikation nach
der Verbindung zu einem IPv4-Netzwerk einrichtet. 4 zeigt,
dass keine Benutzerkonfigurationssteuerung erforderlich ist, um
den bidirektionalen Tunnel einzurichten.
-
5 ist
ein Flussdiagramm, das ein Verfahren zum Einrichten eines bidirektionalen
Tunnels gemäß einer
Ausführungsform
der vorliegenden Erfindung zeigt. Das Flussdiagramm wird unter Bezugnahme
auf 1 beschrieben.
-
Der
IPv4/IPv6-Benutzerknoten 111 verbindet sich mit einem neuen
IPv4-Netzwerk und sendet eine TEP-Adressen-Anfragenachricht zum
DHCP-Server 112 (Vorgang 501). Die Nachricht,
die Netzwerkinformationen verlangt, die erforderlich sind, um den
bidirektionalen Tunnel zwischen dem TEP 121 und dem IPv4/IPv6-Benutzerknoten 111 einzurichten,
kann DHCP-DISCOVER oder DHCP-REQUEST sein. Hat das IPv4-Netzwerk
eine Vielzahl von DHCP-Servern, wählt der IPv4/IPv6-Benutzerknoten 111 einen DHCP-Server
und sendet die TEP-Adressen-Anfragenachricht
zum gewählten
DHCP-Server.
-
Der
DHCP-Server 112 versorgt den IPv4/IPv6-Benutzerknoten 111 mit
einer DHCP-Nachricht, einschließlich
einer IPv4-Adresse des TEP 121, als eine TEP-Adressenantwort (Vorgang 502),
die DHCP OFFER, DHCP ACK oder eine Netzwerkinformationsantwort sein
kann. Die TEP-Adressenantwort kann IPv4-Adressen einer Vielzahl von TEPs enthalten.
Die Vielzahl von TEPs sind Tunnelrouter, die mit dem Nur-IPv4-Netzwerk 100 und
dem IPv6-Netzwerk verbunden sind. Die DHCP-Nachricht enthält IPv4-Adressen
des IPv4/IPv6-Benutzerknotens 111.
-
Der
IPv4/IPv6-Benutzerknoten 111 empfängt die TEP-Adressenantwort
und richtet den unidirektionalen Tunnel vom IPv4/IPv6-Benutzerknoten 111 zum
TEP 121 mit Hilfe der IPv4-Adresse des IPv4/IPv6-Benutzerknotens 111 und
der IPv4-Adresse des TEP 121 ein (Vorgang 503).
Der Tunnelkonfigurations-Agent 300, der im IPv4/IPv6-Benutzerknoten 111 installiert
ist, richtet den unidirektionalen Tunnel ein.
-
Der
IPv4/IPv6-Benutzerknoten 111 sendet eine Tunnelkonfigurations-Anfragenachricht
zum TEP 121 (Vorgang 504). Die Tunnelkonfigurations-Anfragenachricht
kann als UDP-Paket gesendet werden. Ist die Tunnelkonfigurations-Anfragenachricht
ein UDP-Paket, kann die Tunnelkonfigurations-Anfragenachricht eine UDP-Anfrage sein,
während
sie mit Hilfe von TCP, UDP oder ICMP gesendet wird.
-
Der
TEP 121 empfängt
die Tunnelkonfigurations-Anfragenachricht und richtet den unidirektionalen
Tunnel vom TEP 121 zum IPv4/IPv6-Benutzerknoten 111 ein
(Vorgang 505). Das heißt
der TEP 121 parst die empfangene Tunnelkonfigurations-Anfragenachricht,
um die IPv4-Adresse des IPv4/IPv6-Benutzerknotens 111 zu
extrahieren und den unidirektionalen Tunnel vom TEP 121 zum
IPv4/IPv6-Benutzerknoten 111 mit
Hilfe der extrahierten IPv4-Adresse des IPv4/IPv6-Benutzerknotens 111 und
der IPv4-Adresse des TEP 121 einzurichten.
-
Der
TEP 121 richtet den unidirektionalen Tunnel ein und sendet
eine Tunnelkonfigurations-Antwortnachricht, die kennzeichnet, dass
der unidirektionale Tunnel vollständig eingerichtet wurde, zum
IPv4/IPv6-Benutzerknoten 111 (Vorgang 506).
-
Der
TEP 121 sendet eine RA-Nachricht des IPv6-Netzwerkes, die
vom IPv4/IPv6-Benutzerknoten 111 kommuniziert
werden soll, zum IPv4/IPv6-Benutzerknoten 111 (Vorgang 507).
Der IPv4/IPv6-Benutzerknoten 111 richtet automatisch die
IPv6-Adresse des
IPv4/IPv6-Benutzerknotens 111 auf der Basis eines Präfixes der
IPv6-RA-Nachricht ein. Der bidirektionale IPv6-über-IPv4-Tunnel 125 zwischen
dem TEP 121 und dem IPv4/IPv6-Benutzerknoten 111 wird
so eingerichtet (Vorgang 509), dass der IPv4/IPv6-Benutzerknoten 111 mit
dem von IPv6 benutzten Knoten 131 mit Hilfe von IPv6 kommuniziert
(Vorgang 510).
-
6 ist
ein Flussdiagramm, das ein Verfahren zum Einrichten eines bidirektionalen
Tunnels gemäß einer
weiteren Ausführungsform
der vorliegenden Erfindung zeigt. Die Vorgänge 601 bis 604 von 6 sind
dieselben, wie die Vorgänge 501 bis 504 von 5,
und die Vorgänge 608 bis 613 von 6 sind
dieselben, wie die Vorgänge 504 bis 510 von 5,
weshalb diese Vorgänge
nicht erneut beschrieben werden.
-
Da
unter Bezugnahme auf 6 der TEP 121 nicht
den unidirektionalen Tunnel vom TEP 121 zum IPv4/IPv6-Benutzerknoten 111 einrichten
kann, wird ein weiterer TEP verwendet, um den unidirektionalen Tunnel
einzurichten. Ein erster TEP, der dem TEP 121 aus 5 entspricht,
und ein zweiter TEP, der einem weiteren TEP entspricht, sind in 6 dargestellt.
-
Der
IPv4/IPv6-Benutzerknoten 111 fragt den ersten TEP ab, um
den unidirektionalen Tunnel einzurichten. Da jedoch der erste TEP
nicht in der Lage ist, den unidirektionalen Tunnel einzurichten
(Vorgang 605), sendet er eine Tunnelkonfigurations-Antwortnachricht,
die den Fehlschlag bei der Einrichtung des unidirektionalen Tunnels
zum IPv4/IPv6-Benutzerknoten 111 kennzeichnet (Vorgang 606).
Es gibt zahlreiche Gründe,
für einen
Fehlschlag des ersten TEP, den unidirektionalen Tunnel einzurichten.
Die Gründe
sind in den Code-Informationen beschrieben, die in einem Nachrichtenbereich
unter Bezugnahme auf 2 definiert sind.
-
Der
IPv4/IPv6-Benutzerknoten 111 empfängt die Tunnelkonfigurations-Antwortnachricht,
die einen Fehlschlag bei der Einrichtung des unidirektionalen Tunnels
kennzeichnet, vom ersten TEP und informiert einen Benutzer über einen
Fehlschlag der Tunnelkonfiguration (Vorgang 607). Der IPv4/IPv6-Benutzerknoten 111 sendet
eine Tunnelkonfigurations-Anfragenachricht unter Verwendung einer IPv4-Adresse
eines anderen TEP als dem ersten TEP von jenen, die vom DHCP-Server 112 empfangen
werden (Vorgang 608). Wenn die IPv4-Adresse die IPv4-Adresse des zweiten
TEP ist, kann der IPv4/IPv6-Benutzerknoten 111 die Tunnelkonfigurations-Anfragenachricht
zum zweiten TEP senden. Gibt es keine IPv4-Adresse mit Ausnahme jener des ersten
TEP, sendet der IPv4/IPv6-Benutzerknoten 111 die
Tunnelkonfigurations-Anfragenachricht erneut zum ersten TEP. Der
zweite TEP richtet den unidirektionalen Tunnel ein, wie es im TEP 121 von 5 beschrieben
ist (Vorgang 609).
-
Wie
es oben beschrieben ist, wird der bidirektionale Tunnel zwischen
einem Benutzerknoten und einem TEP automatisch ohne Benutzerunterstützung eingerichtet,
so dass der Tunneldienst kontinuierlich dem Benutzerknoten trotz
den Änderungen
in einem Netzwerk bereitgestellt wird, das mit dem Benutzerknoten
ver bunden ist. Beispielsweise kann der Benutzerknoten in einer mobilen
IPv4-Netzwerkumgebung
kontinuierlich mit einem IPv6-Netzwerk gemäß dem Verfahren zum Einrichten
eines bidirektionalen Tunnels verbunden sein.
-
Es
ist nicht erforderlich, dass dem Benutzer die TEP-Informationen
eines neuen Netzwerks bekannt sind, und einer TEP-Verwaltungseinrichtung müssen nicht
die Informationen von geänderten
Benutzerknoten bekannt sein.
-
Wenngleich
diese Erfindung insbesondere unter Bezugnahme auf bevorzugte Ausführungsformen
derselben dargestellt und beschrieben wurde, wird der Fachmann verstehen,
dass unterschiedliche Änderungen
in Form und Detail an dieser vorgenommen werden können, ohne
vom Geltungsbereich der Erfindung abzuweichen, wie er in den angefügten Ansprüchen definiert
ist.
-
Wenngleich
einige wenige Ausführungsformen
dargestellt und beschrieben wurden, wird der Fachmann verstehen,
dass unterschiedliche Änderungen
und Modifikationen vorgenommen werden können, ohne vom Geltungsbereich
der Erfindung abzuweichen, wie er in den angefügten Ansprüchen definiert ist.