time to live field; initialized to 64; decremented at each router; drop if TTL = 0
Protocol
next header proto (TCP 6, UDP 17)
Header checksum
add together 16-bit words using one’s complement: software optimized
Entfallene Felder
Option
Beschreibung
HL
weil der IPv6Header eine feste Länge hat
Protocol
wurde herausgenommen, weil das Feld Next-Header angibt welches Protokoll auf der Transportschicht verwendet wird.
Alle Felder in Bezug auf Fragmentierung
wurden weggelassen, weil IPv6 Fragmentierung anders handhabt
IPv6-Router fragmentieren keine Pakete, sondern schicken der Quelle eine Nachricht kleinere Pakete zu schicken.
Checksum
entfernt, weil die Berechnung der Prüfsumme bei jedem Hop sich negativ auf die Performance auswirkt
auf den Schichten über und unter der Vermittlungsschicht werden bereits Prüfsummen berechnet.
Padding
Extension-Prinzip
IPv6-Header ist durch Extension-Prinzip flexibel erweiterbar
Per Hop ausgewertete Header
Hop-by-Hop Options (z.B. Jumbogramm Notifier)
Routing Information Header
Nur im Endsystem ausgewertete Header
Fragmentation Header
Authetication Header
Header-Extensions u.U. auf Applikationsniveau direkt nutzbar
Die meisten IPv6 Pakete bestehen nur aus IPv6- und TCP Header sowie Daten
Unterschiede IPv4/IPv6
Header-Format
Feste Länge
Bei IPv6 eine feste Länge von 40 Byte (320 Bit)
Im Gegensatz zu IPv4
Extension Headers
Optionale, seltener benutzte Informationen werden in Erweiterungs-Kopfdaten (engl.: Extension Headers) eingebettet
zwischen IPv6-Kopfdatenbereich und der eigentlichen Nutzlast (Payload)
Felder
Felder im IPv6-Header
Kopfdaten laut RFC 2460
Feld
Länge
Inhalt
Version
4 Bit
IP-Versionsnummer (6)
Traffic Class
8 Bit
Für Quality of Service (QoS) verwendeter Wert. Eine Art Prioritätsvergabe.
Flow Label
20 Bit
Ebenfalls für QoS oder Echtzeitanwendungen verwendeter Wert. Pakete, die dasselbe Flow Label tragen, werden gleich behandelt.
Payload Length
16 Bit
Länge des IPv6-Paketinhaltes (ohne Kopfdatenbereich, aber inklusive der Erweiterungs-Kopfdaten) in Byte
Next Header
8 Bit
Identifiziert den Typ des nächsten Kopfdatenbereiches, dieser kann entweder einen Erweiterungs-Kopfdatenbereich (siehe nächste Tabelle) oder ein Protokoll höherer Schicht (engl.: Upper Layer Protocol) bezeichnen, wie z. B. TCP (Typ 6) oder UDP (Typ 17).
Hop Limit
8 Bit
Maximale Anzahl an Zwischenschritten über Router, die ein Paket zurücklegen darf; wird beim Durchlaufen eines Routers („Hops“) um eins verringert. Pakete mit null als Hop Limit werden verworfen. Es entspricht dem Feld Time to Live (TTL) bei IPv4.
Source Address
128 Bit
Adresse des Senders
Destination Address
128 Bit
Adresse des Empfängers
Next Header Werte
IPv6 Header in einem Trace File
IPv4 und IPv6 Header im Vergleich
IPv6-Erweiterungsheader
Einige der gestrichenen Felder sind manchmal doch noch notwendig
für diese Fälle sind derzeit 6 Erweiterungsheader definiert,
die benutzt werden um zusätzliche Informationen zu kodieren.
Alle Erweiterungsheader sind optional.
Werden mehrere benutzt müssen sie direkt nach dem Hauptheader erscheinen.
Optionen für Teilstrecken
Dieser Header wird für Informationen benutzt die alle Router auf der Strecke prüfen müssen.
Bisher ist eine Option definiert, die Unterstützung von Jumbogrammen, also Paketen die größer als 64 kByte sind.
Routing
Mit diesem Header kann eine Route vollständig oder teilweise spezifiziert werden.
Fragmentierung Dieser Header enthält Optionen für die Fragmentierung von Paketen.
Nanu, hatten wir nicht eben gesagt IPv6 fragmentiert nicht? Im Prinzip ja.
Der Quellhost darf Pakete immer noch fragmentieren.
Nur die Router auf der Strecke sind nicht mehr dazu berechtigt.
Authentifikation
Der Authentifizierungsheader bietet einen Mechanismus, durch den der Empfänger sicher sein kann, das der in der Adresse angegebene Sender auch tatsächlich der ist, der er behauptet zu sein.
Verschlüsselte Sicherheitsdaten
Dieser Header enthält Informationen über das verwendete Verschlüsselungsverfahren.
Optionen für Ziele
Dieser Header ist für Optionen vorgesehen, die nur vom Zielhost interpretiert werden müssen.
Er wird derzeit nicht benutzt.
Die meisten IPv6-Pakete sollten ohne Extension Headers auskommen
Extension Headers können bis auf den Destination Options Header nur einmal in jedem Paket vorkommen
Befindet sich ein Routing Extension Header im Paket, so darf davor ein weiterer Destination Options Header stehen
Die Reihenfolge bei einer Verkettung ist bis auf die genannte Ausnahme die der folgenden Tabelle
Wie im Next Header Feld verwiesen sind einige Extension Headers und ein Platzhalter definiert
Name
Typ
Größe
Beschreibung
RFCs
Hop-By-Hop Options
0
variabel
Optionenvon allen IPv6-Geräten zu beachtenwird z.B. für Jumbograms benutzt
RFC 2460RFC 2675
Routing
43
variabel
Hier kann der Weg des Paketes durch das Netzwerk beeinflusst werdenwird u.a. für Mobile IPv6 verwendet
RFC 2460RFC 6275RFC 5095
Fragment
44
64 Bit
Parameter zur Fragmentierung
RFC 2460
Authentication Header (AH)
51
variabel
Daten zur Vertraulichkeit (IPsec)
RFC 4302
Encapsulating Security Payload (ESP)
50
variabel
Daten zur Verschlüsselung (IPsec)
RFC 4303
Destination Options
60
variabel
Optionennur vom Zielrechner zu beachten
RFC 2460
Mobility
135
variabel
Daten für Mobile IPv6
RFC 6275
No Next Header
59
leer
Platzhalterzeigt Ende eines Header-Stapels an
RFC 2460
Verwendung von Extension Headers
Reihenfolge der Extension Header
IPv6 Header
Hop-by-Hop Options Header (für Optionen, welche von Routern auf dem Pfad zum endgültigen Empfänger verarbeitet werden müssen)
Routing Header
Fragment Header
Authentication Header
Encapsulating Security Payload Header
Destination Options Header (für Optionen, welche vom endgültigen Empfänger des Paketes verarbeitet werden müssen)
Upper-Layer Header
Extension Headers
Next-Header
Alle Extension Headers enthalten ein Next-Header-Feld, in dem
der nächste Extension Header oder
das Upper Layer Protocol genannt wird
Größen immer Vielfache von 64 Bit
Speicherzugriffe im Router beschleunigen
die meisten Felder der Kopfdatenbereiche sind auf 64-Bit-Grenzen ausgerichtet
Keine Prüfsummen
Es werden keine Prüfsummen über die IP-Kopfdaten berechnet