Multi-level Hashing for Peer-to-Peer System in Wireless Ad Hoc Environment

Similar documents
A Chord-Based Novel Mobile Peer-to-Peer File Sharing Protocol

Building a low-latency, proximity-aware DHT-based P2P network

A Framework for Peer-To-Peer Lookup Services based on k-ary search

Distributed Hash Table

Scalability In Peer-to-Peer Systems. Presented by Stavros Nikolaou

Early Measurements of a Cluster-based Architecture for P2P Systems

Exploiting the Synergy between Peer-to-Peer and Mobile Ad Hoc Networks

A Directed-multicast Routing Approach with Path Replication in Content Addressable Network

Should we build Gnutella on a structured overlay? We believe

Distributed Lookup in Structured Peer-to-Peer Ad-Hoc Networks

LessLog: A Logless File Replication Algorithm for Peer-to-Peer Distributed Systems

Architectures for Distributed Systems

A Hybrid Peer-to-Peer Architecture for Global Geospatial Web Service Discovery

A Super-Peer Based Lookup in Structured Peer-to-Peer Systems

Athens University of Economics and Business. Dept. of Informatics

Peer Clustering and Firework Query Model

Distriubted Hash Tables and Scalable Content Adressable Network (CAN)

Effect of Links on DHT Routing Algorithms 1

A Distributed Codec Placement Algorithm for Network-Embedded FEC

Efficient Peer-to-Peer Information Sharing over Mobile Ad Hoc Networks

Mill: Scalable Area Management for P2P Network based on Geographical Location

Subway : Peer-To-Peer Clustering of Clients for Web Proxy

Data-Centric Query in Sensor Networks

Design of a New Hierarchical Structured Peer-to-Peer Network Based On Chinese Remainder Theorem

Telematics Chapter 9: Peer-to-Peer Networks

Location-aware In-Network Monitoring in Wireless Sensor Networks

Update Propagation Through Replica Chain in Decentralized and Unstructured P2P Systems

DYNAMIC TREE-LIKE STRUCTURES IN P2P-NETWORKS

Comparing Chord, CAN, and Pastry Overlay Networks for Resistance to DoS Attacks

A Structured Overlay for Non-uniform Node Identifier Distribution Based on Flexible Routing Tables

: Scalable Lookup

March 10, Distributed Hash-based Lookup. for Peer-to-Peer Systems. Sandeep Shelke Shrirang Shirodkar MTech I CSE

An Analysis of the Overhead and Energy Consumption in Flooding, Random Walk and Gossip based Resource Discovery Protocols in MP2P Networks

IN recent years, the amount of traffic has rapidly increased

CIS 700/005 Networking Meets Databases

A Location-based Directional Route Discovery (LDRD) Protocol in Mobile Ad-hoc Networks

Peer-to-Peer Systems. Chapter General Characteristics

Diminished Chord: A Protocol for Heterogeneous Subgroup Formation in Peer-to-Peer Networks

Introduction to Peer-to-Peer Systems

Improved Dominating Set Indices for Mobile Peer-to-Peer Networks

Adaptive Neighbor Selection for Service Discovery in Mobile Ad Hoc Networks*

Graph Algorithms. Many problems in networks can be modeled as graph problems.

A Survey of Peer-to-Peer Content Distribution Technologies

Peer-to-Peer Systems. Network Science: Introduction. P2P History: P2P History: 1999 today

Lecture 6: Overlay Networks. CS 598: Advanced Internetworking Matthew Caesar February 15, 2011

Application Layer Multicast For Efficient Peer-to-Peer Applications

Decentralized Object Location In Dynamic Peer-to-Peer Distributed Systems

IMPLEMENTING P2P RESOURCE SHARING APPLICATIONS IN WIRELESS MESH NETWORKS

Dynamic Load Sharing in Peer-to-Peer Systems: When some Peers are more Equal than Others

Graph Algorithms. Many problems in networks can be modeled as graph problems.

CS555: Distributed Systems [Fall 2017] Dept. Of Computer Science, Colorado State University

L3S Research Center, University of Hannover

Scalable and Self-configurable Eduroam by using Distributed Hash Table

