IPv6/Header: Unterschied zwischen den Versionen
Erscheinungsbild
Markierung: Zurückgesetzt |
|||
| Zeile 46: | Zeile 46: | ||
=== Unterschiede IPv4/IPv6 === | === Unterschiede IPv4/IPv6 === | ||
[[File:img-006-001.png|800px]] | [[File:img-006-001.png|800px]] | ||
== IPv4 Header Felder == | |||
{| class="wikitable sortable options" | |||
|- | |||
! Option !! Beschreibung | |||
|- | |||
| Version || always 4 | |||
|- | |||
| TOS (type of service) || precedence (3 bits) and “minimize delay”, “maximize throughput”, “maximize reliability”, “minimize cost” bits | |||
|- | |||
| Identifier || identifier, different for each packet | |||
|- | |||
| TTL ||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 | |||
|} | |||
== Header-Format == | == Header-Format == | ||
Version vom 24. Dezember 2023, 15:41 Uhr
=topic - Kurzbeschreibung
Beschreibung
IPv4 Header
- IPv6-Header ist gegenüber IPv4 stark vereinfacht
- Enthält nur grundlegende Forwarding-Information
- Zusätzliche Informationen in variablen zusätzlichen Erweiterungs-Headern, welche durch das „Next Header“ Feld identifiziert werden
- Damit trotz vierfacher IPv6-Adresslänge (16 Byte) nur doppelte Headerlänge
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
|
| Checksum | entfernt, weil die Berechnung der Prüfsumme bei jedem Hop sich negativ auf die Performance auswirkt
|
| 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
IPv4 Header Felder
| Option | Beschreibung |
|---|---|
| Version | always 4 |
| TOS (type of service) | precedence (3 bits) and “minimize delay”, “maximize throughput”, “maximize reliability”, “minimize cost” bits |
| Identifier | identifier, different for each packet |
| TTL | 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 |
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
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
- im Gegensatz zu IPv4
- Fehlerkorrektur auf Schichten 2 und 4
Format des Hop-by-Hop Options Headers
Format des Routing Headers
Maximum Transmission Unit (MTU)
Anhang
Siehe auch
- IPv6/Header
- IPv6/Header/Extension
- IPv6/Header/Extension/Authentication
- IPv6/Header/Extension/Destination Options
- IPv6/Header/Extension/Encapsulating Security Payload
- IPv6/Header/Extension/Fragment
- IPv6/Header/Extension/Hop-by-Hop
- IPv6/Header/Extension/Option Alert
- IPv6/Header/Extension/Routing
- IPv6/Header/Extension/Upper Layer
- IPv6/Header/Format
Dokumentation
Links
Projekt
Weblinks






