Peer-to-peer systems or applications are distributed systems that have no centralized control or hierarchy. P2P systems have presented numerous advantages including but not limited to being cost-effective, providing redundant storage and their robustness to faults or intentional attacks.
As discussed in the paper [1], a fundamental problem in P2P systems is the process of locating the node that stores a particular data item. This was called the lookup problem, or simply stated as "how to find a particular data item that is stored at some dynamic set of nodes in the P2P systems". Various algorithms and approaches have already been proposed on how to solve this lookup problem such as through the use of structured lookups (i.e., maintaining a central database, use of hierarchy), symmetric lookup algorithms (i.e, broadcast approach, Freenet), or the combination of both. The paper also mentioned different algorithms that can scale well with large number of nodes; locate keys in low latency; handle node arrival and departures; ease individual maintenance of node's routing tables; and load balance of key distribution among nodes. Examples of these algorithms are the Use of Distributed Hash Table, routing in One Dimension and Routing in Multiple Dimension. Apparently, these algorithms have their own set of strengths and weaknesses.
The emegence of P2P systems in the growing internet technology has presented a lot of advantages (compared to disadvantages) to internet users worlwide. They have simplified file sharing and storage without having to rely on a centralized source of data. However, P2P systems need to also adapt to the growing number of internet users (increased in number of computers and users) and should be able to employ an efficient lookup algorithm that can scale well. In addition, P2P systems should also address legal battles on copyright infringements and abuse .
Reference:
[1] Hari Balakrishnan, M. Frans Kaashoek, David Karger, Robert Morris, and Ion Stoica. Looking Up Data in P2P Systems., Vol. 46, No. 2. February 2003.
Thursday, September 3, 2009
Review: "Chord: A Scalable Peer-to-peer Lookup Service for Internet Applications"
In a peer-to-peer system, it is trivial to find the location of the source computer or node that carries/stores a particular data item. Discussed in the paper [1], is a distributed lookup protocol called Chord, which was described to provide and support a single operation. This operation involves the mapping of a key onto a node when given a key. As mentioned by the authors of the paper, the Chord protocol uses consistent-hashing technique (i.e., SHA-1) in assigning keys to Chord nodes, which in effect balances the load of the nodes since all of them receive the same number of keys.
Based on their conducted experiments and simulations, Chord was said to be adaptable to system changes. They also confirmed that Chord scales well with the number of nodes; recovers from large numbers of simultaneous node joins and failures; and returns most looups correctly.
Also, based on the discussed features of the Chord protocol, it appears that Chord does not only have a very well-thought system design but is also a very attractive protocol that can be implemented in a large-scale distributed peer-to-peer systems or applications.
Further, Chord seems to be suited in other applications such as in the field of mobile adhoc networks. In this regard, future researchers may extend Chord's functionalities in the implementation of MANET's.
Reference:
[1] Ion Stoica, Robert Morris, David Karger. M. Frans Kaashoek, and Hari Balakrishnan. Chord: A Scalable Peer-to-Peer Lookup Service for Internet Applications. AACM SIGCOMM '01. August 2001.
Based on their conducted experiments and simulations, Chord was said to be adaptable to system changes. They also confirmed that Chord scales well with the number of nodes; recovers from large numbers of simultaneous node joins and failures; and returns most looups correctly.
Also, based on the discussed features of the Chord protocol, it appears that Chord does not only have a very well-thought system design but is also a very attractive protocol that can be implemented in a large-scale distributed peer-to-peer systems or applications.
Further, Chord seems to be suited in other applications such as in the field of mobile adhoc networks. In this regard, future researchers may extend Chord's functionalities in the implementation of MANET's.
Reference:
[1] Ion Stoica, Robert Morris, David Karger. M. Frans Kaashoek, and Hari Balakrishnan. Chord: A Scalable Peer-to-Peer Lookup Service for Internet Applications. AACM SIGCOMM '01. August 2001.
Subscribe to:
Posts (Atom)