Networking Protocols

Notes: This post also lists some of the non-standard protocols, which are not truly networking, but popular enough utilizing the internet for message transfer.

Secure Shell(SSH)

A cryptographic network protocol used for networking services securely over unsecured networks between a client and a server. The default Port used for communication over SSH is 22 and the popular servers and clients are as mentioned below.

SSH Servers - OpenSSH, CopSSH, Dropbear, Apache MINA SSHD

SSH Clients - PuTTY, SecureCRT

File Transfer Protocol(FTP)

The standard network protocol used for transfer of files between the client and the server using port 21 by default. The FTP clients can be used to browse the assigned directory on the server and make changes to the files according to the permission granted by the server admin.

FTP Servers - FileZilla FTPS, IIS FTPS, vsftpd, Pro FTPD, Pure FTPd

FTP Clients - FileZilla, WinSCP, FireFTP

Telnet

It's a TCP/IP networking protocol used for bidirectional interactive text-oriented communication over terminal between a client and a server. The standard port for Telnet communication is 23. Also called Teletype Network, mainly used on the terminal for communication between computers over the computer networks. All the messages transferred via Telnet are unencrypted in clear text.

Telnet Servers - Built in with the operating system

Telnet Clients - PuTTY, SecureCRT, RUMBA

Transmission Control Protocol(TCP)

A standard transport layer network communication protocol used to define the way to establish connection and exchange data streams. It's one of the main network protocol and guarantees the delivery of the message. It also guarantees the packet order delivery and ensures that packets are delivered in the same order to the target host as sent by the sender.

User Datagram Protocol(UDP)

An unreliable and connectionless transport layer protocol from Internet protocol suite used to send a short message called as datagram. It's another important protocol and alternates to TCP for establishing low latency connections without maintaining any connection state.

Internet Control Message Protocol(ICMP)

A network layer protocol used by network devices to send error messages and operational information when network problems prevent the delivery of an IP packet.

The ICMP messages are transmitted as datagrams consisting an IP header encapsulating the message data majorly used for error detection and packet failure.

Internet Group Management Protocol(IGMP)

The communication protocol used by the network devices to establish multicast group membership. It manages the membership of hosts and routing devices in multicast groups.

The multicast routers use the IGMP to determine the group membership details of connected hosts.

Transport Layer Security (TLS)

Cryptographic protocol designed to provide secure communication over a computer network.

Secure Socket Layer (SSL)

Security protocol and predecessor of TLS used to establish encrypted links between a web server and a web browser.

It guarantees that all the communication over the endpoints is secure and encrypted. It prevents common hacking techniques including eavesdropping subjected to a safer CA.

Address Resolution Protocol (ARP)

The communication protocol used to map an IP address to a physical machine address recognized in the computer network.

It's used to discover the link layer address especially MAC address associated with the given internet layer address i.e. IPv4.

Reverse Address Resolution Protocol (RARP)

A TCP/IP network layer communication protocol used by the client computer to request it's IP address from a computer network.

Neighbor Discovery Protocol (NDP, ND)

It's similar to ARP and used to discover the MAC address associated with the given internet layer address i.e. IPv6. It's also called as IPv6 ARP and replaces ARP in IPv6 to discover neighbors using ICMPv6 messages.

Remote Desktop Protocol (RDP)

A proprietary protocol designed by Microsoft enables a remote user to securely add a graphical interface to the desktop of another computer to exchange encrypted messages. The remote user can work on the remote system similar to the local system.

As a popular protocol, RDP is also implemented as client software on Linux systems and called rdesktop.

RDP Server & Client - Microsoft Remote Desktop Services, rdesktop

Apart from this several other software came into existence for remote desktop access and became popular including TeamViewer and VNC Connect.

Dynamic Host Configuration Protocol (DHCP)

The connectionless network management protocol used by DHCP server on UDP/IP to dynamically assign an IP address to any device or node on a network so they can communicate over IP with the other endpoints.

It avoids the overhead of manually assigning IP addresses to nodes connected over the computer networks. The DHCP server assigns IP to the connecting node within the same network.

Network Time Protocol (NTP)

