ارائه روشی توزیعی و پایدار برای توازن بار بین کنترل‌کننده‌ها در شبکه‌های مبتنی بر نرم‌افزار

نویسندگان

دانشکده مهندسی کامپیوتر - دانشگاه علم و صنعت ایران

چکیده

در سال‌های اخیر، شبکه‌های مبتنی بر نرم‌افزار به‌منظور مدیریت ساده‌تر، بهینه‌تر و قابلیت برنامه‌ریزی بیش‌تر شبکه‌های کامپیوتری مطرح شده‌اند. این شبکه‌ها از جداسازی لایه کنترل از داده و متمرکز سازی بخش کنترلی بهره می‌برند. با توجه به رشد سریع شبکه‌ها، افزایش تعداد سوئیچ‌ها و ترافیک موجود در شبکه، معماری‌های توزیع‌شده برای بخش کنترلی با حفظ دید شبکه‌ای متمرکز به‌منظور بهبود دسترسی‌پذیری، تحمل‌پذیری خطا و قابلیت اطمینان مطرح شدند. در این نوع از معماری‌ها، چگونگی تخصیص سوئیچ‌ها به کنترل‌کننده‌ها به‌منظور ایجاد توازن بار بین کنترل‌کننده‌ها و درنتیجه استفاده بهینه‌تر از منابع شبکه از اهمیت بالایی برخوردار است. برای پاسخگویی به این چالش‌ها، در این مقاله به ارائه روشی توزیعی و پایدار برای توازن بار بین کنترل‌کننده‌ها می‌پردازیم. روش پیشنهادی اطلاعات مربوط به میزان بار هر کنترل‌کننده را جمع‌آوری نموده و در صورت تجاوز از حد آستانه و نرخ توازن بار، سوئیچی را جهت مهاجرت به کنترل‌کننده با کم‌ترین میزان بار انتخاب می‌نماید که منجر به بهبود توازن بار شبکه گردد و کارایی حاصل از مهاجرت نسبت به هزینه تحمیلی به شبکه بهتر باشد. روش پیشنهادی با وجود عملکرد توزیعی از مهاجرت هم‌زمان بار دو کنترل‌کننده و ناپایداری حاصل از انتقال بار به یک کنترل‌کننده مقصد یکسان و نیاز به توزیع بار مجدد جلوگیری می‌کند. نتایج ارزیابی‌های حاصل از پیاده‌سازی روش پیشنهادی نشان می‌دهد که این روش سبب کاهش تا حدود 70 درصد در زمان پردازش بسته‌های Packet-In در کنترل‌کننده دچار ازدحام، بهبود حدود 15 درصد در میانگین مصرف حافظه و افزایش حدود 50 درصد در توان گذردهی ترافیک کنترل‌کننده گشته است.

کلیدواژه‌ها


عنوان مقاله [English]

Stable Distributed Load Balancing between Controllers in Software Defined Networks

نویسندگان [English]

  • B. Ahmadi
  • Z. Movahedi
Faculty of Computer Engineering, Iran University of Science & Technology, Tehran, Iran
چکیده [English]

In recent years, Software Defined Networks (SDN) have been raised as a promising approach to improve the network programmability and management of computer networks. It consists in separating the control plane from the data plane and centralizing the control part of the network. Due to the rapid growth of computer networks in terms of number of switches and the amount of transiting traffic, the distributed architecture with centralized view on the network has been designed for control plane, enhancing the scalability, availability, fault tolerance and reliability. In such a distributed architecture, the load balancing between controllers plays an important role towards the optimal use of networking resources. To address the aforementioned challenges, we propose a stable distributed solution for load balancing between controllers in software defined networks. The proposed solution collects information on the amount of load of controllers and their corresponding switches. Based on this knowledge, the controller with the highest overload migrates the switch leading to the best enhancement in load balancing of the network to the least-loaded controller, if the network load is not balanced and the migration benefit is significant compared to its cost. The proposed solution inhibits simultaneous migrations triggered by distributed controllers to avoid cascade re-migrations and ensures the network stability. The results of the test-bed study of the proposed approach show that out solution outperforms other counterparts up to 15% in terms of average memory consumption, 50% in terms of controller traffic throughput and 70% in terms of processing time of the overloaded controllers.

