Table of Contents
Fetching ...

Caching Connections in Matchings

Yaniv Sadeh, Haim Kaplan

TL;DR

Caching in Matchings studies an online problem where a cache of $k$ matchings must accommodate edge requests on a bipartite graph with $n$ nodes per side. The authors show that, unlike Connection Caching, the competitive ratio necessarily depends on $n$ and provide both deterministic $O(nk)$ and randomized $O(n\log k)$ algorithms, along with matching lower bounds. Resource augmentation with extra matchings yields dramatic improvements, achieving $O(k)$- or $O(\log k)$-level competitiveness in the augmented setting, and polylog trade-offs in various regimes. The work ties to dynamic edge coloring and convex-body chasing in $L_1$, offering a structured reduction to Connection Caching and outlining avenues for direct algorithms and further tightening of $n$-dependence in general graphs.

Abstract

Motivated by the desire to utilize a limited number of configurable optical switches by recent advances in Software Defined Networks (SDNs), we define an online problem which we call the Caching in Matchings problem. This problem has a natural combinatorial structure and therefore may find additional applications in theory and practice. In the Caching in Matchings problem our cache consists of $k$ matchings of connections between servers that form a bipartite graph. To cache a connection we insert it into one of the $k$ matchings possibly evicting at most two other connections from this matching. This problem resembles the problem known as Connection Caching, where we also cache connections but our only restriction is that they form a graph with bounded degree $k$. Our results show a somewhat surprising qualitative separation between the problems: The competitive ratio of any online algorithm for caching in matchings must depend on the size of the graph. Specifically, we give a deterministic $O(nk)$ competitive and randomized $O(n \log k)$ competitive algorithms for caching in matchings, where $n$ is the number of servers and $k$ is the number of matchings. We also show that the competitive ratio of any deterministic algorithm is $Ω(\max(\frac{n}{k},k))$ and of any randomized algorithm is $Ω(\log \frac{n}{k^2 \log k} \cdot \log k)$. In particular, the lower bound for randomized algorithms is $Ω(\log n)$ regardless of $k$, and can be as high as $Ω(\log^2 n)$ if $k=n^{1/3}$, for example. We also show that if we allow the algorithm to use at least $2k-1$ matchings compared to $k$ used by the optimum then we match the competitive ratios of connection catching which are independent of $n$. Interestingly, we also show that even a single extra matching for the algorithm allows to get substantially better bounds.

Caching Connections in Matchings

TL;DR

Caching in Matchings studies an online problem where a cache of matchings must accommodate edge requests on a bipartite graph with nodes per side. The authors show that, unlike Connection Caching, the competitive ratio necessarily depends on and provide both deterministic and randomized algorithms, along with matching lower bounds. Resource augmentation with extra matchings yields dramatic improvements, achieving - or -level competitiveness in the augmented setting, and polylog trade-offs in various regimes. The work ties to dynamic edge coloring and convex-body chasing in , offering a structured reduction to Connection Caching and outlining avenues for direct algorithms and further tightening of -dependence in general graphs.

Abstract

Motivated by the desire to utilize a limited number of configurable optical switches by recent advances in Software Defined Networks (SDNs), we define an online problem which we call the Caching in Matchings problem. This problem has a natural combinatorial structure and therefore may find additional applications in theory and practice. In the Caching in Matchings problem our cache consists of matchings of connections between servers that form a bipartite graph. To cache a connection we insert it into one of the matchings possibly evicting at most two other connections from this matching. This problem resembles the problem known as Connection Caching, where we also cache connections but our only restriction is that they form a graph with bounded degree . Our results show a somewhat surprising qualitative separation between the problems: The competitive ratio of any online algorithm for caching in matchings must depend on the size of the graph. Specifically, we give a deterministic competitive and randomized competitive algorithms for caching in matchings, where is the number of servers and is the number of matchings. We also show that the competitive ratio of any deterministic algorithm is and of any randomized algorithm is . In particular, the lower bound for randomized algorithms is regardless of , and can be as high as if , for example. We also show that if we allow the algorithm to use at least matchings compared to used by the optimum then we match the competitive ratios of connection catching which are independent of . Interestingly, we also show that even a single extra matching for the algorithm allows to get substantially better bounds.
Paper Structure (13 sections, 30 theorems, 6 figures, 1 table, 2 algorithms)

This paper contains 13 sections, 30 theorems, 6 figures, 1 table, 2 algorithms.

Key Result

Theorem 7

There exist $nk$ deterministic and $O(n \log k)$ randomized competitive algorithms in bipartite graphs for Caching in Matchings.

Figures (6)

  • Figure 1: The physical topology that motivates our problem: $n$ servers $s_1,\ldots,s_n$, each is connected to the in/out ports of $k$ optical switches ${sw}_1$ through ${sw}_k$. Each switch ${sw}_j$ uses mirrors to switch optical links, effectively inducing an in/out permutation, which may change over time at a reconfiguration cost of $1$ per each new pairing. Abstractly, we get a bipartite graph with $n$ nodes on each side (one per server), and each permutation is a matching that caches links.
  • Figure 2: An example of the difference between connection caching versus caching in matchings. (left) With $k=2$ max degree and $n=3$ nodes, all the connections can be cached simultaneously, but not in $2$ matchings, red and blue. (right) Bipartite example: Caching the edge $(s^i_1,s^o_2)$ (i/o for in/out) is not possible without changing the matchings (red: $\{ (s^i_1,s^o_3),(s^i_3,s^o_1) \}$; blue: $\{ (s^i_3,s^o_2),(s^i_2,s^o_1) \}$), although both $s^i_1$ and $s^o_2$ only have a single connection.
  • Figure 3: Visualization of a brick (Definitions \ref{['definition_brick_short']}), a road and an $r$-road (Definition \ref{['definition_road']}). (a) A brick for $k=3$ ($w=4$). The number of each node is written, and the colors are as follows: blue (0), green (1), red (2). Thus, for example, $1 \oplus red = 3$. We removed a single edge, blue $(3,3)$, thus the brick is blue. (b) A schematic way to draw a brick (top) and a road of length $4$ (bottom) which is a chain of bricks connected to each other by their endpoints. The color of a road is well-defined by the color of its bricks. (c) An $r$-road for $r=2$, of length $4$. The node that connects to both roads is its hub. Nodes are colored by gray and white according to their side in the bipartite graph.
  • Figure 5: Visualization of merging a pair of $2$-roads of length $d=2$ to a single twice longer $2$-road. In this example $k\ge 4$. Initially the $2$-roads are disjoint. Then, we cut a road from the right $2$-road and extend another road in the left $2$-road. If necessary, the algorithm recolors one or more of the roads. Then we do the same for the remaining road. In the end, the hub of the cut-down $2$-road is a node of degree $0$.
  • Figure 7: The two states of graph in Lemma \ref{['lemma_RC_bad_competitive']}. (1) During odd phases, requested edges imply a $2$-road. (2) During even phases, requested edges imply a single long road.
  • ...and 1 more figures

Theorems & Definitions (41)

  • Remark 1
  • Remark 2
  • Definition 3: Cost, Competitive Ratio
  • Remark 4
  • Remark 5
  • Remark 6
  • Theorem 7
  • Theorem 8
  • Theorem 9
  • Corollary 10
  • ...and 31 more