Open In App

What is TCP (Transmission Control Protocol)?

Last Updated : 01 Feb, 2025
Comments
Improve
Suggest changes
Like Article
Like
Report

Transmission Control Protocol (TCP) is a connection-oriented protocol for communications that helps in the exchange of messages between different devices over a network. It is one of the main protocols of the TCP/IP suite. In OSI model, it operates at the transport layer(Layer 4). It lies between the Application and Network Layers which are used in providing reliable delivery services. The Internet Protocol (IP), which establishes the technique for sending data packets between computers, works with TCP.

  • TCP establishes a reliable connection between sender and receiver using the three-way handshake (SYN, SYN-ACK, ACK) and it uses a four-step handshake (FIN, ACK, FIN, ACK) to close connections properly.
  • It ensures error-free, in-order delivery of data packets.
  • It uses acknowledgments (ACKs) to confirm receipt.
  • It prevents data overflow by adjusting the data transmission rate according to the receiver’s buffer size.
  • It prevents network congestion using algorithms like Slow Start, Congestion Avoidance, Fast Retransmit, and Fast Recovery.
  • TCP header uses checksum to detect corrupted data and requests retransmission if needed.
  • It is used in applications requiring reliable and ordered data transfer, such as web browsing, email, and remote login.

Internet Protocol (IP)

Internet Protocol (IP) is a method that is useful for sending data from one device to another from all over the internet. It is a set of rules governing how data is sent and received over the internet. It is responsible for addressing and routing packets of data so they can travel from the sender to the correct destination across multiple networks. Every device contains a unique IP Address that helps it communicate and exchange data across other devices present on the internet.

Working of Transmission Control Protocol (TCP)

Transmission Control Protocol (TCP) model breaks down the data into small bundles and afterward reassembles the bundles into the original message on the opposite end to make sure that each message reaches its target location intact. Sending the information in little bundles of information makes it simpler to maintain efficiency as opposed to sending everything in one go.

After a particular message is broken down into bundles, these bundles may travel along multiple routes if one route is jammed but the destination remains the same.

Transmission Control Protocol
TCP

For Example: When a user requests a web page on the internet, somewhere in the world, the server processes that request and sends back an HTML Page to that user. The server makes use of a protocol called the HTTP Protocol. The HTTP then requests the TCP layer to set the required connection and send the HTML file.

Now, the TCP breaks the data into small packets and forwards it toward the Internet Protocol (IP) layer. The packets are then sent to the destination through different routes.

The TCP layer in the user's system waits for the transmission to get finished and acknowledges once all packets have been received.

Features of TCP

Some of the most prominent features of Transmission control protocol are mentioned below.

  • Segment Numbering System: TCP keeps track of the segments being transmitted or received by assigning numbers to each and every single one of them. A specific Byte Number is assigned to data bytes that are to be transferred while segments are assigned sequence numbers. Acknowledgment Numbers are assigned to received segments.
  • Connection Oriented: It means sender and receiver are connected to each other till the completion of the process. The order of the data is maintained i.e. order remains same before and after transmission.
  • Full Duplex: In TCP data can be transmitted from receiver to the sender or vice - versa at the same time. It increases efficiency of data flow between sender and receiver. 
  • Flow Control: Flow control limits the rate at which a sender transfers data. This is done to ensure reliable delivery. The receiver continually hints to the sender on how much data can be received (using a sliding window).
  • Error Control: TCP implements an error control mechanism for reliable data transfer. Error control is byte-oriented. Segments are checked for error detection. Error Control includes - Corrupted Segment & Lost Segment Management, Out-of-order segments, Duplicate segments, etc.
  • Congestion Control: TCP takes into account the level of congestion in the network. Congestion level is determined by the amount of data sent by a sender.

Advantages of TCP

  • It is a reliable protocol.
  • It provides an error-checking mechanism as well as one for recovery.
  • It gives flow control.
  • It makes sure that the data reaches the proper destination in the exact order that it was sent.
  • It is a well-documented and widely implemented protocol, maintained by standards organizations like the IETF (Internet Engineering Task Force).
  • It works in conjunction with IP (Internet Protocol) to establish connections between devices on a network.

Disadvantages of TCP

  • TCP is made for Wide Area Networks, thus its size can become an issue for small networks with low resources.
  • TCP runs several layers so it can slow down the speed of the network.
  • It is not generic in nature. It cannot represent any protocol stack other than the TCP/IP suite. E.g., it cannot work with a Bluetooth connection.
  • No modifications since their development around 30 years ago.

Next Article

Similar Reads