Load-balancing routing in software defined networks with multiple controllers

Abstract Software defined networking is a new paradigm that separates the control plane from the data plane. To provide high scalability and reduce the controller load in a large-scale software defined network (SDN), a natural way is to deploy a cluster of distributed controllers so as to cooperatively manage the network. However, since each controller just manages a set of the connected (or associated) switches and usually holds the information of these switches (and connected links), it may result in controller load imbalance and link load imbalance. Thus, both controller load and link load should be optimized to achieve better QoS in SDNs. To this end, this paper tries to answer the following question: how to perform both controller load balancing and link load balancing in an SDN? We formulate the load-balancing routing for both links and controllers (LBR-LC) problem in an SDN, and prove its NP-hardness. A rounding-based algorithm is proposed to solve this problem, and the approximation performance is also analyzed. Moreover, we discuss the efficient mechanism for network status maintenance among distributed controllers. The extensive simulation results show that our proposed algorithm can reduce the maximum controller response time by 70% compared with the previous solution, while only increasing the maximum link load by 3%.

[1]  Yashar Ganjali,et al.  HyperFlow: A Distributed Control Plane for OpenFlow , 2010, INM/WREN.

[2]  Hiroshi Matsuo,et al.  Scalable and Crash-Tolerant Load Balancing Based on Switch Migration for Multiple Open Flow Controllers , 2014, 2014 Second International Symposium on Computing and Networking.

[3]  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).

[4]  Yashar Ganjali,et al.  Kandoo: a framework for efficient and scalable offloading of control applications , 2012, HotSDN '12.

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

[6]  H. Jonathan Chao,et al.  Use of devolved controllers in data center networks , 2011, 2011 IEEE Conference on Computer Communications Workshops (INFOCOM WKSHPS).

[7]  Albert G. Greenberg,et al.  VL2: a scalable and flexible data center network , 2009, SIGCOMM '09.

[8]  Hong Xu,et al.  Dynamic SDN controller assignment in data center networks: Stable matching with transfers , 2016, IEEE INFOCOM 2016 - The 35th Annual IEEE International Conference on Computer Communications.

[9]  Xiang-Yang Li,et al.  Incremental Deployment and Throughput Maximization Routing for a Hybrid SDN , 2017, IEEE/ACM Transactions on Networking.

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

[11]  Rob Sherwood,et al.  The controller placement problem , 2012, HotSDN@SIGCOMM.

[12]  Nick McKeown,et al.  OpenFlow: enabling innovation in campus networks , 2008, CCRV.

[13]  Jun Bi,et al.  On the Capacitated Controller Placement Problem in Software Defined Networks , 2014, IEEE Communications Letters.

[14]  Zhiqiang Ma,et al.  HadoopWatch: A first step towards comprehensive traffic forecasting in cloud computing , 2014, IEEE INFOCOM 2014 - IEEE Conference on Computer Communications.

[15]  Jia Wang,et al.  Scalable flow-based networking with DIFANE , 2010, SIGCOMM '10.

[16]  Rob Sherwood,et al.  On Controller Performance in Software-Defined Networks , 2012, Hot-ICE.

[17]  Ian F. Akyildiz,et al.  QoS-Aware Adaptive Routing in Multi-layer Hierarchical Software Defined Networks: A Reinforcement Learning Approach , 2016, 2016 IEEE International Conference on Services Computing (SCC).

[18]  Kyusun Choi,et al.  Fat tree encoder design for ultra-high speed flash A/D converters , 2002, The 2002 45th Midwest Symposium on Circuits and Systems, 2002. MWSCAS-2002..

[19]  Phuoc Tran-Gia,et al.  SDN-Based Application-Aware Networking on the Example of YouTube Video Streaming , 2013, 2013 Second European Workshop on Software Defined Networks.

[20]  Martín Casado,et al.  Onix: A Distributed Control Platform for Large-scale Production Networks , 2010, OSDI.

[21]  H. Jonathan Chao,et al.  Load balancing for multiple traffic matrices using SDN hybrid routing , 2014, 2014 IEEE 15th International Conference on High Performance Switching and Routing (HPSR).

[22]  Sujata Banerjee,et al.  DevoFlow: scaling flow management for high-performance networks , 2011, SIGCOMM 2011.

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

[24]  Fang Hao,et al.  Towards an elastic distributed SDN controller , 2013, HotSDN '13.

[25]  Martín Casado,et al.  Network Virtualization in Multi-tenant Datacenters , 2014, NSDI.

[26]  Min Luo,et al.  Control traffic balancing in software defined networks , 2016, Comput. Networks.

[27]  Martín Casado,et al.  NOX: towards an operating system for networks , 2008, CCRV.

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

[29]  Sajad Shirali-Shahreza,et al.  ReWiFlow: Restricted Wildcard OpenFlow Rules , 2015, CCRV.

[30]  George Varghese,et al.  CONGA: distributed congestion-aware load balancing for datacenters , 2015, SIGCOMM.

[31]  Mario Marchese,et al.  BalCon: A Distributed Elastic SDN Control via Efficient Switch Migration , 2017, 2017 IEEE International Conference on Cloud Engineering (IC2E).

[32]  Mathieu Bouet,et al.  DISCO: Distributed multi-domain SDN controllers , 2013, 2014 IEEE Network Operations and Management Symposium (NOMS).

[33]  Prabhakar Raghavan,et al.  Randomized rounding: A technique for provably good algorithms and algorithmic proofs , 1985, Comb..