Open In App

Why is TCP Called a Connection Oriented Protocol?

TCP is a standard connection-oriented protocol that works under the following conditions before any transmission takes place between both devices:

Establish a logical connection with the device on receiver’s end



The Transmission Control Protocol (TCP) is a protocol of the transport layer, which is the “Heart of OSI“. And it’s a connection-oriented protocol, and two primary reasons for that are:

  1. The sender and the receiver stay connected until the transmission process is fully completed and also ensures that the data reaches its destination. If any data is lost, then the receiver asks the sender to re-transmit it.
  2. The order of the data sent by the sender is the same on the receiver’s end as well.

The path from which the packet transmission will take place will be decided prior to the transmission process, and it basically uses a method called – “The 3-way Hand-shake Method”.



What is the Hand-Shake Method?

The basic idea of the hand-shake method is based on the general rule that before starting the transmission of data, some series of steps are taken in a logical order by the sender and the receiver in order to ensure delivery of the data. Below are those operations described in brief :

Only after the above steps are performed, the actual data transmission will start.

For more details, refer to the article: TCP-3 way handshake.

Basic Terminologies

TCP Data Transfer

Here’s how the data transmission using TCP as a connection oriented protocol takes place.

As an step1 we have to first establish a connection with the system so that we can transmit the data.

Connection Establishment using 3-way handshake

In step2 the transmission takes place with proper reordering the packets or segments at the receivers end.

Data Transmision

Notice in the above image of step-2, data sent was in the following sequence : 1,2,3 then the data received at the receiver’s end is also in the same sequence 1,2,3.

Frequently Asked Questions

1. How does TCP ensure reliable data delivery ?

TCP does so by making use of various flags to indicate whether the data transmitted is received by the sender or not. And further more, it also ensures the ordered delivery by assigning a sequence number to every data segment so that they can be re-ordered at the receiver’s end on the basis of this sequence number.

2. In what scenarios, TCP can be useful?

TCP can be useful in various scenarios depending on your use case like – if you need data to be delivered and there’s no specific time frame to do so then TCP can be useful. Real world application where TCP is used : E-mails, File transfer (One to One) and while browsing.

3. What tradeoffs might arise when one prefer’s connection-oriented protocol over connection-less ?

The tradeoffs would be – the delay in transmitting the data to the destination as the connection establishment process is itself a very heavy process that could generate a slight overhead and doesn’t proves to be useful in scenarios where faster transmission is required like gaming and live video streaming.

Article Tags :