IP Header
+--------+--------+-----------------+-----------------------------------+
| 4-bit | 4-bit | 8-bit | |
| version| header | type of servce | 16-bit total length (in bytes) |
| | length | | |
+--------+--------+-----------------+-----+-----------------------------+
| |3-bit| |
| 16-bit identification |flags| 13-bit fragment offset |
| | | |
+-----------------+-----------------+-----+-----------------------------+
| 8-bit | | |
| time to live | 8-bit protocol | 16-bit checksum |
| TTL | | |
+-----------------+-----------------+-----------------------------------+
| |
| 32-bit source IP address |
| |
+-----------------------------------------------------------------------+
| |
| 32-bit destination IP address |
| |
+-----------------------------------------------------------------------+
| |
/ options (if any) /
| |
+-----------------------------------------------------------------------+
| |
| |
/ /
\ data \
/ /
| |
| |
+-----------------------------------------------------------------------+