TCP (Transmission Control Protocol) Explained

The protocol ensures reliable data transmission

Transmission Control Protocol governs the flow of information over computer networks. TCP works together with Internet Protocol in a well-known duo abbreviated as TCP/IP. You'll encounter this term in the network settings of your computer or smartphone when you explore connection settings. IP deals with the addressing and forwarding of data packets from source to destination while TCP manages the reliability of the transmission.

What TCP Does

TCP control the transfer of data to promote reliability. On networks like the Internet, data is transmitted in packets, which are units of data sent independently on the network and reassembled at the destination. 

Graphic of the computer networking terms TCP/IP
Funtap via Getty Images

Transmission of data on a network occurs in layers, each protocol on one layer doing something complementary with what the others are doing. This set of layers is called a protocol stack. TCP and IP work hand-in-hand in the stack, one above the other.

For example, one stack may include HTTP > TCP > IP > Wi-Fi. This means that when, for example, a computer accesses a web page, it uses the HTTP protocol to get the web page in HTML, TCP controls the transmission, IP governs channeling on the network (the internet), and Wi-Fi handles transmission on the local area network. 

TCP is, therefore, responsible for ensuring reliability during transmission. A reliable data transmission is one in which the following requirements are met.

  • All the packets reach the destination, that is no packet is lost.
  • There is no such delay that would affect data quality.
  • All data packets are reassembled in order.

How TCP Works 

TCP numbers its packets. It also makes sure they have a deadline to reach the destination (a duration of several hundred milliseconds called time-out) and some other technical provisions. For each packet received, the sending device is notified through a packet called acknowledgment. The name says it all. If after the time-out, no acknowledgment is received, the source sends another copy of the probably missing or delayed packet. Out-of-order packets are also not acknowledged. This way, all packets are always assembled in order, without holes and within a specific and acceptable delay window. 

TCP Addressing 

While IP offers a complete mechanism for addressing known as IP addresses, TCP has no such elaborate addressing system. It does not need one. It only uses numbers provided by the device it is working on to identify where it is receiving and sending packets for which service. These numbers are called ports. For example, web browsers use the port 80 for TCP. Port 25 governs outbound email. The port number is often coupled with the IP address for a service, e.g. 192.168.66.5:80.