Network Protocols and its Types

Introduction

In the world of full technology, there are huge numbers of users who communicate with different devices in different languages. That includes the many ways in which they transfer data and the different software they use. Therefore, global communication would not be possible if there were no ‘standards’ set that could control how a user communicates with data and how our devices handle that data. Here we will be discussing these general rules. 

We are talking about the protocols which are rules that help to control how certain technologies will work in communication. In other words, it can be said that agreements are digital languages ​​used in the form of communication algorithms. There are different networks and network protocols, user usage while filtering.


Types of Network Protocols

There are three main types of  protocols, which includes network management agreements, network communication agreements and network security procedures. Now discuss each of them in depth:



Network Communication Protocols


Hypertext Transfer Protocol (HTTP)


HTTP stands for Hypertext Transfer Protocol. Hypertext Transfer Protocol is a legal set used to transfer files such as, audio, video, graphic, text and other multimedia files to the WWW (World Wide Web).

HTTP is an application-level protocol. Communication usually occurs with TCP or IP sockets, but any reliable transmission can be used. The standard (default) HTTP connection is 80, but another port can be used. The first version of HTTP was HTTP / 0.9, launched in 1991.The latest version of HTTP is HTTP / 3, released in September 2019. It is one of its HTTP / 2 processors. This latest version is already being used on the web with the help of UDP (User Datagram Protocol) instead of TCP (Transmission Control Protocol) for the basic transport protocol.

HTTP is used to make connections between a variety of strangers and clients. Supports network configuration combinations. Whenever a user opens a Web Browser, that means the user is using HTTP indirectly.



Three important things about HTTP


Offline: HTTP offline. When the HTTP client opens the browser, the browser starts the HTTP request. After requesting, the client disconnects from the server and waits for a response. When the answer is ready, the server restores the connection and returns the response to the client, after which the client disconnects. Therefore both the client and the server know each other only during the current request and response.


Media Independent: HTTP is independent of the media. HTTP can deliver any type of data, as long as two computers can read it.


Stateless: HTTP is static. The client and the server only know each other during the current application. When the connection is closed, and the two computers want to reconnect, they need to provide information to each other again, and the connection is treated as the first one.


The Basic Architecture of HTTP:

The diagram represents the basic structure of a web application and shows where HTTP stands.


HTTP is a request / response protocol based on client / server-based architecture. In this protocol, web browsers, search engines, etc. behaves as HTTP clients and the web server as Servlet behaves as a server.



Transmission Control Protocol (TCP)


TCP stands for Transmission Control Protocol. Transport layer protocol is responsible for facilitating the transfer of packets from source to location. It is a connectivity-focused protocol that means establishing pre-existing connections between computer and network devices. This protocol is used with the IP protocol, so when combined, it is called TCP / IP.


To retrieve data from the application layer is the main function of TCP. It then divides the data into several packets, assigns numbers to these packets, and finally transfers these packets to the location. TCP, on the other hand, will reassemble the packages and transfer them to the application layer. As we know TCP is a connection-focused protocol, so the connection will remain suspended until the connection can be terminated between sender and receiver.



Working of TCP


A connection is established using a three-way handshake in TCP. The client sends the part as well as its tracking number. The server, in return, sends its part with its tracking number and approval sequence, which is more than the client tracking number. When a client receives partial approval, it sends a notification to the server. In this way, a connection is established between the client and the server.



                      Fig. Working of the TCP protocol



User Datagram Protocol (UDP)


On a computer network, UDP stands for User Datagram Protocol. David P. Reed developed the UDP protocol in 1980. It is defined in RFC 768, and is part of the TCP / IP protocol, so it is a common online protocol. Computer applications to send messages in the form of datagrams from one machine to another via an Internet Protocol (IP) network are allowed by the UDP protocol. UDP is one of the communication channels compliant with the TCP protocol (transmission control protocol).


Like TCP, UDP provides a set of rules that govern how data should be exchanged online. UDP works by packing data into a pocket and providing its own pocket data. Then, this UDP packet is packaged in an IP package and shipped to its destination. Both the TCP and UDP protocols send data over the Internet protocol network, hence the name TCP / IP and UDP / IP.




                          Fig. Concept of Queuing in UDP Protocol