DISTRIBUTED COMPUTER SYSTEMS ARCHITECTURES

Problems in Reputation based Methods in P2P Networks

Streaming Live Media over a Peer-to-Peer Network

A DHT-Based Grid Resource Indexing and Discovery Scheme

L3S Research Center, University of Hannover

Query Processing Over Peer-To-Peer Data Sharing Systems

P2P Based Architecture for Global Home Agent Dynamic Discovery in IP Mobility

Integrated Resource Adaptive On Demand Geographic Routing (IRA-ODGR) for MANET

Relaxing Routing Table to Alleviate Dynamism in P2P Systems

Simulations of Chord and Freenet Peer-to-Peer Networking Protocols Mid-Term Report

SplitQuest: Controlled and Exhaustive Search in Peer-to-Peer Networks

Cycloid: A Constant-Degree and Lookup-Efficient P2P Overlay Network

Geographic Adaptive Fidelity and Geographic Energy Aware Routing in Ad Hoc Routing

Evolution of Peer-to-peer algorithms: Past, present and future.

Proximity Based Peer-to-Peer Overlay Networks (P3ON) with Load Distribution

A New Packet Forwarding Algorithm in Geographical Location Based Mobile Ad Hoc Routing Protocol

Replacing Failed Sensor Nodes by Mobile Robots

Chord-based Key Establishment Schemes for Sensor Networks

Structured Peer-to-Peer Networks

Evaluation and Comparison of Mvring and Tree Based Application Layer Multicast on Structured Peer-To-Peer Overlays

Load Balancing in Structured P2P Systems

A Scalable Content- Addressable Network

Security Considerations for Peer-to-Peer Distributed Hash Tables

Assignment 5. Georgia Koloniari

AODV-PA: AODV with Path Accumulation

INFORMATION MANAGEMENT IN MOBILE AD HOC NETWORKS

Understanding Chord Performance

Time-related replication for p2p storage system

DYNAMIC DATA ROUTING IN MANET USING POSITION BASED OPPORTUNISTIC ROUTING PROTOCOL

CACHING IN WIRELESS SENSOR NETWORKS BASED ON GRIDS

DISTRIBUTED HASH TABLE PROTOCOL DETECTION IN WIRELESS SENSOR NETWORKS

Goals. EECS 122: Introduction to Computer Networks Overlay Networks and P2P Networks. Solution. Overlay Networks: Motivations.

A Ring Infrastructure for Neighbor-Centric Peer-to-Peer Applications

APSALAR: Ad hoc Protocol for Service-Aligned Location Aware Routing

Content Overlays. Nick Feamster CS 7260 March 12, 2007

CS 347 Parallel and Distributed Data Processing

EARM: An Efficient and Adaptive File Replication with Consistency Maintenance in P2P Systems.

PEER-TO-PEER (P2P) systems are now one of the most

Back-Up Chord: Chord Ring Recovery Protocol for P2P File Sharing over MANETs

Analysis of GPS and Zone Based Vehicular Routing on Urban City Roads

Priority Based Routing for Mobile Peer-To-Peer Communications

Virtual Multi-homing: On the Feasibility of Combining Overlay Routing with BGP Routing

Debunking some myths about structured and unstructured overlays

An Cross Layer Collaborating Cache Scheme to Improve Performance of HTTP Clients in MANETs

An efficient implementation of the greedy forwarding strategy

Cycloid: A Constant-Degree and Lookup-Efficient P2P Overlay Network

Small-World Overlay P2P Networks: Construction and Handling Dynamic Flash Crowd

Transcription:

