Joint Online Coflow Routing and Scheduling in Data Center Networks

A coflow is a collection of related parallel flows that occur typically between two stages of a multi-stage computing task in a network, such as shuffle flows in MapReduce. The coflow abstraction allows applications to convey their semantics to the network so that application-level requirements can be better satisfied. In this paper, we study the routing and scheduling of multiple coflows to minimize the total weighted coflow completion time (CCT). We first propose a rounding-based randomized approximation algorithm, called OneCoflow, for single coflow routing and scheduling. The multiple coflow problem is more challenging as coexisting coflows will compete for the same network resources, such as link bandwidth. To minimize the total weighted CCT, we derive an online multiple coflow routing and scheduling algorithm, called OMCoflow. We then derive a competitive ratio bound of our problem and prove that the competitive ratio of OMCoflow is nearly tight. To the best of our knowledge, this is the first online algorithm with theoretical performance guarantees which considers routing and scheduling simultaneously for multi-coflows. Compared with existing methods, OMCoflow runs more efficiently and avoids frequently rerouting the flows. Extensive simulations on a Facebook data trace show that OMCoflow outperforms the state-of-the-art heuristic schemes significantly (e.g., reducing the total weighted CCT by up to 41.8% and the execution time by up to 99.2% against RAPIER).

[1]  Scott Shenker,et al.  Spark: Cluster Computing with Working Sets , 2010, HotCloud.

[2]  Ming Zhang,et al.  MicroTE: fine grained traffic engineering for data centers , 2011, CoNEXT '11.

[3]  T. S. Eugene Ng,et al.  Sunflow: Efficient Optical Circuit Scheduling for Coflows , 2016, CoNEXT.

[4]  Joseph Gonzalez,et al.  PowerGraph: Distributed Graph-Parallel Computation on Natural Graphs , 2012, OSDI.

[5]  Amin Vahdat,et al.  A scalable, commodity data center network architecture , 2008, SIGCOMM '08.

[6]  Javad Ghaderi,et al.  Scheduling Coflows in Datacenter Networks: Improved Bound for Total Weighted Completion Time , 2017, SIGMETRICS.

[7]  Wei Bai,et al.  Information-Agnostic Flow Scheduling for Commodity Data Centers , 2015, NSDI.

[8]  Leslie G. Valiant,et al.  A bridging model for parallel computation , 1990, CACM.

[9]  Guy E. Blelloch,et al.  GraphChi: Large-Scale Graph Computation on Just a PC , 2012, OSDI.

[10]  Samir Khuller,et al.  On Scheduling Coflows , 2020, Algorithmica.

[11]  Brighten Godfrey,et al.  Finishing flows quickly with preemptive scheduling , 2012, CCRV.