A networking protocol used for clock synchronization between computer systems over the data network.

It enables the synchronization of computer clocks with extreme precision ensuring greater accuracy of local time with the Coordinated Universal Time (UTC).

Network News Transfer Protocol (NNTP)

An application layer protocol used to transport or manage notes or news posted on Usenet between computer servers and clients.

Point-to-Point Protocol (PPP)

Data link layer communication protocol is an encapsulation protocol used to establish a direct connection between two nodes for transferring datagram between the connected nodes.

Precision Time Protocol (PTP)

Similar to NTP, it's used to synchronize clocks through the computer network in the sub-microsecond range.

Picture Transfer Protocol (PTP)

A protocol developed by the International Imaging Industry Association, originally used for transferring images from digital cameras.

It's also supported by mobile devices to transfer the pictures.

Media Transfer Protocol (MTP)

It's an advance protocol as compared to PTP and used to transfer media files automatically to and from portable devices.

Ex: Android appears as a media device to the computer when connected in MTP mode.

SSH File Transfer Protocol (SFTP)

The standard network protocol used for transfer of files between client and server over SSH.

Domain Naming System (DNS)

DNS is also called as the phonebook of the internet. It's used to resolve the domain name and the corresponding IP address. The standard port used for DNS is 53.

DNS Servers - Bind, PowerDNS, OpenDNS, Google, Cloudflare, Verisign

DNS Clients - Built in with the operating system

Hypertext Transfer Protocol (HTTP)

The underlying application layer protocol used by the World Wide Web defines the communication messages rules between a Web Server and the Browser or HTTP client using the standard port 80.

HTTP Servers - Apache HTTP Server, Nginx, Jetty, IIS, Apache Tomcat, LiteSpeed Web Server

HTTP Clients - Apache HTTPClient, most of the programming languages

Hypertext Transfer Protocol Secure (HTTPS)

Secure HTTP over the standard port 443.

Simple Mail Transfer Protocol (SMTP)

The standard TCP/IP application layer protocol used for email transmission. The default port used for SMTP communication is 25.

SMTP Servers - Postfix, Sendmail, Haraka

SMTP Clients - Mozilla Thunderbird, Outlook

Simple Mail Transfer Protocol Secure(SMTP)

Secure SMTP over port 465.

Post Office Protocol 3 (POP3)

An application layer protocol used by email clients to retrieve emails from a mail server.

POP3 Servers - Dovecot

POP3 Clients - Mozilla Thunderbird, Outlook

Post Office Protocol 3 Secure (POP3S)

Secure POP3 over the standard port 995.

Internet Message Access Protocol (IMAP)

An application layer protocol used by email clients to retrieve emails from a mail server, maintaining a copy of the email on the mail server.

It ensures that the emails are synced across multiple devices maintaining a copy of the email on all the connected devices. The operation on one device will be reflected on other connected devices. It uses port 143 by default.

DNS Servers - Google, OpenDNS, Cloudflare, Verisign

DNS Clients - Built in with the operating system

Internet Message Access Protocol Secure (IMAPS)

Secure IMAP over the standard port 993.

Real Time Messaging Protocol (RTMP)

The proprietary protocol designed by Adobe was partially released to public domain used to stream audio, video, and data.

The default port used for RTMP communication is 1935.

RTMP Servers - Adobe Flash Media Server, Red5 Media Server, Wowza Streaming Engine

RTMP Clients - RTMP Bee, Librtmp Client for Android, Packages provided by servers

Real Time Streaming Protocol (RTSP)

Application level network control protocol used to transfer real-time audio, video, and data over the internet.

RTSP Servers - Darwin Streaming Server, GStreamer, VideoLAN, Wowza Streaming Engine

RTSP Clients - Packages provided by servers and programming languages

IP-in-IP

The tunneling protocol that encapsulates one IP packet in another IP packet.

Bitcoin Protocol

A peer-to-peer network operating on a cryptographic protocol used for bitcoin transactions and transfers on the internet.

Blockchain Protocol

An open, distributed ledger that can record transactions between two parties efficiently and in a verifiable and permanent way.