Multi-level Hashing for Peer-to-Peer System in Wireless Ad Hoc Environment Dewan Tanvir Ahmed, Shervin Shirmohammadi Distributed & Collaborative Virtual Environments Research Laboratory School of Information Technology and Engineering University of Ottawa, Ottawa, Ontario, Canada {dahmed, shervin}@discover.uottawa.ca Abstract Peer-to-peer is a popular distributed system. With the advancement in mobile technologies, mobile p2p has revealed its attraction. But, the resource constraints such as bandwidth, computing power, energy, etc. and node s mobility give hard challenges to the researchers. Smart content distribution and efficient content discovery are the heart of the p2p protocol that controls the performance of the system. Routing is associated with every task that is expensive in ad hoc environment. In this paper, we address these issues and propose a peer-to-peer system for wireless ad-hoc networks using multi-level hashing to reduce routing overhead. The necessity of multilevel hashing is justified through extensive simulation. Keywords Peer-to-Peer system, Ad hoc network, Performance. I. INTRODUCTION Peer-to-Peer is a distributed network architecture where nodes collaborate with others by sharing their recourses such as processing power, bandwidth, storage capacity, etc. Usually nodes in peer-to-peer system are loosely coupled with each other and play an equal role (client/server) in the system. Due to the autonomous nature of the nodes, it is difficult to construct a consistent peer-to-peer system. In a pure peer-to-peer network, there is no notion of clients or servers, but only equal peers that simultaneously function as both "clients" and "servers" to the other peers on the network [1]. This architecture differs from the client-server architecture where communication is usually to and from a server. FTP is an example of non peer-to-peer file transfer system where the client and server programs are quite distinct, and the clients initiate the download/upload and the servers react to and satisfy these requests. In a peer-to-peer system the removal of any node from the network does significantly affect the offered service from the system while in client/server system it does not make in any sense without a server. Peer-to-Peer system has many significant applications ranging from file sharing to grid computing. Mobile peer-to-peer (MP2P) system faces more constraints as compared to wired peer-to-peer system. Some problems in this network are the scarcity of bandwidth, short lifetime of the nodes due to power constraint, dynamic topology caused by the mobility of nodes. These constraints give hard challenges to the researchers in the various aspects of the peer-to-peer system in ad hoc environments such as routing, content discovering, data retrieval and caching etc. Here we apply chord [2] directly on top of wireless ad hoc peer-to-peer system. The short comings of this deployment are figured out and a distributed mobile peer-to-peer architecture is proposed to handle those problems. Smart content discovery is the heart of peer-to-peer system. In ad hoc network routing is expensive, so it requires more effective content discovery process. In this paper, we use two-level distributed hashing scheme. First level hash maps a content request to a region that greatly reduces routing overhead. Second level hash discovers content location after redirecting the request to that region. The effectiveness of two-level hashing in wireless ad hoc peer-to-peer system is tested through simulation. The rest of the paper is organized as follows. Mobile peer-to-peer architecture and related work are discussed in Section II. We present multi-level hashbased wireless ad hoc peer-to-peer architecture in Section III. Section IV covers simulation results. Finally in Section V, we draw the conclusion. In this paper, mobile p2p and p2p in wireless ad hoc networks are used interchangeably. II. RELATED WORK Peer-to-Peer can be benefited from some inherent features such as scalability, dynamic adaptation, permanency, fault tolerance, anonymity and self configuration, etc. But the effectiveness of these features depends on how well system assigns peer names and locates the peers and data items. The organization of peer-to-peer topology and efficient data placement on peers require some strategy. Hashing is the most popular and effective method [3][4][5]. It assigns unique key to the peers and data items in the same address space to control the topology and data retrieval. This technique protects obscurity of nodes and data items. These architectures are called hash-based structured peer-to-peer (HS-P2P) system. The general strategy is to store a data item with a hash value k at a node whose hash value is the closest to k. So when there is a request, it is forwarded to the intermediate peers whose hash values are closer and closer to k. In this architecture each node maintains necessary state information for routing to locate the targeted node in the system. A state-pair has a form like <hash key, network address>. A scalable and robust peer-to-peer system depends upon sophisticated state management that must be distributed. Bristle [6] recognizes participating nodes either as mobile nodes or stationary nodes that follows Tornado peer-to-peer architecture [3]. Stationary node provides location information of mobile nodes to an interested node. Bristle 2 requires O(log N) hops to send a message from the source