In the UDP protocol, numbers are used to separate different processes on the server and client. We know that UDP provides a process for processing communications. The client generates processes that require services while the server generates processes that provide services. Lines are available in both processes, i.e., two rows of each process. The first line is the incoming line that receives messages, and the second is the outgoing line that sends messages. The line works when the process is running. If the process is terminated then the line will also be destroyed.



Internet Relay Chat (IRC)


Internet Relay Chat (IRC) is an online application developed by Jakko Oikarinen in Finland. Chat is a quick and easy way to connect with others online.

There are a few topics called “channels” that you can discuss with many people around the world. After you join a channel, you can see what other people on this channel are typing on their keyboards. In that case, everyone on this channel can see whatever you type on your keyboard. You can also store individual conversations with someone. Channels live on different servers around the world. Some servers have only a few channels, while others have many of them.



Model used for IRC :

IRC follows the client server model. It means that not only client software but also the server are required to use it. Many IT clients (Information Technology) are available for different types of computers, so whether you have a PC, a Macintosh, or a UNIX operating system, you will be able to use IRC.


Chatting on IRC :

The IRC client connects or communicates with the IRC server online. You must log in to the server using the client as the first step. Second step is to select the channel you want to chat with. Whenever you type something on the keyboard, it will be sent to the server. Your server is now a component of the global IRC network. Your server sends your messages to other servers, and they, in turn, send your messages to the people who are part of your channel.


                                   Fig. Internet Relay Chat (IRC) network



Working on IRC :

If you want to chat first you have to connect to the internet and start your client software. After that, you need to log in to the IRC server which is available online. There are many IRC servers available worldwide. Those IRC servers can communicate when connected together in a network.



Network Management Protocols

Simple Network Management Protocol (SNMP)


An application-level protocol for monitoring and managing network devices on  local area networks (LANs) or wide area networks (WANs) is Simple Network Management Protocol (SNMP). The reason for SNMP is to give network gadgets like switches, servers, and printers with a typical language SNMP provides a common mechanism for network devices to pass management information in single-vendor or multi-vendor LAN or WAN environments. 

The motivation behind SNMP is to give network gadgets like switches, servers, and printers a typical language for sharing information with  network management systems ( NMS ). 


The User Datagram Protocol (UDP) is used to implement the SNMP protocol. UDP is a connectionless protocol that works like  Transmission Control Protocol (TCP), but assumes that it does not require error checking and recovery services. Instead, UDP continuously sends the datagram to the recipient, whether  or not it was received.



SNMP ARCHITECTURE


Client-server architecture of SNMP has the three components as following:


  1. an SNMP manager

  2. an SNMP agent

  3. a management information base (MIB).



Fig. SNMP Architecture



The SNMP manager acts as a client, the SNMP agent acts as a server, and the MIB acts as a database for the server. When the SNMP manager asks a question to the agent, the agent uses the MIB to provide the answer. 


SNMP is so popular that most network devices already come with an SNMP agent. However, the network administrator must initially change the default configuration settings for the network device to accept the SNMP agent to communicate with the network management system, to use  the protocol. 


The Internet Engineering Task Force (IETF) defined SNMP as part of the original Internet Protocol (IP) suite. There is the latest version of SNMPv3 and numerous versions of the SNMP protocol and includes mechanisms of security for authentication, encryption, and access control.


 How SNMP works 


Traffic streams are different from sources over the organization. SNMP speaks with the whole organization and with gadgets inside the organization. As mentioned earlier, SNMP is preconfigured on the device, and when the protocol is enabled, the device saves performance statistics. Each network server has several MIB files. The device MIB file is queried to get the monitoring data or output The way SNMP works revolves around that component, and each component helps manage resources. 


SNMP works by sending information units, otherwise called SNMP GET demands, to organize gadgets that react to SNMP. All of these communications are tracked and network monitoring tools use them to retrieve data from SNMP. 


Figure . How SNMP Works 



Components of SNMP


SNMP Management Network has four main components:


1. SNMP agent:  Agent software runs on monitored hardware or services and collects data about storage space, bandwidth usage, and other key network performance metrics. In response to a request from the SNMP manager, the agent sends the requested information back to the management system. The agent can also proactively notify the NMS when an error occurs. Most devices come with an SNMP agent pre-installed, which usually needs to be switched on and configured. 


