(Transmission Control Protocol )TCP HEADER
Source port (16 bits): Port related to the application in progress on the source machine
Destination port (16 bits): Port related to the application in progress on the destination machine
Sequence number (32 bits): When the SYN flag is set to 0, the sequence number is that of the first word of the current segment.When SYN is set to 1, the sequence number is equal to the initial sequence number used to synchronize the sequence numbers (ISN)
Acknowledgement number (32 bits): Also called the acquittal number relates to the sequence number of the last segment expected and not the number of the last segment received.
Data offset (4 bits): This makes it possible to locate the start of the data in the packet. Here, the offset is vital because the option field is a variable size
Reserved (6 bits): A currently unused field but provided for future use
Flags (6×1 bit): The flags represent additional information: •URG: if this flag is set to 1 the packet must be processed urgently
ACK: if this flag is set to 1 the packet is an acknowledgement.
PSH (PUSH): if this flag is set to 1 the packet operates according to the PUSH method.
RST: if this flag is set to 1 the connection is reset.
SYN: The TCP SYN flag indicates a request to establish a connection.
FIN: if this flag is set to 1 the connection is interrupted.
Window (16 bits): Field making it possible to know the number of bytes that the recipient wants to receive without acknowledgement
Checksum (CRC): The checksum is conducted by taking the sum of the header data field, so as to be able to check the integrity of the header
Urgent pointer (16 bits): Indicates the sequence number after which information becomes urgent
Options (variable size): Various options
Padding: Space remaining after the options is padded with zeros to have a length which is a multiple of 32 bits
Related – UDP HEADER
Related – TCP vs UDP