Each TCP (Transmission Control Protocol) packet consists of a header followed by a data field. The header length can vary between 20 and 60 bytes, and the total size of the packet can be up to 65535 bytes. Actually, many systems cannot handle packets as large as the protocol allows, and a working maximum size is 576 bytes.
The header must have 5 words (of 32 bits each) of defined contents, and may have up to 10 more words of optional information.
- The (software) port number of the source host.
- The (software) port number of the destination host.
- The sequence number of the first data octet in this segment. (Not used when the SYN flag is set.)
- The sequence number of the next data octet to be sent by the source. This field is used when the ACK flag is set.
- The number of 32 bit words in the TCP Header.
- These bits should be set to 0.
- The Urgent Pointer field is significant
- The Acknowledgement field is significant
- End of Letter
- Reset the connection
- Synchronize sequence numbrers
- No more data from the sender
- The maximum number of octets which the sender will accept.
- This checksum covers both the header and data portion of the TCP packet.
- Points to the first urgent data byte in the packet.
Options (Variable Length, 0-44 bytes)
- Used to specify various TCP options.
As required to make the header length a multiple of 32 bits.