2. SNMP management network node: These are the network devices on which the agent runs.


3. SNMP supervisor: The NMS is a product stage that capacities as a brought together control center to which specialists feed data. The NMS will effectively demand specialists to send refreshes at ordinary spans. How an organization administrator can manage that data relies vigorously upon how rich the NMS is. There are a few free SNMP supervisors accessible, however they are ordinarily restricted in their capacities or the quantity of hubs they can uphold. At the other end of the range, undertaking grade stages offer progressed highlights for more complicated organizations, for certain items supporting up to a huge number of organization hubs.


4. Management information database :This MIB database is a text file (.mib) It lists and describes all objects on a particular device that can be queried or controlled via SNMP. An object identifier (OID) is assigned to each MIB element.



Internet Control Message Protocol (ICMP)


ICMP (Internet Control Message Protocol) is a mistake announcing convention that network gadgets, for example, switches use to produce blunder messages to the source IP address when network issues forestall conveyance of IP bundles. ICMP makes and sends messages to the source IP address showing that an entryway to the web, like a switch, administration or host, can't be gone after parcel conveyance. Any IP network gadget has the capacity to send, get or process ICMP messages. ICMP isn't a vehicle convention that sends information between frameworks.


How ICMP works


ICMP is one of the principle conventions of the IP suite. In any case, ICMP isn't connected with any vehicle layer show, similar to Transmission Control Protocol (TCP) or User Datagram Protocol (UDP). It is a connectionless convention, which means a gadget doesn't have to open an association with the objective gadget prior to communicating something specific. This differs with TCP, for instance, where an association should be set up before a message can be sent, setting up that the two gadgets are prepared through a TCP handshake.


ICMP messages are communicated as datagrams and consist of an IP header that epitomizes the ICMP information. A datagram, similar to a parcel, is an independent free substance of information. Consider it a bundle conveying a piece of a greater message across the organization. ICMP parcels are IP bundles with ICMP in the IP information segment. ICMP messages likewise contain the whole IP header from the first message, so the end framework knows which parcel fizzled.


For example, that a mentioned administration isn't accessible.


ICMP is usually utilized by network instruments like ping or traceroute. For instance, consider the accompanying model that shows how ping can be utilized to test the reachability of a host:


                                Fig. How ping is used to reach host


Host A needs to test whether it can arrive at the Server over the organization. Host A will start the ping utility that will send ICMP Echo Request packets from Host A to Server. If the Server is reachable i.e in network, it will respond with ICMP Echo Reply packets. If Host A receives no response from Server, there might be a problem on the network or an error.


One another common ICMP message is the Destination unreachable message. Here is an example:


                                        Fig. Destination unreachable


Host A sends a packet to Host B. Because the R1’s interface is connected to Host B  which is down, the router will send an ICMP Destination unreachable message to Host A which informs that the destination host is unreachable.



Network Security Protocols

Secure Sockets Layer (SSL)


TLS encryption is used now-a-days. The Sockets Layer SSL is a security protocol which provides privacy, authentication, and integrity to Internet communications. Then gradually SSL evolved into the Transport Layer Security (TLS). 


What is the SSL Protocol?

SSL was developed by Netscape in 1995.It is an abbreviation for Secure Sockets Layer, is typically an encryption-based standard security protocol. The main  objective of SSL is to keep an internet connection secure by providing privacy, authentication, and data integrity . Also it protects sensitive data that is being sent between two systems, preventing criminals from accessing and modifying any data which is transferred, including  personal and private information.  SSL is the predecessor to the modern TLS encryption that is used today.

Any website that implements SSL/TLS has "HTTPS" here S stands for secure which is used in the protocol URL instead of "HTTP." SSL uses a security handshake to initiate a secured connection with the client and the server. During the handshake protocol, the client and server approve of the security keys to use for the session and the algorithms to be used for encryption. The client authenticates the server and then after the server can request the client certificate. After the handshake, SSL encrypts and decrypts all the data in both the HTTPS request and the server response, including:

  1. The URL that is mentioned by the customer

  2. The contents or data of any submitted form

  3. Access authorization information, for e.g. usernames and passwords

  4. All information sent between the customer and the server.