to the destination, where N is the number of nodes in the system. It is a HS-P2P system that allows nodes to change their attachment without re-assigning new states. With the help of mobile IP, old state can be retained. Limited power, low bandwidth and limited computing capability (Handheld devices) are the major concerns for wireless ad hoc peer-topeer system. Thus bad design may initiate performance penalty. Moreover, the characteristics of mobile devices are not in favor of client-server architecture. M-CAN [8], a lookup protocol, is an extension of content addressable network [7]. Instead of file transferring and caching, M-CAN applies registering and grouping policy to avoid bandwidth reserving. Centralized Directory Protocol (CDP) maintains a central server. The peer who wants to share a file publishes it to the central server. If a peer would like to use a shared content, it sends a request to the central server. Upon receiving the request, server checks it directory and returns the best result back to the peer. After that, file accessing can be handled between the two peers directly. The central server would be the point of bottleneck with an increased number of peers that is hard to scale. In flooded request protocol, every peer has the information of its neighbors. Publication of information is absent here. Thus peer s request is flooded in the system until it is reached to it maximum hop value or it is answered. It consumes too much bandwidth and energy, and thus not suitable in ad hoc environment. In document routing, protocol assigns unique ID to each peer chosen from a random pool. It assumes that peer has the knowledge of neighbor s contents. Here IDs are given to the shared files based on the document itself. It is then stored to a peer that has an ID closest to the document ID. The node that follows the path to the targeted node also keeps a copy. This algorithm is not suitable for wireless ad hoc peer-to-peer system due to its storage and bandwidth limitations. Moreover it is impractical to store multiple copies of a file when memory is a prime concern. caching scheme in mobile peer-to-peer environment. It caches data among a set of peers based on some criteria such as popularity of the content, size of the content and distance to the owner of the item [12]. PReCinCt uses a composite caching policy. But it does not tell anything about the mobility of the nodes. III. MULTI-LEVEL HASHING IN WIRELESS AD HOC PEER-TO-PEER SYSTEMS The effectiveness of multi-level hashing in wireless ad hoc environment is elucidated with the help of two-level hashing. The entire system consists of a set of home regions where peers in close proximity form home region. Each home region has a representative that plays a supporting to make the system operational. These representatives are not fixed and altered over the time considering the ad hoc issues of the system. Figure 1 depicts a logical scenario of such a system. Home region is identified by the Home-Region-ID. The representative functions as a rendezvous point for incoming requests and also provides useful information to its local peers. In the following subsections, we describe the working principles of wireless ad hoc peer-to-peer system in detail. A. Wireless Ad Hoc Peer-to-Peer System Node Join In the system, a peer is identified by unique identification number. In ad hoc networks, nodes are mobile and can roam from one region to another region. So, in order to reduce routing overhead, we use a pair, <Home-Region-ID, Node-ID>, to identify a node. Hash function generates Node- ID; mathematically Node-ID = H l (Node-Address) and Home- Region-ID depends on its location that may change over time. Logical layout of nodes in a home region Peer Local Region Figure 1. Logical architecture of mobile peer-to-peer system Caching improves data retrieval performance in mobile peer-to-peer system [9] at the expense of memory. This policy saves computing power and bandwidth. In cooperative caching, peers can access data from their neighbors. So, to accelerate the overall performance researchers are now focusing on designing new caching schemes suitable for ad hoc environment. Cooperative caching schemes have been studied for wired environment to improve the performance of web caching or web proxies [1][11]. PReCinCt (Proximity Region for Caching in Cooperative Mobile P2P Network) is a Figure 2. The entire logical mobile peer-to-peer architecture There are two ways to learn about home region representative. In one approach, the home region representative periodically broadcasts its own identity (address) and Home-Region-ID. In other approach, joining node explicitly floods Home-Region-Search-Request. This is a controlled flood not flooded to the entire system. A node does not forward the request when it already has the answer of the request. A joining node may get multiple responses based on its location. It marks the response that is the minimum hops away. The joining node confirms the representative for its inclusion to the system. It gets the identity of its successor and predecessor from this representative. The joining node can unambiguously

