Privacy Policy Cookie Policy Terms and Conditions IP-Paket - Wikipedia

IP-Paket

aus Wikipedia, der freien Enzyklopädie

Das IP-Paket oder exakt Datagram ist das Grundelement der Internet-Datenkommunikation. Es besteht immer aus zwei Teilen: den Kopfdaten, die Informationen über Quelle, Ziel, Status, Fragmentierung, etc. enthalten, und den Nutzdaten. Das TCP-Protokoll zum Beispiel befindet sich ausschließlich in den Nutzdaten des IP-Pakets – eine Schicht weiter oben im OSI-Modell.

In den Kopfdaten stehen die ausschließlich protokollrelevanten Informationen eines IP-Pakets. Genau wie der Rest des gesamten IP-Protokolls ist der Aufbau des Kopfdatenbereiches in der verbreiteten Version 4 des Protokolls (IPv4) im RFC 791 festgelegt. Das neuere Protokoll Version 6 (IPv6) hat einen anderen Kopfdatenbereich.

Inhaltsverzeichnis

[Bearbeiten] Aufbau des Kopfdatenbereiches

IPv4
0 4 8 12 16 20 24 28 31
Version IHL TOS Total Length
Identification Flags Fragment Offset
Time to Live Protocol Header Checksum
Source Address
Destination Address
Options and Padding
IPv6
0 4 8 12 16 20 24 28 31
Version Class Flow Label
Payload Length Next Header Hop Limit
 


Source Address (128 Bit)


 
 


Destination Address (128 Bit)


 

[Bearbeiten] Erläuterung für IPv4

Im Folgenden werden die Felder für IPv4 beschrieben. Für IPv6 siehe Abschnitt Neues Kopfdaten-Format.

[Bearbeiten] Version

4 Bit breit. Die IP-Version. Hierbei sind Version 4 und Version 6 zur Zeit möglich, wobei Version 4 die im Internet meistgenutzte ist.

[Bearbeiten] IHL (IP Header Length)

4 Bit breit. Die gesamte Länge des IP-Kopfdatenbereiches wird in Vielfachen von 32 Bit angegeben. Steht hier also eine 5, so ist der Kopfdatenbereich 5 mal 32 Bit gleich 160 Bit oder 20 Byte lang, was auch die Minimallänge für den IP-Kopfdatenbereich ist (das Options-Feld ist optional).

n1 - nx = Optionen
Gesamtlänge = ( 5 * 32 ) +( Länge(n1) + ... + Länge (nx) + Padding auf 32 Bit )

[Bearbeiten] TOS (Type of Service)

8 Bit breit. Das Feld kann für die Priorisierung von IP-Datenpaketen gesetzt und ausgewertet werden (Quality of Service).

Früher (RFC 791) wurden die Bits wie folgt interpretiert:

Bits 0-2:  Precedence.
Bit    3:  0 = Normal Delay,      1 = Low Delay.
Bits   4:  0 = Normal Throughput, 1 = High Throughput.
Bits   5:  0 = Normal Reliability, 1 = High Reliability.
Bit  6-7:  Reserved for Future Use.

Seit Dezember 1998 (RFC 2474) gilt folgende Aufteilung:

Bits 0-5:   DSCP (Differenciated Services Code Point)
Bits 6-7:   CU (Currently unused)

Seit September 2001 (RFC 3168) gilt folgende Aufteilung:

Bits 0-5:   DSCP (Differenciated Services Code Point)
Bits 6-7:   ECN (Explicit Congestion Notification - IP Flusskontrolle)

vgl. DSCP-Registry von IANA

Die beiden Standards RFC 791 und RFC 2474 sind dann kompatibel, wenn man die ersten 6 Bit auf Null setzt.

[Bearbeiten] Total Length

16 Bit breit. Gibt die Länge des gesamten Pakets (inkl. Kopfdaten) in Bytes an. Daraus ergibt sich eine maximale Paketlänge von 65536 Bytes (64 kB).

[Bearbeiten] Identification

