TCP/IP vs ISO/OSI for Beginners
Tags: networks, protocols
Published: 2020-06-04 21:51:57



As said in a [previous post](https://dev.to/christiancost47/the-origins-of-computer-networks-a-developers-guide-5nc) the various manufacturers protocols led to the stacks standardization, in order to bring everyone to the same page. In this post we'll talk more about the two models and what differentiate one from another.

#Encapsulation

Before we talk about each model and each individual layer of each, let's talk quickly about encapsulation and the reason that there is such a division by layers.
For both models the use of layers serves to represent in smaller parts each logical function that occurs in the communication process between two entities.

Each layer plays a role in creating and attaching information that describe the data in transport. This information attachment process is called encapsulation, and works in a similar way to sending a package by mail, in the middle of the way your delivery comes out of the store stock in which the purchase was made, is forwarded to the core distribution center, then to the regional distribution center, directed to the responsible courier, until you reach your address. At each stage to transport your order received ways to identify who was the sender and who would be the recipient, as well as occurs in the encapsulation.

## Quick Note: Top Down or Botton Up

Several authors use different approaches when dealing with both models, starting from the bottom up or from the top down. For being considered the most didactic here we will use the Top-Down approach.

# TCP/IP Stack

In the early 1970s was born in the Department of Defense(DoD) of the United States the ARPANET (ARPA: Advanced Research Project Agency). The first protocol used in this military network was called NCP (Network Control Protocol) however, this protocol was not able to support the increasing data traffic in the network and it was necessary to develop a new solution to meet the demand, which came to be the TCP/IP suite of protocols (Transmission Control Protocol/Internet Protocol).

After a few years the ARPANET which until then was a military project, left the DoD basement and its use was allowed initially in universities and later its civil use was released, thus giving birth to World Wide Web.

This change forced the manufacturers that until then followed their own standards, to use the TCP/IP protocols, otherwise their users could not access the internet.

## The Four Layers

As mentioned in the beginning, we'll consider that this model has four layers, being:

4 - Application
3 - Transport
2 - Internet
1 - link

### 4th Layer: Application

The application layer is the user interface when accessing a TCP/IP network and is responsible for meeting access requests. Many of the most well-known protocols are in this layer, such as the case of HTTP (Hypertext Transfer Protocol), responsible for ordering web pages; the FTP (File Transfer Protocol) responsible for transferring file between entities and SMTP (Simple Mail Transfer Protocol) in charge of providing transfer of messages via email.

### 3rd Layer: Transportation

When a message is transmitted over the network it is not sent at once, but fragmented into smaller parts, called packets. The transport layer is responsible for this task of fragmentation and transmission, always so that all packages reach their destination without loss and in the correct order. The services of this layer are said to be connected precisely by this guaranteed message delivery functionality.
The protocols of this layer responsible for these tasks are the TCP (Transmission Control Protocol - Transmission Control Protocol), which names the model and the UDP (User Datagram Protocol - User Datagram Protocol).

### 2nd Layer: The Network
The Network layer has the function of identifying the package destination based on its logical identification. This mechanism to carry out this identification is the famous IP address, which differentiates an object from everyone else on the same network, and is based on a numbering system to identify whether the destination is local (on the same network) or remote (on a different network). The protocol that accomplishes this task of identification is the IP (Internet Protocol - Internet Protocol), which together with TCP baptizes the model.

### 1st Layer: The Link
A link is a "meeting point" between a machine and an access device. For example, your home's internet modem and your computer. The link layer converts a logical identifier, in the case of the IP address, into a physical identifier, for example the MAC address (Media Access Identifier - Media Access Identifier). The case of the MAC address applies to the use of the Ethernet protocol, but in addition to this layer is also our dear WiFi protocol.

# What about the OSI Model?

In addition to the need to use the TCP/IP model to access the Internet, the companies finally realized that putting everyone on the same page following an established model they could sell more of their products. The entity responsible for developing this standard was the International Organization for Standardization (ISO ), thus creating the Open Systems Interconnection model (OSI ). This model is called Open Systems, as it refers to open devices to communicate with other devices.

##The Seven Layers

The OSI model layers are as follows:

7 - Layer of Application
6 - Layer of Presentation
5 - Layer of Session
4 - Layer of Transport
3 - Layer of Network
2 - Layer of link
1 - The Physical Layer

Note that the layers of Application(7), Transport(4), Network(3), and Link(2), are the same as those that appear in the TCP/IP model. Therefore, to avoid repetition, we'll consider the OSI model should be considered as the TCP/IP model, with the addition of layers of Presentation(6), Session(5), and Physical(1).

### 6th Layer: Presentation
The sixth layer is responsible for ensuring the transmission of data from the previous layer (Application) in a comprehensible manner. However the presentation layer does not perform a translation work transmits to the layer below with the necessary means for the message to be translated.

### 5th Layer: Session
The fifth layer is called "Session Layer" as it allows two different machines to establish sessions between them. The establishment of sessions makes it possible to perform dialogue control, that is, to maintain control of which machine is the turn to transmit); token control, which prevents the machines to do equal and simultaneous actions; and synchronization, i.e., check long transmissions to enable resumption at the same point where there was an interruption.

### 1st Layer: Physical
The lower layer of the OSI model is responsible for the transmission of raw data (zeros and 1's) by the network through a communication channel (optical fiber, copper or wireless) that represents all bits.

The way these bits are represented depends on the medium used. In the case of copper use these bits will be represented by the presence or absence of electrical signal. If the medium used is wireless the representation will be made according to the "shape" of the waves. And if it's via optical fiber, the representation uses laser-generated light patterns.

# Wrapping up

If the goal of using references was standardization, why are there still two rather than just one model? Well, the OSI Model is very effective in being used to represent the processes that occur in each layer, however its protocols are not the same way efficient. By contrast, the protocols present in TCP/IP Model are extremely valuable for the internet as a whole, so TCP/IP is much more practical than OSI. However both models are of great importance so that one does not disqualify the other.

***

This post was based in the great Kurose & Ross book *Computer Networks and Protocols* and in the Cisco's *Networking Fundamentals* book

***

Thanks for your reading!