Efficient Distributed Workload (Re-)Embedding

Modern networked systems are increasingly reconfigurable, enabling demand-aware infrastructures whose resources can be adjusted according to the workload they currently serve. Such dynamic adjustments can be exploited to improve network utilization and hence performance, by moving frequently interacting communication partners closer, e.g., collocating them in the same server or datacenter. However, dynamically changing the embedding of workloads is algorithmically challenging: communication patterns are often not known ahead of time, but must be learned. During the learning process, overheads related to unnecessary moves (i.e., re-embeddings) should be minimized. This paper studies a fundamental model which captures the tradeoff between the benefits and costs of dynamically collocating communication partners on $\ell$ servers, in an online manner. Our main contribution is a distributed online algorithm which is asymptotically almost optimal, i.e., almost matches the lower bound (also derived in this paper) on the competitive ratio of any (distributed or centralized) online algorithm. As an application, we show that our algorithm can be used to solve a distributed union find problem in which the sets are stored across multiple servers.

[1]  Yuval Rabani,et al.  Competitive k-server algorithms , 1990, Proceedings [1990] 31st Annual Symposium on Foundations of Computer Science.

[2]  Michael J. Fischer,et al.  An improved equivalence algorithm , 1964, CACM.

[3]  Rob Sherwood,et al.  Carving research slices out of your production networks with OpenFlow , 2010, CCRV.

[4]  Stefan Schmid,et al.  Toward demand-aware networking: a theory for self-adjusting networks , 2018, CCRV.

[5]  Konstantin Andreev,et al.  Balanced Graph Partitioning , 2004, SPAA '04.

[6]  Manor Mendel,et al.  Online Companion Caching , 2002, ESA.

[7]  Richard E. Korf,et al.  Multi-Way Number Partitioning , 2009, IJCAI.

[8]  Pankaj K. Agarwal,et al.  I/O-efficient batched union-find and its applications to terrain analysis , 2006, SCG '06.

[9]  Md. Mostofa Ali Patwary,et al.  A Scalable Parallel Union-Find Algorithm for Distributed Memory Computers , 2009, PPAM.

[10]  Jean R. S. Blair,et al.  Experiments on Union-Find Algorithms for the Disjoint-Set Data Structure , 2010, SEA.

[11]  Stefan Schmid,et al.  Dynamic Balanced Graph Partitioning , 2015, SIAM J. Discret. Math..

[12]  Neal E. Young,et al.  On-line caching as cache size varies , 1991, SODA '91.

[13]  Albert G. Greenberg,et al.  Data center TCP (DCTCP) , 2010, SIGCOMM '10.

[14]  Himanshu Shah,et al.  FireFly , 2014, SIGCOMM.

[15]  Richard J. Anderson,et al.  Wait-free parallel algorithms for the union-find problem , 1991, STOC '91.

[16]  Piotr Indyk,et al.  On page migration and other relaxed task systems , 1997, SODA '97.

[17]  David A. Maltz,et al.  Network traffic characteristics of data centers in the wild , 2010, IMC '10.

[18]  Min Zhu,et al.  B4: experience with a globally-deployed software defined wan , 2013, SIGCOMM.

[19]  Satish Rao,et al.  New approximation techniques for some ordering problems , 1998, SODA '98.

[20]  David L. Black,et al.  Competitive algorithms for replication and migration problems , 1989 .

[21]  Emmanuel Abbe,et al.  Community detection and stochastic block models: recent developments , 2017, Found. Trends Commun. Inf. Theory.

[22]  Amos Fiat,et al.  Competitive Paging Algorithms , 1991, J. Algorithms.

[23]  Robert E. Tarjan,et al.  Amortized efficiency of list update and paging rules , 1985, CACM.

[24]  Minlan Yu,et al.  Rethinking virtual network embedding: substrate support for path splitting and migration , 2008, CCRV.

[25]  Stefan Schmid,et al.  Online Balanced Repartitioning , 2015, DISC.

