Load Balancing Model Based On Machine Learning and Segment Routing in SDN
Load Balancing Model Based On Machine Learning and Segment Routing in SDN
I. INTRODUCTION
With the large increase of the network devices around the
world, it becomes increasingly difficult and complicated,
networks to be managed. Each of the network devices require
to be configured separately with low-level and vendor-
specific. Also, the network environments must endure the
dynamics of faults and to be adaptive to load changes. Current
IP networks does not support these automatic reconfigurations
and response mechanisms. For these reasons, it is necessary to
apply another approach named Software Defined Networks
(SDN) [1].
Separation of the control and data planes is the main
feature of the SDN. It gives direct advantages, because
network programmability is achieved through the
centralization of the control plane in concurrence with the
availability of open APIs. With these capabilities, the creation
and deployment of new network applications are easier. SDN
also provides simplification and flexibility in network policy
enforcement, facilitating network configuration and
management [2].
There are four components [3] which are represented in
SDN architecture Fig.1:
Control plane – represents an abstract view of the
complete network infrastructure. It enables the Fig. 1. SDN Architecture
administrator to apply custom policies or protocols
across the network hardware. With the help of SDN it becomes easy to control and scale
enterprise networks programmatically. It also provides the
ability to not affect the performance, reliability, or the user
The research, the results of which are presented in the present paper, experience. Simplifying the network management and
have been carried out under the TU-Varna Scientific Project “Research of bringing back virtualization to the network eliminates the
the possibilities of integrating machine learning and Blockchain technologies complexity of the infrastructure layer and adds visibility for
for the Internet of Things”, which is financed by the state budget. the applications and services.
Prediction module
The Fuzzy comprehensive evaluation [8, 10] is another
algorithm which collects hops of each path in every switch
port together with the number of transmission packets, key Network
status
switch number and the transmission rate. Then the algorithm Path Compute module
All these algorithms provide load balancing strategy based Information Flow table Path Encoding module
on collected data for the status of the network, but they cannot collection installation
predict if the load will be increased or decreased. Another
approach is to use Machine Learning algorithms, which can
compute the change of the traffic based on different network
parameters and to send flow table updates before the traffic
change occurs.
One of suggested approaches is to use Ant Colony Data plane
Authorized licensed use limited to: UNIVERSIDADE FEDERAL DO CEARA. Downloaded on December 19,2024 at 12:24:05 UTC from IEEE Xplore. Restrictions apply.
The SDN controller module is simple SDN controller, C. Simple System Workflow
which have a Global Network View database in which it stores Fig. 3 represents simple workflow chart of proposed
the network architecture and the connections between network model.
devices. Also, it keeps information for the network latency,
network speed and bandwidth of the devices. The switches The connection between the switch and the controller is
connect to the controller via exchange of handshake messages established via exchanging a handshake packets. These
and starts two-way communication to track flow table packets contain the maximum OpenFlow version supported
information, packet information or other kind of statistics. by the controller or the network device. If the versions are
different, they will pick the maximum version, which is
The Prediction module is used to compute the data supported by both devices.
collected from the controller and to make a decision for
potential flow overload. It integrates four different machine Once the connection is established, the controller sends a
learning algorithms which helps to forecast path overload. status check packet to get the network information of the
Implemented machine learning algorithms are: Q-learning device.
[14], Genetic algorithm [15], Particle swarm optimization
algorithm [16] and Hidden Markov model [17, 18]. They work
independently one from another and can be specified at Start
controller start time.
Listening
The Path compute module is used to compute the optimal for end
End
flow path based on network resources and Quality of Service process
Waiting for
new requests
signal
requirements. The computation is achieved using the
No
parameters such as bandwidth, network speed connection and
packets sent per second computed by the Prediction module. Accept Success
connection
The Path encoding module receives the flow path
Yes
information calculated by the Path compute module and
combines it with Path Segment Database to produce the No Handshake Parsing the
optimal path aggregation scheme for needed path. Then the request No
optimal path segment scheme is encoded in the packet header,
which will be installed and shared between network devices.
Sucssess Compute
Yes Is Echo
B. Prediction process bandwidth
The Particle swarm optimization algorithm purpose is to When receiving the information, the controller stores it in
determine the variable which minimizes in a vector. The a Network Global View database. After that, the controller and
model contains swarm with P particle, which represents the the switch start to exchange echo packets to track the
network devices. Each particle contains a vector and the connectivity between them. These packets are used to track
values stored in the vector are coefficients computed by the the bandwidth of the device.
controller. After the computation process finishes, the result
contains the minimum loaded path. When a host sends a packet to another destination, the first
switch, which receives the packet, will check its flow table for
Hidden Markov model represents a Markov process. It has further forwarding. If the flow table of the switch contains the
two states – loaded and free. The states represent if the destination address, it will pass the packet to the next network
network path is not loaded or it is overloaded. The used device. If the flow table does not contain such one, it will send
observations presented from the Hidden Markov model are – packet-in message to the controller to get information what to
start and stop. Start stands for low used path and stop do with it. Then the controller checks the Global Network
represents overloaded path. The probability is computed based Database and sends back flow table installation packet to the
on the passed from the controller coefficient. switch.
Authorized licensed use limited to: UNIVERSIDADE FEDERAL DO CEARA. Downloaded on December 19,2024 at 12:24:05 UTC from IEEE Xplore. Restrictions apply.
The prediction process monitors possible changes of the [13] Z. Li and Y. Hu, “PASR: An Efficient Flow Forwarding Scheme based
network load. If it detects such ones, it sends a signal to the on Segment Routing in Software-Defined Networking”, DOI
10.1109/ACCESS.2020.2964800, IEEE Access
Path Compute Module, to update the Flow Tables with needed
[14] S. Nanda, F. Zafari, C. DeCusatis, E. Wedaa and B. Yang, “Predicting
routes to make the network load balanced. Once the optimal network attack patterns in SDN using machine learning approach”, In
paths are computed, they are sent back and installed to the Proc of IEEE Conference on Network Function Virtualization and
switches. The controller also notifies the Prediction process of Software Defined Networks (NFV-SDN), Nov. 2016, pp. 167-172.
dropped network devices, which will automatically trigger the [15] L. Chou, Y. Yang, M. Hong, K. Hu and B. Jean, “A genetic-based load
Flow table changes. balancing algorithm in openflow network”, Advanced Technologies,
Embedded and Multimedia for Human-centric Computinc, 2014, pp.
IV. CONCLUSION 411-417.
[16] M. Awad, M. El-Shafei, T. Dimitriou, Y. Rafique, M. Baidas and A.
In this paper is considered one of the main problems in Alhusaini, “Power-efficient routing for SDN with discrete link rates
SDN networks, namely network load balancing. There are and size-limited flow tables: A tree-based particle swarm optimization
different load balancing mechanisms in SDN, which uses two approach”, International Journal of Network Management, 2017, pp.
main approaches – static and dynamic load balancing. The e1972.
shortcomings and problems with approaches and algorithms [17] C. Zhang, X. Wang, F. Li, Q. He and M. Huang, “Deep learning-based
in related works are considered. network application classification for SDN”, Transactions on
Emerging Telecommunications Technologies, 2018, pp. 1-18.
At last the paper proposes an architecture model, which [18] Z. Fan, Y. Xiao, A. Nayak and C. Tan, “An improved network security
combines machine learning algorithms with segment routing situation assessment approach in software defined networks”, Peer-to-
Peer Networking and Applications, 2019, pp. 295-309.
for achieving better performance and network load balancing.
The main advantage of the model is that it improves the QoS
and provides ability to predict overload of network routes.
The aim of future work is to study the reduction of
messages in flows and to make a comparison with similar
proposed approaches. Another goal is to study the benefits of
the proposed model on different operating systems.
REFERENCES
[1] B. Nunes, "A survey of software-defined networking: Past, present, and
future of programmable networks" Communications Surveys &
Tutorials, IEEE 16.3, 2014, pp. 1617-1634.
[2] S. Michel, K. Bonfim, L. Dias, and S. Fernandes, “Integrated
NFV/SDN Architectures: A Systematic Literature Review”, ACM
Comput. Survey, 2019, DOI: https://doi.org/10.1145/3172866.
[3] M. Jammal, T. Singh, A. Shami, R. Asal, and Y. Li, “Software defined
networking: State of the art and research challenges”, Computer
Networks, 2014, DOI: 10.1016/j.comnet.2014.07.004.
[4] Open Networking Foundation, “OpenFlow Switch Specification”,
March 2015, https://www.opennetworking.org/wp-
content/uploads/2014/10/openflow-switch-v1.5.1.pdf
[5] W. Lin and L. Zhang, “The load balancing research of SDN based on
ant colony algorithm with job classification”, in Proc. 2ndWorkshop
Adv. Res. Technol. Ind. Appl., 2016, pp. 472-476.
[6] S. K. Askar, “Adaptive load balancing scheme for data center networks
using software defined network,” Sci. J. Univ. Zakho, vol. 4, no. 2,
2016, pp. 275-286.
[7] Y. Pan, “OpenFlow based load balancing for Fat Tree networks with
multipath support”, in Proc. 12th IEEE International Conference on
Communications (ICC’13), Budapest, Hungary, 2013, pp. 1-5.
[8] J. Chang, Y. Ren, Z. Zhang, and G. Wang, “An Effective Path Load
Balancing Mechanism Based on SDN”, Trust, Security and Priva cy in
Computing and Communications (TrustCom), 13th International
Conference on IEEE, 2014, pp. 527-533.
[9] A. Koushik and S. Selvi, “Load balancing Using Software Defined
Networking in cloud environment”, Recent Trends in Information
Technology (ICRTIT), 2014 International Conference on. IEEE, 2014,
pp. 1-8.
[10] Cui Chen-xiao and Xu Ya-bin, “Research on Load Balance Method in
SDN”, International Journal of Grid and Distributed Computing, vol.
9, No. 1, 2016, pp.25-36.
[11] M. Latah and L. Toker, “Artificial Intelligence Enabled Software
Defined Networking: A Comprehensive Overview”, IET Networks
8(2), 2018, DOI: 10.1049/iet-net.2018.5082.
[12] S. Lin, I. Akyildiz, P. Wang, and M. Luo, “QoS-aware adaptive routing
in multilayer hierarchical software defined networks: a reinforcement
learning approach”, in Proc. of IEEE International Conference on
Services Computing (SCC), San Francisco, USA, June 2016, pp. 25-
33.
Authorized licensed use limited to: UNIVERSIDADE FEDERAL DO CEARA. Downloaded on December 19,2024 at 12:24:05 UTC from IEEE Xplore. Restrictions apply.