TCP/IP reference model or internet protocol suite consists of a set of protocols as TCP (Transport Control Protocol) and IP (Internet Protocol). TCP/IP model defines internet or similar computer networks. Unlike OSI model, which has seven layers of communication, it has only four layers of communication as Application Layer, Transport Layer, Internet Layer and Link Layer.
Originally, United States Department of Defense (DARPA) developed IP and TCP protocols. TCP/IP model defines data communication with reference to packaging, addressing, transmission, routing and receiving. It is interesting to know that the internet protocol suite was conceptualised almost a decade before OSI model came into existence.
Layers of TCP/IP reference model
The layers of TCP/IP protocol near the top are closer to user application such as HTTP, SMTP, etc. On the other hand, bottom layers specifically talk about the physical transmission of data. Let’s delve deeper to understand each communication stack vertically from top to bottom.
Layer 4 – Application layer
The Application Layer is the topmost or 4th layer of communication in TCP/IP reference model. This layer mostly deals with how a user interacts with data back and forth to other applications or users via different network services or protocols.
Example of user applications could be a web browser, email client, Skype, etc. Whereas, HTTP, SMTP, DNS, SSH, FTP, etc. are some example of protocols which are used by these applications to serve required data to the user. The data exchange happens over the established network connections provided by the lower level protocols.
For example, HTTP or Hypertext Transfer Protocol codes the user data and passes it to Transport Layer for data encapsulation. Transport layer has further protocols such as TCP and UDP which takes care of reliable and unreliable communication with proper data addressing and checks.
Layer 3 – Transport Layer
The Transport Layer primary function is to handle communication between hosts on the same network or different networks connected via routers. In a way, it provides session and end to end communication services to the application layer.
It is responsible for host-to-host data transfer along with other functions such as segmentation of data, error control, allocation of the port number (port 80) or application addressing, data traffic control, etc.
There are two core protocols which work in this layer are TCP and UDP (User Datagram Protocol). TCP ensures reliable data communication by checking the order of data, discarding duplicate data, resending lost data packets and controlling data traffic congestion.
Whereas, UDP accomplishes unreliable communication in a scenario where time is more important than the quality of the data. It doesn’t check the data after delivery and more or less concerned with on-time data transfer than reliable data. For instance, when you watch online movies or videos on YouTube, then it will hardly matter if you miss a video frame (human eye process 30 frames per second). A similar example is when you listen to music or do voice over IP chat.
Layer 2 – Internet Layer
The Internet Layer carries out functions like data packaging, addressing and routing. Data is transferred across different networks. A typical router works in this layer. The quintessential example of protocols which functions in this layer is IP, ICMP (Internet Control Message Protocol) and IGMP (Internet Group Management Protocol).
Data may hop multiple times among several nodes between source and destination address. That’s why data packets are loaded with IP header which carries information related to source and destination.
IP or Internet Protocol does not provide reliable transportation of datagram received from transport layer but guarantees data transmission within multiple networks. It won’t be wrong to say that internet layer establishes the Internet. Primarily, two types of IP Addressing system, IPv4 and IPv6, works in this layer for the identification of host’s computers.
Layer 1 – Link Layer or Network Interface Layer
The Link Layer embodies the functionality of Data Link and Physical Layer of OSI Model. Here the primary functions which are carried out are the encapsulation of data packets into frames, mapping of IP address to physical hardware address (MAC address) of the host machine.
Typical examples of protocols which work in this layer are ARP (Address Resolution Protocol), IEEE 802.3, IEEE802.11 and NDP (Neighbor Discovery protocol).