Advertisment

P2P Formations

author-image
PCQ Bureau
New Update

P2P networks like FastTrack (Kazaa), Gnutella and eDonkey account for a considerable percentage of the global Internet traffic. Since there are no central servers with fat pipes, P2P networks must organize themselves in such a manner that their nodes are able to connect, search and download data as fast and efficiently as possible. Unfortunately, this is easier said than done. Nobody has yet found the magic formula to make the P2P model as efficient as the client-server model. However, there are a number of different ideas around and quite a few of these seem to work very well. This article looks at some of these models.

Advertisment

Basic distributed  systems topologies



The distinguishing factor between P2P and traditional client-server networks is the flow of data. If most data is flowing from one node to others, it makes sense to call that node a server. But, instead if all nodes on the network participate more or less uniformly, it can be called P2P. Hence, data flow is used to categorize networks. There are several topologies possible for a P2P network, like ring, hierarchical and decentralized. Some new networks also exploit the capabilities of several different topologies to form hybrid networks that can work even better.

Ring



If a single server can’t handle the load of all its clients, a common solution used is to gather a bunch of machines and make them act as a distributed server. These nodes communicate between themselves, thus serving the same function as well as providing load-sharing and failover capabilities. It is generally assumed that such a network is owned by a single corporation, and serves computers that are nearby in the network as well. So, a corporate P2P network could well be envisaged this way.

Hierarchical



Hierarchical systems are different in that all computers keep connect ing to their parent nodes till one reaches the very root server. Perhaps the most common example of this is DNS (Domain Name Service) in which authority flows down from the root server.

Advertisment

Decentralized or scattered



Most new P2P apps use this kind of structure. Here one can imagine a cluster of computers, interconnected by random connections. All peers play equal roles in such a network and the most popular example of is Gnutella. Other applications are Freenet and the recently released

Overnet.

Hybrid topologies



While a number of combinations are possible with these different network topologies, the centralized + decentralized approach is considered a favourite in the P2P arena. Here, most peers connect to ‘supernodes’ and talk only to them, except when downloading data. These supernodes (characterized by powerful machines on fast connections) communicate amongst themselves in a Gnutella like fashion. 

Future directions



While it is very difficult to predict the exact topologies and architecture that future P2P networks will choose, what one can guess are the features that would be an essential part of them. First and foremost, for any P2P application to become truly popular, it must be very scalable. It has been proves mathematically that networks like Gnutella can be brought to their knees if there are a very large number of peers online. FastTrack has made good progress on this front, but much remains to be

done.

Advertisment

The next problem is that of a single point of failure. This is where Gnutella scores over FastTrack. By requiring all clients to use a central server for authentication and logging on, Kazaa has introduced a weakness in its network. There is always the danger of such servers going offline, but perhaps the greatest threat is from overzealous law enforcement agencies in the US etc. 

Then there are some other issues. With so many individual, non-compatible networks, wouldn’t it be nice to have an app that could integrate all of them? Then of course, it would have to be able to support multihost downloading and resumption of broken downloads like Kazaa. Anonymity is another feature that many users would look for. 

Anuj Jain

Advertisment