Load Balancing between Paths using Software Defined Networks
DOI:
https://doi.org/10.5753/jisa.2023.3068Keywords:
Load Balancing, Software Defined Network, Multipath Routing, Performance EvaluationAbstract
Small networks usually use Ethernet devices that apply solutions such as the Spanning Tree Protocol (STP) to forward packets through a single path with no loops. However, this prevents the use of idle links that may reduce congestion and augment the aggregate bandwidth of the network. This work proposes a load balancing mechanism between paths using Software Defined Networks (SDNs). The proposed mechanism, named MLB (Multipath Load Balance), computes multiple paths with disjoint links that have the smallest number of hops between source and destination. Moreover, MLB has a “switching control” function that verifies whether the current occupation of the path exceeds a percentage of its capacity and if the potential new path computed by MLB has an occupation at least a percentage value smaller than that of the current path. MLB is implemented in Python and evaluated in Mininet. The results show that it is possible to increase the aggregate bandwidth by 95% and decrease the packet loss by about 95.5% compared with the standard operating mode of the OpenDaylight SDN controller.
Downloads
References
Amiri, E. and Javidan, R. (2019). A new method for layer 2 loop prevention in software defined networks. Telecommunication Systems, 73(1):47-57. DOI: 10.1007/s11235-019-00594-4.
Bhandarkar, S. and Khan, K. A. (2015). Load balancing in software-defined network (SDN) based on traffic volume. Advances in Computer Science and Information Technology (ACSIT), 2(7):72-76. Available online [link].
Bredel, M., Bozakov, Z., Barczyk, A., and Newman, H. (2014). Flow-based load balancing in multipathed layer-2 networks using openflow and multipath-TCP. In Workshop on Hot Topics in Software Defined Networking (HotSDN), pages 213-214, New York, NY, USA. ACM. DOI: 10.1145/2620728.2620770.
Cormen, T. H., Leiserson, C. E., Rivest, R. L., and Stein, C. (2009). Introduction to Algorithms. MIT Press, 3 edition. Book.
Hagberg, A. A., Schult, D. A., and Swart, P. J. (2008). Exploring network structure, dynamics, and function using NetworkX. In Proceedings of the 7th Python in Science Conference (SciPy), pages 11-15, Pasadena, CA USA. Available online [link].
Hamdan, M., Hassan, E., Abdelaziz, A., Elhigazi, A., Mohammed, B., Khan, S., Vasilakos, A. V., and Marsono, M. (2021). A comprehensive survey of load balancing techniques in software-defined network. Journal of Network and Computer Applications, 174. Article 102856. DOI: 10.1016/j.jnca.2020.102856.
Hassan, M. H. O. (2017). Implementing Nayan Seth's dynamic load balancing algorithm in software-defined networks: a case study. Technical report, Sudan University of Science and Technology, Master's thesis, Sudan University of Science and Technology, Sudan.
Jain, R. (1991). The art of computer systems performance analysis: techniques for experimental design, measurement, simulation, and modeling. John Wiley & Sons, 1 edition. Book.
Kawaguchi, E., Kasuga, H., and Shinomiya, N. (2019). Unsplittable flow edge load factor balancing in SDN using P4 runtime. In 29th International Telecommunication Networks and Applications Conference (ITNAC), pages 1-6. DOI: 10.1109/ITNAC46935.2019.9077984.
Kreutz, D., Ramos, F. M. V., Veríssimo, P. E., Rothenberg, C. E., Azodolmolky, S., and Uhlig, S. (2015). Software-Defined Networking: a comprehensive survey. Proceedings of the IEEE, 103(1):14-76. DOI: 10.1109/JPROC.2014.2371999.
Lantz, B., Heller, B., and McKeown, N. (2010). A network in a laptop: rapid prototyping for software-defined networks. In Proceedings of Workshop on Hot Topics in Networks (SIGCOMM), Hotnets-IX, pages 1-6, New York, NY, USA. ACM. DOI: 10.1145/1868447.1868466.
Liu, W., Zhou, W., Wang, Y., Duan, Y., and Gao, Z. (2016). Flexible multi-path routing for global optimization in software-defined datacenters. In 2016 IEEE Symposium on Computers and Communication (ISCC), pages 190-195. DOI: 10.1109/ISCC.2016.7543738.
Mallik, A. and Hegde, S. (2014). A novel proposal to effectively combine multipath data forwarding for data center networks with congestion control and load balancing using Software-Defined Networking approach. In International Conference on Recent Trends in Information Technology (ICRTIT), pages 1-7, Chennai, India. IEEE. DOI: 10.1109/ICRTIT.2014.6996178.
OpenDaylight (2022). Opendaylight - The L2 Switch project provides Layer2 switch functionality. Available online [link].
Prabhavat, S., Nishiyama, H., Ansari, N., and Kato, N. (2012). On load distribution over multipath networks. IEEE Communications Surveys & Tutorials, 14(3):662-680. DOI: 10.1109/SURV.2011.082511.00013.
Ramdhani, M. F., Hertiana, S. N., and Dirgantara, B. (2016). Multipath routing with load balancing and admission control in software-defined networking (SDN). In International Conference on Information and Communication Technology (ICoICT), pages 1-6, Bandung, Indonesia. IEEE. DOI: 10.1109/ICoICT.2016.7571949.
Semong, T., Maupong, T., Anokye, S., Kehulakae, K., Dimakatso, S., Boipelo, G., and Sarefo, S. (2020). Intelligent load balancing techniques in software defined networks: a survey. Electronics, 9(7). DOI: 10.3390/electronics9071091.
Seth, N. (2022). SDN load balancing. Available online [link].
Singh, S. K., Das, T., and Jukan, A. (2015). A survey on internet multipath routing and provisioning. IEEE Communications Surveys & Tutorials, 17(4):2157-2175. DOI: 10.1109/COMST.2015.2460222.
Sun, Z., Xie, Z., Chen, Z., and Dai, L. (2012). An algorithm for the shortest pairs of arc-disjoint paths problem. In International Conference on Natural Computation (ICNC2012), pages 1001-1006, Chongqing, China. IEEE. DOI: 10.1109/ICNC.2012.6234600.
Tsai, J. and Moors, T. (2006). A review of multipath routing protocols: from wireless ad hoc to mesh networks. In ACoRN Early Career Researcher Workshop on Wireless Multihop Networking, Sydney, Australia. Available online [link].
Zhao, Y., Wang, X., He, Q., Zhang, C., and Huang, M. (2021). Plofr: An online flow route framework for power saving and load balance in SDN. IEEE Systems Journal, 15(1):526-537. DOI: 10.1109/JSYST.2020.3010971.