Presentation is loading. Please wait.

Presentation is loading. Please wait.

Compact routing schemes with improved stretch

Similar presentations


Presentation on theme: "Compact routing schemes with improved stretch"— Presentation transcript:

1 Compact routing schemes with improved stretch
Shiri Chechik 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 S T Close enough

4 Intuition S T Far enough

5 Intuition S T Questionable

6 TZ compact routing Every node holds a routing table with 𝑂( 𝑛 1/𝑘 ) information Stretch on routing is 4𝑘−5

7 We will talk about the case where 𝑘=4
TZ compact routing Every node holds a routing table with 𝑂( 𝑛 1/𝑘 ) information Stretch on routing is 4𝑘−5 We will talk about the case where 𝑘=4 𝑘=4 : 𝑠𝑡𝑟𝑒𝑡𝑐ℎ=10.52 𝑘>4 : 𝑠𝑡𝑟𝑒𝑡𝑐ℎ=3.68𝑘

8 𝑠𝑡𝑟𝑒𝑡𝑐ℎ= 𝑙𝑒𝑛𝑔𝑡ℎ_𝑜𝑓_𝑟𝑜𝑢𝑡𝑖𝑛𝑔_𝑝𝑎𝑡ℎ(𝑠,𝑡) 𝑑(𝑠,𝑡)

9 Model – definitions Graph 𝐺=(𝑉,𝐸). Each node 𝑣 is a processor. 𝑉 =𝑛
Each node 𝑣∈𝑉 is assigned with a unique key 𝑘𝑒𝑦 𝑣 ∈[1,..𝑛].

10 Something we’ll need later on…

11 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 2∙𝑟𝑎𝑑𝑖𝑢𝑠(𝑇)

12 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…)

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

14 Search scheme (query) For some node 𝑡, does 𝑘𝑒𝑦(𝑡) belong to T? If so, how can we route to it?

15 Search scheme (definitions)
Given tree 𝑇=(𝑉(𝑇),𝐸(𝑇)) where: 𝑇⊂𝐺 𝑑 ′ is the depth of the tree 𝐾={𝐾𝑒𝑦(𝑣)|𝑣∈𝑉(𝑇)} |𝑉 𝑇 |≤ 𝑛 2/𝑘

16 Search scheme (definitions)
𝑐𝑜𝑟𝑒 𝑇 ⊆𝑉(𝑇) is a set of nodes chosen to store the information s.t. |𝑐𝑜𝑟𝑒 𝑇 |≥ |𝑉 𝑇 | 𝑛 1/𝑘 Each node will store information for 𝑛 1/𝑘 nodes

17 Search scheme (requirements)
In every node c∈𝑐𝑜𝑟𝑒(𝑇) the scheme stores 𝑂( 𝑛 1/𝑘 𝑙𝑜𝑔 2 𝑛) information. Given a key 𝑘𝑒𝑦(𝑡) the algorithm can find 𝑘𝑒𝑦 𝑡 or determine that 𝑘𝑒𝑦(𝑡)∉𝑉 𝑇 . This is to be done on a path from 𝑟(𝑇) no longer than 𝑟𝑎𝑑𝑖𝑢𝑠(𝑇).

18 Search scheme (construction)
𝑐 1 ,.., 𝑐 𝑙 is the set of nodes in 𝑐𝑜𝑟𝑒(𝑇) where 𝑟(𝑇) has ordered them in a certain way. The interval [1,𝑛] is divided into 𝑙 intervals 𝑛 𝑖−1 , 𝑛 𝑖 | ∀𝑖∈[1,𝑙] s.t. 𝑣∈𝑉 𝑇 | 𝑛 𝑖−1 <𝑘𝑒𝑦(𝑣)≤ 𝑛 𝑖 ≤ 𝑛 1/𝑘 Each interval is assigned to the proper node 𝑐 𝑖 .

19 Search scheme (construction)
𝑜, 𝑛 1 𝑛 1 , 𝑛 2 … ( 𝑛 𝑙−1 , 𝑛 𝑙 ] 𝑐𝑜𝑟𝑒 𝑇 ={ 𝑐 1 , 𝑐 2 , …, 𝑐 𝑙 }

20 Search scheme (construction)
𝑜, 𝑛 1 𝑛 1 , 𝑛 2 … ( 𝑛 𝑙−1 , 𝑛 𝑙 ] 𝑐𝑜𝑟𝑒 𝑇 ={ 𝑐 1 , 𝑐 2 , …, 𝑐 𝑙 }

21 Search scheme (construction)
𝑜, 𝑛 1 𝑛 1 , 𝑛 2 … ( 𝑛 𝑙−1 , 𝑛 𝑙 ] 𝑐𝑜𝑟𝑒 𝑇 ={ 𝑐 1 , 𝑐 2 , …, 𝑐 𝑙 }

22 Search scheme (construction)
𝑜, 𝑛 1 𝑛 1 , 𝑛 2 … ( 𝑛 𝑙−1 , 𝑛 𝑙 ] 𝑐𝑜𝑟𝑒 𝑇 ={ 𝑐 1 , 𝑐 2 , …, 𝑐 𝑙 }

23 Search scheme (routing)
Step 1: Route the query to 𝑟(𝑇). Step 2: Find the interval 𝑘𝑒𝑦(𝑡) ∈( 𝑛 𝑖 , 𝑛 𝑖+1 ] and node 𝑐 𝑖 ∈𝑐𝑜𝑟𝑒(𝑇) associated with it. Step 3: Route the message to 𝑐 𝑖 via T. Step 4: node 𝑐 𝑖 determines if key(𝑡)∈𝑉 𝑇 or not.

24 Search scheme (proof) Each 𝑐 𝑖 ∈𝑐𝑜𝑟𝑒 𝑇 holds information for 𝑛 1/𝑘 nodes. The information itself (taken from TZ) for each node is of size O( 𝑙𝑜𝑔 2 𝑛). So 𝑐 𝑖 holds O( 𝑛 1/𝑘 𝑙𝑜𝑔 2 𝑛) information. The distance the query has to travels is exactly 𝑑 𝑟 𝑇 , 𝑐 𝑖 . Since 𝑐 𝑖 ∈𝑐𝑜𝑟𝑒(𝑇), 𝑑 𝑟 𝑇 , 𝑐 𝑖 ≤𝑟𝑎𝑑𝑖𝑢𝑠(𝑇)

25 We now move to construction

26 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.

27 𝐴’s, clusters & bunches v

28 𝐴’s, clusters & bunches v w 𝐵 𝐴 𝑣 = 𝑤∈𝑉|𝑑 𝑣,𝑤 <𝑑(𝐴,𝑣)

29 𝐶 𝐴 𝑤 = 𝑣∈𝑉|𝑑 𝑤,𝑣 <𝑑(𝐴,𝑣)
𝐴’s, clusters & bunches cluster v w 𝐶 𝐴 𝑤 = 𝑣∈𝑉|𝑑 𝑤,𝑣 <𝑑(𝐴,𝑣)

30 Construction – definitions
Reminder: ∅= 𝐴 𝑘 ⊆…⊆ 𝐴 1 ⊆ 𝐴 0 =𝑉 Definition: 𝑑(𝑣, 𝐴 𝑖 ) is the distance between 𝑣 and the closest node 𝑎∈ 𝐴 𝑖 . (the pivot of 𝑣)

31 Construction – definitions
𝐿(𝑣) (The label of 𝑣) is a concatenation of: 𝑘𝑒𝑦 𝑣 𝐿 𝑇𝑍 (𝑣) 𝑑 𝑣, 𝐴 1 ,..,𝑑 𝑣, 𝐴 𝑘−1 Notice that because we know 𝑘=4, the label is key(t)_ 𝐿 𝑇𝑍 (𝑡)_𝑑 𝑣, 𝐴 1 _𝑑 𝑣, 𝐴 2 _𝑑 𝑣, 𝐴 3

32 Construction – definitions
𝑤 : A node in G. 𝐶 𝑤 : The cluster of 𝑤. 𝑇(𝑤) : The shortest path spanning tree of 𝐶(𝑤) 𝑇(𝑤,𝑑) : 𝑇(𝑤), trimmed at a distance of 𝑑 from the root.

33 Construction – search mechanism
For every node 𝑤∈𝑉 and for every 1≤𝑗≤𝑙𝑜𝑔 𝑟𝑎𝑑𝑖𝑢𝑠 𝑇(𝑤) we calculate 𝑑 𝑗 = (1+𝜖) 𝑗 (denoted: 𝑑′) and do: We sample every node 𝑣∈𝑇(𝑤) independently with probability of 𝑝= 4 log 𝑛 𝑛 1/𝑘 . These chosen nodes are then part of 𝑐𝑜𝑟𝑒(𝑤,𝑑′).

34 Construction – search mechanism
We then construct the search mechanism we defined earlier for each node 𝑤∈𝑉. The information is stored in 𝑐𝑜𝑟𝑒 𝑤,𝑑′ ∪{𝑤}. Every node 𝑤∈ 𝐴 1 \ 𝐴 2 holds the routing information to 𝑐𝑜𝑟𝑒(𝑤, 𝑑 ′ ) This is the additional information to 𝐴(𝑣) we mentioned earlier.

35 Construction – analysis
Lemma 4.2: For every node 𝑤∈ 𝐴 1 \ 𝐴 2 : 𝑐𝑜𝑟𝑒 𝑤, 𝑑 ′ ≥ |𝐶(𝑤)|/ 𝑛 1/𝑘 For every node 𝑣∈𝑉 there at most 𝑂( 𝑙𝑜𝑔 2 𝑛) nodes 𝑤∈𝑉 s.t. 𝑣∈𝑐𝑜𝑟𝑒(𝑤, 𝑑 ′ )

36 Lemma 4.2 – proof Reminder – Chernoff’s bound: For a binomial random variable X, where 𝐸 𝑋 =𝜇, then 𝑃𝑟 𝑋<(1+𝛿)𝜇 ≤ 𝑒 𝜇 𝛿 2 /2

37 Lemma 4.2 – proof 𝑤∈ 𝐴 1 \ 𝐴 2 : 𝑐𝑜𝑟𝑒 𝑤, 𝑑 ′ ≥ |𝐶(𝑤)|/ 𝑛 1/𝑘 The expected size of 𝑐𝑜𝑟𝑒(𝑤, 𝑑 ′ ) is 4 log 𝑛 𝑉 𝑇 / 𝑛 1/𝑘 . Since 𝐶 𝑤 = log 𝑛|𝑉 𝑇 | , we can say that: 𝑃𝑟 |𝑐𝑜𝑟𝑒(𝑤, 𝑑 ′ )|< log 𝑛 𝑉 𝑇 / 𝑛 1/𝑘 ≤ 𝑒 −0.75 log 𝑛 <1/ 𝑛 2 . So with high probability, claim a holds.

38 Lemma 4.2 – proof At most 𝑂( 𝑙𝑜𝑔 2 𝑛) nodes 𝑤∈𝑉 s.t. 𝑣∈𝑐𝑜𝑟𝑒(𝑤, 𝑑 ′ )
We know from TZ that node 𝑣 belongs to 𝑂( 𝑛 1/𝑘 log 𝑛 ) clusters. 𝑃 𝑣∈𝑐𝑜𝑟𝑒 𝑤, 𝑑 ′ =4 log 𝑛/ 𝑛 1/𝑘 . So the expected number of nodes 𝑤 s.t. 𝑣∈𝑐𝑜𝑟𝑒(𝑤, 𝑑 ′ ) is 𝑂( 𝑙𝑜𝑔 2 𝑛 ).

39 Lemma 4.2 – proof At most 𝑂( 𝑙𝑜𝑔 2 𝑛) nodes 𝑤∈𝑉 s.t. 𝑣∈𝑐𝑜𝑟𝑒(𝑤, 𝑑 ′ ) By Chernoff’s law we get that with high probability there at most 𝑂( 𝑙𝑜𝑔 2 𝑛) nodes 𝑤 s.t. 𝑣∈𝑐𝑜𝑟𝑒(𝑤, 𝑑 ′ )

40 Construction Lemma 4.3: ∀𝑣∈𝑉 the expected size of 𝐴 𝑣 is 𝑂( 𝑛 1/𝑘 𝑙𝑜𝑔 4 𝑛) Proof: Our routing table is constructed from 𝐴 𝑇𝑍 (𝑣) and our additions. From TZ, we know the size of 𝐴 𝑇𝑍 (𝑣) is 𝑂( 𝑛 1/𝑘 𝑙𝑜𝑔 3 𝑛).

41 Lemma 4.3 – proof Lemma 4.3: Our addition stores 𝑂( 𝑛 1/𝑘 𝑙𝑜𝑔 2 𝑛) information (requirement of the search scheme) in every node in any 𝑐𝑜𝑟𝑒(𝑤) for any 𝑤. From Lemma 4.2 we know that 𝑣 belongs at most to 𝑂( 𝑙𝑜𝑔 2 𝑛).

42 We now move to routing

43 Routing – definitions Reminder: ∅= 𝐴 𝑘 ⊆…⊆ 𝐴 1 ⊆ 𝐴 0 =𝑉 Definition: 𝑑(𝑣, 𝐴 𝑖 ) is the distance between 𝑣 and the closest node 𝑎∈ 𝐴 𝑖 . (the pivot of 𝑣)

44 Routing – definitions Definition: Δ 𝑖 𝑣 =𝑑 𝑣, 𝐴 𝑖+1 −𝑑 𝑣, 𝐴 𝑖 𝐴 3
𝑑(𝑣, 𝐴 3 ) 𝐴 2 𝑑(𝑣, 𝐴 2 ) 𝐴 1 v 𝑑(𝑣, 𝐴 1 )

45 Routing – definitions Δ 𝑖 𝑣 =𝑑 𝑣, 𝐴 𝑖+1 −𝑑 𝑣, 𝐴 𝑖 Δ 2 (𝑣) Δ 1 (𝑣)
Δ 𝑖 𝑣 =𝑑 𝑣, 𝐴 𝑖+1 −𝑑 𝑣, 𝐴 𝑖 Δ 2 (𝑣) Δ 1 (𝑣) Δ 0 (𝑣) 𝑑(𝑣, 𝐴 1 ) 𝑑(𝑣, 𝐴 2 ) 𝑑(𝑣, 𝐴 3 ) 𝑣 𝑎 1 ∈ 𝐴 1 𝑎 2 ∈ 𝐴 2 𝑎 3 ∈ 𝐴 3

46 Routing – definitions Let 𝑘′ be the minimal index s.t. 𝑝 𝑘 ′ −1 𝑡 ∈𝐵 𝑠 . If 𝑡∈𝐵 𝑠 or 𝑠∈𝐵(𝑡), then 𝑘 ′ =1. Remember, 𝑘 ′ −1≤3 ⇒ 𝑘 ′ −2≤2

47 Routing – definitions 𝑀=𝑚𝑎𝑥 Δ 𝑗 (𝑠)/2, Δ 𝑗 (𝑡)/2| 1≤𝑗≤ 𝑘 ′ −2 ∪ Δ 0 (𝑠), Δ 0 (𝑡) ∪ 𝑑 𝑠, 𝐴 𝑗+1 −𝑑 𝑡, 𝐴 𝑗 | 1≤𝑗≤ 𝑘 ′ −2 ∪ Δ 0 (𝑠), Δ 0 (𝑡) Δ 𝑗 (𝑠)/2, Δ 𝑗 (𝑡)/2| 1≤𝑗≤ 𝑘 ′ −2 ∪ Δ 0 (𝑠), Δ 0 (𝑡) ∪ 𝑑 𝑠, 𝐴 𝑗+1 −𝑑 𝑡, 𝐴 𝑗 | 1≤𝑗≤ 𝑘 ′ −2 How can we calculate this? How does 𝑠 know Δ 1 (𝑡)/2 or 𝑑 𝑡, 𝐴 1 ?

48 Routing – definitions Reminder: When we route to 𝑡, we have 𝐿(𝑡) made of key(t)_ 𝐿 𝑇𝑍 (𝑡)_𝑑 𝑣, 𝐴 1 _𝑑 𝑣, 𝐴 2 _𝑑 𝑣, 𝐴 3 Lemma 4.4: If 𝑘 ′ >1 then 𝑑 𝑠,𝑡 ≥𝑀

49 Routing – algorithm Node 𝑠 wants to send a message 𝑚 to node 𝑡.
If 𝑠∈ 𝐴 0 \ 𝐴 1 and 𝑠∈𝐵(𝑡) route the message to 𝑡 on 𝑇 𝑠 (from TZ). If 𝑝 1 𝑡 ∈𝐵(𝑠) route the message on 𝑇( 𝑝 1 𝑡 ). If 𝑝 2 𝑡 ∈𝐵(𝑠) route the message on 𝑇( 𝑝 2 𝑡 ).

50 Routing – algorithm If Δ 1 𝑡 ≤𝑐∙𝑀 invoke TZ. (1≤𝑐≤2)
Else, Define 𝑑 ′ = (1+𝜖) 𝑖 for the smallest 𝑖 s.t. 𝑑 ′ ≥(1+𝑐)∙𝑀 Check if 𝑝 1 𝑠 ∈𝐵(𝑡). This is done by routing the message to 𝑝 1 (𝑠) on 𝑇 𝑝 1 𝑠 and searching for 𝑘𝑒𝑦(𝑡) in 𝑇( 𝑝 1 𝑠 ,𝑑′). 1. If it exists – route to it and quit. 2. Otherwise, return the message to 𝑠 and run TZ.

51 Routing – analysis 𝑑=𝑑(𝑠,𝑡) We know from TZ: Δ 0 𝑠 >𝑑 ⇒𝑑 𝑠, 𝐴 1 −𝑑 𝑠, 𝐴 0 >𝑑(𝑠,𝑡)⇒ 𝑑 𝑠, 𝐴 1 >𝑑(𝑠,𝑡) and so 𝑡∈𝐵 𝑠 ⇒s∈𝐶(𝑡) and we can route directly from 𝑠 to 𝑡. The claim works the same for Δ 0 𝑡 >𝑑

52 Routing – analysis So we assume this is not the case. Namely, 𝑘 ′ >1. Reminder: 𝑘′ is the minimal index s.t. 𝑝 𝑘 ′ −1 𝑡 ∈𝐵 𝑠 . In other words, Δ 0 𝑠 ≤𝑑 and Δ 0 𝑡 ≤𝑑 (We now have a lower bound on 𝑑)

53 Routing – analysis From the analysis of TZ, the worst stretch (4𝑘−5) is achieved when Δ 𝑗 (𝑠) and Δ 𝑗 (𝑡) are roughly 𝑀 (∀𝑗>0) and 𝑀<𝑑. Lemma 4.5: The stretch of the routing process is at most 𝑚𝑎𝑥 7+2𝑐,9, 15 𝑐 +2+ 2𝜖 𝑐+1

54 Lemma 4.5 – proof The algorithm has the following cases:
𝑠∈ 𝐴 0 \ 𝐴 1 and 𝑠∈𝐵(𝑡). 𝑝 1 𝑡 ∈𝐵(𝑠). 𝑝 2 𝑡 ∈𝐵 𝑠 . Δ 1 𝑡 ≤𝑐∙𝑀 Δ 1 𝑡 >𝑐∙𝑀 𝑘𝑒𝑦 𝑡 ∈𝑇 𝑝 1 𝑠 , 𝑑 ′ 𝑘𝑒𝑦 𝑡 ∉𝑇( 𝑝 1 𝑠 ,𝑑′)

55 Lemma 4.5 – proof We look at the first 3 cases:
𝑠∈ 𝐴 0 \ 𝐴 1 and 𝑠∈𝐵(𝑡). 𝑝 1 𝑡 ∈𝐵(𝑠). 𝑝 2 𝑡 ∈𝐵 𝑠 . In one of these cases, by the analysis of TZ, the stretch is at most 7 (instead of 11 in TZ).

56 Lemma 4.5 – proof We look at the first 3 cases:
𝑠∈ 𝐴 0 \ 𝐴 1 and 𝑠∈𝐵(𝑡). 𝑝 1 𝑡 ∈𝐵(𝑠). 𝑝 2 𝑡 ∈𝐵 𝑠 . In one of these cases, by the analysis of TZ, the stretch is at most 7 (instead of 11 in TZ). So we assume it is not one of these cases.

57 Lemma 4.5 – proof Case 4: Δ 1 𝑡 ≤𝑐∙𝑀 In this case the message is routed on 𝑇 𝑝 3 𝑡 so the length of the path is 𝑑 𝑠, 𝑝 3 𝑡 +𝑑 𝑡, 𝑝 3 𝑡 . We know that: 𝑑 𝑡, 𝑝 2 𝑡 ≤ Δ 0 𝑡 + Δ 1 𝑡 ≤𝑀+𝑐∙𝑀= 1+𝑐 ∙𝑀≤(1+𝑐)∙𝑑(𝑠,𝑡)

58 Lemma 4.5 – proof And so: 𝑑 𝑡, 𝑝 3 𝑡 ≤ Δ 0 𝑡 + Δ 1 𝑡 + Δ 2 𝑡 ≤ 1+𝑐 ∙𝑀+2𝑀≤(3+𝑐)∙𝑑(𝑠,𝑡) We also know that: 𝑑 𝑠, 𝑝 3 𝑡 ≤𝑑 𝑠,𝑡 +𝑑 𝑠, 𝑝 3 𝑡 ≤ 4+𝑐 ∙𝑑(𝑠,𝑡) 𝑑 𝑠, 𝑝 3 𝑡 +𝑑 𝑡, 𝑝 3 𝑡 ≤ 7+2𝑐 ∙𝑑(𝑠,𝑡)

