Internet Protocol Suite - Part 1

In this blog series, I will take you through the Internet Protocol Suite and different technologies around real time communication scenarios for Internet applications and IoT use cases. Subsequent articles in this series will have detailed information on a variety of Application layer protocols covering topics like architecture, security, scenarios, trade offs, and artificial intelligence models around them.To begin with, let’s discuss Internet Protocol Suite which is a conceptual model of different communication protocols used in Internet.

 Internet Protocol Suite

Internet Protocol Suite is the protocol stack used on internet. This is a conceptual model built based on a set of communication protocols used in internet. It is commonly known as TCP/IP because of two main protocols – TCP (Transmission Control Protocol) and IP (Internet Protocol). It consists of four conceptual layers –

  1. Application Layer
  2. Transport Layer
  3. Internet Layer
  4. Link Layer

These layers are not directly mapped to OSI communication model, rather it is loosely mapped to the seven layers of OSI communication model.

Architecture - Internet Protocol Suite 

Do you want to download this image? Leave a message in the comments section

Above pictures explains how data flows through the layers and data encapsulation at each layer. it also shows a mapping of OSI communication model. However, if only represents a loosely mapped 7 layers of OSI communication model.

Link layer is a local network connection attached to a host. This consists of specialized hardware, virtual private networks (VPN) and network tunnels. Packets are transmitted and received via this link layer, moved by utilizing device drivers, firmware to transmit the frames to Physical layer.

Internet protocol layer is used to send data packets (called datagrams) from source network to destination network. It can accommodate any transport layer protocol which can carry different data structures. This means, internet protocol layer is agnostic to both data structure and transport layer. It uses a routing technique to identify the path inside/across networks. Routing uses different type of delivery schemes and algorithms to determine the paths. Routing delivery schemes are –

  • Unicast – delivering messages to a specific node; one-to-one

  • Broadcast - delivering messages to all the nodes; one-to-all

  • Multicast – delivering messages to a specific group of nodes; one-to-many-of-many or many-to-many-of-many

  • AnyCast – delivering messages to a specific node of a group of nodes; one-to-one-of-many

  • Geocast – delivering messages to a group of nodes available in a specific Geographic location; one-to-many-of-many-at-geolocation

It uses Internet Protocol Version 4 which is a 32-bit address. Now, in today’s world of Internet of Things IPv4 is not sufficient to accommodate all IPs. To overcome this Internet Protocol Version 6 which uses 128-bit addresses.

Transport Layer enables peer-to-peer communication between hosts. This acts as a data channel and this is independent of the data structure defined by the users. It supports two modes of communications 1. Connection oriented and 2. Connection less. Transmission Control Protocol (TCP) is the implementation of connection oriented and User Datagram Protocol (UDP) is for connection less. It maps to the 4th layer of OSI Communication model.

Application Layer uses different type of protocols to exchange data between applications. This layer provides required abstraction for the transport and lower layers. Some of the popular protocols are  Hypertext Transfer Protocol (HTTP), File Transfer Protocol (FTP), Web Socket, Simple Mail Transfer Protocol (SMTP). It combines top three layers (Application, Presentation and Session) of OSI communication model.

Comments

Popular posts from this blog

Python Development Environment : pyenv & VS Code

Open Distro for Elasticsearch - Installation - Part 2

WSL 2 on Windows - LINUX based development environment and Docker