IPv4 - Internet Protocol Version 4 (Layer 3)

Das Internet Protocol, kurz IP, wird im Rahmen der Protokollfamilie TCP/IP zur Vermittlung von Datenpaketen verwendet. Es arbeitet auf der Schicht 3 des OSI-Schichtenmodells und hat maßgeblich die Aufgabe, Datenpakete zu adressieren und in einem dezentralen, verbindungslosen und paketorientierten Netzwerk zu übertragen. Dazu haben alle Netzwerk-Teilnehmer eine eigene IP-Adresse im Netzwerk. Sie dient nicht nur zur Identifikation eines Hosts, sondern auch des Netzes, in dem sich der jeweilige Host befindet.

Aufgaben und Funktionen von IPv4

IPv4 Header

Jedes IPv4-Datenpaket besteht aus einem Header (Kopf) und dem Payload, in dem sich die Nutzdaten befinden. Der Header ist den Nutzdaten vorangestellt. Im IP-Header sind Informationen enthalten, die für die Verarbeitung durch das Internet Protocol notwendig sind.

FeldinhaltBitBeschreibung
Version4Hier ist die Version des IP-Protokolls abgelegt, nach der das IP-Paket erstellt wurde.
IHL4IHL = Internet Header Length gibt die Länge des IP-Headers als Vielfaches von 32 Bit an. Der Maximalwert von Binär 1111 (15) entspricht einer Header-Länge von 15 x 32 Bit = 480 Bit = 60 Byte.
ToS8ToS = Type of Service legt die Qualität des angeforderten Dienstes fest. Das Feld unterteilt sich in Priorität (Priority) von 3 Bit und Eigenschaften für die Übertragung von 5 Bit.
Paketlänge (Total Length)16Enthält die Gesamtlänge des IP-Paketes. Abzüglich des IHL ergibt sich die Länge der reinen Nutzdaten.
Kennung(Identifiction)16Der Wert wird zur Nummerierung der Datenpakete verwendet. Die Kennung ist eindeutig und fortlaufend.
Flags3Da die Nutzdaten in der Regel nicht in ein IP-Paket hineinpassen, werden die Daten zerlegt und in mehrere IP-Pakete verpackt und verschickt. Man spricht dann von Fragmentierung. Die Flags gehen näher darauf ein. Das erste Flag ist immer 0. Das zweite Flag (DF) verbietet die Fragmentierung des Datenpakets, wenn es gesetzt ist. Das dritte Flag (MF) gibt weitere Datenpaket-Fragmente an, wenn es gesetzt ist.
Fragment-Offset13Enthält ein IP-Paket fragmentierte Nutzdaten, steht in diesem Feld die Position der Daten im ursprünglichen IP-Paket.
TTL (Time-to-Live)8Mit TTL gibt der Sender die Lebensdauer des Pakets in Sekunden an. Jede Station, die ein IP-Paket weiterleiten muss, zieht von diesem Wert mindestens 1 ab. Hat der TTL-Wert 0 erreicht, wird das IP-Paket verworfen. Dieser Mechanismus verhindert, dass Pakete ewig Leben, wenn sie nicht zustellbar sind. TTL-Werte zwischen 30 und 64 sind typisch.
Protokoll8Dieses Feld enthält den Port des übergeordneten Transport-Protokolls (z. B. TCP oder UDP).
Header Checksumme16Diese Checksumme sichert die Korrektheit des IP-Headers. Für die Nutzdaten muss ein übergeordnetes Protokoll die Fehlerkorrektur übernehmen. Da sich die einnzelnen Felder des IP-Headers ständig ändern, muss jede Station auf dem Weg zum Ziel die Checksumme prüfen und auch wieder neu berechnen. Um die Verzögerung gering zu halten wird deshalb nur der IP-Header des Paketes geprüft.
Quell-IP-Adresse (Source IP-Address)32An dieser Stelle steht die IP-Adresse der Station, die das IP-Paket abgeschickt hat (Sender).
Ziel-IP-Adresse (Destination IP-Address)32An dieser Stelle steht die IP-Adresse der Station, für die das IP-Paket bestimmt ist. Soll das IP-Paket an mehrere Stationen zugestellt werden, muss hier eine Multicast-Adresse stehen.
Optionen/Füllbits (Options/Padding)32Das Optionsfeld des IP-Headers enthält hauptsächlich Informationen zu Routing-, Debugging-, Statistik- und Sicherheitsfunktionen. Dieses Feld ist optional und kann bis zu 40 Byte lang sein. Es ist immer in 32 Bit aufgeteilt und wird bei Bedarf mit Nullen aufgefüllt. Auf die genauen Funktionen dieses Feldes wird hier nicht weiter eingegangen. Nur soviel sei noch gesagt: das Optionsfeld wird meist zu Diagnosezwecken verwendet.

Der Header ist in jeweils 32-Bit-Blöcke unterteilt. Dort sind Angaben zu Servicetypen, Paketlänge, Sender- und Empfängeradresse abgelegt. Ein IP-Paket muss mindestens 20 Byte Header und 8 Byte Nutzdaten bzw. Nutz- und Fülldaten enthalten. Die Gesamtlänge eines IP-Pakets darf 65.535 Byte nicht überschreiten.