TCP/IP model is the practical model that every networking equipment manufacturer follows today whether it is Cisco, Huawei, Nokia, Ericsson or Juniper. TCP/IP Model is a standard reference Model for conceptualizing data communications between networks.
The TCP/IP is a practical model that provides end to end data communication specifying how data should be encapsulated, routed and finally received at destination. It characterizes and standardizes the communication functions of a network system without regard to its underlying internal structure and technology. It is also called the ‘Internet Model’ or the ‘DoD Model’. TCP/IP is a Vendor Neutral Model. It resolved many problems as described in below.
Problem: Each vendor had to use its own rules & protocols to manufacture network equipment. So, one vendor’s equipment & network was not compatible with another vendor’s equipment. Buyers were bound to buy only from one vendor. For example, if you were buying HP computers then you were now bound to buy all network equipment from HP as well in the future. Because HP computers could not be connected by other vendor switches or routers. You must buy HP switches to connect them. They will not work with Samsung servers or Cisco switches.
Solution: This problem was resolved by using TCP/IP. The idea of a standardized Network Model emerged as a solution. In simple words, TCP/IP reference model describes how information from a software application in one computer moves through a network medium to a software application in another computer.
Note: Although OSI is the most famous model but the actual model in practice is TCP/IP Model. OSI model is used only for reference purposes
Two protocols called Transmission Control Protocol (TCP) & Internet Protocol (IP) work together to form the foundations of this protocol suite. They form a team that works together to make it possible for applications to easily run over an internetwork.
TCP is “a Connection-Oriented Transport Layer (Layer4) protocol for reliable communication b/w network devices”. TCPv4 was standardized in RFC-793 in1981. It is also called Host-to-Host protocol. It provides to applications a method of easily use the IP. It also fills in the capabilities that IP lacks. It allows TCP/IP devices to establish and manage connections and send data reliably and takes care of handling all the potential issues that can occur during transmission so that each application doesn’t need to worry about these details. It provides Reliable communication through PAR (Positive Acknowledgement with Re-transmission) using 3-way handshake process which is discussed in next section.
IP is related with classic Network Layer tasks (Logical Addressing, Routing) for basic internetworking capabilities.
TCP/IP Model divides the network communication processes into 4 Layers in order to simplify it. Each layer performs specific functions to support the layers above it. The layers of the protocol suite near the top are logically closer to the user application, while those near the bottom are logically closer to the physical transmission of the data. TCP/IP Model has 4x Layers starting from Physical Network Interface till Application level as in below:
Physical Network Interface Layer standardises the Physical medium & is responsible for Physical Addressing. For example, signal level, voltage, radio, cabling standards & so on,… It is responsible for ultimate transmission of digital data bits in the form of electrical, optical or radio signals from the Network Interface layer of the sending device over network communications media to the Physical Network Interface Layer of the receiving or destination device. It also standardizes the Physical Addressing. It is responsible for Data Switching. Physical addressing includes MAC Address & Ethernet Frames.
Internet Layer deals with Logical Addressing (IP Addressing). It is responsible for Data Routing. Transport Layer ensures the error free data transmission across networks. It is also responsible for Sessions Management in TCP/IP Model (in contrast to OSI Model, where sessions are managed by Session Layer). It mainly focuses on data delivery. Transport Layer mainly uses two protocols called TCP & UDP which we will discuss in detail in later sections.
Application Layer is responsible for end-user processes or applications. It supplies network services to end-user applications. It is also responsible for data organization & conversion so that it is readable by Application layer of all hosts/applications involved in the data communication.
OSI (Open System Interconnection) is another model of the same kind. It also has same layered structure. The TCP/IP model is a condensed version of the OSI reference model consisting of only the 4xLayers. The functions of these four layers are comparable to the functions of the seven layers of the OSI Model . Below figure shows the comparison between the layers of the two models:
OSI is used as standard only but we never find it on real equipment. The model in action today is TCP/IP. OSI is used only for standardization & reference purposes. Below are the detailed differences between OSI Model & TCP/IP Model:
OSI Model | TCP/IP Model |
Mostly used for reference purposes only | Practical Model in use today |
OSI Model was chosen & released in 1984 by ISO | TCP/IP Model was created in the 1970s by DARPA |
Each layer participates in Error Handling | Transport Layer is the only layer for Error Handling |
Not so simple model as compared to TCP/IP Model (7 Layers) | Simple Model – 4Layers only (and robust compared) |
Connection Management is done by Session Layer | Connection Management is done by Transport Layer as extra duty (as there is no Session Layer) |
Data Formatting/Conversion is done by Presentation Layer | Data Formatting/Conversion is done by Application Layer |
Uses Horizontal Approach | Uses Vertical Approach |
— | Transport Layer uses 3-way Handshake mechanism for Error Handling |
— | Transport Layer uses Sliding Windows mechanism for Flow Control |
Transport Layer is Connection Oriented | Transport Layer can be both Connection Oriented and connectionless |
Network Layer can be Connection Oriented and Connectionless | Network Layer is always Connectionless |
OSI Model places emphasis on providing a reliable data transfer service | TCP/IP model treats reliability as an end-to-end problem |
OSI Model defines services, interfaces and protocols very clearly and makes clear distinction between them. It is protocol independent. | In TCP/IP, services, interfaces and protocols are not clearly separated. It is also protocol dependent |
Hosts on OSI implementations do not handle network operations (simple terminal) | Hosts participate in most network protocols |
TCP uses a process called 3-way Handshake for reliable communication. In 3-way Handshake process, three TCP segments are exchanged between the sender and the receiver to establish a reliable connection. These are called SYN, SYN-ACK and ACK.
Step1 (SYN): In the first step, client wants to establish a connection with server, so it sends a segment with SYN (Synchronize Sequence Number). This informs server that client is likely to start communication and with what sequence number it starts segments with.
Step2 (SYN + ACK): In the second step, Server responds to the client request with SYN-ACK signal bits set. Acknowledgment (ACK) signifies the response of segment it received and SYN signifies with what sequence number it is likely to start the segments with.
Step3 (ACK): In the last step, client acknowledges the response of server by ACK message. Status on both sides change to ESTABLISHED and both get ready to start the actual data transfer.
The steps 1 and 2 establish the connection parameter (sequence numbers) for one direction and it is acknowledged. The steps 2 and 3 establish the connection parameter for the other direction and it is acknowledged. After the whole process, a full-duplex communication is established. ISN’s (Initial Sequence Numbers) are randomly selected while establishing connections between client and server. Below is the simplified view of TCP 3-way handshake process:
TCP allows one side/device to establish a connection. The other side/device may either accept the connection or refuse it. The device that is establishing/requesting the connection is called client and the side waiting for a connection is called server.
Each layer in TCP/IP model has some protocols associated with it. For example, TCP and UDP are two protocols that belong to Transport Layer. TCP is connection oriented protocol while UDP is connectionless protocol. TCP/IP Model provides a practical framework for communication between computers, but the model itself is not a method of communication. Actual communication is made possible by using communication protocols. Some important protocols on each layer are as in below:
Similar to protocols, each layer has associated equipment with it. For example, Hubs, Repeaters, Media Converters, L2 Switches & Bridges operate at Physical Network Interface Layer, Routers & Layer3 Switches operate on Internet Layer, Firewalls work on Transport Layer4. End Devices like PC’s/Server/Phones, Firewalls, IDS’s operate on Application Layer of TCP/IP Model as in below:
The TCP/IP Model is a conceptual framework which is used to describe the functions of a networking system. The actual model in practice today is TCP/IP Model while OSI model is used only for reference purposes. It consists of 4 layers. Each of these layers are responsible for some duties. Each of these four layers has some protocols & equipment associated with it.
Now, test your knowledge on TCP/IP Model using our free Quizzes & Cheat sheet resources for long term memory: