Oblivious Routing via Random Walks

12/06/2017 ∙ by Michael Schapira, et al. ∙ 0

We present novel oblivious routing algorithms for both splittable and unsplittable multicommodity flow. Our algorithm for minimizing congestion for unsplittable multicommodity flow is the first oblivious routing algorithm for this setting. As an intermediate step towards this algorithm, we present a novel generalization of Valiant's classical load balancing scheme for packet-switched networks to arbitrary graphs, which is of independent interest. Our algorithm for minimizing congestion for splittable multicommodity flow improves upon the state-of-the-art, in terms of both running time and performance, for graphs that exhibit good expansion guarantees. Our algorithms rely on diffusing traffic via iterative applications of the random walk operator. Consequently, the performance guarantees of our algorithms are derived from the convergence of the random walk operator to the stationary distribution and are expressed in terms of the spectral gap of the graph (which dominates the mixing time).



There are no comments yet.


page 1

page 2

page 3

page 4

This week in AI

Get the week's most popular data science and artificial intelligence research sent straight to your inbox every Saturday.

1 Introduction

Oblivious routing is the task of routing traffic in a manner that is agnostic to the traffic demands. Due to its inherent robustness to uncertainty about traffic conditions, varying traffic patterns, and inaccurate traffic measurements, the design of oblivious routing algorithms is of great theoretical interest and practical importance [41, 26, 40, 18, 19, 4]. Consequently, a rich body of algorithmic literature is focused on devising oblivious routing schemes with provably high performance guarantees. Surprisingly, as first established by Valiant [39, 38], and later by Räcke [29, 30], oblivious routing can provide good approximations to the performance of the optimal demands-aware routing.

We revisit this long-standing algorithmic challenge and present oblivious routing algorithms for two well-studied settings: (1) minimizing congestion for splittable multicommodity flow (s-MCF), and (2) minimizing congestion for unsplittable multicommodity flow (u-MCF). Our algorithm for u-MCF is the first oblivious routing scheme for this setting. As an intermediate step towards this algorithm, we present an novel algorithm for minimizing delay in Valiant’s classical model for routing permutation traffic demands in packet-switched networks. This algorithm extends the classical Valiant Load Balancing scheme, designed for the hypercube, to arbitrary graphs. Our results for s-MCF improve upon today’s state-of-the-art, in terms of both performance and running time, for graphs that exhibit good expansion guarantees. We next discuss our high-level approach and then delve into our results for each of the models.

High-level approach. Our approach to oblivious routing reflects a simple high-level idea: utilizing the efficient distribution of traffic across the network by the random walk operator. Intuitively, our algorithms first disperse the traffic from the source uniformly across the network and then regather the traffic at the destination. The realization of this simple intuition, however, requires care, and is different across the three settings. Leveraging random walks for routing can be traced back to the work of Broder et al. [10, 11] on finding edge-disjoint paths and establishing virtual circuits and to studied of the minimization of congestion and load balancing in this context [1, 36, 34, 33]. In contrast to these studies, which compute routing outcomes for input traffic demands, our focus is on traffic-oblivious routing.

Under our algorithm for the s-MCF model, traffic dispersion from the source is obtained via iterative applications of the random walk operator. The key challenge lies in guaranteeing that all flow eventually reach the destination. To accomplish this, a series of stochastic operators is applied to “invert” each step of a random walk that starts at the destination. Our algorithms for the u-MCF model and Valiant’s model generate a “sample space” of paths by sampling multiple fixed-length random walks from each vertex. Then, a single path from each source to destination is computed by randomly selecting a vertex and concatenating two paths: (1) a randomly selected path from the sample space connecting to , and (2) a randomly selected path from the sample space connecting to . Careful analyses show that this routing scheme results in provably low congestion in both models.

Our analyses heavily rely on the convergence of the random walk to the stationary distribution. Consequently, the performance guarantees and the running times of our algorithms are expressed in terms of the spectral gap of the graph (which dominates the mixing time).

Before presenting our results, we first introduce the following notation: We consider undirected and capacitated graphs of size . The degree of each vertex is defined to be . Let be the stationary distribution: . We denote by and the minimal and maximal degrees, respectively, and by and the minimal and maximal value of a vertex in , respectively. We say that is -regular if for all , and for all . Let

