Internet Protocol Version 6

1990 begann die IETF mit der Arbeit an einer neuen Version von IP. Die wesentlichen Ziele des Projektes waren:

  1. Unterstützung einer faktisch unbegrenzten Zahl von IP-Adressen
  2. Reduzierung des Umfangs der Routing-Tabellen
  3. Vereinfachung des Protokolls
  4. Höhere Sicherheit (Authentifizierung und Datenschutz) als bei früheren IP-Versionen.
  5. Mehr Gewicht auf Dienstarten
  6. Bessere Unterstützung von Multicasting
  7. Unterstützung vom mobilem IP
  8. Offenheit für Weiterentwicklung
  9. Unterstützung der alten und der neuen Protokolle

Um diese Ziele zu erreichen veröffentlichte die IETF schließlich 1993 eine Ausschreibung zur Einreichung von Angeboten und Diskussionen in RFC1550.

Insgesamt sind 22 Vorschläge eingegangen, von denen eines namens SIPP (Simple Internet Protocol Plus ausgewählt und schließlich in IPv6 umbenannt wurde.

Die wichtigsten Merkmale von IPv6 werden im folgenden besprochen. Ausführliche Beschreibungen sind in den RFC1883 und RFC1887 enthalten.

  • Die erste Verbesserung von IPv6 sind längere Adressen. Sie sind 16 Byte oder 128 Bit lang, und stellen damit mehr als genug Adressraum zur Verfügung, um jedem Molekül der Erde eine eigene IP-Adresse zu geben.
  • Der Header wurde vereinfacht. er enthält nur noch 7 Felder, gegenüber den 13 in IPv4, so das Router Pakete schneller verarbeiten können.
  • Die Möglichkeiten Optionen zu übergeben wurde verbessert. Dies war notwendig, da einige vormals obligatorische Felder jetzt optional sind.
  • Schließlich wurden noch Möglichkeiten zum Datenschutz und zur Datensicherung eingebaut.

Hauptsächlich wegen der längeren Adressen ist IPv6 nicht kompatibel zu den alten, auf IPv4 aufsetzenden Protokollen.

Der IPv6-Hauptheader

Der IPv6-Hauptheader sieht wie folgt aus:

IPv6-Hauptheader"

Dabei bedeuten die einzelnen Felder:

  • Version - Die Versionsnummer des IP-Protokolls (bei IPv6 immer 6)

  • Priorität - wird benutzt um Pakete zu unterscheiden, auf deren Quellen Flusssteuerung angewandt werden kann, und denen, deren Quellen das nicht unterstützen. Werte von 0 bis 7 gelten für Übertragungen, die sich im Fall von Überlastung verlangsamen. Die Werte 8 - 15 gelten für Echtzeitverkehr, der im Zweifelsfall auch unter Paketverlust sofort übertragen werden muss.

  • Flow Label soll benutzt werden um es einer Quelle und einem Ziel zu ermöglichen, eine Pseudoverbindung mit bestimmten Merkmalen und Anforderungen aufzubauen. Ein Paketstrom von der Quelle zum Ziel kann z.B. reservierte Bandbreiten benötigen und diese anfordern. Der Fluss wird im voraus aufgebaut und erhält einen Bezeichner. Kommt nun ein Paket mit diesem Bezeichner, so kann der Router seine internen Tabellen durchsehen und feststellen, welche Sonderbehandlung für Pakete aus diesem Fluss vorgesehen ist.

  • Payload Länge gibt an wie viele Bytes dem 40 Byte langen Header folgen. Die 40 Headerbyte werden also im Gegensatz zu IPv4 nicht mehr zur Gesamtlänge gerechnet.
  • Das Feld Next Header zeigt den Grund, warum der Header vereinfacht werden konnte. Das Feld gibt an, welcher der (derzeit 6) Erweiterungsheader dem Hauptheader folgt, wenn denn einer folgt. Ist es der letzte Header gibt dieses Feld an, welche Art des Transportprotokolls (z.B. TCP/UDP) das Paket benutzt.

  • Das Feld Hop-Limit wird wie schon TTL im IPv4 dazu benutzt um Pakete am ewigen Leben zu hindern. Es hat jetzt allerdings den richtigen Namen.

  • Die nächsten Felder sind Senderadresse und Zieladresse , die jetzt allerdings 16 Byte lang sind.