Mandalex
Zurück zum Index

IP ist die Abkürzung für "Internet-Protokoll". Es ist zuständig für das korrekte versenden von Daten von einem Punkt zu einem anderen. Die Endpunkte werden dabei durch IP-Adressen angegeben. Diese Adressen bestehen aus 4 Byte-Zahlen, wie zum Beispiel 233.144.0.111.

Der Header des IP-Protokolls ist folgendermasse aufgebaut:

Bits | F E D C|B A 9 8||7 6 5 4|3 2 1 0 | F E D C|B A 9 8||7 6 5 4|3 2 1 0 |
-----|--------|-------||----------------|----------------------------------|
     |Version |H-Länge||  Service-Typ   |              Länge               |
     |--------+-------++----------------|------+---------------------------|
     |                ID                | Flgs |     Fragment-Offset       |
     |----------------++----------------|------+---------------------------|
     |       TTL      ||höheresProtokoll|             Checksum             |
     |----------------++----------------+----------------------------------|
     |                          Source-IP-Adresse                          |
     |---------------------------------------------------------------------|
     |                           Ziel-IP-Adresse                           |
     |---------------------------------------------------------------------|
     |                           ...Optionen...                            |
-----|---------------------------------------------------------------------|
     |                             ...Daten...                             |
  • Version (4 Bit): Gibt an, um welche Version von IP es sich handelt (Momentan normalerweise v4).
  • H-Länge (4 Bit): Die Header-Länge gibt an, wieviele 32-Bit-Zeilen der gesamte Header besitzt (wird für zusätzliche Optionen benutzt).
  • Service-Typ (8 Bit): Gibt an, um welche Art von Daten es sich handelt.
  • Länge (16 Bit): Gibt an, wieviele Bytes das gesamte Paket enthält.
  • ID (16 Bit): Gibt an, um welches Paket es sich handelt.
  • Flgs (3 Bit): Flags, werden für die Fragmentierung benutzt.
  • Fragment-Offset (13 Bit): Gibt an, an welcher Stelle das Fragment eingefügt werden muss (in 8 Bytes).
  • TTL (8 Bit): Die Time-To-Live gibt an, wieviele Hops das Paket noch weitergesendet werden darf.
  • höheresProtokoll (8 Bit): Gibt an, welches Protokoll im nächst höheren Layer gebraucht wird.
  • Checksum (16 Bit): Hier wird die Checksumme gespeichert (wird zu Korrektheitsüberprüfung gebraucht).
  • Source-IP-Adresse (32 Bit): Gibt an, von welcher IP-Adresse das Paket kam.
  • Ziel-IP-Adresse (32 Bit): Gibt an, zu welcher IP-Adresse das Paket gesendet werden soll.
  • Optionen (je 32 Bit): Siehe unten.

Jede Datei, die übers Internet verschickt wird, wird in Pakete aufgeteilt. Diese Pakete können maximal 65536 Bytes gross sein. Jedes Paket bekommt dabei eine ID, wodurch beim Zielort die ursprüngliche Datei wieder zusammengesetzt werden kann.

Manche Router können jedoch nicht beliebig grosse Pakete bearbeiten; die MTU (Maximum Transmission Unit) dieser Router darf nicht überschritten werden. Die Router, die Pakete zu diesen Routern senden, müssen also stets überprüfen, ob das Paket nicht zu gross ist. Falls doch, werden die Pakete fragmentiert. Wenn ein Paket fragmentiert wird, so werden mehrere kleinere Pakete erstellt, die alle dieselbe ID haben, jedoch ein gesetztes Fragment-Flag enthalten. Zudem wird durch das Offset angegeben, an welcher Stelle das Fragment in das Paket eingefügt werden muss. Beim letzten Fragment ist das Fragment-Flag gelöscht, um anzuzeigen, dass keine weiteren Fragmente mehr folgen.

Um nun ein Paket von einem Ort zum anderen zu senden, wird bei jedem Router die IP-Adresse angeschaut. Existiert in der Routing-Tabelle ein gleicher Eintrag, so wird das Paket direkt ans Ziel gesendet. Existiert kein solcher Eintrag, so wird das Paket zu dem Router gesendet, der eine ähnliche IP-Adresse besitzt, worauf dieser das Paket genau gleich bearbeitet. Ähnlich bedeutet hier, dass, wenn die IP-Adresse nicht im gleichen Netzwerk ist, das Paket zum nächst höheren Router gesendet wird, ansonsten zu einem tieferen Router, der jedoch die Ziel-IP-Adresse enthalten könnte.

Errata: Korrektur der Anzahl Bits der Flags von Samuel Nitsche
Zurück zum Index