546 IEICE TRANS. INF. & SYST., VOL.E89–D, NO.2 FEBRUARY 2006 PAPER Special Section on Parallel/Distributed Computing and Networking PChord: Improvement on Chord to Achieve Better Routing Eciency by Exploiting Proximity Feng HONG a) , Minglu LI , Minyou WU , and Jiadi YU , Nonmembers SUMMARY Routing eciency is the critical issue when constructing peer-to-peer overlay. However, Chord has often been criticized on its care- less of routing locality. A routing eciency enhancement protocol on top of Chord is illustrated in this paper, which is called PChord. PChord aims to achieve better routing eciency than Chord by exploiting proximity of the underlying network topology. The simulation shows that PChord has achieved lower RDP per message routing. key words: peer-to-peer, routing, Chord, proximity routing, RDP 1. Introduction Several overlays (Tapestry[1], Pastry [2], CAN [3] and Chord[4]) provide this kind of location-independent rout- ing substrate for large scale peer-to-peer applications. These overlays can be viewed as providing a scalable, fault- tolerant distributed hash table, in which any item can be located within a bounded number of routing hops, using a small per-node routing table. Routing eciency is a key performance metric for these overlay infrastructures as well as other distributed ob- ject location and routing systems. All overlays mentioned above have achieved a number of polylogarithmic overlay hops per message routing. However, even if the object is near the source of a query, it is often the case that one or more hops through the overlay will be needed for the object to be found. Since a node with complete routing knowledge could reach this data with a simple direct hop through IP, extra overlay hops may cause a severe relative blowup in the location time of the query, compared to the minimum possible. Therefore, routing eciency should be measured quantitatively by Relative Delay Penalty (RDP) of the query, also known as stretch, when the latency of message deliver- ing in the underlying network is concerned. In this paper, we define RDP as the ratio of the distance a query travels through the overlay network to an object and the minimal distance to that object (i.e. through IP). Chord shows poor performance under RDP currently, for it does not consider network proximity at all [5]. As a result, its protocol for maintaining the overlay network is very light-weight, but messages may travel arbitrarily long distances on the Inter- net for each routing hop. Meanwhile data and services are mobile and replicated Manuscript received March 31, 2005. Manuscript revised August 17, 2005. The authors are with the Department of Computer Science & Engineering, Shanghai Jiao Tong University, 200240 China. a) E-mail: hongfeng@cs.sjtu.edu.cn DOI: 10.1093/ietisy/e89–d.2.546 widely for availability, durability, and locality in today’s chaotic network. Therefore, object locating problem should be considered as finding the nearest replica for the object query. We introduce the object pointer indirection layer of Tapestry into Chord overlay (i.e. the objects stored in the overlay are pointers to the location of the actual data) and look for ways to make object location in such an overlay e- cient. To address the routing problem under such conditions, this paper presents a routing scheme combining proximity routing with basic routing algorithm of Chord, which aims to achieve low RDP on Chord overlay and keeps the light- weight merit of Chord in its maintenance cost. We name this routing eciency enhancement overlay as PChord. The rest of this paper is organized as follows. Related work is discussed in Sect. 2. The core design of PChord is illustrated in Sect. 3. The simulation is given out in Sect. 4, which shows the result of routing eciency of PChord. Conclusion is discussed in Sect. 5. 2. Related Work Many eorts have been made to improve routing eciency in decentralized structured peer-to-peer overlays. In general, the most widely used algorithms in structured peer-to-peer overlays for routing locality is topology-based node identi- fier assignment and proximity neighbor selection. Topology-based node identifier assignment attempts to map the overlay’s logical key space onto the physical net- work such that neighboring nodes in the key space are close in the physical network. The technique has been success- fully used in a version of CAN, and has achieved RDP of O(1) [6], [7]. However, this approach has several drawbacks. First, it destroys the uniform population of the key space, causing load balancing problems in the overlay. Second, the approach does not work well in overlays that use the one-dimensional key space, because the mapping is overlay constrained. Proximity neighbor selection uses proximity criteria in building node’s routing table, but not in choosing the next hop of routing. The entries of routing table are chosen as the topologically nearest among all nodes with node’s identifier in the desired portion of the key space [5]. The success of this technique depends on the degree of freedom an overlay protocol has in choosing routing table entries without aect- ing the expected number of routing hops. In prefix-based protocols like Tapestry[1] and Pastry [2], the upper levels of the routing table allow great freedom in this choice, with Copyright c 2006 The Institute of Electronics, Information and Communication Engineers