Network Protocols

Joy Das
4 min readApr 8, 2024

--

HTTP (Hypertext Transfer Protocol): HTTP is the foundation of communication on the World Wide Web. It defines how data is formatted and transmitted between a web server and a web browser. It establishes a standardized way for browsers to request web pages and other resources from servers, allowing us to access information and interact with websites. Every time we visit a website by typing a URL in the address bar, our browser uses HTTP to send a request to the server for the specific web page. The server then responds with the requested data using HTTP.

HTTPS (Hypertext Transfer Protocol Secure): HTTPS is a secure version of HTTP that encrypts communication between the browser and the server. This ensures privacy and data integrity during communication. HTTPS is crucial for protecting sensitive information like passwords, credit card details, and online transactions. HTTPS works similarly to HTTP, but it utilizes encryption protocols like SSL/TLS to scramble data before sending it over the network. This makes it much harder for anyone to intercept and steal the information.

SMTP (Simple Mail Transfer Protocol): SMTP is the standard protocol for sending emails. It governs how email clients (like Outlook or Gmail) communicate with mail servers to deliver emails. SMTP is essential for the reliable and efficient delivery of emails across the internet. When we compose an email and hit send, our email client uses SMTP to connect to our email provider’s mail server and deliver the message for forwarding.

FTP (File Transfer Protocol): FTP is a protocol for transferring files between computers on a network. It allows users to upload and download files from remote servers. FTP is commonly used for transferring large files, website updates, software installations, and sharing data between systems. FTP utilizes dedicated client applications or command-line tools to connect to an FTP server and manage file transfers.

SSH (Secure Shell): SSH is a secure protocol for establishing encrypted remote login sessions. It allows users to access and control a computer system remotely over a network. SSH provides a secure way for system administrators, developers, and other authorized users to manage servers and other remote machines. SSH clients are used to connect to an SSH server on a remote machine. Once connected, users can execute commands, transfer files, and manage the system as if they were physically present.

DNS (Domain Name System): DNS is like a phonebook for the internet. It translates human-readable domain names (like invalid URL removed) into numerical IP addresses that computers use to locate and connect to specific servers. DNS makes it easier to remember and access websites by using friendly names instead of complex IP addresses. When users type a domain name in their browser, their computer queries a DNS server to translate that name into the corresponding IP address. The browser then uses the IP address to connect to the website’s server.

POP3 (Post Office Protocol version 3): POP3 is a protocol for retrieving emails from a mail server. It allows email clients to download emails to their local device for offline reading and management. POP3 is useful for users who want to store and manage their emails on their local devices without keeping them on the server. POP3 email clients connect to the mail server and download emails to your computer. Once downloaded, the emails can be accessed and managed even when you’re offline.

IMAP (Internet Message Access Protocol): IMAP is another protocol for accessing emails on a mail server. Unlike POP3, IMAP allows user to view and manage emails directly on the server from any device. IMAP is beneficial for users who access their emails from multiple devices and want to keep their emails synchronized across all devices. IMAP email clients connect to the mail server and provide a real-time view of their emails. User can read, reply, delete, and organize emails on the server, and these changes are reflected across all their devices using the same email account.

TCP (Transmission Control Protocol): TCP is a fundamental protocol that ensures reliable data transmission over networks like the internet. It operates at the transport layer of the OSI model, acting as a middleman between higher-level applications and the underlying network layer. TCP plays a critical role in guaranteeing data integrity and delivery. It breaks down large data streams into manageable packets, assigns sequence numbers, and acknowledges their receipt. This ensures all packets arrive at their destination in the correct order and without errors. When an application like a web browser wants to send data, it hands it off to TCP. TCP segments the data into packets, adds headers with sequence numbers and other control information, and transmits them to the receiving application’s TCP layer. The receiving TCP layer acknowledges each packet and requests retransmission if any are lost or corrupted.

DHCP (Dynamic Host Configuration Protocol): DHCP is an application-layer protocol that automates the assignment of IP addresses and other network configuration settings to devices on a network. It eliminates the need for manual configuration, saving time and reducing errors. DHCP simplifies network management, especially in environments with many devices that frequently connect and disconnect. It ensures each device has a unique IP address to communicate on the network and can access necessary resources. When a device (like your laptop) joins a DHCP-enabled network, it broadcasts a DHCP discover message. A DHCP server on the network receives this message and responds with an offer containing a lease for an IP address, subnet mask, default gateway, and other configuration details. The device then sends a request to accept the offered configuration. This dynamic leasing allows for efficient use of IP addresses and simplifies network administration.

--

--