کلیدواژه‌ها [English]

  • Software-Defined Networks (SDN)
  • OpenFlow
  • Distributed controllers
  • Load Balancing
[1] N. McKeown, T. Anderson., H. Balakrishnan., G. Parulkar, L. Peterson., J. Rexford., S. Shenker, and J. Turner, “OpenFlow: enabling innovation in campus networks,”   SIGCOMM CCR, vol. 38, no.2, pp 69-74, 2008.
[2] W. Xia, Y. Wen., C.H. Foh, D. Niyato, and H. Xie, “A survey on software-defined networking,”  IEEE Communications Surveys & Tutorials, vol. 17, no. 1, pp 27-51, 2015.
[3] S. Kaur, K. Kumar, J. Singh., and N.S. Ghumman, “Round-Robin Based Load Balancing in Software Defined Networking,” IEEE 2nd International Conference (INDIACom), pp. 2136–2139, 2015.
[4] H. Zhang, and G. Xiao, “SDN-based load balancing strategy for server cluster In Cloud Computing and Intelligence Systems (CCIS),”  IEEE 3rd International Conference, pp. 662-667, 2014.
[5] T. Koponen, M. Casado, N. Gude,  J. Stribling, L. Poutievski, M. Zhu, R.  Ramanathan, Y. Iwata, H. Inoue, T. Hama, “Onix: A distributed control platform for large-scale production networks,” OSID, vol. 10, pp. 1-6, 2010.
[6] A. Tootoonchian and Y. Ganjali, “Hyper flow: A distributed control plane for OpenFlow,” In Proceedings of the 2010 internet network management conference on Research on enterprise networking, USENIX Association, pp. 3-3,  2010.
[7]  D. Vinayagamurthy and J. Balasundaram, “Load Balancing between Controllers,” Technical report, Department of Computer Science, University of Toronto, 2012.
[8] Y. Hu, W. Wang, X. yang Gong, X. Que, and S. Cheng. "Balance flow: controller load balancing for OpenFlow networks,”  Cloud Computing and Intelligent Systems (CCIS), IEEE 2nd International Conference on, vol. 2, pp. 780-785, 2012.
[9] A. Hakiri, A. Gokhale, P. Berthou, D. C. Schmidt, T. Gayraud, “Software-Defined Networking: Challenges and research opportunities for Future Internet,” Elsevier Journal of computer networks, vol. 75, pp. 453-471, 2014.
[10] D. L. Tennenhouse, D. Wetherall, ”Towards an active network architecture,” IEEE DARPA Active Networks Conference and Exposition, pp. 2-15, 2002.
[11] Y. Kyung, K. Hong, T.M. Nguyen, S. Park, and J. Park, “A load distribution scheme over multiple controllers for scalable SDN," In Ubiquitous and Future Networks (ICUFN), IEEE Seventh International Conference on, pp. 808-810, 2016.
[12] A. Dixit, F. Hao, S. Mukherjee, T. V. Lakshman, and R.R. Kompella, “ElastiCon: an elastic distributed SDN controller,” In Proceedings of the tenth ACM/IEEE symposium on Architectures for networking and communications systems, pp. 17-28, 2014.
[13] Y. Zhou, M. Zhu, L. Xiao, L.Ruan, W. Duan, D.  Li., R. Liu, and M. Zhu, “A Load Balancing Strategy of SDN Controller Based on Distributed Decision,” Trust, Security and Privacy in Computing and Communications (TrustCom), IEE 13th International Conference, pp. 851-856, 2014.
[14] Floodlight Project. http://www.projectfloodlight.org/.
[15] “OpenFlow Switch Specification Version 1.3.3 (Protocol version 0x04)”, ONF TS-015, September 27, 2013.
[16] D. Erickson, "The beacon OpenFlow controller,”  In Proceedings of the second ACM SIGCOMM workshop on Hot topics in software defined networking, pp. 13-18, 2013.
[17] www.bigswitch.com
[18] www.mininet.org