determine its Node-ID using the hash function H l. Hence the joining node is only concern about its Home-Region-ID, its successor and its predecessor. In this way a new node adjust itself to the system. A layout of the wireless ad hoc peer-topeer system resembles to Figure 2. Due to the space limitations, we discarded the sequence diagram that shows every steps of a signup process. B. Wireless Ad Hoc P2P System Content Publishing Contents and nodes are mapped to the same address space. The name of the content is hashed to generate an n-bit number, called the key. But, we need two hash functions providing two keys. One key is used to map the content name to a home region and other key to determine the successor in a particular region, i.e. the actual node where content information has to be stored. Mathematically, key r = H r (Content-Name ) and key s =H l (Content-Name). First key, key r, is used to determine the home region where content has to be published. discover a content, he first hashes to get key r using H r (Content-Name). This key represents the home region where the content information is stored. Node gets the address of foreign representative with the help of local representative as the protocol allows local representative to broadcast home regions addresses in its periodic keep-alive messages. If the content is not in local region, the request is delegated to the foreign representative. Second key, key s, plays a significant role when the content discovering process has been shifted to the appropriate region. We applied chord like content searching process with modified finger table in local region. Lookup can proceed as follows. Based on key r, either the initiating node or the foreign representative sends a packet to its successor containing requester s physical address and the key, key s. The packet is circulated around the logical circle until it locates the successor or it fails. 1 3 5 4, 1 5 25 2 7 24 4 8 Index distribution In local region Node Identifier 21 Active node 3 12 16 14 Index distribution in foreign region Figure 3. Tuple distribution process (The representative is also a member of logical structure) The content publisher first builds a tuple consisting of <Content-Name, Own-Address> and then asks local representative to store the tuple. Local representative transport the tuple to the foreign region. But it may happen that content has to be stored in the local region based on the key r. We define the function successor(key s ) as the node identifier of the first actual node following key s around the circle clockwise. At a particular region, the successor of the content is determined using key s and the representative initiates tuple storing process. In this way, the index is distributed over the nodes at random. One of the shortcomings in this environment is node s ad hoc nature. To recover from such unwanted events protocol deploys multiple hash functions to store tuple in multiple nodes. Figure 3 is an example of simple tuple storing process. C. Wireless Ad Hoc P2P System Content Discovering Now it is easy to discover contents as nodes and contents are mapped to the same address space. If a user wishes to Start Node 1 s finger table (Step size 8) Physical address of successor 2 4 3 4 5 7 13 14 21 24 29 3 Figure 4. Modified finger table for mobile peer-to-peer system In order to speed up the searching process, some techniques have already been proposed. In one optimization, each node holds the physical addresses of both its successor and its predecessor. Even with two choices of direction, linearly searching all the nodes is very inefficient in a large peer-to-peer system since the mean number of nodes required per search is n/2 which is still a big number. Chord uses finger table to speed up searching process. If the hash address space is too large as compared to the number of peers in the system, the most of the entries in finger table point to the same actual node, and that actually searches the key in a