be the generalized second eigenvalue of the random walk operator of

(see Appendix A.1 for formal definitions), and let , where is the graph obtained from via the addition of self loops. When clear from the context we will refer to , and simply as and .

Results for unsplittable multicommodity flow. In the unsplittable multicommodity flow setting, the routing of each commodity must use a single path in the network [13, 16, 3, 22]. We present the first (to the best of our knowledge) oblivious routing algorithm for this context. We prove the following upper bound on the performance ratio [29, 30] of this algorithm, i.e., the maximum ratio between the congestion (max link utilization) induced by the algorithm and the congestion under the optimal demands-aware routing across all possible traffic demands.

Theorem 1.1.

Oblivious routing on any undirected capacitated and connected graph is achievable with performance ratio at most

with probability


We note that, somewhat surprisingly, for expander graphs, the resulting upper bound matches the performance of the state-of-the-art demands-aware algorithms [13]. En route to establishing the above result for u-MCF, we generalize the classical Valiant Load Balancing (VLB) scheme, previously applied to hypercubes, and other highly-structured graphs, to general graphs.

Results for Valiant’s packet-switching model. Valiant and Brebner [39, 38] considered routing on the hypercube network under permutation traffic demands, i.e., when each vertex wishes to send a single packet to a single, distinct, other vertex. Under this routing model, only a single packet can traverse each link simultaneously and the goal is to minimize delay, i.e., the total time for all sent packets to arrive at their destinations. The main result in [39] can be phrased as follows:

Theorem 1.2.

Oblivious routing of permutation traffic demands on the hypercube is achievable with at most delay with probability .

VLB is a classical, and widely applied, routing scheme [28, 26, 40, 35, 18, 19, 41]. Adaptations of VLB have been devised for specific, well-structured graphs (see, e.g., [37, 2]). Importantly, all these schemes heavily utilize the structure of the graph in selecting paths (e.g., bit-fixing in the hypercube) and, consequently, how VLB can be generalized to arbitrary graphs is not obvious. Our main result for this context generalizes VLB to general regular graphs.

Theorem 1.3.

Oblivious routing of permutation traffic demands on any connected -regular graph is achievable in at most time with probability .

Theorem 1.3 implies time bounds of for expander graphs and for the hypercube. The gap between the latter expression and the original guarantee of in [39] is due to the relatively long mixing time in the hypercube.

Results for splittable multicommodity flow. The study of oblivious routing under the s-MCF model was initiated by Räcke [29], who later presented an algorithm with performance ratio  [30] for this setting, which is asymptotically tight for general graphs [7, 25, 20].

Our main result for this setting is the following:

Theorem 1.4.

Oblivious routing on any capacitated, undirected and connected graph is achievable with performance ratio at most .

In terms of performance, our algorithm matches the state-of-the-art for expander graphs, yielding an approximation. Importantly, as the performance of the algorithm improves with the spectral gap, novel constant bounds are established w.r.t. dense graphs (i.e., of size for some constant ) with substantially large spectral gap, which have received much attention in the computer networking and parallel computing realms [8, 21] . E.g., since a random regular graph satisfies w.h.p. [17], applying Theorem 1.4 to random dense graphs yields, w.h.p., a performance ratio of . Concrete (deterministic) constructions of such graphs include complete graphs and polarity graphs [12, 15] with resulting performance ratios of and respectively.

In terms of running time, computing the routing solution involves operations, e.g., for expanders. We point out that this bound is close to the optimal running time as the output representation for this problem is of size . Consequently, our random-walk-based algorithm improves the running time over the state-of-the-art which is either LP-based [6] or relies on hierarchical graph decompositions [29, 31, 30].

Organization. We begin with Section 2, where we introduce our results for the s-MCF model. Section 3 presents our results for Valiant’s model, which are then leveraged in Section 4 to devise a routing scheme for the u-MCF model. We conclude with intriguing open questions in Section 5.

2 Oblivious Routing of Splittable Multicommodity Flow

The model. A demand matrix is a non-negative matrix , where its ’th entry, , specifies the amount of flow that vertex wishes to send to vertex . A splittable multicommodity flow is a collection of functions such that for every two vertices , the corresponding function is a flow from to . Namely, it specifies the traffic from to that traverses each edge , and must satisfy the standard flow conservation constraints111(1) , (2) and (3) for .. A routing policy for is a multicommodity flow such that each is a unit flow222i.e., .. A routing policy and demand matrix induce a flow such that . Observe that under , all demands are satisfied, though edge capacities might be exceeded.

We present the following definitions of edge congestion and global congestion w.r.t. a routing policy and demand matrix :

The oblivious ratio of a routing policy is , where refers to the optimal congestion across all possible (splittable) flows.

The algorithm. We present a deterministic oblivious routing scheme for arbitrary demand matrices and capacitated undirected graphs. The scheme is specified in Algorithm 1, where: (1) is the random walk matrix of , (2) the point-wise multiplication

of a vector

and a matrix is the matrix , (3) is the transpose of , and (4) the row normalization of is given by: .

1:  Input: An undirected graph .
2:  Output: Oblivious routing policy .
3:  set + self loops
4:  if  then
5:     set
6:  end if
7:  set
8:  set
9:  for  do
10:     set
11:     for  do
14:     end for
15:     for  do
18:     end for
19:     set
20:  end for
Algorithm 1 Oblivious routing scheme for splittable MCF

Proof overview. Our high level approach to the analysis of Algorithm 1 relies on a sequential routing scheme that routes the data from to across the graph in discrete time steps, . The first phase of this scheme, where , is starting at vertex and applying random walk operations. We shall show that the second phase, where , is dominated by an “inverse” of a random walk that begins in . The significance of this correspondence is twofold: First, it implies that is a unit-flow from to . Furthermore, it allows us to upper bound the congestion induced by by the congestion induced by the random walk, which we relate to the optimal possible congestion. The performance guarantee follows.

Proof of Theorem 1.4. We defer some of the proofs of this section to Appendix B. All vectors are assumed to be row vectors in

(using the standard convention w.r.t. Markov chains).

Recall that iff is either disconnected or bipartite. As the first case does not hold by the assumption of the theorem, and the latter is eliminated by the addition of self loops in the first few lines of Algorithm 1, we conclude that , hence . The sequential routing scheme that lies at the heart of Algorithm 1 is composed of linear operators, , where specifies the distribution of data from each vertex to its neighbours. The vectors , in turn, represent the data distribution in each time step. Namely, corresponds to the amount of data sent from to that is stored at after time steps. While the definition of the first operators is straightforward, with for all , the choice of the latter operators requires explanation, and in fact reflects the aim of “inverting the random walk”. Why not simply use ? Well, first of all, the random walk matrix need not be invertible (for sufficient conditions on the invertibility of adjacency matrices, see, e.g., [27], [32]). More importantly, we shall require additional properties from our operators, that , even when it does exist, does not necessarily posses: (1) A matrix is said to respect a graph if only if . (2) A matrix is said to be right stochastic if each of its entries is non-negative with each row summing to 1.

The following Lemma justifies the choice of :

Lemma 2.1.

Let be a random walk matrix of an undirected capacitated graph , then, for any non-negative vector , the operator is right stochastic, respects and satisfies .

Applying Lemma 2.1 for , we have


This fact allows us to bound the distributions :

Lemma 2.2.

The vectors obtained by Algorithm 1,
satisfy for all .

Where we use the notation to indicate that in every entry .


(of Lemma 2.2) The choice of implies that every probability vector satisfies


In particular, every entry of the probability vectors satisfies


This immediately implies that . We continue inductively: Assuming the existence of a non-negative vector , with , we have

where the first equality stems from the definition of , and the last from equation 1. Since both and consist of non-negative entries, we conclude that . ∎

By Lemma 2.1, the operators are right stochastic, hence the sum of entries of must equal . Since Lemma 2.2 implies that , it follows that . We now show that the resulting function is indeed a unit-flow from to .

Lemma 2.3.

The matrix determines a unit-flow on from to .

In order to analyze the congestion incurred by w.r.t. , we first define the sequential traffic, and the sequential congestion at time step by

Namely, where their ’th entry correspond to the traffic/congestion incurred by the sequential routing scheme at time step on the edge . We shall compare these matrices with the sequential traffic and congestion obtained by repeated iterations of the random walk operator over some initial distribution . We define these parameters by .

The following lemma establishes the relation between the congestion in both processes, and an upper bound in terms of the demand matrix :

Lemma 2.4.

We have the following:

We now relate these quantities to the optimal (total, non-sequential) congestion: Given a demand matrix , any flow on is required to deliver amount of data from to its neighbors. Since an even distribution of the congestion between the edges adjacent to yields a congestion of per edge, it follows that this amount of congestion is inevitable under any routing scheme. Similarly, any proper routing should deliver to from its neighbors. It follows that at least congestion is incurred. We conclude that .

Applying the above inequality and Lemma 2.4, we asserr that for every . We are now able to complete the proof using the fact that is induced by the sequential routing scheme:

Lemma 2.5.

The analysis is tight, as it is easy to construct a demand matrix for which the output of Algorithm 1 satisfies (See Appendix B for elaboration).

3 Valiant Load Balancing on Arbitrary Graphs

1:  Input: An undirected capacitated graph .
2:  Output: A set of paths , where is a path from to .
3:  set + self loops
4:  if  then
5:     set
6:  end if
7:  set
8:  set ,
9:  set for all
10:  for all  do
11:     start random walks of length from
12:     if the resulting path terminates in  then
13:        store the path in
14:     end if
15:  end for
16:  for  do
17:     choose a random vertex w.r.t. the stationary distribution:
18:     choose uniformly at random.
19:     choose uniformly at random.
20:     set
21:  end for
Algorithm 2 VLB on Arbitrary Graphs

The model. Under Valiant’s classical model [39, 38] for the routing of packets in networks, each vertex in , aims to send a single (unsplittable) packet to a single other vertex in . Specifically, the communicating pairs are determined by a permutation such that vertex wishes to send a packet to vertex . Routing on this graph is a discrete-time process; the transmission of a packet across an edge takes a single time step, and packets can traverse an edge only one at a time.

A routing policy in this model is a set of paths . A routing policy is oblivious if does not depend on the permutation demands . Observe that every routing policy and permutation demands induce a flow of packets in the network in which each packet from to traverses the (single) path and when more than a single packet needs to traverse an edge , packets are sent across the edge consecutively (say, according to some lexicographic ordering over the packets). We can now define , for an oblivious routing policy , to be the worst-case delay across all permutation demands .

The algorithm. The main obstacle facing the generalization of VLB to arbitrary graphs is the absence of a clear definition of ”canonical paths”. We begin, as specified in Algorithm 2, by generating a “sample space” of paths in the graph by randomly sampling multiple fixed-length random walks from each vertex. We then route traffic between every two vertices by selecting an intermediate vertex at random and then concatenating a randomly selected path from the sample space connecting the source to that intermediate vertex and a randomly selected path from the sample space connecting the intermediate vertex to the destination.

While the guarantees of Theorem 1.3 established in this section are for regular graphs, the algorithm is applicable to arbitrary irregular and capacitated graphs. We shall leverage this fact later (Section 4), when we apply this algorithm to the u-MCF context.

Proof overview. We first assert that w.h.p. the sample space consists of paths between every pair of vertices. The main insight is that the resulting paths are well-distributed across the graph in the following sense: For each edge in the graph, the expected number of vertices whose paths traverse that path is approximately the same. This allows us to bound the expectation of the number of paths traversing each edge and probability that there exists an edge that is traversed by “too many” paths. An upper bound on the delay of each packet follows.

While this section is focused on regular graphs, most of the results proven below apply to arbitrary irregular, non-capacitated graphs. We will utilize the machinery developed in this section to prove Theorem 1.1 in Section 4.

Proof of Theorem 1.3. Some of the proofs in this section are deferred to Appendix C.

Using the addition of self-loops, if needed, we first assert that (as discussed in Section 2). We now construct a sample space of paths as follows: For every vertex , start independent random walks starting at that vertex, each of length . Let denote the set of all resulting paths, and let denote the set of paths in with end-points at and . In the case of regular graphs, we have and . Applying the Chernoff bounds, we show the following:

Lemma 3.1.

for all with probability .

Now, for every permutation over the vertices, the routing scheme provides us with paths: . We shall show that the first of those are well-distributed across the graph, and the same result to the rest is due to symmetry. Let be an edge, and let be defined by .

This random variable can be interpreted as the total mass of data that traverses

