Dynamic Switch Migration in Distributed Software-Defined Networks to Achieve Controller Load Balance

Yang Xu, Marco Cello, I. Chih Wang, Anwar Walid, Gordon Wilfong, Charles H.P. Wen, Mario Marchese, Jonathan H. Chao

Research output: Contribution to journalArticlepeer-review


Multiple distributed controllers have been used in software-defined networks (SDNs) to improve scalability and reliability, where each controller manages one static partition of the network. In this paper, we show that dynamic mapping between switches and controllers can improve efficiency in managing traffic load variations. In particular, we propose balanced controller (BalCon) and BalConPlus, two SDN switch migration schemes to achieve load balance among SDN controllers with small migration cost. BalCon is suitable for the scenarios where the network does not require a serial processing of switch requests. For other scenarios, BalConPlus is more suitable, as it is immune to the switch migration blackout and does not cause any service disruption. Simulations demonstrate that BalCon and BalConPlus significantly reduce the load imbalance among SDN controllers by migrating only a small number of switches with low computation overhead. We also build a prototype testbed based on the open-source SDN framework RYU to verify the practicality and effectiveness of BalCon and BalConPlus. Experiment confirms the results of the simulations. It also shows that BalConPlus is immune to switch migration blackout, an adverse effect in the baseline BalCon.

Original languageEnglish (US)
Article number8635530
Pages (from-to)515-529
Number of pages15
JournalIEEE Journal on Selected Areas in Communications
Issue number3
StatePublished - Mar 2019


  • Software-defined networking
  • distributed controllers
  • load balancing
  • switch migration

ASJC Scopus subject areas

  • Computer Networks and Communications
  • Electrical and Electronic Engineering


Dive into the research topics of 'Dynamic Switch Migration in Distributed Software-Defined Networks to Achieve Controller Load Balance'. Together they form a unique fingerprint.

Cite this