What is Transmission Control Protocol (TCP)?

Introduction

The Transmission Control Protocol (TCP) is one of the most common ways in which data on the Internet is transmitted. TCP is a communication protocol with its own set of rules about how data should be transmitted over the internet. There are many other types of communication protocols with their own sets of rules for transmitting different kinds of data over the internet, such as the file transfer protocol (FTP) and hypertext transfer protocol (HTTP).

How TCP works

Different protocols for transmitting data over the Internet operate at different layers of the open systems interconnection (OSI) seven-layer model. TCP operates at the transport layer (layer 4). Another commonly used alternative protocol for data transmission on the transport layer is the user datagram protocol (UDP). Regardless of the protocol, data transmission on the Internet is generally similar at the conceptual level: data is first divided into small individual units called the protocol data unit (PDU) before the units are transmitted over the Internet through the process of routing.

What Is the Transmission Control Protocol (TCP)

The PDU for TCP is called packets. This means that data that is transmitted using TCP (e.g. a video file that is to be streamed) will be divided into individual units called packets before the packets are routed over the Internet and received on the other end.

TCP is a connection-oriented protocol. In simple terms, a connection-oriented protocol requires a connection between the sender and the receiver to be first properly established before packets are allowed to be routed. For the entire period of data routing, the connection must be maintained and the connection is released only when all the routed packets have arrived at the destination correctly.

A TCP connection is established by means of a three-way handshake process; TCP transmits three messages known as SYN, SYN-ACK, and ACK (SYNchronize, SYNchronize-ACKnowledgement, and ACKnowledge) to initiate a TCP session. For example, if your computer wishes to receive information from a web server through TCP, it will first send a TCP SYN packet to the server. After receiving your machine’s SYN packet, the server will respond with a SYN-ACK packet back to your machine, where your machine will respond with the ACK packet back, after receiving the SYN-ACK packet. When the server receives the ACK packet from your machine, the TCP connection is properly established.

Glossary

Layer 4 (Transport Layer)

The "Transport Layer" handles traffic between hosts and clients (TCP/UDP).

TCP

TCP refers to the Transmission Control Protocol.

OSI Model

Open Systems Interconnection Model (a seven layer model).