when each vertex sends a packet of size through . This is equivalent to identifying each path with a weight, proportional to its origin’s degree. In the case of a regular graph, each vertex uniformly transmits a packet of size , and corresponds to the number of paths that traverse through in the routing scheme. We now assert that for any two edges .

Lemma 3.2.

Let be edges in the graph, then .

Suppose that each vertex sends amount of data to via the proposed routing scheme. Summing the flow induced on all edges, we have


Equation 4 together with Lemma 3.2 imply (See Appendix C for elaboration) that


Since is the sum of independent random variables, we apply the Chernoff bounds to bound the probability that is large. Applying the union bound over all edges simultaneously yields:

Lemma 3.3.

For every , we have .

Applying Lemma 3.3 for regular graphs with imply that, w.h.p., all edges satisfy . In particular, since corresponds to the number of paths from that coincide with (for regular graphs), and the delay of a packet is upper bounded by length of the path times the number of coincidences with other paths, every vertex satisfies


with probability . Theorem 1.3 follows. While one can easily construct an example with (See Appendix C), it is not clear whether a exists in this scenario. In this sense, the tightness of Algorithm 1 remains an open question.

4 Oblivious Routing of Unsplittable Flows

The model. Recall the definitions for splittable multicommodity flow in Section 2. Under the u-MCF model, a flow from each vertex to another vertex can only traverse a single path between the two. The definitions of edge congestion, global congestion, and oblivious ratio are analogous to the definitions presented above for splittable flow, only that now the constraint of routing along a single path is enforced. We stress that our bounds on oblivious ratio in this model are actually with respect to the same as in the s-MCF model, i.e., the optimal congestion across all possible splittable multicommodity flows (and not merely over unsplittable flows).

The algorithm. Our algorithm for u-MCF simply applies Algorithm 2, presented in the context of Valiant’s model (Section 3), to this context and routes commodities along the computed paths. Recall that while our results for Valiant’s model pertain to regular, non-capacitated graphs, Algorithm 2, as stated, is applicable to irregular, capacitated, graphs.

Proof overview. In contrast to our results for Valiant’s model, our results for the u-MCF model require establishing the performance guarantees of Algorithm 2 w.r.t. capacitated and irregular graphs, and under arbitrary demands. To this end, our proof of Theorem 1.1 involves showing reductions from this general setting to the results presented in Section 3 for Valiant’s model, i.e., for non-capacitated graphs and under ”canonical demands”, where each vertex attempts to send one unsplittable commodity of volume proportional to its degree. To establish our upper bound on congestion, we translate the demand matrix into a linear sum of ”canonical demand” matrices. We apply the machinery introduced in the proof of Theorem 1.3 to each of these matrices separately and then apply the union bound to conclude the proof.

Proof of Theorem 1.1. Given a capacitated graph , consider the uncapacitated graph obtained from by decomposing each edge to edges of capacity (assume integer capacities). Using the correspondence between the output of Algorithm 2 on both graphs we first assert that it is enough, wlog, to show that the Theorem holds w.r.t. uncapacitated graphs (See Appendix D for elaboration).

As discussed in Section 2, we always have . Assume, wlog, that for some , and consider the row-normalized demand matrix with . Let be the maximal entry of . Since is non-negative, so is , and therefore the maximal sum of rows in satisfies . This quantity can thus be expressed as for some . We conclude that


We now rearrange the indices. Let be a path of length . We shall show that with high probability, the congestion incurred by on is at most . For each vertex arrange the entries of the ’th row of , by their order of magnitude: . This ordering induces an order on the paths : The path used to deliver a message of size corresponds to for some . We can thus denote by . Now, fix and note that the routing scheme determines a set of paths , chosen by the same random procedure as depicted in the proof of Theorem 1.3. Let be an edge, and let denote the flow incurred on by the routing of through the paths . We now have

The new order of the indices allows us to formulate the congestion over as follows:

Now, fix . Since , for all , we have . Whenever , we can say something stronger: The fact that the size of each row is at most , combined with the existence of entries of size at least , imply that . Applying these bounds in the above equation yields


where is the same random variable used in Section 3. Applying Lemma 3.3 with and the union bound implies

Lemma 4.1.

