4.5 Randomized Routing via Good Arborescences
4.5.1 A Simple (Inefficient) Randomized Routing
Consider the following randomized algorithm RAND-ALGOfor routing along arborescences. A packet is routed along the same arborescence until it either reaches its destination or hits a failed edge. In the latter case, it is rerouted along another arborescences chosen uniformly at random. We first show that there exists a k-connected graph and a set of failed edges such that the expected number of tree switches that RAND-ALGOmakes isΩ(k2). We then exhibit an instance of k-connected graph and a set of failed edges for which RAND-ALGO makes Ω(|V |k2) hops. This number of hops is at least k times larger than O(k H ), that is guaranteed by Theorem4.1.
RAND-ALGOPerformsΩ(k2) Tree Switches
To prove the promised bound, we start by defining a 2k edge connected graph G = (V,E) and its set of 2k arc disjoint spanning trees T0, . . . , T2k−1as follows.
• Set V consists of a destination vertex d and 4k additional vertices arranged into two equal-sized layers L1= {v10, . . . , v2k−11 } and L2= {v20, . . . , v2k−12 }.
• Set E is defined by the following four subgraphs: (1) L2is a clique of size 2k; (2) (L1, L2) is a complete bipartite graph; (3) for each k = 0,...,k −1, there is an edge (v2i1, v2i +11 ) and (4) vertex d is connected to each vertex of L1. There is no other edge included in G.
v20 v12 v22 v32
v10 v11 v21 v31
d
T0 T1
T2
T3
Figure 4.2 – Graph used in the proof of Theorem4.8for k = 2.
Next, we construct 2k arc-disjoint spanning trees T0, . . . , T2k−1(see Figure4.2for an example with k = 2). We use [t]0to denote set {0, 1, 2, . . . , t − 1}.
• For each i ∈ [k]0, add the following arcs:
– (v2i +12 , v22i), (v2i2, v12i), (v2i1, v2i +11 ), and (v12i +1, d ) into T2i +1; – arcs (v2i2, v2i +12 ), (v2i +12 , v12i +1), (v2i +11 , v2i1), and (v2i1, d ) into T2i.
• For each i ∈ [k]0, and for each j ∈ [2k]0\ {2i , 2i + 1}, add the following arcs:
– (v2j, v2i2), and (v1j, v2i2) into T2i; – (v2j, v2i +12 ), and (v1j, v2i +12 ) into T2i +1.
Finally, consider a scenario in which edges (v20, v12), (v22, v32), . . . , (v2k−42 , v22k−3) and (v01, v11), (v21, v13), . . . , (v2k−41 , v2k−31 ), (v12k−2, v2k−11 ) failed.
We say that a packet is routed downwards (upwards) if it is routed from a vertex in L2(L1) to a vertex in L1(L2). Let Edbe the expected number, minimized over all the vertices, of tree switches of a packet that is routed downwards, Eube the expected number of tree switches of a packet that is routed along Tiand is currently located at v2i, for some i ∈ [2k − 2]0, and E2be the expected number of tree switches of a packet that is originated by a vertex in L2. Then, we can show.
Lemma 4.6. It holds Eu≥2k−13 Ed+2k−42k−1Eu+ 1 .
Proof. Let p be routed along Thand located at v2h, for some h ∈ [2k − 2]0. W.l.o.g, let h = 0. By the construction of T0, from v10packet p should be forwarded to v12but (v20, v21) has failed. So, from v02, p is forwarded downwards along T1, T2k−2or T2k−1with probability2k−13 and routed along any other tree Tjto a vertex v2j in L2with probability at least2k−42k−1. Hence, the lemma follows.
Lemma 4.7. We have Ed∈ Ω(k2).
Proof. By the construction, a packet routed downwards traverses arc (vi2, vi1) of Ti. W.l.o.g, let p be routed along (v2i2, v12i) of T2i. As (v2i1, v2i +11 ), which belongs to T2i, has failed, p is rerouted along Tjfor some j ∈ [2k]0\ {2i }. Among them, only T2i +1has a path from v2i1 to d that does
not contain any failed link. T2i +1is chosen with probability 2k−11 .
If any other tree Tjis chosen except T2k−2and T2k−1, which happens with probability2k−42k−1, then p is rerouted through Tjfrom v12ito a vertex v2j in L2, and hence
Ed≥2k − 4
2k − 1Eu+ 1. (4.4)
Putting together with (4.4) and Lemma4.6we obtain Ed∈ Ω(k2).
We finally observe that any packet originated at a vertex of L2is routed downwards at least once before reaching the destination vertex, i.e., E2≥ Ed= Ω(k2), which proves the following theorem.
Theorem 4.8
For any k > 0, there exists a 2k edge-connected graph, a set of 2k arc-disjoint spanning trees, and a set of 2k −1 failed edges, such that the expected number of tree switches with RAND-ALGOisΩ(k2).
RAND-ALGOPerformsΩ(|V |k2) Hops
We now a more involved construction than the one in Theorem4.8that shows that there are examples for which if we apply only bouncing, in addition to the number of tree switches, they have big stretch.
v20 v21 v22 v32
v10 v11 v12 v31
d
T0
T1
T2
T3
w2
w1 w0
w4
w3
Figure 4.3 – Graph used in the proof of Theorem4.9for k = 2 and |V | = 5.
Theorem 4.9
For any k > 0, there exists a 2k edge-connected graph G = (V,E), a set of 2k arc-disjoint spanning trees, and a set of k − 1 failed edges, such that the expected number of tree switches with RAND-ALGOisΩ(k2). Furthermore, the routing makesΩ(k2|V |) hops in expectation.
Proof. To prove the promised bound, we start by defining a 2k edge connected graph G = (V,E) and its set of 2k arc disjoint spanning trees T0, . . . , T2k−1as follows.
• Set V consists of a destination vertex d and 4k + p additional vertices arranged into three layers L1, L2, and W .
• Layers L1= {v01, . . . , v12k−1} and L2= {v02, . . . , v2k−12 } are equal-sized.
• Layer W = {w0, w1, . . . , wp−1} is placed "in between" L1and L2. Number p is a prime such that max{|V |,2k + 1} ≤ p ≤ 2max{|V |,2k + 1}. Note that such p always exist.
• Set E is defined to be the edge support of the arborescences that we define in the sequel.
Other than that, G does not contain additional edges.
Next, we construct 2k arc-disjoint spanning trees T0, . . . , T2k−1(see Figure4.3for an example with k = 2 and |V | = 5). We use [t]0to denote set {0, 1, 2, . . . , t − 1}.
• For each i ∈ [k]0, add the following arcs:
– (v2i +12 , v22i), (v2i2, v12i), (v2i1, v2i +11 ), and (v12i +1, d ) into T2i +1; – arcs (v2i2, v2i +12 ), (v2i +12 , v12i +1), (v2i +11 , v2i1), and (v2i1, d ) into T2i.
• For each i ∈ [k]0, and for each j ∈ [2k]0\ {2i , 2i + 1}, add the following arcs:
– (v2j, v2i2), (v1j, w(2i +1)(p−1) mod p), and (w0, v2i2) into T2i; – (v2j, v2i +12 ), (v1j, w(2i +2)(p−1) mod p), and (w0, v2i +12 ) into T2i +1.
• For each i ∈ [2k]0and each a ∈£p − 1¤0add arc (w(i +1)(a+1) mod p, w(i +1)a mod p) to Ti. Finally, consider a scenario in which edges (v20, v12), (v22, v32), . . . , (v2k−42 , v22k−3) and (v01, v11), (v21, v13), . . . , (v2k−41 , v2k−31 ), (v12k−2, v2k−11 ) failed.
Since p is a prime, it is easy to show that the described arborescences are valid and arc-disjoint.
For each a = 1,...,2k the i -th vertex of the vertex-cloud in the middle layer arborescence a walks over has index xia= a · (i − 1) mod p. In order to show that this vertex ordering can indeed be part of 2k arc-disjoint arborescences we will prove that: xai 6= xaj whenever i 6= j ; and, (xia, xi +1a ) is different than (xbj, xbj +1) for any a 6= b, and any valid i and j . These claims follow from the fact that gcd(p, i ) = 1, but for completeness we provide short proofs.
Towards a contradiction, assume that xia= xaj for some i 6= j . Furthermore, by the defi-nition, that implies a · (i − 1) ≡ a · ( j − 1) mod p, and hence a(i − j ) ≡ 0 mod p. However, as 0 ≤ a,|i − j | < p and p is a prime, a(i − j ) is not divisible by p and hence a contradiction.
Again towards a contradiction, assume that (xia, xai +1) = (xbj, xbj +1) for some a 6= b, and some valid i and j . Then, from xia= xbj we have
ai ≡ b j mod p. (4.5)
On the other hand, xi +1a = xbj +1implies a(i + 1) ≡ b( j + 1) mod p, which can be written as
ai + a ≡ b j + b mod p. (4.6)
Putting together (4.5) and (4.6) we obtain a ≡ b mod p, which contradicts the fact that a 6= b and 1 ≤ a,b ≤ k.
Observe that whenever packet reaches vertex of W , it visits all the vertices of W before leaving that layer. Then, the rest of the proof, i.e., computing the number of expected hops and stretch, is analogous to the proof of Theorem4.8.
This concludes the analysis.