TCP/IP Model

TCP/IP stands for Transmission Control Protocol/Internet Protocol and is a standard protocol suite used to facilitate communication between network devices over the internet which consists of two components TCP and IP. TCP/IP is a compact form of OSI model. Unlike the OSI model, which has seven layers, it has four layers.




The data is divided into packets by the TCP/IP Model at the sender's end, and in order to preserve data correctness, the same packets must be reassembled at the recipient's end. The data is divided into four layers by the TCP/IP paradigm, which arranges the data in a sequential fashion at the sender's end and reorders it at the recipient's end.

Network Access Layer:

A combination of Physical layer & Data Link layer defined in OSI model, responsible for the transmission of the data between two devices over network. Ethernet protocol is used by this layer.

Network Layer / Internet Layer:

It is responsible to send the packets from a network to the destination irrespective of the route packets take.

IP protocol, ICMP & ARP are main protocols used by this layer. IP is used for routing data packets between network devices over internet. Each & every device connected over network, have a unique IP address. The data transmitted are allowed to and from specific destinations. IP addresses are represented by two formats namely IPv4 (32-bit) or IPv6 (128-bits). 

Internet Control Message Protocol is referred to as ICMP with responsibility to inform hosts (either source hosts or destination hosts) about network issues and is contained within IP datagrams.

ARP stands for Address Resolution Protocol with responsibility to find the hardware address of a host from a known IP address. ARP has many types like Reverse ARP, Proxy ARP, Gratuitous ARP and Inverse ARP.

Transport Layer:

The transport layer responsibilities are the reliability, flow control, and correction of data which is being sent over the network. The two protocols are used in this layer are User Datagram protocol(UDP) and Transmission control protocol(TCP).

Transmission control protocol (TCP) and user datagram protocol (UDP) differ primarily in that UDP is a connectionless protocol while TCP is connection-based. Although TCP transfers data more slowly, it is more reliable because it detects the error and retransmits the damaged frames. UDP operates faster but is less reliable because it discovers the errors but not specify the error.

TCP ensures reliable data transmission by providing mechanisms for error detection, flow control, and packet sequencing. It establishes connections between devices through a process known as the TCP handshake, which involves three steps: SYN, SYN-ACK, and ACK. TCP breaks data into smaller segments, assigns sequence numbers to each segment, and reassembles them at the receiving end.

Each TCP header has 10 required fields totaling 20 bytes (160 bits) in size. It can optionally include an additional data field up to 40 bytes in size while UDP headers are limited to 8 bytes in size.

TCP is best suitable for apps that require reliability for example web, file transfer, email, and secure shell while UDP is best suitable for apps that require speed for example VPNs, streaming video, VoIP, live broadcasts, and online gaming.

Application Layer:

It is topmost layer of TCP/IP model with responsibilities of end-to-end communication, error-free delivery of data, allows user to interact with application.

Three protocols are used in this layer like HTTP/HTTPS, SSH and NTP.

HTTP stands for Hypertext transfer protocol, communicate between web browsers and servers. HTTPS stands for HTTP-Secure, a combination of HTTP with SSL(Secure Socket Layer). It is secure & used where the browser needs to fill out forms, sign in, authenticate and for bank transactions.

SSH stands for Secure Shell, preferred because of its ability to maintain the encrypted connection. It sets up a secure session over a TCP/IP connection.

NTP stands for Network Time Protocol, used to synchronize the clocks on PC to standard time source & useful in situations like bank transactions. For example a transaction is carried out, PC shows the time at 4:00 PM while the server records it at 4:30 PM & since due to syncing not taking place properly the server can crash.

Comments

Popular posts from this blog

OWASP Top 10

AAA