Protocol headers.

UDP header.

 
Source port number
(UDP service ID for sender of this packet)
Destination port number
(UDP service ID for receiver of this packet)
UDP packet length
(byte length includes UDP header and data)
UDP checksum
(UDP header and data and portions of IP header included)

TCP header.

 
Source port number
(TCP service ID for sender of this packet)
Destination port number
(TCP service ID for receiver of this packet)
TCP sequence number
(byte count of data sent by source, starting at random value)
Acknowledgment number
(this is the sequence number of the last data byte received from destination)
TCP header length
(offset data, in 32-bit words)
Reserved
(6 bits in length)
TCP option bit flags
Current TCP window size
(amount of data sender is willing to accept in bytes)
Checksum
10  Urgent data pointer
(byte offset into data to last urgent data byte)
11  Options and padding
(length varies, to calculate: (TCP header length - 5) * 4 bytes )

ICMP header.

 
Type Code
Checksum
Pointer Reserved
Reserved
Data: Internet header + 64 bits of original datagram header
...  (the IP packet that generated this ICMP message)

IP header.

 
IP version
(current version:4)
IP Header length
(in 32-bit words)
Type of service
Total packet length
(in bytes from the beginning of IP header)
IP packet ID number
(packet serial number)
Fragment bit flags IP fragment offset
(location of this packet fragment in original packet, in 8-byte units)
Time to live
(maximum router hops remaining)
Transport protocol
(ICMP:1, IGMP:2, TCP:6, UDP:17)
Header checksum
(Note: Only the header is checksummed)
Source IP address
(4-byte IP address for host from which the packet originated)
Destination IP address
(4-byte IP address of the host where the packet is going)
10  IP options
(Length of this part is usually 0 but may vary)