Inequality 8 and Lemma 4.1 assert that with probability at least , we have

5 Conclusion and Future Research

We presented novel oblivious routing algorithms for three extensively studied settings: s-MCF, u-MCF, and Valiant’s model. We leave the reader with many open questions, including: (1) How close is the performance of our algorithms to the optimal oblivious routing ratio (e.g., with respect to the spectral gap of the graph)? (2) Can our approach be extended to directed graphs? (3) Can some of the random choices involved in our scheme for u-MCF (and Valiant’s model be derandomized (e.g., the process of determining the set of canonical paths)? (4) Can our approach be leveraged to obtain better performance guarantees by exploiting the structure of specific classes of graphs (e.g., LPS [24] and, more generally, Cayley graphs [23], and also expanders generated via random permutations [9])? (5) Can our approach be utilized to design distributed oblivious routing schemes?


  • Akyildiz et al. [2000] Ian F. Akyildiz, Yi-Bing Lin, Wei-Ru Lai, and Rong-Jaye Chen. A new random walk model for pcs networks. IEEE Journal on Selected Areas in Communications, 18(7):1254–1260, 2000.
  • Aleliunas [1982] Romas Aleliunas. Randomized parallel communication (preliminary version). In Proceedings of the first ACM SIGACT-SIGOPS symposium on Principles of distributed computing, pages 60–72. ACM, 1982.
  • Alvelos and De Carvalho [2003] Filipe Alvelos and JM Valério De Carvalho. Comparing branch-and-price algorithms for the unsplittable multicommodity flow problem. In International Network Optimization Conference, pages 7–12, 2003.
  • Applegate and Cohen [2003] David Applegate and Edith Cohen. Making intra-domain routing robust to changing and uncertain traffic demands: Understanding fundamental tradeoffs. In Proceedings of the 2003 conference on Applications, technologies, architectures, and protocols for computer communications, pages 313–324. ACM, 2003.
  • Arora and Barak [2009] Sanjeev Arora and Boaz Barak. Computational complexity: a modern approach. Cambridge University Press, 2009.
  • Azar et al. [2003] Yossi Azar, Edith Cohen, Amos Fiat, Haim Kaplan, and Harald Racke. Optimal oblivious routing in polynomial time. In

    Proceedings of the thirty-fifth annual ACM symposium on Theory of computing

    , pages 383–388. ACM, 2003.
  • Bartal and Leonardi [1997] Yair Bartal and Stefano Leonardi. On-line routing in all-optical networks. Automata, Languages and Programming, pages 516–526, 1997.
  • Besta and Hoefler [2014] Maciej Besta and Torsten Hoefler. Slim fly: A cost effective low-diameter network topology. In Proceedings of the International Conference for High Performance Computing, Networking, Storage and Analysis, pages 348–359. IEEE Press, 2014.
  • Broder and Shamir [1987] Andrei Broder and Eli Shamir. On the second eigenvalue of random regular graphs. In Foundations of Computer Science, 1987., 28th Annual Symposium on, pages 286–294. IEEE, 1987.
  • Broder et al. [1994] Andrei Z Broder, Alan M Frieze, and Eli Upfal. Existence and construction of edge-disjoint paths on expander graphs. SIAM Journal on Computing, 23(5):976–989, 1994.
  • Broder et al. [1997] Andrei Z Broder, Alan M Frieze, and Eli Upfal. Static and dynamic path selection on expander graphs (preliminary version): a random walk approach. In Proceedings of the twenty-ninth annual ACM symposium on Theory of computing, pages 531–539. ACM, 1997.
  • Brown [1966] William G Brown. On graphs that do not contain a thomsen graph. Canad. Math. Bull, 9(2):1–2, 1966.
  • Chakrabarti et al. [2007] Amit Chakrabarti, Chandra Chekuri, Anupam Gupta, and Amit Kumar. Approximation algorithms for the unsplittable flow problem. Algorithmica, 47(1):53–78, 2007.
  • Doyle and Snell [1984] Peter G Doyle and J Laurie Snell. Random walks and electric networks. Mathematical Association of America,, 1984.
  • Erdos et al. [1962] Paul Erdos, Alfréd Rényi, and VT Sós. On a problem in the theory of graphs. Publ. Math. Inst. Hungar. Acad. Sci, 7:215–235, 1962.
  • Erlebach [2006] Thomas Erlebach. Approximation algorithms for edge-disjoint paths and unsplittable flow. Efficient Approximation and Online Algorithms, 3484:97–134, 2006.
  • Friedman [2003] Joel Friedman. A proof of alon’s second eigenvalue conjecture. In Proceedings of the thirty-fifth annual ACM symposium on Theory of computing, pages 720–724. ACM, 2003.
  • Greenberg et al. [2008] Albert Greenberg, Parantap Lahiri, David A Maltz, Parveen Patel, and Sudipta Sengupta. Towards a next generation data center architecture: scalability and commoditization. In Proceedings of the ACM workshop on Programmable routers for extensible services of tomorrow, pages 57–62. ACM, 2008.
  • Greenberg et al. [2009] Albert Greenberg, James R Hamilton, Navendu Jain, Srikanth Kandula, Changhoon Kim, Parantap Lahiri, David A Maltz, Parveen Patel, and Sudipta Sengupta. Vl2: a scalable and flexible data center network. In ACM SIGCOMM computer communication review, volume 39, pages 51–62. ACM, 2009.
  • Hajiaghayi et al. [2006] Mohammad T Hajiaghayi, Robert D Kleinberg, Tom Leighton, and Harald Räcke. New lower bounds for oblivious routing in undirected graphs. In Proceedings of the seventeenth annual ACM-SIAM symposium on Discrete algorithm, pages 918–927. Society for Industrial and Applied Mathematics, 2006.
  • Kim et al. [2008] John Kim, Wiliam J Dally, Steve Scott, and Dennis Abts. Technology-driven, highly-scalable dragonfly topology. In ACM SIGARCH Computer Architecture News, volume 36, pages 77–88. IEEE Computer Society, 2008.
  • Kolliopoulos and Stein [1997] Stavros G Kolliopoulos and Clifford Stein. Improved approximation algorithms for unsplittable flow problems. In Foundations of Computer Science, 1997. Proceedings., 38th Annual Symposium on, pages 426–436. IEEE, 1997.
  • Lubotzky [1995] Alexander Lubotzky. Cayley graphs: eigenvalues, expanders and random walks. London Mathematical Society Lecture Note Series, pages 155–190, 1995.
  • Lubotzky et al. [1988] Alexander Lubotzky, Ralph Phillips, and Peter Sarnak. Ramanujan graphs. Combinatorica, 8(3):261–277, 1988.
  • Maggs et al. [1997] Bruce M Maggs, F Meyer auf der Heide, Berthold Vocking, and Matthias Westermann. Exploiting locality for data management in systems of limited bandwidth. In Foundations of Computer Science, 1997. Proceedings., 38th Annual Symposium on, pages 284–293. IEEE, 1997.
  • McKeown [2009] Nick McKeown. Software-defined networking. INFOCOM keynote talk, 17(2):30–32, 2009.
  • McLeman and McNicholas [2014] Cam McLeman and Erin McNicholas. Graph invertibility. Graphs and Combinatorics, 30(4):977–1002, 2014.
  • Rabin [1989] Michael O Rabin. Efficient dispersal of information for security, load balancing, and fault tolerance. Journal of the ACM (JACM), 36(2):335–348, 1989.
  • Racke [2002] Harald Racke. Minimizing congestion in general networks. In Foundations of Computer Science, 2002. Proceedings. The 43rd Annual IEEE Symposium on, pages 43–52. IEEE, 2002.
  • Räcke [2008] Harald Räcke. Optimal hierarchical decompositions for congestion minimization in networks. In Proceedings of the fortieth annual ACM symposium on Theory of computing, pages 255–264. ACM, 2008.
  • Räcke and Rosén [2005] Harald Räcke and Adi Rosén. Distributed online call control on general networks. In Proceedings of the sixteenth annual ACM-SIAM symposium on Discrete algorithms, pages 791–800. Society for Industrial and Applied Mathematics, 2005.
  • Sciriha [2007] Irene Sciriha. A characterization of singular graphs. Electronic Journal of Linear Algebra, 16(1):38, 2007.
  • Servetto and Barrenechea [2002] Sergio D Servetto and Guillermo Barrenechea. Constrained random walks on random graphs: routing algorithms for large scale wireless sensor networks. In Proceedings of the 1st ACM international workshop on Wireless sensor networks and applications, pages 12–21. ACM, 2002.
  • Spyropoulos et al. [2005] Thrasyvoulos Spyropoulos, Konstantinos Psounis, and Cauligi S Raghavendra. Spray and wait: an efficient routing scheme for intermittently connected mobile networks. In Proceedings of the 2005 ACM SIGCOMM workshop on Delay-tolerant networking, pages 252–259. ACM, 2005.
  • Tavakoli et al. [2009] Arsalan Tavakoli, Martin Casado, Teemu Koponen, and Scott Shenker. Applying nox to the datacenter. In HotNets, 2009.
  • Tian et al. [2005] Hui Tian, Hong Shen, and Teruo Matsuzawa. Randomwalk routing for wireless sensor networks. In Parallel and Distributed Computing, Applications and Technologies, 2005. PDCAT 2005. Sixth International Conference on, pages 196–200. IEEE, 2005.
  • Upfal [1992] Eli Upfal. An o (log n) deterministic packet-routing scheme. Journal of the ACM (JACM), 39(1):55–70, 1992.
  • Valiant [1982] Leslie G. Valiant. A scheme for fast parallel communication. SIAM journal on computing, 11(2):350–361, 1982.
  • Valiant and Brebner [1981] Leslie G Valiant and Gordon J Brebner. Universal schemes for parallel communication. In Proceedings of the thirteenth annual ACM symposium on Theory of computing, pages 263–277. ACM, 1981.
  • Xu and Lau [1994] Cheng-Zhong Xu and Francis CM Lau. Iterative dynamic load balancing in multicomputers. Journal of the Operational Research Society, 45(7):786–796, 1994.
  • Zhang-Shen and McKeown [2005] Rui Zhang-Shen and Nick McKeown. Designing a predictable internet backbone with valiant load-balancing. In International Workshop on Quality of Service, pages 178–192. Springer, 2005.


Appendix A Preliminaries

a.1 The random walk operator and expander graphs

The random walk matrix of is given by

This matrix is diagnolizable with real eigenvalues that lie within the interval . Let be the eigenvalues and denote by its generalized second eigenvalue. We call a -regular graph of size with for some , an -graph. A family of graphs is an expander graph family if there are some constants and such that for every , is an -graph [5].

a.2 Chernoff bounds

We use the following version of the Chernoff bounds: Let be independent random variables (not necessarily with the same distribution), with for all . Suppose , and let . Then, given , we have:

Upper tail


Lower tail


Appendix B Proofs for s-MCF


(of Lemma 2.1) While a straightforward calculation of the entries may verify , the following proof is more instructive: Using the fact that the sum of the ’th row of equals , we have


The crux of the proof lies in the interpretation of as a representation of the flow induced by the operation of over . Indeed, the amount of flow that traverse from to through the edge equals . Equation 11 now means that whatever amount of flow incurred by the operation of over must return via the same edge in the opposite direction when operates over , hence .

Since the random walk matrix respects , and this property is preserved through the operations of pointwise multiplication, taking transpose (using the fact that is undirected) and row-normalization, we assert that respects as well. Being right stochastic stems directly from the row-normalization operation over a non-negative matrix. ∎


(of Lemma 2.3)

Recall that . Being the sum of anti-symmetric matrices that respect , is anti-symmetric and respects as well, and thus determines a magnitude and a direction for each . Using the matrix terminology, the standard flow constraints sums up to the equation . We now show that this is indeed the case:

Where we used the fact that for every vector and matrix , and that in case is right stochastic. ∎


(of Lemma 2.4) We begin by asserting that for every , we have




Equations 12, 13 suggest that an upper bound on the sequential congestion of the random walk process suffice in order to bound the sequential congestion in Algorithm 1.

Bounding the random walk. Given an initial distribution , let denote the maximal congestion incurred in operations of the random walk matrix :

A key feature of the random walk operation lies in the fact that the congestion incurred by is distributed evenly between all edges adjacent to . Indeed, if operates over , the flow induced over the edge equals , and thus the congestion incurred on each edge is . Suppose that is attained at some edge at time step . Since distributes congestion evenly, all the edges adjacent to had suffered the same congestion at time