Protocols provide us with a medium and set of rules to establish communication between different devices for the exchange of data and other services.
Protocols are a fundamental aspect of digital communication as they dictate how to format, transmit and receive data. In simple terms, a protocol is similar to a language. Every language has its own rules and vocabulary. Protocols have their own rules, specifications, and implementations. Protocols provide a common language for network devices participating in data communication.
I have tried to list down the important protocols which we have used and come across in our IT life. Network engineers will have more knowledge and may know more protocols. These are the protocols I have used or came to know during my IT Journey
In this first part, i have summarized few important protocols in Transport Layer and Network Layer
IP : Internet Protocol [Type: Transport]
This is a connectionless and unreliable protocol. It ensures no guarantee of successfully transmission of data.
In order to make it reliable, it must be paired with reliable protocol such as TCP at the transport layer.
Internet protocol transmits the data in form of a datagram.
UDP : User Datagram Protocol [Type: Transport]
UDP provides a mechanism to detect corrupt data in packets, but it does not attempt to solve other problems that arise with packets, such as lost or out of order packets
TCP : Transmission Control Protocol [Type: Transport]
Used on top of IP to ensure reliable transmission of packets. TCP includes mechanisms to solve many of the problems that arise from packet-based messaging, such as lost packets, out of order packets, duplicate packets, and corrupted packets.
T/TCP : Transactional Transmission Control Protocol [Type: Transport]
It was a variant of the TCP. It was an experimental TCP extension for efficient transaction-oriented service. It was developed to fill the gap between TCP and UDP. TCP is reliable but inefficient for transactions, whereas UDP is unreliable but highly efficient. T/TCP sits between these two protocols, making it an alternative for certain applications.
QUIC : Quick UDP Internet Connections [Type: Transport]
This protocol designed by Google. The overall goal is to reduce latency compared to that of TCP. Think of QUIC as being similar to TCP+TLS+HTTP/2 implemented on UDP. Because TCP is implemented at the lowest levels of machinery (operating systems, routing firmware), making changes to TCP is next to impossible given the amount of upgrades that would need to occur. Since QUIC is built on top of UDP, it suffers from no such limitations and can be integrated into end host applications
SSL :
Secure Sockets Layer [Type: Network]
This is used for establishing authenticated and encrypted links between networked computers. Although the SSL protocol was deprecated with the release of TLS 1.0 in 1999, it is still common to refer to these related technologies as “SSL” or “SSL/TLS.”
TLS :
Transport Layer Security [Type: Network]
This is the successor of the now-deprecated Secure Sockets Layer (SSL). This is a cryptographic protocol designed to provide communications security over a computer network. The protocol is widely used in applications such as email, instant messaging, and voice over IP, but its use in securing HTTPS remains the most publicly visible
FTP: File Transfer Protocol [Type: Network]
A standard communication protocol used for the transfer of computer files from a server to a client on a computer network. FTP is built on a client–server model architecture
TFTP: Trivial File Transfer Protocol [Type: Network]
This is also used to transfer the files but it transfers the files without authentication. Unlike FTP, TFTP does not separate control and data information. Since there is no authentication exists, TFTP lacks in security features
ARP: Address Resolution Protocol [Type: Network]
This is a communication protocol used for discovering the link layer address, such as a MAC address, associated with a given internet layer address, typically an IPv4 address. This mapping is a critical function in the Internet protocol suite.
RARP: Reverse Address Resolution Protocol [Type: Network]
This is a network protocol used to resolve a data link layer address to the corresponding network layer address. ARP when provided with the logical address of the receiver it obtains the physical address of the receiver whereas in RARP when provided with the physical address of the host, it obtains the logical address of the host from the server.
GARP:
Gratuitous Address Resolution Protocol [Type: Network]
This is a local area network (LAN) protocol that defines procedures by which end stations and switches can register and de-register attributes, such as network identifiers or addresses, with each other.
DHCP:
Dynamic Host Configuration Protocol [Type: Network]
This is a network management protocol used to dynamically assign an IP address to any device, or node, on a network so they can communicate using IP (Internet Protocol). DHCP automates and centrally manages these configurations
VoIP:
Voice over Internet Protocol [Type: Network]
Also called IP telephony, is a method and group of technologies for the delivery of voice communications and multimedia sessions over Internet Protocol networks, such as the Internet
RTP: Real-Time Transport
Protocol [Type: Network]
This is a network protocol used to deliver streaming audio and video media over the internet, thereby enabling the Voice Over Internet Protocol (VoIP). RTP is generally used with a signaling protocol, such as SIP, which sets up connections across the network
RTCP: Real-Time Transport Control
Protocol [Type: Network]
The optional companion protocol to Real-time Transport Protocol (RTP) in a Voice Over Internet Protocol (VoIP) network. It is used to monitor the transmission and quality-of-service (QoS) of streaming media, however, it is not needed for RTP to work. The primary function of RTCP is to provide feedback on the quality of the data distribution being accomplished by RTP
PPTP: Point-to-Point Tunneling
Protocol [Type: Network]
This is a network protocol that enables the secure transfer of data from a remote client to a private enterprise server by creating a virtual private network (VPN) across TCP/IP-based data networks
We will discuss few Application Layer Protocols in Part 2.