[12]  Amit Kumar,et al.  Minimizing Average Flow-time : Upper and Lower Bounds , 2007, 48th Annual IEEE Symposium on Foundations of Computer Science (FOCS'07).

[13]  R. Srikant,et al.  Multi-Path TCP: A Joint Congestion Control and Routing Scheme to Exploit Path Diversity in the Internet , 2006, IEEE/ACM Transactions on Networking.

[14]  Qingkai Liang,et al.  Coflow scheduling in input-queued switches: Optimal delay scaling and algorithms , 2017, IEEE INFOCOM 2017 - IEEE Conference on Computer Communications.

[15]  Shaojie Tang,et al.  Reco: Efficient Regularization-Based Coflow Scheduling in Optical Circuit Switches , 2019, 2019 IEEE 39th International Conference on Distributed Computing Systems (ICDCS).

[16]  Yanhui Geng,et al.  CODA: Toward Automatically Identifying and Scheduling Coflows in the Dark , 2016, SIGCOMM.

[17]  Sheng Wang,et al.  Rapier: Integrating routing and scheduling for coflow-aware data center networks , 2015, 2015 IEEE Conference on Computer Communications (INFOCOM).

[18]  Ion Stoica,et al.  Efficient Coflow Scheduling Without Prior Knowledge , 2015, SIGCOMM.

[19]  Bo Li,et al.  Utopia: Near-optimal Coflow Scheduling with Isolation Guarantee , 2018, IEEE INFOCOM 2018 - IEEE Conference on Computer Communications.

[20]  Antony I. T. Rowstron,et al.  Decentralized task-aware scheduling for data center networks , 2014, SIGCOMM.

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

[22]  Christian E. Hopps,et al.  Analysis of an Equal-Cost Multi-Path Algorithm , 2000, RFC.

[23]  Xiaobo Zhou,et al.  Leveraging Endpoint Flexibility when Scheduling Coflows across Geo-distributed Datacenters , 2018, IEEE INFOCOM 2018 - IEEE Conference on Computer Communications.

[24]  Nick McKeown,et al.  pFabric: minimal near-optimal datacenter transport , 2013, SIGCOMM.

[25]  Chen Tian,et al.  Scheduling Cofiows of Multi-stage Jobs to Minimize the Total Weighted Job Completion Time , 2018, IEEE INFOCOM 2018 - IEEE Conference on Computer Communications.

[26]  Lisa Fleischer,et al.  Approximating fractional multicommodity flow independent of the number of commodities , 1999, 40th Annual Symposium on Foundations of Computer Science (Cat. No.99CB37039).

[27]  Wei Li,et al.  Tux2: Distributed Graph Computation for Machine Learning , 2017, NSDI.

[28]  Haitao Wu,et al.  Explicit Path Control in Commodity Data Centers: Design and Applications , 2016, IEEE/ACM Transactions on Networking.

[29]  H. Chernoff A Measure of Asymptotic Efficiency for Tests of a Hypothesis Based on the sum of Observations , 1952 .

[30]  Bo Li,et al.  Optimizing coflow completion times with utility max-min fairness , 2016, IEEE INFOCOM 2016 - The 35th Annual IEEE International Conference on Computer Communications.

[31]  Zizhan Zheng,et al.  Online Partial Throughput Maximization for Multidimensional Coflow , 2018, IEEE INFOCOM 2018 - IEEE Conference on Computer Communications.

[32]  Amin Vahdat,et al.  Hedera: Dynamic Flow Scheduling for Data Center Networks , 2010, NSDI.

[33]  Alon Itai,et al.  On the complexity of time table and multi-commodity flow problems , 1975, 16th Annual Symposium on Foundations of Computer Science (sfcs 1975).

[34]  Ion Stoica,et al.  Coflow: a networking abstraction for cluster applications , 2012, HotNets-XI.

[35]  Jipeng Zhou,et al.  Efficient online coflow routing and scheduling , 2016, MobiHoc.

[36]  Chao Xu,et al.  OMCO: Online Multiple Coflow Scheduling in Optical Circuit Switch , 2018, 2018 IEEE International Conference on Communications (ICC).

[37]  Yuan Yu,et al.  TensorFlow: A system for large-scale machine learning , 2016, OSDI.

[38]  Guihai Chen,et al.  Energy-Efficient Dynamic Virtual Machine Management in Data Centers , 2019, IEEE/ACM Transactions on Networking.

[39]  Ion Stoica,et al.  Efficient coflow scheduling with Varys , 2015, SIGCOMM.

[40]  Michael I. Jordan,et al.  Managing data transfers in computer clusters with orchestra , 2011, SIGCOMM.

[41]  Marina Thottan,et al.  Mazu: Taming Latency in Software Defined Networks , 2014 .

[42]  W. Hoeffding Probability Inequalities for sums of Bounded Random Variables , 1963 .

[43]  Yuan Yu,et al.  Dryad: distributed data-parallel programs from sequential building blocks , 2007, EuroSys '07.

[44]  Yaoliang Yu,et al.  Petuum: A New Platform for Distributed Machine Learning on Big Data , 2015, IEEE Trans. Big Data.

[45]  Sheng Wang,et al.  Minimizing average coflow completion time with decentralized scheduling , 2015, 2015 IEEE International Conference on Communications (ICC).

[46]  Yuan Zhong,et al.  Minimizing the Total Weighted Completion Time of Coflows in Datacenter Networks , 2015, SPAA.

[47]  Sanjay Ghemawat,et al.  MapReduce: Simplified Data Processing on Large Clusters , 2004, OSDI.

[48]  Andrew Chi-Chih Yao,et al.  Probabilistic computations: Toward a unified measure of complexity , 1977, 18th Annual Symposium on Foundations of Computer Science (sfcs 1977).

[49]  Christo Wilson,et al.  Better never than late , 2011, SIGCOMM 2011.