[26]  Alex C. Snoeren,et al.  Inside the Social Network's (Datacenter) Network , 2015, Comput. Commun. Rev..

[27]  Jan van Leeuwen,et al.  Worst-case Analysis of Set Union Algorithms , 1984, JACM.

[28]  David B. Shmoys,et al.  Using dual approximation algorithms for scheduling problems: Theoretical and practical results , 1985, 26th Annual Symposium on Foundations of Computer Science (sfcs 1985).

[29]  Ethan L. Schreiber Optimal Multi-Way Number Partitioning , 2018, J. ACM.

[30]  Stefan Schmid,et al.  Kraken: Online and elastic resource reservations for multi-tenant datacenters , 2016, IEEE INFOCOM 2016 - The 35th Annual IEEE International Conference on Computer Communications.

[31]  George Cybenko,et al.  Practical parallel Union-Find algorithms for transitive closure and clustering , 1989, International Journal of Parallel Programming.

[32]  Glenn Judd,et al.  Attaining the Promise and Avoiding the Pitfalls of TCP in the Datacenter , 2015, NSDI.

[33]  Félix Cuadrado,et al.  Adaptive Partitioning for Large-Scale Dynamic Graphs , 2013, 2014 IEEE 34th International Conference on Distributed Computing Systems.

[34]  Artur Czumaj,et al.  An O(log k)-Competitive Algorithm for Generalized Caching , 2012, SODA.

[35]  Geoffrey Zweig,et al.  Syntactic Clustering of the Web , 1997, Comput. Networks.

[36]  Robert Krauthgamer,et al.  A polylogarithmic approximation of the minimum bisection , 2000, Proceedings 41st Annual Symposium on Foundations of Computer Science.

[37]  George Varghese,et al.  P4: programming protocol-independent packet processors , 2013, CCRV.

[38]  Cauligi S. Raghavendra,et al.  Datacenter Traffic Control: Understanding Techniques and Tradeoffs , 2017, IEEE Communications Surveys & Tutorials.

[39]  David S. Johnson,et al.  Computers and Intractability: A Guide to the Theory of NP-Completeness , 1978 .

[40]  Leah Epstein,et al.  Online File Caching with Rejection Penalties , 2015, Algorithmica.

[41]  Md. Mostofa Ali Patwary,et al.  Multi-core Spanning Forest Algorithms using the Disjoint-set Data Structure , 2012, 2012 IEEE 26th International Parallel and Distributed Processing Symposium.

[42]  Albert G. Greenberg,et al.  Ananta: cloud scale load balancing , 2013, SIGCOMM.

[43]  C. Raghavendra,et al.  Datacenter Traffic Control: Understanding Techniques and Tradeoffs , 2017, IEEE Communications Surveys & Tutorials.

[44]  Kirk Pruhs,et al.  The Itinerant List Update Problem , 2018, WAOA.

[45]  Alexander J. Smola,et al.  Scaling Distributed Machine Learning with the Parameter Server , 2014, OSDI.

[46]  Nikhil R. Devanur,et al.  ProjecToR: Agile Reconfigurable Data Center Interconnect , 2016, SIGCOMM.

[47]  Lucian Popa,et al.  What we talk about when we talk about cloud network performance , 2012, CCRV.

[48]  Hong Liu,et al.  Jupiter Rising: A Decade of Clos Topologies and Centralized Control in Google's Datacenter Network , 2015, Comput. Commun. Rev..

[49]  Allan Borodin,et al.  An optimal on-line algorithm for metrical task system , 1992, JACM.

[50]  Anja Feldmann,et al.  The Wide-Area Virtual Service Migration Problem: A Competitive Analysis Approach , 2014, IEEE/ACM Transactions on Networking.

[51]  Srikanth Kandula,et al.  Achieving high utilization with software-driven WAN , 2013, SIGCOMM.

[52]  Carlo Contavalli,et al.  Maglev: A Fast and Reliable Software Network Load Balancer , 2016, NSDI.