TCP-IP PROTOCOLS

TCP Level

Home
Introduction
TCP/IP Protocol Family
TCP/IP Layers
TCP Level
IP Level
Services
Feed Back

TCP simply hands IP a datagram with a destination. IP doesn't know how this datagram relates to any datagram before it or after it. Clearly it isn't enough to get a datagram to the right destination. TCP has to know which connection this datagram is part of. This task is referred to as "demultiplexing."

The information needed to do this demultiplexing is contained in a series of "headers". It's like you put the letter into a little envelope, your secretary puts that into a somewhat bigger envelope, the campus mail center puts that envelope into a still bigger one, etc.

TCP puts a header at the front of each datagram. This header actually contains at least 20 octets, but the most important ones are a source and destination "port number" and a "sequence number". The port numbers are used to keep track of different conversations.

Note that the TCP is a "connection oriented protocol" as TCP allows two communicating computers to establish a communication stream along which data may flow simultaneously in both direction.

Here's what the message looks like:

TCP Lavel

   

Source Port     Destination Port
Sequence Number
Acknowledgment Number
Data Offset     |U|A|P|R|S|F|
Reserved    |R|C|S|S|Y|I|     Window
|G|K|H|T|N|N|
Checksum     Urgent Pointer
your data ... next 500 octets

If we abbreviate the TCP header as "T", the whole file now looks like this:

T.... T.... T.... T.... T.... T.... T....

There are items in the header that have not been described above. They are generally involved with managing the connection. In order to make sure the datagram has arrived at its destination, the recipient has to send back an "acknowledgement".

Layers Top of the Page IP Level 1