linear way. Let hash key is 128-bit long. Thus its address space is 3.4e38. If we allow 1 2 peers in the system, on an average there is a gap of 3.4e18 between two active nodes. As a result, most entries of the finger table point to the same successor. This is really a big issue in ad hoc networks where routing is expensive. We propose two approaches to construct finger table for wireless ad hoc environments. In the first design, the finger table is slightly different than it is in chord. The finger table has m entries, indexed by through m-1. It is divided into two halves: to m/2 and m/2 to (m-1). Each entry has two fields, namely start and the physical address of successor(start). The values of the fields for entry i at node k for the first half of the table are: start = k + 2 i mod 2 m, where i < m/2 Physical address of successor(start[i]) So, first half table covers k to k+2 m-1 address space. We define step-size as a big number to jump more rapidly. The entries of the second half of the table are incremented by the step size starting from k+2 m-1 +step-size. Similarly we have corresponding physical addresses of the successors. Figure 4 depicts a finger table considering above approach. In second approach, we use the following formula to determine the start and the physical address of the successor; mathematically, start = (k + a i ) mod 2 n,where i< m/2 Physical address of successor(start[i]) Here, a is a constant and we have n-bit hash value. One possible choice for the value of a is the index of finger table, i.e. it increase at a rate of i i [1 1, 2 2, 3 3 ]. These two approaches perform well when the number of peers is too small as compared to the address space; otherwise we prefer the usual one. D. Wireless Ad Hoc P2P System Important Issues Different issues such as routing policy, caching scheme, node s mobility, transient behavior of nodes, and representative selection criteria should be considered for wireless ad hoc peer-to-peer system to work. There are many routing algorithms for mobile ad hoc networks. For interregion and intra-region routing purposes, we use geographical routing protocol like GPSR [13] and greedy routing algorithm respectively. In greedy forwarding, there may be a situation where a packet arrives at a node that does not have neighbors offering progress to the destination. This situation can be handled by applying a modification of the right hand rule, e.g. Face routing. The key idea is to traverse the boundaries of the gap until greedy can be resumed. Greedy-Face-Greedy routing is a good solution for intra-region routing [14]. Caching improves the data retrieval overhead. It saves computing power and reduces bandwidth requirement at the expense of memory. Cooperative caching schemes have been studied to improve the performance of web caching or web proxies. In our current multi-level hashing scheme, we ignored the caching policy. As long as a peer is inside a region, there is no overhead associated with the movement. But, when a peer moves across a region, it has to do some house keeping jobs. The departing node must hands over the keys to its successor. This departing node then re-initiates joining process in the new region. Due to the shortage of energy or some other reasons, a node might quit from a peerto-peer system. In that case, that node must also hand over all its keys to its successor. Otherwise, keys will be lost. In that case, publishers have to publish their contents periodically with an increased overhead. There are some choices to deal with the representatives. In one approach, we considered that there is a representative available in each region provided by a company. If this is the case, representatives are fixed and hence reduce the communication overhead. Otherwise, representative has to be selected from a set of nodes for each region in round-robin fashion with an increased control overhead and this change of representative has to be announced to make a consistent p2p system. IV. EXPERIMENTAL RESULTS The objective of multi-level hashing architecture for wireless ad hoc peer-to-peer system is to reduce routing overhead. Routing in ad hoc network is expensive as compared to the routing in wired environment. We first applied chord directly on top of wireless ad hoc network. This experiment was carried out in an environment of 1*1 square units. Some parameters related to this experiment are given in the Table 1 (Setup 1). Table 1. Simulation setup for chord in wireless ad hoc p2p system Parameter Setup - 1 Setup - 2 Deployment area 1 1 square units 1 1 square units Node s velocity 4 unit per second 1 4 unit per second Node s transmission radius 8 unit 8 unit Content per node 3 3 Greedy Routing Greedy Routing Routing algorithm Algorithm 2 Algorithm Modulo Hash function Message Digest 5 (32-bit Number) 1 Probability of movement is.2 and node can move in any direction. 2 Greedy routing algorithm may stop at local maximum which implies unsuccessful routing. Those cases are discarded in simulation result. Hop Distance 2 16 12 8 4 Routing Cost Search Cost 1 2 4 6 8 Figure 5. Performance of chord in ad hoc network

