1 / 68

Compact routing schemes with improved stretch

Compact routing schemes with improved stretch. Shiri Chechik Doctoral Dissertation Award for Principles Of Distributed Computing (PODC) 2013. Compact routing schemes with improved stretch. This paper is an improvement on the work of TZ. Where?. Intuition. T. S. Close enough. Intuition.

herman
Download Presentation

Compact routing schemes with improved stretch

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Compact routing schemes with improved stretch ShiriChechik Doctoral Dissertation Award for Principles Of Distributed Computing (PODC) 2013

  2. Compact routing schemes with improved stretch This paper is an improvement on the work of TZ. Where?

  3. Intuition T S Close enough

  4. Intuition S T Far enough

  5. Intuition S T Questionable

  6. TZ compact routing • Every node holds a routing table with information • Stretch on routing is

  7. TZ compact routing • Every node holds a routing table with information • Stretch on routing is We will talk about the case where : :

  8. Model – definitions • Graph . • Each node is a processor. • Each node is assigned with a unique key .

  9. Something we’ll need later on…

  10. Search Mechanism Problem: Given a graph with arbitrary node Ids, how can we quickly route to any given node when given its Id? Solution: Use a shortest path spanning tree to route to any node at cost of

  11. Search Mechanism Problem: Where do we store the routing information? (the tree is not sorted, for even has sequential Ids…) Solution: Distribute the routing information among a selected subset of nodes (the nodes…)

  12. Search scheme How can we build a search mechanism on a tree without keeping too much information in any given node?

  13. Search scheme (query) For some node , does belong to T? If so, how can we route to it?

  14. Search scheme (definitions) Given tree where: • is the depth of the tree

  15. Search scheme (definitions) is a set of nodes chosen to store the information s.t. Each node will store information for nodes

  16. Search scheme (requirements) • In every node the scheme stores information. • Given a key the algorithm can find or determine that . This is to be done on a path from no longer than .

  17. Search scheme (construction) is the set of nodes in where has ordered them in a certain way. The interval is divided into intervals s.t. Each interval is assigned to the proper node.

  18. Search scheme (construction)

  19. Search scheme (construction)

  20. Search scheme (construction)

  21. Search scheme (construction)

  22. Search scheme (routing) Step 1: Route the query to . Step 2: Find the interval and node associated with it. Step 3: Route the message to via T. Step 4: node determines if or not.

  23. Search scheme (proof) • Each holds information for nodes. The information itself (taken from TZ) for each node is of size . So holds information. • The distance the query has to travels is exactly . Since ,

  24. We now move to construction

  25. Construction - definitions We start off with constructing the Thorup-Zwick routing tables and labels. ( and ) The routing tables and labels we use are based on those of TZ, but with some additions.

  26. ’s, clusters & bunches v

  27. ’s, clusters & bunches v w

  28. ’s, clusters & bunches cluster v w

  29. Construction – definitions Reminder: Definition: is the distance between and the closest node . (the pivot of )

  30. Construction – definitions (The label of ) is a concatenation of: Notice that because we know , the label is

  31. Construction – definitions : A node in G. : The cluster of . : The shortest path spanning tree of : , trimmed at a distance of from the root.

  32. Construction – search mechanism For every node and for every we calculate (denoted: ) and do: We sample every node independently with probability of . These chosen nodes are then part of .

  33. Construction – search mechanism We then construct the search mechanism we defined earlier for each node . The information is stored in . Every node holds the routing information to This is the additional information to we mentioned earlier.

  34. Construction – analysis Lemma 4.2: • For every node : • For every node there at most nodes s.t.

  35. Lemma 4.2 – proof Reminder – Chernoff’s bound: For a binomial random variable X, where , then

  36. Lemma 4.2 – proof : The expected size of is . Since , we can say that: . So with high probability, claim a holds.

  37. Lemma 4.2 – proof At most • We know from TZ that node belongs to clusters. • . So the expected number of nodes s.t. is .

  38. Lemma 4.2 – proof At most By Chernoff’s law we get that with high probability there at most nodes s.t.

  39. Construction Lemma 4.3: the expected size of is Proof: Our routing table is constructed from and our additions. From TZ, we know the size of is .

  40. Lemma 4.3 – proof Lemma 4.3: Our addition stores information (requirement of the search scheme) in every node in any for any . From Lemma 4.2 we know that belongs at most to .

  41. We now move to routing

  42. Routing – definitions Reminder: Definition: is the distance between and the closest node . (the pivot of )

  43. Routing – definitions Definition: v

  44. Routing – definitions

  45. Routing – definitions Let be the minimal index s.t. . If or , then . Remember,

  46. Routing – definitions How can we calculate this? How does know or ?

  47. Routing – definitions Reminder: When we route to , we have made of Lemma 4.4: If then

  48. Routing – algorithm Node wants to send a message to node . • If and route the message to on (from TZ). • If route the message on . • If route the message on .

  49. Routing – algorithm • If invoke TZ. () • Else, Define for the smallest s.t. . Check if . This is done by routing the message to on and searching for in . 1. If it exists – route to it and quit. 2. Otherwise, return the message to and run TZ.

More Related