59 Stretch for case 4 𝑠𝑡𝑟𝑒𝑡𝑐ℎ≤ 7+2𝑐 ∙𝑑 𝑠,𝑡 𝑑 𝑠,𝑡 ≤7+2𝑐
Lemma 4.5 – proof Stretch for case 4 𝑠𝑡𝑟𝑒𝑡𝑐ℎ≤ 7+2𝑐 ∙𝑑 𝑠,𝑡 𝑑 𝑠,𝑡 ≤7+2𝑐

60 Lemma 4.5 – proof Case 5: Δ 1 𝑡 >𝑐∙𝑀 In this case the message is routed to 𝑝 1 𝑠 on 𝑇( 𝑝 1 𝑠 , 𝑑 ′ ) and then 𝑘𝑒𝑦(𝑡) is searched in the tree on a path of at most 𝑑′. The length so far is 𝑑 𝑠, 𝑝 1 𝑠 +𝑟𝑎𝑑𝑖𝑢𝑠(𝑡). Since 𝑑 𝑠, 𝑝 1 𝑠 ≤𝑀 and 𝑟𝑎𝑑𝑖𝑢𝑠 𝑡 ≤𝑑′, 𝑑 𝑠, 𝑝 1 𝑠 +𝑟𝑎𝑑𝑖𝑢𝑠 𝑡 ≤𝑀+𝑑′.

61 Lemma 4.5 – proof Case 5.1: 𝑘𝑒𝑦 𝑡 ∈𝑇( 𝑝 1 𝑠 ,𝑑′) The message will be routed to 𝑡 on 𝑇( 𝑝 1 𝑠 ,𝑑′) with an additional length of 𝑑 ′ +𝑑( 𝑝 1 𝑠 ,𝑡). The total length of the route will be 𝑀+ 𝑑 ′ + 𝑑 ′ +𝑑 𝑝 1 𝑠 ,𝑡 ≤3𝑑 𝑠,𝑡 +2 1+𝜖 1+𝑐 ∙𝑀 ≤9∙𝑑(𝑠,𝑡)

62 Stretch for case 5.1 𝑠𝑡𝑟𝑒𝑡𝑐ℎ≤ 9∙𝑑 𝑠,𝑡 𝑑 𝑠,𝑡 ≤9
Lemma 4.5 – proof Stretch for case 5.1 𝑠𝑡𝑟𝑒𝑡𝑐ℎ≤ 9∙𝑑 𝑠,𝑡 𝑑 𝑠,𝑡 ≤9

63 Lemma 4.5 – proof Case 5.2: 𝑘𝑒𝑦 𝑡 ∉𝑇( 𝑝 1 𝑠 ,𝑑′) The message will be routed back to 𝑠 and then using TZ with an additional length of 𝑑 ′ +𝑀+11𝑀. The total length of the route will be M+ 𝑑 ′ + 𝑑 ′ +𝑀+11𝑀=2 𝑑 ′ +13𝑀

64 Lemma 4.5 – proof Case 5.2: 𝑘𝑒𝑦 𝑡 ∉𝑇( 𝑝 1 𝑠 ,𝑑′) The message will be routed back to 𝑠 and then using TZ with an additional length of 𝑑 ′ +𝑀+11𝑀. The total length of the route will be M+ 𝑑 ′ + 𝑑 ′ +𝑀+11𝑀=2 𝑑 ′ +13𝑀 Note that this case can only occur if 𝑑 𝑠,𝑡 ≥𝑐∙𝑀.

65 Lemma 4.5 – proof Stretch for case 5.2 𝑠𝑡𝑟𝑒𝑡𝑐ℎ≤ (2 𝑑 ′ +13𝑀) 𝑑 𝑠,𝑡 ≤ (2 𝑑 ′ +13𝑀) 𝑐∙𝑀 ≤ (2 1+𝜖 1+𝑐 𝑀+13𝑀) 𝑐∙𝑀 ≤ 15 𝑐 +2+ 2𝜖 𝑐+1

66 Routing – conclusion we found that the upper bound on the stretch is 𝑚𝑎𝑥 7+2𝑐,9, 15 𝑐 +2+ 2𝜖 𝑐+1 By choosing 𝑐= 145 −5 4 we minimize the stretch down to 10.52

67 The case for 𝑘>4 The algorithm is very similar. Changes are mainly in the condition for steps 4 & 5 and a more complicated search mechanism.

68 Thank you


Download ppt "Compact routing schemes with improved stretch"

Similar presentations


Ads by Google