Presentation is loading. Please wait.

Presentation is loading. Please wait.

Altruistic Routing in P2P Networks: Solutions and Problems Sukumar Ghosh Alina Bejan Amlan Bhattacharya University of Iowa.

Similar presentations


Presentation on theme: "Altruistic Routing in P2P Networks: Solutions and Problems Sukumar Ghosh Alina Bejan Amlan Bhattacharya University of Iowa."— Presentation transcript:

1 Altruistic Routing in P2P Networks: Solutions and Problems Sukumar Ghosh Alina Bejan Amlan Bhattacharya University of Iowa

2 The University of Iowa 2 Background

3 The University of Iowa 3 Background Structured P2P networks provide a flat response to query processing. Traffic flow in P2P networks exhibits a degree of variability as supported by various measurements, but routing is immune to traffic flow patterns.

4 The University of Iowa 4 Smart routing To optimize “routing cost” the network must reduce the latency of the frequently used routes, perhaps at the expense of an increased latency in the rarely used routes.

5 The University of Iowa 5 Routing cost Routing cost =  f(i,j) * h(i,j) i,j f(i,j) = traffic between i,j h(i,j) = hop count between i,j

6 The University of Iowa 6 Flat routing 0 32 1648 f(0,32) >> f(16,48)

7 The University of Iowa 7 Smart routing 0 32 1648 f(0,32) >> f(16,48)

8 The University of Iowa 8 Goal of this exercise How can processes in a P2P network spontaneously “tweak” their routing tables to optimize the routing cost? We studied this on Chord (Stoica et al)

9 The University of Iowa 9 The Model N processes 0 through N-1(N=2 k ). Each process i has k=log N fingers pointing to (i+1, i+2, i+4,.. i+2 k-1 ) Each process i has an additional k fingers (1≤k≤log N)that will act as routing cache

10 The University of Iowa 10 The Model For a given packet, if a node has a routing cache entry points to the destination of a packet (cache hit), then that packet will reach the destination in the next hop. Otherwise it will follow the traditional Chord route

11 The University of Iowa 11 Revisiting Chord routing Search in finger table for the nodes which most immediately precedes id Invoke find_successor from that node Greedy routing No of messages O(log N)

12 The University of Iowa 12 Example of Cache hit Due to the presence of the cache entry at node 42, packets from node 8 reach the destination in 2 hops instead of 3.

13 The University of Iowa 13 The strategies The routing cost will very much depend on on the content of the routing caches. What routes will be cached by a node? We look into two strategies: (a) selfish (b) altruistic

14 The University of Iowa 14 A selfish strategy For any node, define a top destination as one to which the traffic flow is “high”. Then each node will orient its cache entries towards its own top destinations. What is the impact of this strategy?

15 The University of Iowa 15 P2P traffic Node rank Traffic flow

16 The University of Iowa 16 Analysis hint A B Length of route will depend on the possibility of a cache hit at the current node Let h = no of top destinations and k = no of cache entries. Assume the top destinations are randomly distributed over the key space (k << h << N)

17 The University of Iowa 17 Analysis hint A B Number of hops that a packet towards one of the top (h-k) destinations will take before a cache hit follows a geometric distribution. Probability of a cache hit in r hops = (k/(N-1)).(1-k/(N-1)) r-2 Top k destinations will be reached in one hop

18 The University of Iowa 18 Analysis hint A B Expected number of hops for cache hit = (N-1)/k. This is bad. Fortunately, the bound will not exceed log N due to the underlying Chord routing. When k << h <<N, improvement due to the selfish strategy is marginal.

19 The University of Iowa 19 An altruistic strategy Each node will orient its routing cache entries towards its top destinations of other nodes only. How does this work?

20 The University of Iowa 20 Analysis hint is a hot spot Poor cache hitBetter cache hit k=2

21 The University of Iowa 21 Analysis hint A B C D Hot spots of A Hot spots of B Hot spots of C Packets from A, B, C contend for the cache entries of D. 32 48 56 0 16

22 The University of Iowa 22 Analysis hint Expected number of hops that a packet towards one of the top h destinations will take before a cache hit occurs = (1+h/k) Whenever a packet to a destination node ranks among the top k entries of another Node in its route, a cache hit occurs.

23 The University of Iowa 23 Analysis hint For small values of h the expected hop count is better than that for the selfish protocol. Furthermore, if a fraction  of the nodes is active at any time, then the expected time for cache hit = 1+  h/k

24 The University of Iowa 24 Sample comparison Hop count  = 1 Hop count  = 0.5 Hop count  = 0.1 Original Chord 10 altruistic 1073 selfish 9.3 N = 1,000,000h = 240k = log N = 20

25 The University of Iowa 25 Now, the problem is Why will all nodes agree to run the altruistic protocol? Some may cheat by running a selfish version, and get an unfair advantage. This may make every node think: “may be many others are running the selfish version. Let me stop being altruistic.”

26 The University of Iowa 26 Now, the problem is The system will gravitate towards an inferior equilibrium. Are their ways to force the system to a superior equilibrium? Can it be viewed as a stabilization problem?

27 The University of Iowa 27 Comparison with Code stabilization (Freiling & Ghosh SSS 2005 ) However, processes need to cooperate. To force non-cooperating processes to cooperate, penalties / incentives are needed. All processes run a predefined code Some codes have been corrupted recovery corruption

28 The University of Iowa 28 Mandating externally imposed behavior N processes 0 through N-1 each runs a program P A fraction of them do not cooperate and run a program P’≠ P We want all of them to eventually run the same program P Issue 1. How to detect deviations? Issue 2 How to develop a system of penalties / incentives? Issue 3. Quantifying resilience to deviations

29 The University of Iowa 29 Conclusion Many of these are application dependent Non-cooperative behaviors add new challenges to the problems of self-stabilization / self- organization

30 The University of Iowa 30 Questions?


Download ppt "Altruistic Routing in P2P Networks: Solutions and Problems Sukumar Ghosh Alina Bejan Amlan Bhattacharya University of Iowa."

Similar presentations


Ads by Google