-
Die
vorliegende Erfindung bezieht sich auf Telekommunikationsnetze,
die die Protokollschicht IPv6 (Internet Protocol – Version
6) verwenden. Genauer gesagt bezieht sie sich auf die Adressauflösung innerhalb
eines Domainnamenservers, der derartigen Kommunikationsnetzen zugeordnet
ist.
-
Solche
Domainnamenserver sind aus dem gegenwärtigen Stand der Technik gut
bekannt und werden üblicherweise
mit ihrer englischen Abkürzung
DNS für « Domain
Name Server » bezeichnet. Die
Funktionsweise der DNS ist genormt und in RFC 1034 und 1035 der
IETF (Internet Engineering Task Force) beschrieben.
-
Das
Ziel von Domainnamenservern besteht darin, die Adressierung innerhalb
eines IP-Telekommunikationsnetzes zu vereinfachen: Sie fungieren als
Teilnehmerverzeichnisse, die die symbolischen Namen (oder Domainnamen)
der Netzelemente, die im Netzwerk keinerlei Realität aufweisen,
den digitalen Adressen dieser Netzelemente zuweisen.
-
Wenn
also ein erstes Netzelement einen Datenfluss an ein zweites Netzelement
adressieren will, kann es entweder die Adresse dieses zweiten Netzelements,
sofern ihm diese bekannt ist, oder den symbolischen Namen dieses
zweiten Netzelements verwenden.
-
In
letzterem Fall adressiert das erste Netzelement eine Anfrage an
den Domainnamenserver, die diesen symbolischen Namen beinhaltet.
Als Antwort erhält
es die diesem symbolischen Namen entsprechende/-n Adresse/-n. Dann
kann es den Datenfluss unter Verwendung seiner Adresse an das zweite
Netzelement versenden.
-
Im
Patent
WO 02/39699AT wird
ein Domainnamenserver für
ein IPv4-Netz beschrieben,
der Einträge
für Proxy-Hosts
umfasst, die in der Lage sind, einen vordefinierten Inhalt und eine
Gewichtung für jeden
Proxy-Host zu liefern, indem sie eine Reihenfolge definieren, in
der die genannten Proxy-Hosts angesprochen werden müssen. Diese Gewichtung wird
in Abhängigkeit
von der geographischen Nähe zwischen
Proxy-Host und DNS-Client festgelegt.
-
Es
tritt jedoch ein Problem auf, wenn der gleiche Domainnamen mehreren
Adressen zugeordnet ist. Dies ist insbesondere in einem Netz der
Fall, das die Protokollschicht IPv6 einsetzt, wobei die Spezifikationen
für IPv6
tatsächlich
die Zuordnung mehrerer Adressen für das gleiche Netzelement ermöglichen.
-
Der
Einsatz eines DNS-Systems in einem Netz vom Typ IPv6 ist in RFC
1886 der IETF mit dem Titel « DNS
Extensions to Support IP Version 6 » beschrieben.
-
Bei
diesen Adressen kann es sich um Adressen unterschiedlicher Ebenen
handeln. So existieren entsprechend der Beschreibung in RFC 2373
der IETF mit dem Titel « IP
Version 6 Adressing Architecture » verschiedene Adressentypen,
die auf der Basis eines Präfixes
unterschieden werden. Somit gibt es Adressen mit einem globalen
Wert und Adressen mit einem lokalen Wert, insbesondere lokal für einen
bestimmten Standort. Wenn sich der Absender und der Empfänger des
Datenflusses im gleichen Adressraum (einem Standort) befinden, sollte
die lokale Adresse für
diesen Adressraum verwendet werden. Dieser Typ einer für einen
Standort lokalen Adresse wird im Folgenden auch als Standortadresse
bezeichnet.
-
Im
anderen Fall muss eine globale Adresse verwendet werden, ansonsten
kann der Datenfluss nicht korrekt an den Empfänger weitergeleitet werden.
-
Wenn
die globale Adresse systematisch verwendet wird, werden die Datenflüsse korrekt
weitergeleitet, die Nutzung des Netzes ist jedoch nicht optimal.
Außerdem
kann keine Gewähr
dafür übernommen
werden, dass die Datenflüsse
den Standort nicht verlassen.
-
Es
kann zudem Adressen unterschiedlicher Art geben, wie beispielsweise
eine IPv6-Adresse und eine so genannte « 6to4 »-Adresse entsprechend der Definition
in RFC 3056 der IETF (Internet Engineering Task Force) mit dem Titel « Connection
of IPv6 Domgins via: IPv4 Clouds ».
-
Dieser
Mechanismus ist einer der Mechanismen, die die schrittweise Umstellung
eines IPv4-Netzes auf ein IPv6-konformes Netz ermöglichen.
-
Der « 6to4 » Mechanismus
ermöglicht
reinen IPv6-Netzelementen, über
reine IPv4-Netzelemente mit anderen IPv6-Netzelementen zu kommunizieren. Zu
diesem Zweck wurde ein besonderer Adresstyp definiert, die so genannten « 6T04-Adressen ». Die Adressen
dieses Typs sind für
die Netzelemente dadurch erkennbar, dass sie mit dem Präfix « 2002 » beginnen:
Auf diese Weise ist ein Netzelement am Rand eines IPv6-Standorts
beim Empfang eines Pakets mit einer solchen Adresse in der Lage,
es in ein IPv4-Paket zu verkapseln, um es an seinen Empfänger weiterzuleiten.
-
Die
Verwendung einer falschen Adresse könnte zur Folge haben, dass
ein Netzelement, das nur mit IPv4 kompatibel ist, eine IPv6-Adresse empfängt, oder
dass der Adressraum auf inakzeptable Weise eingeschränkt wird.
Auf diese Weise kann der Datenfluss nicht weitergeleitet werden.
-
In
diesen beiden Fällen
ist der gleiche Name mehreren Adressen zugeordnet. Der Domainnamenserver übermittelt
daher als Antwort auf eine Anfrage sämtliche Adressen und das Absender-Netzelement dieser
Anfrage verwendet willkürlich
eine beliebige dieser Adressen.
-
Im
ersten Fall ist die Verwendung einer ungeeigneten Adresse jedoch
vom Gesichtspunkt des Netzes her nicht optimal.
-
Im
zweiten Fall kann die Verwendung einer nicht geeigneten Adresse
zudem zur Folge haben, dass keine korrekte Adressierung des Netzelements, das
man erreichen will, möglich
ist.
-
Es
existieren Lösungen,
die darin bestehen, die Adressen zu sortieren oder unter den verschiedenen
Adressen in Abhängigkeit
von bestimmten Kriterien eine Auswahl zu treffen, diese Lösungen bestehen
jedoch darin, eine Auswahl oder eine Sortierung auf der Ebene der
Anwendungen vorzunehmen. Solche Lösungen werden beispielsweise
im Dokument « draft-ietf-ipngw-default-addr-select-05.txt » vom 4. Juni
2001 und in den von dem Dokument « draft-ietfngtrans-6to4-03.txt » ausgelösten Diskussionen
erörtert.
-
Eine
solche Lösung überlastet
jedoch die Anwendungen, und wenn ihnen zuviel Freiheit gelassen wird,
kann dies zu einem Fehlverhalten des gesamten Kommunikationsnetzes
führen.
Außerdem
kann eine Anwendung keinen ausreichenden Überblick über das Netz haben, um die
Auswahl der optimalen Adresse zu ermöglichen. Schließlich ermöglicht eine solche
Lösung
nicht die Umsetzung einer einheitlichen Politik zur Netzverwaltung.
-
Das
Ziel der Erfindung besteht darin, diese Nachteile nach dem gegenwärtigen Stand
der Technik zu beseitigen, indem das Absender-Netzelement eines Datenflusses in die
Lage versetzt wird, eine effiziente und optimale Adresse zu verwenden.
-
Zu
diesem Zweck hat die Erfindung einen Domainnamenserver zum Gegenstand,
der einem Datennetz zugeordnet ist und Folgendes umfasst:
- • Vorrichtungen
zum Empfang von Anfragen, die einen Domainnamen beinhalten und
- • Vorrichtungen
zur Rücksendung
der Anfrage an den Absender, wobei eine Antwort eine oder mehrere
dem Domainnamen zugeordnete Adressen beinhaltet.
-
Gemäß der Erfindung
werden diese Adressen von dem Domainnamenserver innerhalb der Antwort
zumindest in Abhängigkeit
vom Inhalt der Anfrage sortiert, wie in Anspruch 1 und 2 definiert.
-
Gemäß einer
Ausführungsvariante
der Erfindung wird die Sortierung zumindest in Abhängigkeit vom
Inhalt der Anfrage durchgeführt.
-
Die
Sortierung kann außerdem
in Abhängigkeit
von der Netztopologie erfolgen, wobei die nächst gelegene lokale Adresse,
die die Möglichkeit
bietet, sowohl den genannten Absender der Anfrage als auch das dem
Domainnamen entsprechende Netzelement zu adressieren, als erstes
eingefügt
wird.
-
Die
Sortierung kann auch dergestalt durchgeführt werden, dass im Fall der
Anwesenheit einer IPv4-Cloud zwischen dem Absender der Anfrage und dem
diesem Domainnamen entsprechenden Netzelement als Erstes eine Adresse
vom Typ « 6to4 » eingefügt wird.
-
Die
Erfindung und ihre Vorteile werden anhand der folgenden Beschreibung
in Bezug auf die beiliegenden Zeichnungen deutlich.
-
1 stellt
eine erste Ausführungsvariante der
Erfindung dar.
-
2 ist
eine schematische Darstellung einer zweiten Ausführungsvariante der Erfindung.
-
1 stellt
ein Netz dar, das aus zwei Standorten S und S' besteht. Der Standort S umfasst die
Netzelemente R1, R2 und
R3 und der Standort S' umfasst ein Netzelement R4.
-
Wie
zuvor erläutert,
gibt es verschiedene IPv6-Adresstypen, die man anhand ihrer Präfixe voneinander
unterscheidet.
-
Zu
diesen Adresstypen gehören
die lokalen Adressen des Standortes (Site-local adress) oder Standortadressen
sowie die globalen Adressen.
-
Man
erkennt eine lokale Adresse des Standorts daran, dass sie die Form « FEC0::/10 » aufweist, was
bedeutet, dass die ersten 10 Bit den Wert FEC0 haben und die 118
folgenden den eigentlichen Adressraum darstellen. In gleicher Weise
erkennt man eine lokale Verbindungsadresse daran, dass sie die Form « FE80::/80 » aufweist.
-
Infolgedessen
kann das Netzelement R4 beispielsweise über eine
globale Adresse ag und eine lokale Standortadresse
as verfügen.
Diese globale Adresse ag kann gemäß RFC 2374
mit dem Titel « An IPv6
Aggregatable Global Unicast Address » definiert werden. Sie ermöglicht dem
Netzelement R4, mit Netzelementen zu kommunizieren,
die sich an anderen Standorten befinden, beispielsweise mit dem
Netzelement R1, das sich am Standort S befindet.
-
Man
geht davon aus, dass das Netzelement R1 einen
Datenfluss an das Netzelement R4 übertragen
möchte.
-
Zu
diesem Zweck richtet es eine Anfrage R an den Domainnamenserver
D, die den symbolischen Namen oder Domainnamen des Netzelements R4 beinhaltet.
-
Gemäß der Erfindung
ist der Domainnamenserver D in der Lage, die verschiedenen Adressen des
gesuchten Netzelements in der Antwort an den Absender der Anfrage
R zu sortieren.
-
Zu
diesem Zweck kann er die in dieser Anfrage R enthaltenen Informationen
nutzen. Unter diesen Informationen findet man insbesondere die Quelladresse
der Anfrage, d.h. die Adresse des Netzelements R1.
In Kenntnis der Adressen der Netzelemente R1 und
R4 sowie der Netztopologie kann der Domainnamenserver
festlegen, welcher Adresstyp verwendet werden muss. Im vorliegenden
Beispiel kann er ermitteln, dass sich die Netzelemente R1 und R4 nicht am
gleichen Standort befinden und dass die lokale Adresse daher nicht
verwendet werden kann.
-
Nach
Abstraktion der anderen möglichen Adressen
sortiert der Server D daher die Adressen in der Antwort R', die er an das Netzelement
R1 übermittelt,
in der Reihenfolge ag, as.
-
Beim
Empfang dieser Antwort R' kann
das Netzelement R1 ermitteln, welche Adresse
verwendet werden soll, indem es die erste in der Reihenfolge auswählt, d.h.
die Adresse ag. Es kann dann die Adresse
ag verwenden, um sie als Zieladresse in
die Datenflusspakete F einzufügen,
die es an das Netzelement R4 übermittelt.
-
Ohne
diese vom Domainnamenserver D durchgeführte Sortierung hätte das
Netzelement R1 keine Möglichkeit zu ermitteln, welche
Adresse es verwenden soll. Es hätte
dann vielleicht die lokale Adresse aL verwendet,
was zur Folge gehabt hätte, dass
der Datenfluss F nicht übermittelt
werden kann.
-
Anders
ausgedrückt
erfolgt die vom Domainnamenserver D durchgeführte Sortierung in Abhängigkeit
von der Anfrage: Wenn es sich bei der Quelladresse der Anfrage um
eine lokale Adresse handelt, und wenn der angeforderte Namen über eine
lokale Adresse verfügt,
wird diese lokale Adresse zuerst verwendet.
-
Allgemeiner
ausgedrückt
besteht sie darin, an erster Stelle die nächstgelegene lokale Adresse einzufügen, die
die Möglichkeit
bietet gleichzeitig den Absender (hier das Netzelement R1) der Anfrage R und das Netzelement zu adressieren,
das dem gesuchten Domainnamen entspricht (hier das Netzelement R4).
-
Wenn
das Netzelement R1 einen Datenfluss an das
Netzelement R4 übertragen möchte, würde der Domainnamenserver seine
lokale Standortadresse (sofern vorhanden) als erstes zurücksenden,
damit das Netzelement R1 diese für seine
Kommunikation mit R3 verwendet.
-
2 stellt
eine zweite Ausführungsvariante
der Erfindung im Rahmen eines heterogenen Netzes dar, das aus IPv4-Netzelementen
und IPv6- oder IPv4/IPv6-Netzelementen besteht.
-
Es
existieren unterschiedliche Mechanismen. In diesem Beispiel wird
der 6to4-Mechanismus eingesetzt. Die Erfindung kann jedoch ebenso
bei anderen Mechanismen eingesetzt werden, sobald unterschiedliche
Adressen erforderlich sind.
-
In
diesem Beispiel besteht ein Datennetz aus zwei Domains NA und NB, die durch
eine Cloud N4 voneinander getrennt sind,
die nur aus IPv4-Netzelementen besteht. Dieses Beispiel stellt den
klassischen Fall von zwei Standorten dar, die auf die IPv6-Technologie
umgestellt haben und die über
ein Drittnetz miteinander verbunden sind, das von einem Telekommunikationsanbieter
zur Verfügung
gestellt wird und noch nicht umgestellt wurde, und somit weiterhin
nur mit IPv4-Protokollen kompatibel ist.
-
Bei
den Netzelementen A und B handelt es sich um Router, die die Cloud
N4 mit den Domains NA bzw.
NB verbinden.
-
In
den beiden Domains NA und NB gibt
es einen Domainnamenserver DA bzw. DB oder DNS. Man geht davon aus,
dass die beiden Server DA und DB auf geeignete Weise konfiguriert
sind und gegenseitig über
ihre richtige Adresse verfügen.
-
Zuerst
sendet das Absender-Netzelement X, das einen Datenfluss an ein Empfänger-Netzelement Y übertragen
will, das sich in der Domain NB befindet, eine
Anfrage R an den Domainnamenserver DA, der der Domain NA zugeordnet
ist. Diese Anfrage R enthält
den symbolischen Namen des Empfängers
Y, und sie enthält
eine Quelladresse, d.h. eine Adresse des Absenders X.
-
Beim
Empfang dieser Anfrage R stellt der Server DA fest, ob er über eine
Zuordnung zwischen dem symbolischen Namen, der in der Anfrage enthalten
ist, und einer Adresse verfügt.
Da sich der Empfänger
Y außerhalb
der Domain NA befindet, die von dem Server
DA « gesteuert » wird,
ist diese Zuordnung nicht in den Tabellen oder in der Datenbank
des Servers DA aufgeführt.
Entsprechend einer rekursiven Konfiguration überträgt er die Anfrage an den Domainnamenserver
DB der Domain NB.
-
Da
der Empfänger
Y und der Server DB zur gleichen Domain NB gehören, verfügt Letzterer über die
Informationen in Bezug auf den Empfänger Y und über die Zuordnung zwischen
seinem (symbolischen) Domainnamen und seinen Adressen. In diesem
Beispiel besitzt der Empfänger
Y mindestens zwei Adressen:
- • Eine Adresse
av6 entsprechend dem Protokoll IPv6, die
dem Netzelement Y ermöglicht,
mit den anderen Netzelementen des Domainnetzes Y oder mit Netzelementen
anderer IPv6-Domains (nicht
abgebildet) zu kommunizieren.
- • Eine
Adresse a6to4 gemäß der bereits angesprochenen « 6to4 »-Technologie,
die die Kommunikation von zwei IPv6-Netzelementen über eine IPv4-Cloud ermöglicht.
-
Gemäß der Erfindung
sortiert der Domainnamenserver DB die beiden (oder mehr) Adressen,
die dem symbolischen Namen des gesuchten Netzelements Y entsprechen.
-
Die
Sortierung kann in Abhängigkeit
vom Inhalt der vom Domainnamenserver DA übertragenen Anfrage erfolgen.
Diese Anfrage enthält
nämlich
die Adresse des Absenders (dem Domainnamenserver DA), was dem Domainnamenserver
DB die Möglichkeit
bietet zu ermitteln, dass die « 6to4 »-Technologie eingesetzt
werden muss, da es sich bei der Quelladresse um eine Adresse vom
Typ « 6to4 » handelt.
-
Er
kann also feststellen, dass es sich bei der passenden Adresse um
die Adresse a6to4 des Empfängers Y
handelt und kann daher die verschiedenen Adressen sortieren, indem
er die am besten geeignete Adresse a6to4 (« 6to4 »-Adresse
des Empfängers
Y) an die erste Stelle setzt, und diese sortierten Adressen in eine
Antwort R' einfügen.
-
Diese
Antwort wird an den Domainnamenserver DA gesandt, der nun in der
Lage ist, auf die Anfrage des Absenders X zu antworten.
-
Gemäß der Erfindung
ist dieser Absender in der Lage, die Reihenfolge der in der Antwort
R' enthaltenen Adressen
zu interpretieren. Diese Interpretation kann darin bestehen, einfach
die erste, in der Antwort aufgeführte
Adresse zu verwenden. Bei dieser ersten Adresse handelt es sich
um die Adresse a6to4, die mit dem Mechanismus « 6to4 » kompatibel ist.
-
Das
Absender-Netzelement X kann dann die Adresse a6to4 verwenden,
um den Datenfluss an das Empfänger-Netzelement
Y zu adressieren. Dieser Datenfluss F durchläuft die Netzelemente A und
B sowie die Cloud N4, wobei er korrekt weitergeleitet wird.
-
Anders
ausgedrückt
erfolgt die vom Domainnamenserver DB durchgeführte Sortierung so, dass im
Fall der Anwesenheit einer IPv4-Cloud (hier N4) zwischen
dem Absender der Anfrage (hier X) und dem dem in der Anfrage enthaltenen
Domainnamen entsprechenden Netzelement (hier Y) an erster Stelle eine
Adresse vom Typ « 6to4 » eingefügt ist (hier a6to4).
-
Dank
dieser vom Domainnamenserver DB durchgeführten Sortierung ist das Absender-Netzelement
X in der Lage, die zu verwendende Adresse a6to4 zu
ermitteln.