Working of  SSL/TLS 

  • With the objective to provide a high level of privacy, SSL encrypts data that is  transmitted across the web. This means that anyone who tries to    possess the data will only see a scrambled mix of characters that is nearly impossible to  decrypt.

  • SSL initiates an authentication process known as handshake which is between the two communicating devices that ensures that both devices are really authenticated.

  • SSL also digitally signs the data in to provide data integrity, 

that verifies the data is not tampered with before reaching its intended recipient.



Why is SSL/TLS important?

SSL was brought into picture to correct the problem of data privacy. By encrypting the data that is between a client server and a web server, SSL ensures the security of the data, if anyone tries to intercept the data they can only see a garbled mess of characters. 

SSL also prevents certain kinds of cyber attacks: It authenticates web servers, which is important because hackers/attackers will always try to build up fake websites to trick the users and steal the private data. It also prevents attackers from hampering the data in transit, like a tamper-proof seal on a medicine container.



Secure File Transfer Protocol (SFTP)


SFTP is an abbreviation for SSH File Transfer Protocol, or Secure File Transfer Protocol. It is a protocol packaged with SSH that works similarly but over a secure connection. SFTP provides a secure connection to transfer files over the network on both the local and remote system. It also provides authentication functionality of SSH.

In most of the cases, SFTP is preferable than FTP because of its security features and its functionalities that rely on an SSH connection.


SFTP offers every functionality provided by FTP, but it is more secure and reliable, and has easier configuration. It  protects against password sniffing and man-in-the-middle attacks. It protects the integrity of the data and authenticates both the server and the user as it has 

data encryption and cryptographic hash functions. Nevertheless, Secure File Transfer Protocol (SFTP) doesn’t require two-factor authentication, you have the choice to check for both user ID and password, as well as SSH keys, for a more secure connection. If imposters try to connect to the SFTP server, the SSH keys helps for such types of vulnerable attacks. Therefore, SSH key pairs must be ready to use beforehand.

Secure File Transfer Protocol (SFTP) gives you the option to perform an immense range of tasks for sensitive files, from removing files to resuming paused transfers. Unlike FTP, SFTP only needs a single port number (port 22) to maintain a server connection.



Hypertext Transfer Protocol Secure (HTTPS) 


In the 21st century the internet has become an integral and crucial part of mankind. The Internet serves many purposes and opportunities but with these virtual security concerns have been raised too. Cyber attacks, online theft and virtual privacy are some of the main security concerns over the internet. Many cyber security experts and web service providers are giving updated guidelines over the internet to secure users data. One of the most commonly given advice for secure web browsing is accessing websites with “HTTPS”. As the use of the popular protocol HTTP was increased the secure and safer version of http was introduced known as HTTPS. 

         HTTPS is known for its  safe and secure features. To improve the user’s experience in terms of virtual privacy and security HTTPS is most popular protocol used by web developers. Https use TLS(Transport layer security).TLS is the union of symmetric and asymmetric cryptography that provides security for the all the ends.

         Transport Layer Security(TLS) protocol secures data that is being sent through HTTPS and provides three key layers of protection :


1)Encryption: Encrypting the exchanged data to protect it from hackers, information stealers or sites that store your data. Encryption means, When the user is browsing a website, nobody can "listen" or read the conversations, track user's activities on different sites or steal their personal information.


2)Data integrity: Data integrity helps to detect data that gets modified or corrupted  during transfer.


3)Authentication : It makes sure that users are connecting to the intended website. It provides man-in-the-middle attacks and builds user trust, establishing other business trust.



Conclusion

All the protocols discussed above serve some different purposes to handle networks(network management, network communication, network security). TCP and IP communication are popular and widely used protocols giving advantage for startups and small businesses. HTTP is beneficial for speedy and minimal loss file transfer. When HTTP is used with FTP or using FTP alone may benefit in terms of speed and efficiency. In terms of security, HTTPS is now a popular and most implemented protocol to increase security of the system because of it’s encryption and integrity features. To manage the network SNMP works more effectively when working in collaboration with communication protocol UDP.


Comments

Post a Comment