TCP – Transmission control protocol in short terms is used as TCP which is one amongst the TCP/IP prime protocols. Its function is to allow two hosts, to set up a connection first over the internet and then exchange the data in form of stream. Reliability of TCP can be judged from that it provides the guarantee of data delivery by ensuring so that each packet will be transferred in the same pattern as was designed at the time of depart.
That means TCP is a consistent protocol in internet protocol suite TCP/IP that can make available a reliable and ordered flow of bytes in nonstop manners from one terminal program to another terminal’s computer program. Main Internet applications, the same as WWW, e-mail, and remote administration are dependant on this protocol.
TCP Functionality over the Network
TCP offers service when any internet application needs to send data in a continuous stream instead of small data chunks over the wide area network as internet. In such case, TCP takes the charge by residing at the halfway level of IP and application program. Anyway, there are multiple reasons for giving preference to this protocol over the IP protocol and some among them are like retransmission of misplaced data feature, minimizing network congestion ability, delivery of data in an organized way and if data gets out of order then TCP protocol is competent enough to rearrange it.
Technically, TCP passes data in the shape of segments and each segment is divided as header and data section. Soon as TCP acknowledges the data from a stream, fragment it into various chunks and then further adds a header in order to create a TCP segment. But that isn’t all; TCP segment after that are encapsulated into an IP datagram etc. Always data section with the payload data carrying for the application is following by the header section. Well, TCP makes sure of keeping on track the individual segments of data transmission.
TCP Life Cycle
TCP operations are divided into three different phases.
- Connections establishment phase (uses multi-steps handshake procedure)
- Data transfer phase
- Connection termination phase (to close the all launched virtual circuits plus to release the entire allocated resources)
Moreover, during the entire TCP connection lifetime, it undergoes from different changes in terms of state being. These changes can be differentiated such as the following: LISTENING, (server side), SYN-SENT (made by clients), SYN-RECEIVED (made by servers), ESTABLISHED (port readiness for receiving and sending data), FIN-WAIT-1, FIN-WAIT-2 (point out that server application is in standing-by position to close etc) CLOSE-WAIT, LAST-ACK (point out that server is standing-by to begin connection termination from its side), TIME-WAIT and connection close stage. In addition to these, connection establishment is based on a three-way process of handshake. But server have to keep a port free for a client, going to connect to that server for connection purpose (passive open). After that, a client initiates an active open in order to establish a connection using following three-way handshake process: SYN, SYN-ACK and ACK.