16 Bit breit. Dieses und die beiden folgenden Felder Flags und Fragment Offset steuern die Reassembly (Zusammensetzen von zuvor fragmentierten IP-Datenpaketen). Eindeutige Kennung eines Datagramms. Anhand dieses Feldes und der 'Source Address' kann der Empfänger die Zusammengehörigkeit von Fragmenten detektieren und sie wieder reassemblieren.

[Bearbeiten] Flags

3 Bit breit. Einige Kontroll-Schalter mit folgender Bedeutung:

Bit 0     : reserviert, muss 0 sein
Bit 1 (DF): 0/1 darf/darf nicht zerlegt (fragmentiert) werden
Bit 2 (MF): 0/1 letztes Fragment/weitere Fragmente folgen

[Bearbeiten] Fragment Offset

13 Bit breit. Eine Nummer, die bei fragmentierten Paketen besagt, welche Position innerhalb des Paketes das Fragment einnimmt. Der Offset wird angegeben in Schritten von 64 Bit bzw. 8 Byte, wobei das erste Fragment den Wert null hat.

[Bearbeiten] Time to Live

8 Bit breit. Ein Wert, der die Lebensdauer des Pakets angibt. Hat dieses Feld den Wert null, so wird das Paket verworfen. Jede Station (Router) auf dem Weg des Pakets verringert diesen Wert um eins. Dies soll verhindern, dass Pakete ewig weitergeleitet werden (beispielsweise wenn das Paket fälschlicherweise im Kreis geleitet wird und somit das Netz überlasten würde).

Der Standard von 1981 sieht vor, dass jede Station den TTL-Wert um die Anzahl Sekunden verringert, wie lange das Paket an der Station verweilt, mindestens jedoch um eins. Heute wird es de facto als Hop-Count implementiert.

[Bearbeiten] Protocol

8 Bit breit. Dieses Feld bezeichnet das Folgeprotokoll. Enthält das IP-Paket z. B. ein TCP-Paket, steht hier der Wert 0x06. Diese Werte werden von der IANA definiert [1].

[Bearbeiten] Header Checksum

16 Bit breit. Eine Prüfsumme ausschließlich für den Kopfdatenbereich (IP selbst hat keine Mechanismen zur Prüfung der Nutzlast auf Korrektheit, dies wird im TCP/IP-Referenzmodell durch die Transportschicht sichergestellt). Dieser Wert wird bei jeder Station neu verifiziert und – weil z.B. TTL sich pro Hop verändert – neu berechnet. Dabei werden alle 16-Bit-Halbwörter des Kopfdatenbereichs in Einerkomplement-Arithmetik addiert und von der Summe das Einerkomplement gebildet. Vorteil dabei ist, dass sich die Checksumme pro Hop nur um eins erhöht. Die Berechnung kann daher schnell in Hardware ausgeführt werden. Bei einem zuverlässigerem Prüfverfahren wie CRC müsste dagegen die Prüfsumme bei jedem Hop komplett neu berechnet werden. Trotzdem kostet das Prüfen der Checksumme verhältnismäßig viel Zeit. Moderne Router überprüfen die Header Checksum aus Performancegründen nicht und inkrementieren sie nur. Diese Umstände haben dazu geführt, dass dieses Feld bei IPv6 nicht mehr existiert.

[Bearbeiten] Source Address

32 Bit breit. Enthält die Quelladresse des IP-Pakets in network byte order (Big Endian, erstes Byte ist das most significant Byte).

[Bearbeiten] Destination Address

Enthält die Zieladresse im gleichen Format wie die Quelladresse.

[Bearbeiten] Options und Padding

Zusatzinformationen. Die Optionen müssen ein Vielfaches von 32 Bit lang sein. Sind sie das nicht, wird mit 0-Bits aufgefüllt (Padding). Aufgrund der Größenbeschränkung des Feldes Internet Header Length können die Optionen maximal 40 Byte lang sein.

  • Strict Routing: Option gibt den kompletten Pfad an, welches das Packet durchlaufen muss
  • Free Routing: Option gibt eine Liste von Routern an, die vom Packet nicht verfehlt werden dürfen
  • Record Route: Lässt die komplette Route aufzeichnen (Heute reicht die Grösse des Option-Feldes meist nicht mehr dafür aus)
  • Time Stamp: Zeitstempel
  • Security: Bezeichnet, wie geheim das Datagramm ist

