Checksum TCP: Unterschied zwischen den Versionen
Zur Navigation springen
Zur Suche springen
(→IPv4) |
(→IPv4) |
||
| Zeile 12: | Zeile 12: | ||
=IPv4= | =IPv4= | ||
{|class="wikitable" style="text-align:center; | {|class="wikitable" style="text-align:center; | ||
| + | !colspan="32"|32 Bit | ||
| + | |- | ||
!colspan="32" style="background-color:lightblue" |Pseudo TCP header | !colspan="32" style="background-color:lightblue" |Pseudo TCP header | ||
|- | |- | ||
| Zeile 51: | Zeile 53: | ||
|colspan="32" style="background-color:yellow"|Data | |colspan="32" style="background-color:yellow"|Data | ||
|} | |} | ||
| + | |||
=IPv6= | =IPv6= | ||
{|class="wikitable" style="text-align:center; | {|class="wikitable" style="text-align:center; | ||
Version vom 31. Januar 2024, 07:35 Uhr
Absender
- Man bildet aus den 16-Bit-Wörtern ein Einerkomplement.
- Diese Wörter werden ohne Übertrag addiert.
- Das Ergebnis wird wieder als Einerkomplement genommen.
- Das resultierende Einerkomplement wird im Checksum-Feld eingetragen.
Empfänger
- Die 16-Bit-Wörter werden ein Einerkomplement genommen.
- Diese Wörter werden ohne Übertrag addiert.
- Das Ergebnis wird wieder als Einerkomplement genommen.
- Das resultierende Einerkomplement wird mit dem im Header empfangenen Checksum verglichen.
- Wenn sie stimmen werden die Daten an die oberen Schichten ausgeliefert
IPv4
| 32 Bit | |||||||||||||||||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Pseudo TCP header | |||||||||||||||||||||||||||||||
| Source Address | |||||||||||||||||||||||||||||||
| Destination Address | |||||||||||||||||||||||||||||||
| 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | Proto | TCP-Length | ||||||||||||||||||||||
| TCP Header | |||||||||||||||||||||||||||||||
| Source Port | Destination Port | ||||||||||||||||||||||||||||||
| Sequence Number | |||||||||||||||||||||||||||||||
| Acknowledge Number | |||||||||||||||||||||||||||||||
| Offset | Reserved | Flags | Window | ||||||||||||||||||||||||||||
| Checksum = 0000000000000000 | Urgent Pointer | ||||||||||||||||||||||||||||||
| Options | Paddings | ||||||||||||||||||||||||||||||
| Data | |||||||||||||||||||||||||||||||
IPv6
| Pseudo TCP header | |||||||||||||||||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Source Address | |||||||||||||||||||||||||||||||
| Source Address | |||||||||||||||||||||||||||||||
| Source Address | |||||||||||||||||||||||||||||||
| Source Address | |||||||||||||||||||||||||||||||
| Destination Address | |||||||||||||||||||||||||||||||
| Destination Address | |||||||||||||||||||||||||||||||
| Destination Address | |||||||||||||||||||||||||||||||
| Destination Address | |||||||||||||||||||||||||||||||
| 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | Proto | TCP-Length | ||||||||||||||||||||||
| TCP Header | |||||||||||||||||||||||||||||||
| Source Port | Destination Port | ||||||||||||||||||||||||||||||
| Sequence Number | |||||||||||||||||||||||||||||||
| Acknowledge Number | |||||||||||||||||||||||||||||||
| Offset | Reserved | Flags | Window | ||||||||||||||||||||||||||||
| Checksum = 0000000000000000 | Urgent Pointer | ||||||||||||||||||||||||||||||
| Options | Paddings | ||||||||||||||||||||||||||||||
| Data | |||||||||||||||||||||||||||||||