-
Die
Erfindung betrifft ein Verfahren zum Austausch von Daten zwischen
zwei Hosts, insbesondere im Rahmen von Internet-Telefonie, UMTS-Applikationen
oder Multimediakommunikation, wobei die beiden miteinander kommunizierenden
Hosts – Anrufer und
Angerufener – privaten
Netzwerken mit jeweils einem eigenen privaten Adressraum angehören und wobei
jedes der Netzwerke mindestens einen Netzadressenumsetzer (NAT)
zur Umsetzung öffentlicher Adressen
in private Adressen und umgekehrt sowie einen vom öffentlichen
Adressraum erreichbaren Proxy-Server aufweist, wobei über die
Proxy-Server eine Verbindung zwischen den beiden Hosts mittels vorgebbarer
Protokolle initialisiert wird, wobei jeder der beiden Hosts ein
pfadgebundenes Signalisierungsprotokoll in Richtung des Proxy-Servers
des Netzwerks des jeweils anderen Hosts sendet, wobei die Richtung
anhand von Informationen aus dem Protokoll zur Verbindungsinitialisierung
festgelegt wird, und wobei jedem Host von demjenigen NAT seines Netzwerks,
den das pfadgebundene Signalisierungsprotokoll passiert, eine öffentliche
Zieladresse zugewiesen wird, unter der der Host Daten vom jeweils anderen
Host empfangen kann und die dem jeweils anderen Host mittels des
Protokolls zur Verbindungsinitialisierung bekannt gemacht wird,
wobei als Proxy-Server SIP-Proxys verwendet werden, die so konfiguriert
sind, dass sie ihre öffentliche
Adresse im Via-Header verwenden.
-
Dem
Datenaustausch über
das Internet kommt heutzutage eine immer größere Bedeutung zu. Häufig liegt
dabei die Situation vor, dass zwei oder mehrere Personen (Hosts)
Daten über
die öffentliche
Internet-Infrastruktur austauschen möchten, wobei sie selbst verschiedenen
internen, beispielsweise firmeneigenen, Netzwerken angehören, die
innerhalb eines privaten Adressraums betrieben werden. Hosts und
Router befinden sich somit in unterschiedlichen privaten Adressräumen und
können
daher im Allgemeinen nicht miteinander kommunizieren, da eine private
IP-Adresse vom öffentlichen
Internet aus nicht ansprechbar ist.
-
Zur
Umgehung dieses Problems sind moderne Netzwerke im Allgemeinen so
aufgebaut, dass an der Grenze zwischen dem Netz mit privatem Adressraum
und dem öffentlichen
Internet ein oder mehrere Objekte – sogenannte Netzadressenumsetzer
(NAT) – vorgesehen
sind, die zur Umsetzung öffentlicher Adressen
in private Adressen und umgekehrt dienen. Grundsätzlich wird dabei für jeden
Anwendungsserver, der von außen,
d. h. vom öffentlichen
Adressraum, zugänglich
sein muss, eine statische Adressenzuordnung (sogenanntes Mapping
oder auch Binding) auf dem NAT installiert. Ein solches Mapping wird
in der Regel für
Web-Server, E-mail-Server, FTP-Server, etc. vorgenommen. In den
meisten Fällen
werden dabei nicht nur IP-Adressen sondern auch Port-Nummern von
Protokollen höherer
Schichten, wie z. B. TCP/UDP übersetzt.
-
Moderne
Kommunikationsmethoden erfordern häufig eine Echtzeitverbindung
zwischen den miteinander kommunizierenden Hosts, so z. B. bei der
Internet-Telefonie
(Voice over IP, VoIP) oder bei Videokonferenzen. Ein Protokoll zum
Aufbau derartiger Multimedia-Sitzungen ist das sogenannte Session
Initiation Protocol (SIP). Ein Netzwerk mit einem privaten Adressraum
betreibt dazu einen SIP-Server (oder auch SIP-Proxy), wobei eine
statische Adresszuordnung am NAT des privaten Netzwerks durchgeführt wird,
um den SIP-Proxy vom öffentlichen Adressraum
zugänglich
zu machen. Alternativ könnte
der SIP-Proxy auch auf dem NAT selbst mit einem privaten und einem öffentlichen
Netzwerk-Interface laufen.
Jedenfalls muss sichergestellt sein, dass die Teilnehmer einer SIP-signalisierten
Konversation, die sich in Netzwerken mit unterschiedlichen privaten Adressräumen befinden,
jeweils an einem global erreichbaren SIP-Proxy registriert sind.
Die SIP-Proxys haben jeweils eine reale private Adresse und eine
effektive öffentliche
Adresse, wobei beide Adressen dem SIP-Proxy bekannt sind. Die miteinander
kommunizierenden Hosts in ihrem jeweiligen privaten Adressraum haben
hingegen nur eine private Adresse.
-
Die
SIP-Signalisierung läuft
normalerweise über
mehrere SIP-Proxys von einem Host zum anderen. Der Weg, den die
Signalisierungspakete nehmen, wird in dem Paket selbst – in sogenannten Via-Headern – festgehalten,
so dass die SIP-Pakete den
gleichen Weg zurück
zu dem die Verbindung initialisierenden Host finden. Dazu sind die
SIP-Proxys im Allgemeinen so konfiguriert, dass sie ihre öffentliche
Adresse im Via-Header verwenden, die von anderen Proxys dann aus
dem Via-Header gelesen werden kann. Auf diese Weise kann die Richtung festgelegt
werden, in die das pfadgebundene Signalisierungsprotokoll gesendet
werden muss.
-
Grundsätzlich bleibt
festzustellen, dass es oftmals nachteilig ist, wenn die Daten den
gleichen Pfad nehmen wie das Protokoll zur Verbindungsinitialisierung.
Dies gilt insbesondere dann, wenn Echtzeitdaten zwischen zwei nicht
weit voneinander entfernten Hosts ausgetauscht werden sollen, das
Protokoll zur Verbindungsinitialisierung jedoch über einen topologisch weit
entfernten Proxy-Server
läuft. Dementsprechend
ist vorgesehen, dass von einem der beiden Hosts ein pfadgebundenes
Signalisierungsprotokoll in Richtung des Proxy-Servers des Netzwerks
des jeweils anderen Hosts geschickt wird. Pfadgebunden bedeutet
in diesem Zusammenhang, dass die Daten später den gleichen Weg nehmen
wie das Signalisierungsprotokoll. Informationen aus dem Protokoll
zur Verbindungsinitialisierung können
verwendet werden, um festzulegen, in welche Richtung das pfadgebundene
Signalisierungsprotokoll gesendet werden muss. In einem nächsten Schritt
wird dann sowohl dem Anrufer als auch dem Angerufenen von demjenigen
NAT ihres jeweiligen Netzwerks, den das pfadgebundene Signalisierungsprotokoll
passiert, eine öffentliche
Adresse zugewiesen. Unter dieser öffentlichen Zieladresse kann
ein Host Daten vom jeweils anderen Host empfangen. Über das
Protokoll zur Verbindungsinitialisierung können die beiden Hosts die ihnen
jeweils zugewiesene öffentliche
Zieladresse einander bekannt machen, und sodann können die
eigentlichen Daten zwischen den beiden Hosts ausgetauscht werden.
-
Die
SIP-Signalisierung ermöglicht
es den (beiden) miteinander kommunizierenden Hosts, sich über die
genauen Details der aufzubauenden Multimedia-Verbindung zu einigen.
Problematisch ist jedoch, dass selbst dann, wenn die SIP-Signalisierung fehlerfrei
funktioniert, die eigentlichen Multimedia-Daten für die Sitzung
ihr endgültiges
Ziel, d. h. den anderen Host, nicht erreichen, da für den Datenverkehr
keine statische Adresszuweisung am NAT durchführbar ist. Die Wahl von Port-Nummern
wird nämlich
an beiden Seiten der Datenverbindung dynamisch gewählt und
durch die SIP-Signalisierung geändert.
Insofern gibt es für
den NAT keine Möglichkeit vorherzusagen,
welcher Port gewählt
werden wird, so dass die Adresszuweisung am NAT nicht statisch sondern
nur auf Anfrage vorgenommen werden kann. Speziell für SIP-signalisierte
Sitzungen für IP- Telefonie, bei der
User andere User auf der ganzen Welt erreichen möchten, stellt dies ein Problem dar.
-
Ein
bekanntes Verfahren zur Lösung
dieses Problems ist die Verwendung eines sogenannten intelligenten
NAT, der ein Paket als ein SIP-Paket erkennt und den Inhalt des
SIP-Signalisierungspakets entsprechend der NAT-Konfiguration umschreibt. Wenn
der SIP-Proxy überhaupt
keine Kenntnis von dem NAT hat, tauscht der intelligente NAT die
Adresse des SIP-Proxys in dem Via-Header durch die öffentliche
IP-Adresse des SIP-Proxys aus. Zusätzlich weist der NAT der privaten
IP-Adresse und Port-Nummer des anrufenden Hosts eine öffentliche IP-Adresse und Port-Nummer
zu. Der NAT ersetzt die private Adresse und Port-Nummer in der SIP-Signalisierungsnachricht
durch die neu zugewiesene öffentliche
Adresse und Port-Nummer. Auf dem Weg von dem anderen Host – dem Angerufenen – zurück führt der
NAT des Netzwerks des Angerufenen exakt die gleichen Schritte durch,
d. h. der NAT ersetzt die private Adressen und Port-Nummern des SIP-Proxys und
des Angerufenen ebenfalls durch öffentliche
Informationen, die an dem NAT festgelegt werden.
-
Bestimmte
Arten von NATs, insbesondere NATs mit eingebauter Firewall-Funktionalität oder mit Quell-
und Ziel-Adresslisten, müssen – bevor
sie öffentliche
IP-Adressen bekannt
geben – die öffentliche Adresse
des Angerufenen kennen. In diesem Fall müssen eine Adresse und ein Port
am NAT des Netzwerks des Anrufers eingeführt werden, allerdings darf
die Adressenübersetzung
zunächst
noch nicht durchgeführt
werden. Erst wenn die öffentliche Adresse
und Port-Nummer
der anderen Seite, d. h. des Angerufenen, bekannt ist, wird die
am NAT des Anrufers eingeführte
Adresse und Port-Nummer der Adressumsetzungsliste hinzugefügt, und
die Übersetzung
ist ermöglicht.
Diese Schritte müssen
nur auf der Seite des Anrufers durchgeführt werden.
-
Das
beschriebene Verfahren ist aus mehreren Gründen nachteilig. Zum einen
ist es sehr wahrscheinlich, dass der zwischen den miteinander kommunizierenden
Hosts gewählte
Datenweg nicht optimal ist, da der Datenweg grundsätzlich – zumindest bis
zum NAT, d. h. bis zum Verlassen des privaten Netzwerks – dem Signalisierungspfad
folgt. Zum anderen dürfen
die privaten Netzwerke jeweils nur einen Zugangspunkt zum öffentlichen
Netz haben, d. h. das Verfahren ist nicht anwendbar für sogenannte multi-homed
Netzwerke. Schließlich
ist das Verfahren rechenintensiv und benötigt eine hohe Prozessleistung,
da die Textnachrichten der SIP-Signalisierung einer Syntaxanalyse
(Parsing) unterzogen werden müssen.
-
Ein
weiteres gattungsbildendes Verfahren zum Austausch von Daten zwischen
zwei Hosts bildet die sogenannte Middlebox-Kommunikation, bei der
der NAT von einem Konfigurationsprotokoll ansprechbar ist, welches
momentan von der Midcom-Arbeitsgruppe der Internet Engineering Task Force
(IETF) standardisiert wird. Der SIP-Proxy kann den NAT ansprechen,
um eine Adresszuweisung anzufordern. Dabei muss der SIP-Proxy seine
eigene öffentliche
IP-Adresse kennen, um diese in den Via-Header zu schreiben. Zusätzlich fordert
der SIP-Proxy an
dem NAT eine Adresszuweisung für Hosts
innerhalb des privaten Adressraums an und überschreibt die private Adresse
und Port-Nummer mit der zugewiesenen öffentlichen IP-Adresse und Port-Nummer.
Auf dem Weg von dem anderen Host – dem Angerufenen – zurück führt der
SIP-Proxy des Netzwerks des Angerufenen genau die gleichen Schritte
aus.
-
Nachteilig
bei diesem Verfahren ist, dass der SIP-Proxy exakt wissen muss,
welchen NAT er ansprechen soll, nämlich den NAT, über den
später
der Datenverkehr laufen soll. Für
den Fall, dass ein Netzwerk mehrere NATs umfasst, ist diese Anforderung nur
schwer zu erfüllen,
und insoweit ist es wahrscheinlich, dass der Datenverkehr nicht über den
optimalen Pfad abgewickelt wird. Die Daten werden in der Regel einen
anderen Pfad als das Konfigurationsprotokoll nehmen, es handelt
sich insoweit um ein pfadungebundenes Protokoll.
-
Aus
Stiemerling, M. [u. a.]: A NAT/FW NSIS Signaling Layer Protocol
(NSLP). NSIS Working Group, Internet Draft, October 2003 ist ein
Verfahren der eingangs genannten Art zum Austausch von Daten zwischen
zwei Hosts bekannt, wobei ein Empfänger Daten von einem Sender
empfängt.
Sender und Empfänger
können
unterschiedlichen Adressräumen angehören, wobei
Netzadressenumsetzer (NAT) vorgesehen sind, um öffentliche Adressen in private Adressen
umzusetzen und umgekehrt. Die Daten werden über mindestens einen öffentlich
erreichbaren Proxy-Server ausgetauscht, wobei jeder der beiden Hosts
ein pfadgebundenes Signalisierungsprotokoll in Richtung des Proxy-Servers
des Netzwerks des jeweils anderen Hosts sendet. Dabei wird jedem Host
von demjenigen NAT seines Netzwerks, den das pfadgebundene Signalisierungsprotokoll
passiert, eine öffentliche
Zieladresse zugewiesen, unter der der Host Daten vom jeweils anderen
Host empfangen kann.
-
Aus
Srisuresh, P.; Holdrege, M.: IP Network Address Translator (NAT)
Terminology and Considerations. Network Working Group, RFC 2663,
August 1999 ist für
sich gesehen ein Verfahren zur Adressumsetzung bekannt, wonach IP
Adressen von einem Bereich in einen anderen abgebildet werden.
-
Der
vorliegenden Erfindung liegt nunmehr die Aufgabe zugrunde, ein Verfahren
zum Austausch von Daten zwischen zwei Hosts der eingangs genannten
Art anzugeben, das auch für
Netzwerke mit mehr als einem NAT problemlos anwendbar ist und bei
dem der Datenpfad möglichst
günstig
gewählt wird.
-
Erfindungsgemäß wird die
voranstehende Aufgabe durch die Merkmale des Patentanspruchs 1 gelöst. Danach
ist das in Rede stehende Verfahren derart ausgebildet, dass in einem
ersten Schritt der Angerufene, sobald er ein SIP INVITE Paket empfängt, ein
pfadgebundenes Signalisierungsprotokoll an denjenigen SIP-Proxy
sendet, der im ersten Via-Header des SIP INVITE Pakets steht.
-
In
erfindungsgemäßer Weise
ist zunächst
erkannt worden, dass eine besonders günstige Wahl des Datenpfades
dadurch realisiert werden kann, dass der Angerufene, sobald er ein
SIP INVITE Paket vom Anrufer empfängt, in einem ersten Schritt
ein pfadgebundenes Signalisierungsprotokoll sendet, und zwar an
denjenigen SIP-Proxy, der im ersten Via-Header des SIP INVITE Pakets
steht. Je näher die öffentliche
IP-Adresse, an die das pfadgebundene Signalisierungsprotokoll gesendet
wird, d. h. der erste SIP-Proxy, bei dem Anrufer lokalisiert ist,
desto höher
ist die Wahrscheinlichkeit, dass ein optimaler Datenpfad gewählt wird.
Es sei im Übrigen
angemerkt, dass sich die in dieser Anmeldung gewählte Bezeichnung der verschiedenen
SIP-Nachrichten an dem durch die IETF festgelegten Standard (RFC 3261)
orientiert.
-
Im
Rahmen einer vorteilhaften Ausgestaltung könnte dem Angerufenen in einem
nächsten Schritt
an demjenigen NAT seines privaten Netzwerkes, den das von ihm ausgesendete
pfadgebundene Signalisierungsprotokoll passiert, eine öffentliche Adresse
zugewiesen werden. Diese frisch zugewiesene Zieladresse könnte dem
Anrufer in einem weiteren Schritt über eine SIP 200 OK Nachricht
mitgeteilt werden. Daraufhin könnte
der Anrufer seinerseits ein pfadgebundenes Signalisierungsprotokoll
in Richtung der ihm mitgeteilten öffentlichen Zieladresse des
Angerufenen senden, wobei dem Anrufer am entsprechenden NAT seines
privaten Netzwerkes eine öffentliche
Zieladresse zugewiesen werden könnte.
Diese Adresse könnte
in einem nächsten Schritt über eine
SIP re-INVITE Nachricht dem Angerufenen mitgeteilt werden. Danach
könnte
die normale SIP-Signalisierung
fortgesetzt werden und schließlich
der Datenaustausch durchgeführt
werden.
-
Erfindungsgemäß wird die
voranstehende Aufgabe des Weiteren durch die Merkmale des Patentanspruchs
9 gelöst.
Danach ist das in Rede stehende Verfahren derart ausgebildet, dass
in einem ersten Schritt der Anrufer den SIP-Namen des Angerufenen unter Verwendung
von DNS (Domain Name System)-Auflösung in
die öffentliche
Adresse desjenigen SIP-Proxys umsetzt, an dem der Angerufene registriert
ist, und sodann ein pfadgebundenes Signalisierungsprotokoll in Richtung
dieses SIP-Proxys sendet.
-
In
erfindungsgemäßer Weise
ist insoweit erkannt worden, dass eine besonders günstige Wahl des
Datenpfades bei schnellem Verbindungsaufbau realisiert werden kann,
indem eine DNS (Domain Name System)-Auflösung verwendet wird und der Anrufer
in einem ersten Schritt den SIP-Namen des Angerufenen mittels DNS
in die öffentliche
Adresse desjenigen SIP-Proxys umsetzt, an dem der Angerufene registriert
ist. In Richtung dieser öffentlichen Adresse
sendet der Anrufer erfindungsgemäß sodann
ein pfadgebundenes Signalisierungsprotokoll.
-
Im
Rahmen einer vorteilhaften Ausgestaltung kann dem Anrufer in einem
nächsten
Schritt an denjenigen NAT seines privaten Netzwerks, den das von
ihm ausgesendete pfadgebundene Signalisierungsprotokoll passiert,
eine öffentliche Zieladresse zugewiesen
werden. Über
eine SIP INVITE Nachricht könnte
diese Zieladresse dem Angerufenen mitgeteilt werden. Der NAT des
Netzwerks des Anrufers kann dabei allerdings keine Firewall-Funktionalität bereitstellen,
da die am NAT festgelegte öffentliche Zieladresse
von jedermann außerhalb
des privaten Netzwerks global zugänglich ist.
-
In
einem weiteren Schritt kann der Angerufene seinerseits ein pfadgebundenes
Signalisierungsprotokoll an die ihm nunmehr bekannte öffentliche Zieladresse
des Anrufers senden. Auch dem Angerufenen könnte dann an demjenigen NAT
seines privaten Netzwerks, den das von ihm ausgesendete pfadgebundene
Signalisierungsprotokoll passiert, eine öffentliche Zieladresse zugewiesen
werden. Diese könnte
dem Anrufer in einem weiteren Schritt über eine SIP 200 OK Nachricht
mitgeteilt werden. Danach könnte
die normale SIP-Signalisierung fortgesetzt werden, und schließlich könnten die
Daten zwischen dem Anrufer und dem Angerufenen mittels der einander
bekannt gemachten öffentlichen
Zieladressen ausgetauscht werden.
-
Erfindungsgemäß wird die
voranstehende Aufgabe schließlich
durch die Merkmale des Patentanspruchs 17 gelöst. Danach ist das in Rede
stehende Verfahren derart ausgebildet, dass in einem ersten Schritt
der Anrufer ein SIP INVITE Paket an den Angerufenen sendet und dieser
ein SIP Ringing Paket an den Anrufer zurücksendet und dass in einem weiteren
Schritt der Anrufer ein pfadgebundenes Signalisierungsprotokoll
an denjenigen SIP-Proxy sendet, der im letzten Via-Header des SIP Ringing
Pakets steht, und der Angerufene ein pfadgebundenes Signalisierungsprotokoll
an denjenigen SIP-Proxy sendet, der im ersten Via-Header des SIP INVITE Pakets
steht. Insoweit ist erfindungsgemäß eine besonders schnelle Ausgestaltung
realisiert.
-
In
einem nächsten
Schritt kann dann dem Anrufer und dem Angerufenen an denjenigen
NATs ihrer privaten Netzwerke, die die von ihnen ausgesendeten pfadgebundenen
Signalisierungsprotokolle passieren, jeweils eine öffentliche
Zieladresse zugewiesen werden. Zugunsten eines besonders schnellen
Verbindungsaufbaus wären
die öffentlichen Adressen
dann bereits festgelegt, bevor überhaupt klar
ist, ob der Angerufene den Anruf annimmt.
-
Über eine
SIP 200 OK und eine SIP re-INVITE Nachricht können sich Anrufer und Angerufene ihre öffentlichen
Zieladressen gegenseitig mitteilen. Im Anschluss daran könnte die
normale SIP-Signalisierung fortgesetzt werden und schließlich die
Daten zwischen Anrufer und Angerufenem ausgetauscht werden.
-
Es
sei angemerkt, dass die erfindungsgemäßen Verfahren mit allen Arten
von Netzadressenumsetzern funktionieren, einschließlich solchen
mit Firewall-Funktionalität. Die NATs
können
vollkommen unabhängig
von dem Protokoll zur Verbindungsinitialisierung betrieben werden,
sie müssen
lediglich das pfadgebundene Signalisierungsprotokoll erkennen. Weiterhin
ist vorteilhaft, dass die Proxy-Server und das pfadgebundene Signalisierungsprotokoll
unabhängig
voneinander sind, d. h. die Proxy-Server brauchen das pfadgebundene
Signalisierungsprotokoll nicht zu erkennen.
-
Es
sei weiter angemerkt, dass sich die erfindungsgemäßen Verfahren
besonders gut für
größere Netzwerke
mit mehreren Zugangspunkten eignen. Der gewählte Datenpfad wird dann im
Allgemeinen nicht mit dem Pfad übereinstimmen,
den das Protokoll zur Verbindungsinitialisierung nimmt. Es sei weiterhin
angemerkt, dass die erfindungsgemäßen Verfahren nicht auf die
Kommunikation zwischen zwei Hosts beschränkt sind, sondern auch für mehrere miteinander
kommunizierende Hosts – beispielsweise
Teilnehmer einer Videokonferenz – entsprechend anwendbar sind.
Schließlich
sei angemerkt, dass ein pfadgebundenes Signalisierungsprotokoll
zum Passieren von NATs und Firewalls, wie es bei den erfindungsgemäßen Verfahren
zum Einsatz kommt, momentan von der NSIS (hext Steps In Signaling)-Arbeitsgruppe
der IETF (Internet Engineering Task Force) standardisiert wird.
-
Im
oben Gesagten wurde hinsichtlich der Verbindungsinitialisierung
stets auf das Session Initiation Protocol (SIP) Bezug genommen,
wobei als Protokoll zur Verbindungsinitialisierung auch das Protokoll
H.323 oder ein ähnliches
Signalisierungsprotokoll auf Anwendungsbasis verwendet werden könnten.
-
Im
Hinblick auf eine besonders hohe Praktikabilität könnte vorgesehen sein, dass
die miteinander kommunizierenden Host nicht nur öffentliche Zieladressen sondern
auch entsprechende Port-Nummern einander bekannt machen.
-
In
besonders vorteilhafter Weise könnte
der jeweils erste SIP-Proxy, an den das pfadgebundene Signalisierungsprotokoll
zunächst
gesendet wird, topologisch nah bei dem jeweiligen das Protokoll
aussendenden Host angeordnet sein. Insbesondere könnten die
jeweils ersten Proxys innerhalb der privaten Netzwerke zwischen
privatem und öffentlichem Adressraum
lokalisiert sein. Durch eine derartige Netzwerkkonfiguration wäre sichergestellt,
dass das pfadgebundene Signalisierungsprotokoll in die richtige
Richtung geroutet wird und den entsprechenden NAT passiert. In diesem
Zusammenhang sei angemerkt, dass das pfadgebundene Signalisierungsprotokoll
immer weiter geleitet werden könnte,
bis es von einem NAT gestoppt wird, der weiß, dass er der letzte vor dem öffentlichen
Adressraum ist. Sollte ein derartiger NAT nicht existieren, so könnte das
Signalisierungspaket eventuell aufgegeben werden.
-
Neben
den bereits genannten Anwendungsmöglichkeiten können die
erfindungsgemäßen Verfahren
vorteilhaft im Rahmen von Internet-Telefonie, UMTS-Applikationen
oder Multimediakommunikation eingesetzt werden. Insbesondere steht
hier ein Einsatz zum Austausch von Multimedia-Inhalten in allen Arten
mobiler Netzwerke im Vordergrund, wie z. B. in 2.5G-(GPRS), 3G- bzw. in Zukunft
in 4G-Netzen. Denkbar ist auch der Einsatz im Rahmen von Instant Messaging
(IM)-Anwendungen, wobei ein Einsatz hier insbesondere dann vorteilhaft
ist, wenn IM-Nachrichten separat zwischen zwei Usern versendet werden.
-
Es
gibt nun verschiedene Möglichkeiten,
die Lehre der vorliegenden Erfindung in vorteilhafter Weise auszugestalten
und weiterzubilden. Dazu ist einerseits auf die den Patentansprüchen 1,
9 und 17 nachgeordneten Patentansprüche und andererseits auf die
nachfolgende Erläuterung
bevorzugter Ausführungsbeispiele
der Erfindung anhand der Zeichnung zu verweisen. In Verbindung mit
der Erläuterung
der bevorzugten Ausführungsbeispiele
der Erfindung anhand der Zeichnung werden auch im Allgemeinen bevorzugte
Ausgestaltungen und Weiterbildungen der Lehre erläutert. In
der Zeichnung zeigen
-
1 in
einer schematischen Ansicht zwei miteinander kommunizierende Hosts,
die jeweils in einem eigenen privaten Netzwerk lokalisiert sind,
-
2 in
einer schematischen Ansicht ein erstes Ausführungsbeispiel eines erfindungsgemäßen Verfahrens,
bei dem der Sicherheitsaspekt des Datenaustauschs im Vordergrund
steht,
-
3 in
einer schematischen Ansicht ein zweites Ausführungsbeispiel eines erfindungsgemäßen Verfahrens
und
-
4 in
einer schematischen Ansicht ein drittes Ausführungsbeispiel eines erfindungsgemäßen Verfahrens,
bei dem ein besonders schneller Verbindungsaufbau realisiert ist.
-
1 zeigt
schematisch die typische Situation einer SIP-signalisierten Datenkommunikation
zwischen zwei Hosts – Host
A und Host B –,
die in zwei verschiedenen Netzwerken 1, 2 mit
jeweils einem eigenen privaten Adressraum lokalisiert sind. Die
beiden Netzwerke 1, 2 sind über die öffentliche Internet-Infrastruktur miteinander
verbunden, wobei in dem dargestellten Beispiel an der Grenze zwischen privatem
und öffentlichem
Adressraum jeweils zwei Netzadressenumsetzer 3, 4, 5, 6 vorgesehen
sind. Beide privaten Netzwerke 1, 2 betreiben
jeweils einen SIP-Proxy 7, 8. Weitere SIP-Proxys 9,
von denen lediglich einer beispielhaft dargestellt ist, befinden sich
außerhalb
der beiden privaten Netzwerke 1, 2. Zusätzlich sind
in 1 innerhalb der Netzwerke 1, 2 lokalisierte
Router 10, 11 dargestellt.
-
Host
A – Anrufer – beginnt
die SIP-Signalisierung, indem er beispielsweise eine SIP INVITE
Nachricht an seinen gewünschten
Gesprächspartner
Host B – Angerufener – sendet.
Die SIP-Signalisierung läuft
entlang der in 1 dargestellten Pfeile über den
Router 10, die SIP-Proxys 7, 9 und 8 und über den
Router 11 zum Host B. Die IP-Adresse von Host B ist im
Allgemeinen weder Host A noch dem SIP-Proxy 7, noch dem
SIP-Proxy 9 bekannt. Host A kennt lediglich den Namen des
gewünschten
Gesprächspartners.
Die Auflösung
des Namens, d. h. die Zuordnung des Namens zu einer IP-Adresse,
ist eine Funktion der SIP-Signalisierung
und wird demzufolge im Rahmen der SIP-Signalisierung durchgeführt.
-
Über die
SIP-Signalisierung muss Host A Host B mitteilen, unter welcher öffentlichen
IP-Adresse er – Host
A – bereit
ist, für
die aufzubauende Sitzung Daten von Host B zu empfangen. In ähnlicher Weise
muss Host B Host A mitteilen, unter welcher öffentlichen IP-Adresse er – Host B – Daten
empfängt.
In den meisten Fällen
werden dabei nicht nur IP-Adressen sondern auch Port-Nummern ausgetauscht.
-
Das
Problem besteht nun darin, dass weder Host A noch Host B eine öffentliche
IP-Adresse haben und zudem nicht wissen, welche öffentliche IP-Adresse ihnen
zugewiesen werden wird, wenn sie ihr privates Netzwerk 1, 2 über einen
NAT 3, 4, 5, 6 verlassen. Das
Problem ist insoweit sogar noch verschärft, als beide Hosts noch nicht
einmal wissen, über
welchen NAT 3, 4, 5, 6 sie ihr
privates Netzwerk 1, 2 verlassen werden. Aus diesen
Gründen
ist es ihnen nicht möglich,
die notwendigen Informationen – d.
h. ihre öffentlichen
IP-Adressen und ggf. Port-Nummern – einander
mitzuteilen, um einen Datenaustausch für sitzungsspezifische Daten,
wie z. B. Multimedia-Daten oder VoIP-Daten, zwischen diesen Adressen
durchzuführen.
-
2 zeigt – schematisch – ein erstes
Ausführungsbeispiel
eines erfindungsgemäßen Verfahrens
zum Austausch von Daten zwischen Host A – Anrufer – und Host B – Angerufener.
Die 2 zeigt in der obersten Zeile zusätzlich zu
den beiden miteinander kommunizierenden Hosts einen SIP-Proxy 12 und
einen NAT 13 des privaten Netzwerks von Host A sowie einen
SIP-Proxy 15 und einen NAT 14 des privaten Netzwerks
von Host B. Für
die dargestellten NATs sei angenommen, dass es sich jeweils um den letzten
NAT vor dem öffentlichen
Adressraum handelt. Die öffentliche
Adresse der SIP-Proxys 12, 15 ist eine NAT- Bindung an den jeweiligen
NATs 13, 14, so dass die SIP-Proxys 12, 15 jeweils
eine reale private Adresse und eine virtuelle Adresse besitzen,
die von außen,
d. h. vom öffentlichen
Adressraum, erreichbar ist.
-
Im
Rahmen des SIP-Verbindungsaufbaus sendet Host A zunächst eine
SIP INVITE Nachricht an Host B, auf die dieser mit einer SIP Ringing
Nachricht antwortet. Host B sendet sodann ein pfadgebundenes Signalisierungspaket 16 in
Richtung des ersten SIP-Proxys 12, wobei der erste SIP-Proxy 12 derjenige
in dem ersten Via-Header der SIP INVITE Nachricht ist. Dieser erste
SIP Proxy 12 ist innerhalb des privaten Netzwerks 1 des
Anrufers lokalisiert (SIP-Proxy 7 in 1),
so dass das pfadgebundene Signalisierungspaket 16 in die
richtige Richtung geroutet wird und den entsprechenden NAT 14 (NAT 6 in 1)
passiert. Am NAT 14 wird Host B eine öffentliche IP-Adresse zugewiesen,
die Host B über
ein an diesen zurückgesendetes
pfadgebundenes Signalisierungspaket 17 mitgeteilt wird.
Damit ist der Anruf von Host B angenommen, was in der 2 durch den
gestrichelten Pfeil mit der Bezeichnung C. A. (Call Accepted) angedeutet
ist und physikalisch bspw. dem Abnehmen des Telefonhörers durch
Host B entspricht. Daraufhin sendet Host B an den Anrufer eine SIP
200 OK Nachricht, welche die frisch zugewiesene öffentliche Zieladresse enthält. Diese
Adresse wird sodann von Host A für
ein pfadgebundenes Signalisierungsprotokoll 18 verwendet,
um am entsprechenden NAT 13 (NAT 4 in 1)
seines Netzwerks 1 eine öffentliche IP-Adresse und Port-Nummer
festzulegen, die ihm mit dem pfadgebundenen Signalisierungsprotokoll 19 mitgeteilt
werden.
-
Die
Host A zugewiesene Adresse wird sodann mittels eines SIP re-INVITE
Pakets an Host B gesendet, um diesen über die geänderte Adresse zu informieren.
Im Anschluss daran wird die normale SIP-Signalisierung fortgesetzt,
und schließlich
können
Host A und Host B über
die einander bekannt gemachten öffentlichen
Zieladressen Daten miteinander austauschen.
-
3 zeigt – schematisch – ein zweites
Ausführungsbeispiel
eines erfindungsgemäßen Verfahrens,
wobei gleiche Bezugszeichen gleiche Elemente bzw. gleiche Verfahrensschritte
wie in 2 bezeichnen. Im Unterschied zu dem in 2 gezeigten
Ausführungsbeispiel
wird in einem ersten Schritt sogleich die Adresszuweisung am NAT 13 des
Anrufers – Host A – durchgeführt. Dazu
wird eine DNS-Auflösung
des SIP-Namens des gewünschten
Gesprächsteilnehmers – Host B – vorgenommen.
Der SIP-Name wird einem SIP-Proxy 15 (entsprechend einer öffentlichen IP-Adresse)
zugeordnet, an dem der Angerufene registriert ist. Ein vom Anrufer
in Richtung dieses SIP-Proxys 15 gesendetes pfadgebundenes
Signalisierungsprotokoll 18 wird verwendet, um Host A am NAT 13 seines
privaten Netzwerks 1 eine öffentliche Adresse zuzuweisen.
Die Host A zugewiesene Adresse wird sodann über die SIP INVITE Nachricht Host
B mitgeteilt. Danach sendet Host B ein pfadgebundenes Signalisierungspaket 16 an
die Host A frisch zugewiesene öffentliche
IP-Adresse und legt auf diese Weise eine öffentliche IP-Adresse und Port-Nummer
auf seiner Seite fest. Unter Verwendung der SIP 200 OK Nachricht
wird diese Adresse von Host B dem Host A mitgeteilt. Danach wird
wiederum die normale SIP-Signalisierung fortgesetzt, und schließlich können Daten
zwischen den beiden Hosts ausgetauscht werden.
-
4 zeigt
schließlich – schematisch – ein drittes
Ausführungsbeispiel
eines erfindungsgemäßen Verfahrens
zum Datenaustausch zwischen zwei Hosts. Der Unterschied zu dem in 2 erläuterten Ausführungsbeispiel
besteht darin, dass die Adresszuweisung am NAT 13 des Anrufers – Host A – auf Grundlage
der SIP Ringing Nachricht durchgeführt wird. Dieses SIP-Paket
enthält
die gleichen Via-Header-Informationen
wie die SIP INVITE Nachricht, wobei lediglich die Reihenfolge der
Header vertauscht ist. Das von Host A ausgesendete pfadgebundene Signalisierungsprotokoll 18 wird
an den letzten Via-Header der Ringing Nachricht gesendet, d. h.
an den SIP-Proxy 15 (SIP-Proxy 8 in 1),
der topologisch nah bei Host B lokalisiert ist.
-
In
diesem Ausführungsbeispiel
wurde Host A bereits eine öffentliche
Adresse zugewiesen, bevor Host B den Anruf überhaupt akzeptiert hat, beispielsweise
durch Abheben des Hörers
seines Internet-Telefons. Auf diese Weise ist ein schneller Verbindungsaufbau
sichergestellt. Sollte Host B den Anruf nicht akzeptieren, da er
sich beispielsweise bereits in einer anderen Sitzung befindet oder
gar nicht anwesend ist, so wäre
die von Host A durchgeführte Adresszuweisung überflüssig und
würde wieder
verworfen.
-
Hinsichtlich
weiterer vorteilhafter Ausgestaltungen und Weiterbildungen der erfindungsgemäßen Lehre
wird einerseits auf den allgemeinen Teil der Beschreibung und andererseits
auf die beigefügten Patentansprüche verwiesen.
-
Abschließend sei
ganz besonders hervorgehoben, dass die zuvor rein willkürlich gewählten Ausführungsbeispiele
lediglich zur Erörterung
der erfindungsgemäßen Lehre
dienen, diese jedoch nicht auf diese Ausführungsbeispiele einschränken.