Members

Research

Sponsors

Publications

Tools

Contact Us

HOME

Peer-to-Peer Networks

Sponsor: Jerry R. Junkins Endowed Chair Professorship

Research | Peer-to-Peer Networks

Peer-to-peer (P2P) networks are flexible distributed systems that allow nodes (called peers) to act as both clients and servers to access and provide services to each other.
P2P is a powerful emerging networking paradigm as it permits sharing of virtually unlimited data and computational resources in a completely distributed, fault-tolerant, scalable and flexible manner.

At present, P2P networks, such as Gnutella, Freenet, Kaaza etc., are used primarily for "data sharing". Although, it is widely acknowledged that other resources, like compute power can also be shared using a P2P paradigm, research in this regard is still underway. SETI@Home comes close to sharing spare computing power (in the form of idle CPU cycles) of computers in a network. However, the model employed is still quite centralized. This is because SETI@home allows only a single server to make requests and use idle processing power of other computers in the network. The same capability is not available to all the participants of the SETI@Home network.

Also, almost all the current research in P2P systems is based on a cooperative network model. It is generally assumed that although there can be some rogue (malicious) nodes in a system, most of the nodes are trustworthy and follow the protocols as implemented by the network designer. For example, almost all the proposed P2P lookup protocols assume that peers sincerely follow the routing protocol and forward messages for other peers in the network. Moreover, resources, such as data and bandwidth, are assumed to be
freely available. This assumption is inherent in the design of most of the current P2P networks, where one obtain services from others without having to pay any price to the service provider.

Such altruistic behavior (i.e. cooperative routing and free data uploads) of the service providers is not correct to assume as P2P networks gain prominence and are deployed over large public networks, such as Internet. It has been pointed out that free-riding is one of the most significant problems being faced by today's P2P networks. It has been found in that 70\% of the Gnutella peers do not share any content files and 90\% do not answer to any queries from other peers. Uncontrolled or too much free riding leads to the degradation of system performance and adds vulnerability to the system. Future P2P networks are likely to have no centralized administrative entity (owing to regulatory or scalability concerns) that control the nodes in the system. Therefore, it is important for network designers to take into account the independence and selfishness of P2P users, in order to make the future systems reliable and robust.

In order to address the above mentioned issues, our research efforts are divided into two main areas. First, harnessing idle processing power (i.e., trading raw CPU power) in P2P networks taking into account the selfishness of the nodes. In this context we developed CompuP2P, which is architecture for distributed computation that facilitates trading of computing power using an incentive driven economic model. Second, exploring how other resources like data and bandwidth (used for routing of lookup messages) can be priced in P2P networks. We are designing a unified incentive schemes that motivate intermediate nodes to route lookup requests and server nodes to provide data objects to the requesting users. Since, both looking up for data and obtaining it incur cost, the proposed scheme is an effective solution to deal with free-riding problem prevalent in P2P networks.

Top