Internet Protocol Formats (seen as data structure diagrams)
IP (V4) Packet source address destination address byte 0 byte1 byte 2 byte 3 4 8 Version IHL Serv. Type Total Length Identifcation flags Fragment Offset TTL Protocol Header Checksum 12 16 20 source address destination address options... Unused Padding data ... – up to 64 K including heading info
IP (V6) Packet source address destination address data – up to 64K byte 0 byte1 byte 2 byte 3 4 8 Version Traffic Class (16) Flow Label (20 bits) Payload Length Next (Protocol) Hops/TTL source address 24 40 destination address data – up to 64K
UDP Header IP Header UDP Header Data…. Source Port Destination Port 0 20 28 IP Header UDP Header Data…. UDP Header byte 0 byte1 byte 2 byte 3 4 8 Source Port Destination Port Length Checksum data
TCP Header Sequence Number Acknowlegement Number U A P R S F Window byte 0 byte1 byte 2 byte 3 Source Port Dest. Port Sequence Number Acknowlegement Number U A P R S F Window Offset Reserved Checksum Urgent Pointer options... Unused Padding Data ....... Like UDP... All this sits inside the data area of an IP packet
TFTP Protocol OpCode message RRQ/WRQ filename… The opcode is one of: RRQ (read), WWQ (write), Data, ACK or ERROR RRQ/WRQ filename… DATA Block # data: 0–512 bytes (size in TCP header) ACK Block # ERROR Error # message This is stored in the data area of the TCP header
RTPC (incomplete) byte 0 byte1 byte 2 byte 3 Type Code Checksum
BOOTP Source: http://www.tcpipguide.com/free/t_BOOTPMessageFormat.htm
SMTP (basic) byte 0 byte1 byte 2 byte 3 Type Code Checksum
ICMP (basic) byte 0 byte1 byte 2 byte 3 Type Code Checksum
ICMP Type 3 – Dest. Unreachable byte 0 byte1 byte 2 byte 3 Type Code Checksum Unused Internet Header + 64 bits of original datagram
ICMP Types 8 (echo) 0 (echo Reply) byte 0 byte1 byte 2 byte 3 Type Code Checksum Identifier Sequence Number Data ....
ICMP Timestamp and Reply (Types 13,14 ) byte 0 byte1 byte 2 byte 3 Type Code Checksum Identifier Sequence Number Original Timestamp Timestamp @dest receipt Timestamp @ dest. reply