[Bearbeiten] Weblinks

  • RFC 791 – Internet Protocol
  • RFC 790 – Assigned Numbers
  • www.iana.org IANA – Internet Assigned Numbers Authority
  • www.google.de

[Bearbeiten] Siehe auch

THIS WEB:

aa - ab - af - ak - als - am - an - ang - ar - arc - as - ast - av - ay - az - ba - bar - bat_smg - be - bg - bh - bi - bm - bn - bo - bpy - br - bs - bug - bxr - ca - cbk_zam - cdo - ce - ceb - ch - cho - chr - chy - closed_zh_tw - co - cr - cs - csb - cu - cv - cy - da - de - diq - dv - dz - ee - el - eml - en - eo - es - et - eu - fa - ff - fi - fiu_vro - fj - fo - fr - frp - fur - fy - ga - gd - gl - glk - gn - got - gu - gv - ha - haw - he - hi - ho - hr - hsb - ht - hu - hy - hz - ia - id - ie - ig - ii - ik - ilo - io - is - it - iu - ja - jbo - jv - ka - kg - ki - kj - kk - kl - km - kn - ko - kr - ks - ksh - ku - kv - kw - ky - la - lad - lb - lbe - lg - li - lij - lmo - ln - lo - lt - lv - map_bms - mg - mh - mi - mk - ml - mn - mo - mr - ms - mt - mus - my - mzn - na - nah - nap - nds - nds_nl - ne - new - ng - nl - nn - no - nov - nrm - nv - ny - oc - om - or - os - pa - pag - pam - pap - pdc - pi - pih - pl - pms - ps - pt - qu - rm - rmy - rn - ro - roa_rup - roa_tara - ru - ru_sib - rw - sa - sc - scn - sco - sd - se - searchcom - sg - sh - si - simple - sk - sl - sm - sn - so - sq - sr - ss - st - su - sv - sw - ta - te - test - tet - tg - th - ti - tk - tl - tlh - tn - to - tokipona - tpi - tr - ts - tt - tum - tw - ty - udm - ug - uk - ur - uz - ve - vec - vi - vls - vo - wa - war - wo - wuu - xal - xh - yi - yo - za - zea - zh - zh_classical - zh_min_nan - zh_yue - zu

Static Wikipedia 2008 (no images)

aa - ab - af - ak - als - am - an - ang - ar - arc - as - ast - av - ay - az - ba - bar - bat_smg - bcl - be - be_x_old - bg - bh - bi - bm - bn - bo - bpy - br - bs - bug - bxr - ca - cbk_zam - cdo - ce - ceb - ch - cho - chr - chy - co - cr - crh - cs - csb - cu - cv - cy - da - de - diq - dsb - dv - dz - ee - el - eml - en - eo - es - et - eu - ext - fa - ff - fi - fiu_vro - fj - fo - fr - frp - fur - fy - ga - gan - gd - gl - glk - gn - got - gu - gv - ha - hak - haw - he - hi - hif - ho - hr - hsb - ht - hu - hy - hz - ia - id - ie - ig - ii - ik - ilo - io - is - it - iu - ja - jbo - jv - ka - kaa - kab - kg - ki - kj - kk - kl - km - kn - ko - kr - ks - ksh - ku - kv - kw - ky - la - lad - lb - lbe - lg - li - lij - lmo - ln - lo - lt - lv - map_bms - mdf - mg - mh - mi - mk - ml - mn - mo - mr - mt - mus - my - myv - mzn - na - nah - nap - nds - nds_nl - ne - new - ng - nl - nn - no - nov - nrm - nv - ny - oc - om - or - os - pa - pag - pam - pap - pdc - pi - pih - pl - pms - ps - pt - qu - quality - rm - rmy - rn - ro - roa_rup - roa_tara - ru - rw - sa - sah - sc - scn - sco - sd - se - sg - sh - si - simple - sk - sl - sm - sn - so - sr - srn - ss - st - stq - su - sv - sw - szl - ta - te - tet - tg - th - ti - tk - tl - tlh - tn - to - tpi - tr - ts - tt - tum - tw - ty - udm - ug - uk - ur - uz - ve - vec - vi - vls - vo - wa - war - wo - wuu - xal - xh - yi - yo - za - zea - zh - zh_classical - zh_min_nan - zh_yue - zu -