We assume that all nodes in an ad hoc network are not involved in a peer-to-peer system. We estimated search cost and routing cost of chord for peer-to-peer system in wireless ad hoc network. Search cost means how many peers are involved in a particular content discovering process while routing cost considers all ad hoc nodes that are involved in content discovering process including the forwarding nodes. Chord in wireless ad hoc network is not suitable as a peer-topeer system because of its high routing cost (Figure 5). Moreover, if the number of peers is too small as compared to the hash address space, finger table has little contribution in content discovering process. That eventually increases search cost as well as routing cost. Two-level hashing presented in this paper is tested and compared with chord for wireless ad hoc p2p system. Table 1 (Setup 2) shows the simulation environment for this particular experiment. For the sake of fair experiment, we ignored finger table in both approaches. This is because we can deploy any variant of finger table in both approaches. One an average, chord requires 1 to 12 times more searching cost than our two-level hashing approach (Figure 6). Content searching cost is reduced as we divide the entire topology into multiple small regions and first level hash makes it possible to explore the content into that small region. Ratio of search cost 3 24 18 12 6 1 2 4 6 8 1 Figure 6. Search cost Two-level hashing vs. chord in wireless ad hoc p2p system Ratio of routing cost 8 6 4 2 1 2 4 6 8 1 Figure 7. Routing cost Two-level hashing vs. chord in wireless ad hoc p2p system We also compared the routing cost for both approaches with the same experimental setup. It shows that chord requires 5 times more routing cost than two-level hashing scheme on an average (Figure 7). Chord is a logical topology. It has no knowledge of the physical structure. Request is redirected to a node that is logically close but physically far away. This is also true in two-level hashing approach when it enters in a local region. But its logical ring is composed of close proximity nodes as compared to one level hashing in chord. Hence it reduces routing cost to a large extent. Hence proves the requirement of multi-level hashing. V. CONCLUSION With the advancement in mobile computing and the popularity of mobile devices, peer-to-peer communication in ad hoc networks is likely to boom soon. But, designing a peer-to-peer system suitable for wireless ad hoc networks is really difficult considering the resource constraints and the lack of infrastructure in this field. In this paper, we present a two-level hashing scheme for wireless ad hoc peer-to-peer system. It shows that the performance of the system will be increased once we have multi-level hashing in terms of searching cost and routing overhead. Modified finger tables works well when the number of peers is too small as compared to the hash address space. REFERENCES [1] http://en.wikipedia.org/wiki/peer-to-peer [2] I. Stoica, R. Morris, D. Karger, M. F. Kaashoek, and H. Balakrishnan. Chord: A Scalable Peer-to-Peer Lookup Service for Internet Applications, In ACM SIGCOMM, pages 149-16, August 21. [3] H.-C. Hsiao and C.-T. King. Capability-Aware Peer-to-Peer Storage Networks, In Int l Parallel and Distributed Processing Symposium, April 23. [4] S. Ratnasamy, P. Francis, M. Handley, R. Karp, and S. Shenker. A Scalable Content-Addressable Network, In ACM SIGCOMM, pages 161-172, August 21. [5] A. Rowstron and P. Druschel. Pastry: Scalable, Distributed Object Location and Routing for Large-Scale Peer-to-Peer Systems, In Proc. of the IFIP/ACM Int l Conf. on Distributed Systems Platforms (Middleware 21), Nov. 21. [6] Hung-Chang Hsiao, Chung-Ta King. "Bristle: A Mobile Structured Peer-to-Peer Architecture," In International Parallel and Distributed Processing Symposium (IPDPS'3), 23. [7] Sylvia Ratnasamy et al, A Scalable Content-Addressable Network, In Proceedings of the ACM SIGCOMM, 21. [8] Gang Peng, Shanping Li, Hairong Jin, Tianchi Ma. "M-CAN: a Lookup Protocol for Mobile Peer-to-Peer Environment," In the International Symposium on Parallel Architectures, Algorithms and Networks (ISPAN'4), 24. [9] H. Shen, M. Kumar, S.K. Das, and Z. Wang, Energy-Efficient Caching and Prefetching with Data Consistency in Mobile Distributed Systems, In Proc. of IEEE International Parallel and Distributed Processing symposium (IPDPS), Santa Fe, NM, April 24. [1] L. Fan, Summary Cache: A Scalable Wide-Area Web Cache Sharing Protocol, In Proceedings of ACM SIGCOMM Conf., ACM Press, 1998. [11] P. Sarkar, and J. H. Hartman, Hint-based cooperative caching, ACM Transactions on Computer Systems, volume 18, number 4, pages 387 419, 2. [12] Huaping Shen, Mary Suchitha Joseph, Mohan Kumar, Sajal K. Das. "PReCinCt: A Scheme for Cooperative Caching in Mobile Peer-to-Peer Systems," In the 19th IEEE IPDPS, 25. [13] B. Karp, and H. T. Kung, GPSR: Greedy Perimeter Stateless Routing for Wireless Networks, In Proc. of the ACM/IEEE International Conference on Mobile Computing and Networking (Mobicom 2), August 2. [14] S. Datta, I. Stojmenovic, and J. Wu., Internal Node and Shortcut Based Routing with Guaranteed Delivery in Wireless Networks, In Cluster Computing 5, pages 169--178. Kluwer Academic Publishers, 22.