Saturday, August 1, 2026

Peer to peer communication

  VIDYAVANI       Saturday, August 1, 2026
Peer to peer communication

The web page access communication based on HTTP protocol or mail access based on SMTP protocol are examples of the client-server communication. Here we have a client at one end and server at the other end. Both parties have a dedicated role to play. The client is requesting service and server is responding back with that service. The server is ready to accept (and sometimes reject) the incoming requests from clients. When the client tries to connect, the server which is ready to receive that request is running at a specific location (the port number), receives that request and respond. The server never initiates a request on its own. It is the client who always initiates communication. Both client and servers are computing devices may or may not be part of the same network.

It is possible to have a case where such roles are not strictly defined. All the connected parties can initiate the request and respond to anybody's request. The communication, in this case, has no basic structure and there are no clear-cut roles of client and server. A communicating device can act as a client at one point in time and server at another point in time, or both at the same point in time. It is possible that one node is downloading a song from another node, after asking for it, and thus acting as a client, also delivering another song to some other node, accepting that node's request, as a server.

This kind of communication, which assumes both parties as equal, is called peer-to-peer, or P2P for short. The idea of such peer-to-peer communication has become so popular that the P2P traffic over the web has surpassed the client-server communication traffic already. The very Internet and TCP/IP protocol stack provide us with client-server communication when we use protocols like HTTP but provides P2P communication when we use Torrent like protocols. The discussion that we had about network communication does not change a bit when a P2P communication takes place. The request and responses from peers travel all the layers the same as the case of the client-server model.

P2P networks came into existence from the need for a normal user to share his content. For example, videos and photos, etc. P2P systems, unfortunately, used for many illegal activities like sharing licensed songs, and criticized a lot for it, has many good applications as well. The critical difference between a client-server system and a P2P system is that when the server in client-server systems are designed to run 24* 7 and are closely monitored and enhanced to respond to client's requests, P2P systems are built over normal user nodes and have no central point of control and no guaranteed service.

This characteristic of P2P networks makes them very good at scaling. That means, increasing the number of users does not increase demands for bandwidth or processing from servers. It is not easy for the system to have optimum performance when users have different upload and download speeds. One very serious problem with the P2P network is to have intermittent connections from all users. Unlike dedicated web servers which remain online all the times and also ready to have many concurrent connections, normal users may join and may leave the network anytime and cannot handle more than a few connections.

One more point sometimes is made in favor of P2P networks is that the information shared has more user control and thus user privacy issues are better handled. Many incidents proved that users who are oblivious of the simple privacy related disciplinary measures can compromise any system and vulnerable to any attack based on privacy compromise.

Figure 3.4 and 3.5 summarizes our discussion about client-server and peer to peer communication. Figure 3.4 clearly indicates the roles of the communicating nodes being defined while 3.5 shows nodes assuming both roles as per their need as and when they want.

Let us reiterate that the communication model does not change the way it functions with the P2P model. It works the same as it would otherwise dealing with the client-server model.

Standardization

Who decides that TCP should have this segmented structure and how the frames are generated, how are their content designed, and when network cards actually convert bits into signals, how they choose a typical method when possibly an infinite number of ways to do it?

The answer lies in providing standardization. There are quite a few reasons for providing standardizations.

First, there are multiple vendors of any networking device and all of them have an idea about how the things to be carried out. If all of them prepare devices using their own idea, it will result in chaos. When a packet goes to a router of vendor 1, if the vendor1 processes it differently than vendor-2, no system can work.

Second, when a manufacturer produces a device, for example, a wireless card, he must be sure about a machine which installs this card can talk to an access point manufactured by another company. This is observed in all other cases, for example, an electric socket is designed so that a plug manufactured by any other company can fit into it. Not only mechanical standards are met (so they perfectly fit), but electrical standards are also met (so current passing from the socket is properly received by the plug), and so does the other standards (for example, one of the wires in household plug will be a neutral wire and one of them is also ground wire and the last one carries the current).

Similarly, a wireless card must fit exactly into the slot provided on the laptop. It also should have the number and sequence of pins expected by the laptop. Thus people who manufacture devices can freely design their devices without worrying about interoperability issues.

There are three major bodies who act in standardizing the networking equipment and protocols. First is IEEE (Institute of Electrical and Electronics Engineers), which address lowermost two layers and thus has some say in building Ethernet and wireless cards. Another player is ISO or International Standards Organization, one part of which is standardized by NIST (National Institute of Science and Technology) which helps to standardize many internet protocols for security like IPsec, SSL, etc. IETF or Internet Engineering Task Force help standardizes internet protocols. The SMTP, FTP, TCP, IP are designed and managed by IETF. The International Telecommunication Union or ITU has a branch ITU-T (telecommunication standardizing body) helps to standardize many communicating protocols that we will encounter, especially those which are used in LANs.

Summary

In this module, we have looked at the complete communication process including connection-oriented and connectionless communication. 

How an entire communication process involves each of the layers and what exactly is the role of each layer is exemplified by two examples involving HTTP and SMTP. We have clearly seen the job of all layers, how the process is managed by all layers collectively. P2P communication is where the role of the client and server is not predefined. There are multiple players in standardizing the TCP/IP protocols.

logoblog

Thanks for reading Peer to peer communication

Previous
« Prev Post

No comments:

Post a Comment