Static Wikipedia 2007:

aa - ab - af - ak - als - am - an - ang - ar - arc - as - ast - av - ay - az - ba - bar - bat_smg - be - bg - bh - bi - bm - bn - bo - bpy - br - bs - bug - bxr - ca - cbk_zam - cdo - ce - ceb - ch - cho - chr - chy - closed_zh_tw - co - cr - cs - csb - cu - cv - cy - da - de - diq - dv - dz - ee - el - eml - en - eo - es - et - eu - fa - ff - fi - fiu_vro - fj - fo - fr - frp - fur - fy - ga - gd - gl - glk - gn - got - gu - gv - ha - haw - he - hi - ho - hr - hsb - ht - hu - hy - hz - ia - id - ie - ig - ii - ik - ilo - io - is - it - iu - ja - jbo - jv - ka - kg - ki - kj - kk - kl - km - kn - ko - kr - ks - ksh - ku - kv - kw - ky - la - lad - lb - lbe - lg - li - lij - lmo - ln - lo - lt - lv - map_bms - mg - mh - mi - mk - ml - mn - mo - mr - ms - mt - mus - my - mzn - na - nah - nap - nds - nds_nl - ne - new - ng - nl - nn - no - nov - nrm - nv - ny - oc - om - or - os - pa - pag - pam - pap - pdc - pi - pih - pl - pms - ps - pt - qu - rm - rmy - rn - ro - roa_rup - roa_tara - ru - ru_sib - rw - sa - sc - scn - sco - sd - se - searchcom - sg - sh - si - simple - sk - sl - sm - sn - so - sq - sr - ss - st - su - sv - sw - ta - te - test - tet - tg - th - ti - tk - tl - tlh - tn - to - tokipona - tpi - tr - ts - tt - tum - tw - ty - udm - ug - uk - ur - uz - ve - vec - vi - vls - vo - wa - war - wo - wuu - xal - xh - yi - yo - za - zea - zh - zh_classical - zh_min_nan - zh_yue - zu

Static Wikipedia 2006:

aa - ab - af - ak - als - am - an - ang - ar - arc - as - ast - av - ay - az - ba - bar - bat_smg - be - bg - bh - bi - bm - bn - bo - bpy - br - bs - bug - bxr - ca - cbk_zam - cdo - ce - ceb - ch - cho - chr - chy - closed_zh_tw - co - cr - cs - csb - cu - cv - cy - da - de - diq - dv - dz - ee - el - eml - en - eo - es - et - eu - fa - ff - fi - fiu_vro - fj - fo - fr - frp - fur - fy - ga - gd - gl - glk - gn - got - gu - gv - ha - haw - he - hi - ho - hr - hsb - ht - hu - hy - hz - ia - id - ie - ig - ii - ik - ilo - io - is - it - iu - ja - jbo - jv - ka - kg - ki - kj - kk - kl - km - kn - ko - kr - ks - ksh - ku - kv - kw - ky - la - lad - lb - lbe - lg - li - lij - lmo - ln - lo - lt - lv - map_bms - mg - mh - mi - mk - ml - mn - mo - mr - ms - mt - mus - my - mzn - na - nah - nap - nds - nds_nl - ne - new - ng - nl - nn - no - nov - nrm - nv - ny - oc - om - or - os - pa - pag - pam - pap - pdc - pi - pih - pl - pms - ps - pt - qu - rm - rmy - rn - ro - roa_rup - roa_tara - ru - ru_sib - rw - sa - sc - scn - sco - sd - se - searchcom - sg - sh - si - simple - sk - sl - sm - sn - so - sq - sr - ss - st - su - sv - sw - ta - te - test - tet - tg - th - ti - tk - tl - tlh - tn - to - tokipona - tpi - tr - ts - tt - tum - tw - ty - udm - ug - uk - ur - uz - ve - vec - vi - vls - vo - wa - war - wo - wuu - xal - xh - yi - yo - za - zea - zh - zh_classical - zh_min_nan - zh_yue - zu