Download presentation
Presentation is loading. Please wait.
Published byRoxanne Holland Modified over 9 years ago
1
Routing Indices For Peer-to-Peer Systems Svetlana Strunjas University of Cincinnati May,2002
2
Outline Motivation and background P2P systems Routing Indices Experimental results Conclusions
3
Motivation Create efficient and feasible distributed – index search mechanism for P2P systems
4
Background Napster – centralized indices (vulnerable to attack and difficult to scale) Gnutella – queries flood significant part of the network(simple but very costly approach)
5
Background(cont’d 1) Freenet – each node builds an index with the location of recently requested documents (queries are restricted to the specific documents and it takes time for node to build an effective index)
6
Background(cont’d 2) Oceanstore – distributed – index approach similar to Routing Indices(special case of Compound RIs) Key difference is in static network and queries on document identifier (Oceanstore) versus dynamic network and queries on content of document(Routing Indices)
7
Background(cont’d 3) Selecting a neighbor for forwarding query using Routing Indices is generalization of the Bellman-Ford algorithm Bellman – Ford algorithm -transmits packet between two nodes through the shortest route -destination of packet is pre-defined(IP routing) Routing Indices -transmit packet from node to node in order to find best answer to the query -destination of packet is not pre-defined, but instead depends on query contained in packet
8
P2P Systems (Introduction) Formed by a large number of nodes that can join or leave the system at any time and have equal capabilities Each node has local documents database which can be accesed through local index The local index receives content queries and returns pointer to the document with requested content
9
Query Processing in Distributed P2P Systems Users submit queries to any node along with the stop condition Node receives query, evaluates the query against it’s own database,returns pointer to any results, and, if the stop condition is not reached, forwards the query to neighbor(s)(parallel or sequentially)
10
Routing Indices Introduction RI allows a node to select “best“ neighbors to send a query to It is data structure(and associated algorithm) which,for given query, returns a list of neighbors, rank according to their goodness for query Goodness reflects the number of documents in “nearby” nodes
11
Routing Indices Types Compound Routing Indices(CRI) Hop-count Routing Indices(HRI) Exponential Routing Indices(ERI)
12
Compound Routing Indices (example)
13
CRI(cont’d1) Documents are on zero or more topics,and queries request documents on particular topic Each node has a local index for quickly finding local documents CRI contain the number of documents along each path and the number of documents of each topic of interest
14
CRI (“goodness” estimators) Measure of “goodness” of the neighbor, for given query, is number of documents that can be found in that path Estimated number of results along each path is given by formula:
15
CRI (drawbacks) CRI do not take into account the difference in cost due to the number of hops necessary to reach the document Are not applicable if we have cycles in network
16
Using RI RIs with four topics of interests : database,network,theory and languages
17
Storage space required It can be adjusted by increasing or decreasing the level of summarization of index For centralized systems it is C*(T+1)*N bytes For distributed systems it is C*(T+1)*B*N C – number of categories T – counter size in bytes B – branching factor N – number of nodes
18
Creating (maintaining)RIs
19
Disconnection from Network 150 75 0 75 125 1500 110 80 70 165
20
Algorithm for Creating/Updating RIs There are two phases : 1.Newly connected node sends a summary of its local index to its new neighbors (creation phase) 2.The node waits for update messages or for changes on its local index ; after updating its RI, the node sends a new aggregate RIs to all its neighbors
21
Algorithm for Answering Queries It runs every time query is received Query is given together with stop condition There are three phases: 1.Node attempts to answer the query using its local db 2.If not enough results are obtained to reach stop condition, the algorithm ranks all the neighbors using estimating function 3.Node sends the query to each neighbors sequentially,checking if the stop condition was reached whenever each query returns
22
Hop-count RI Store aggregated RI for each “hop” up to a maximum number of hops(horizon of the RI)
23
Hop-count RI(cont’d1) Goodness of neighbor is defined as ratio between the number of documents available through that neighbor and the number of messages required to get those documents Simple model that allows us to compute this ratio is regular-tree model
24
Hop-count RI(cont’d2) Model assumes that all nodes are connected to exactly F+1 nodes, except ones at the leaves which are connected to only one Goodness of the neighbor is given by formula: goodness() – estimating function for CRI N i [j] –RI entry for j hops through i-th neighbor F-fanout H-horizon
25
Hop-count RI (drawbacks) HRI performances can be negatively affected by the lack of information beyond the horizon Higher storage and transmission cost than CRI
26
Exponentially Aggregated RI Stores the result of applying the regular-tree cost formula to hop-count RI
27
Exponentially Aggregated RI(cont’d) Each entry of the ERI for node N contains a value computed as : th – height of the assumed regular tree goodness() – estimating function for CRIs N[j] – summary of the local index of neighbor j of N T – topic of inerest for entry With ERIs we can keep information for all nodes accessible from each neighbor in the RI,while HRI’s do not have any information beyond horizon
28
Cycles in P2P Network There are three approaches for dealing with cycles: No-op solution Cycle avoidance solution Cycle detection and recovery
29
No-op solution Works only with the HRI and ERI If there are cycles CRI algorithm can be trapped in an infinite loop
30
NO-op solution (cont’d1) 10 15 20 G1=21.67 G2=23.58
31
NO-op solution (cont’d2) In HRI cycles longer than horizon will not affect the RI If we use regular-tree cost model we can limited effect of short cycles In HRI and ERI difference between two values of goodness introduced by cycle is very small(algorithm will not propagate updates which are not much different than old value)
32
Cycle avoidance solution Do not allow nodes to create an update connection to other node if such connection creates the cycle Drawback : Absence of global information causes suboptimal update network
33
Cycle detection and recovery Detects cycles sometime after they are formed and takes recovery actions to eliminate the effect of the cycles Cycles are detected using unique message identifier Recovery procedure can decrease accuracy of the RI
34
Experimental Results (Introduction) Results are obtained using different models for elements of search mechanism Steps of experiment: 1.Setting P2P system as network of nodes T, where each node contains set of documents 2.Users send requests consisting of query Q and stopCondition to a node of P2P system 3. search mechanism answers requests by obtaining a set of documents of size stopCondition that matches Q 4.search mechanism allows for update such as addition of nodes and new documents
35
Experimental Results (Techniques and measure of cost) Search techniques : CRI, HRI, ERI, No-RI(for comparison purposes) Measure of cost:numbers of messages generated
36
Experimental Results (Network topologies) Topology of network defines number of nodes and how they are connected In this model, three kinds of topologies are considered: 1.Tree 2.Tree with added cycles 3.Power-law graph
37
Experimental Results (Distribution of documents) Distributions for modeling the location of document results : 1.Uniform distribution( all nodes have the same probability of having each document result) 2.80/20 biased distribution ( assigns uniformly 80% of the document results to the 20% of nodes, and the remaining 20% of the documents to the remaining 80% of nodes)
38
Experimental Results (Simulation parameters)
39
Experimental Results (Comparison of CRI,HRI and ERI)
40
Experimental Results (Number of results)
41
Experimental Results (Effects of overcounts)
42
Experimental Results (Effects of cycles)
43
Experimental Results (Network topology)
44
Experimental Results (Updates and network topology)
45
Experimental Results (Updates and cycle policy)
46
Experimental Results (Updates per minute)
47
Conclusions ERI and HRI offer significant improvements versus not using an RI,while keeping update costs low Routing indices (in particular ERI and HRI can help improve the search performance of current and future P2P systems
48
References: [1] A.Crespo, H. Garcia-Molina.Routing Indices For Peer-to-Peer Systems(2001).The 22 nd International Conference on Distributed Computing Systems,Vienna, Austria. [2] J.F.Kurose, K.W.Ross.(1999).”Routing Principles”.Computer Networking – A Top Down Approach Featuring Internet, 2 nd ed., Addison Wesley,4.
Similar presentations
© 2024 SlidePlayer.com. Inc.
All rights reserved.