34 Link - Congestion - Prediction - Using - Machine - Learning - For - Software-Defined-Network - Data - Plane
34 Link - Congestion - Prediction - Using - Machine - Learning - For - Software-Defined-Network - Data - Plane
Abstract—This paper presented a machine learning method the buffer is used to perform congestion prediction, and
to reduce link congestion for Software-Defined Network (SDN). congestion can be avoided by adjusting the size of the
The updated status of switches and links are collected using the congestion window.
SDN southbound interface to train four popular machine
learning algorithms to predict network congestion degree. Up to now, most of the existing congestion control
Simulations show that the one-dimensional convolutional methods are TCP-based. In fact, UDP, which is another
neural network algorithm outperforms the other three. important protocol [7] in the transport layer, also has certain
advantages, e.g., better real-time performance and higher
Keywords—Software-Defined Network, Congestion Prediction, work efficiency than TCP, which will be suitable for high-
Machine Learning speed transmission and real-time communication. It has been
widely used in real-time games, IP telephones, real-time
I. INTRODUCTION video conferencing, QQ voice and QQ video. However, due
Nowadays, with the unprecedented prosperity of 4G/5G to it is a non-connection protocol, UDP can not avoid
mobile Internet services, the network capacity still can not network congestion. If the traffic can be predicted, the UDP
afford the demand for network resources (link bandwidth, will work more efficiently.
node storage space), therefore, congestion will occur.
In this paper, we propose a machine learning method to
Network congestion will increase packet transmission delay
predict link congestion for UDP services. We select five
and packet loss rate, and will seriously affect the quality of
typical parameters as eigenvalues to reflect link status,
service experience (QoE).
communication status, and switch working status. We find
The Software-Defined Network (SDN) is a new network that these eigenvalues can help to achieve better prediction
architecture, in which, the control plane is separated from the on link congestion in SDN. In detail, based on the open-
data plane [1]. The independent control plane has the ability source SDN controller, OpenDayLight (ODL), we have
of centralized programmability, which provides new ways to implemented the southbound interface to collect required
solve network congestion. network status, including the global network topology, link
data, and switch data, in real time. Five typical parameters,
Shadi Attarha et al. [2] proposed an algorithm to avoid including the receiving rate (in bps) of switches, the sending
link congestion in SDN networks, in which the controller rate of switches, switch load, link bandwidth, and the end-to-
collects the network status and periodically checks switch end traffic rate between source and destination hosts, are
utilization. When new traffic arrives, it judges whether the selected as five eigenvalues to represent the network status.
link is congested or not. If congestion occurs, the average Based on these eigenvalues, we construct a mathematical
transmission rate of the port is reduced and a backup path is model to quantify the link congestion. We have designed
found. However, this method is a postactive one lacking of four machine learning algorithms, including Support Vector
predicting congestion and does not work until the moment Machine (SVM), Multi-Layer Perceptron (MLP), One-
when traffic arrives. Even if the subsequent routing dimensional Convolutional Neural Network (1DCNN) and
scheduling strategy is adopted, packet loss is still inevitable. K-Nearest Neighbor (KNN), to predict the network
Dong-Hai Z et al. [3] proposed a predictive congestion congestion. Experiments show that the 1DCNN has the best
control algorithm using fuzzy neural network to predict the performance.
queue length in switch buffer. Before congestion occurs, the
transmission rate is dynamically adjusted by combining The remainder of this paper is organized as follows.
incremental and decreasing parameters. Ren H. et al. [4] take Section II introduces the scheme of congestion prediction. In
the bandwidth utilization of different links into consideration this section, the system model and the congestion metric
and use a genetic algorithm to predict link packet loss rate, model are introduced respectively. Section III is the design
delay and bandwidth utilization. of machine learning algorithm. In Section IV, we will
introduce our experiment in detail, and determine the
Considering the difference between the TCP and UDP,
algorithm with the best prediction performance. The section
Abdelmoniem A M et al. [5] design a new method to select
V is the conclusion.
congestion nodes to start the congestion control strategy,
which can alleviate congestion and ensure the utilization of
links to a great extent. The reinforcement learning method is
also introduced into the congestion prediction of SDN [6].
Through deep reinforcement learning, the data information in
Authorized licensed use limited to: Universiti Kebangsaan Malaysia. Downloaded on October 31,2023 at 11:21:03 UTC from IEEE Xplore. Restrictions apply.
the other is the test set. The rule of hold-out is based on the linear relationship between input and output data without
random sub-sampling method, dividing a portion of the data knowing the parameters beforehand. The structure of the
as a verification set. Apart from, the K-flod cross validation, MLP includes the input layer, the hidden layer, and the
that is, the data set is divided into K parts, in turns as the output layer. The input data is a five-feature vector, so we
training set and the test set, then the averaging method is choose 2 as the number of hidden layers, which avoids the
used to get the classification result. situation that the model is too complicated to converge. We
In order to make full use of the acquired data for compare the classification results when the number of
classification, the ten-fold cross validation method, as hidden layer units is set to [30, 40, 50, 60, 70].
shown in Fig 2, is used in this paper, to randomly divide all 3) KNN: The algorithm [14] classifies the data
the data into ten parts. We select nine parts for training, and according to the distance between the training data and the
the rest for testing, then repeat the above process to get the
test data. The Euclidean distance is commonly used, as
result. For example, we use D1 for test and other nine parts
shown in (7).
for training, then choose D2 for test, others for
training…until each part is used separately as a test set.
n
Data Set d ( x, y ) ( ( xk yk ) 2 )1/ 2
k 1
Authorized licensed use limited to: Universiti Kebangsaan Malaysia. Downloaded on October 31,2023 at 11:21:03 UTC from IEEE Xplore. Restrictions apply.
time. They are h1-h11, h3-h10, and h6-h9, respectively. The
network topology is shown in Fig 4.
H12 H10
H4
H9
S13 S12 S6 S5
H1
S11 S10 S7 S4 S1
S9 H2
S2
H3 S8 S3
H5
H8
H7 H6
Fig 5. The SVM confusion matrix
Fig 4. The network topology
A. Parameter Setting
The transmission rate is set to eight types, they are
50kbit/s, 100kbit/s, 500kbit/s, 1Mbit/s, 5Mbit/s, 10Mbit/s,
15Mbit/s, 20Mbit/s, respectively. The link bandwidth is set
to two types, one is 10Mbit/s and 50Mbit/s, the other is
50Mbit/s and 250Mbit/s. Under each rate and specific
communication bandwidth, the experiment maintains
continuous communication between hosts for 12 hours, and
obtains five types of characteristic data of all links unit time
in the communication process.
B. Comparison of Predicted Results
Through comparison of several sets of experiments, we Fig 6. The MLP confusion matrix
found that the classification performance is the most optimal
when the parameters of each algorithm are set as follows: in
the SVM algorithm, C=8, kernel=rbf. In the MLP algorithm,
the number of hidden layer units is 30. In the KNN algorithm,
k=9, weight = ‘uniform’. The number of convolution layers
in the CNN algorithm is 4, and the number of convolution
kernels is 36.
Some indicators are often used to evaluate and compare
the performance of the classification, including accuracy
(ACC), precision (PPV), sensitivity (SEN), specificity (SPE)
and the Area Under ROC Curve (AUC) [16]. These common
metrics can be represented by true positive (TP), true
negative (TN), false positive (FP) and false negative (FN),
which are shown in (8), (9), (10), (11):
Fig 7. The KNN confusion matrix
ACC (TP TN ) / (TP TN FP FN )
Authorized licensed use limited to: Universiti Kebangsaan Malaysia. Downloaded on October 31,2023 at 11:21:03 UTC from IEEE Xplore. Restrictions apply.
TABLE II. THE PERFORMANCE OF FOUR MODELS This work was supported by the foundation of Guizhou
Key Laboratory of Electric Power Big Data, Guizhou
model ACC PPV SEN SPE AUC
Institute of Technology (2003008002).
SVM 0.933 0.927 0.918 0.945 0.972
MLP 0.946 0.944 0.931 0.958 0.981 REFERENCES
KNN 0.932 0.928 0.913 0.946 0.971
[1] Kreutz D, Ramos F M V, Verissimo P, et al. Software-defined
1DCNN 0.954 0.951 0.942 0.963 0.983 networking: A comprehensive survey[J]. Proceedings of the IEEE,
2015, 103(1): 14-76.
The ROC curve, which is established by plotting the [2] Attarha S, Hosseiny K H, Mirjalily G, et al. A load balanced
congestion aware routing mechanism for Software Defined
relationship between the true positive rate (TPR) and the Networks[C]//2017 Iranian Conference on Electrical Engineering
false positive rate (FPR), can reflect the difference between (ICEE). IEEE, 2017: 2206-2210.
algorithms. The ROC of the four models is shown in Fig 9. [3] Dong-Hai Z, Li L, Fan J. Congestion control in ATM networks using
The AUC of the 1DCNN model is 98.3%, higher than additive-multiplicative fuzzy neural network[C]//Proceedings of the
Fourth International Conference on Parallel and Distributed
the other models. Also, in TABLE II, we can know the Computing, Applications and Technologies. IEEE, 2003: 306-310.
sensitivity of the other three models is less than 94%, [4] Ren H, Li X, Geng J, et al. A sdn-based dynamic traffic scheduling
however the model of 1DCNN exceeds 94.2%. Furthermore, algorithm[C]//2016 International Conference on Cyber-Enabled
the accuracy, precision and specificity are 95.4%, 95.1%, Distributed Computing and Knowledge Discovery (CyberC). IEEE,
96.3%, respectively. In conclusion, 1DCNN has better 2016: 514-518.
classification performance and can predict network [5] Abdelmoniem A M, Bensaou B. Enforcing Transport-Agnostic
Congestion Control in SDN-Based Data Centers[C]//2017 IEEE 42nd
congestion in the future more accurately and effectively. Conference on Local Computer Networks (LCN). IEEE, 2017: 128-
136.
[6] Xiao K, Mao S, Tugnait J K. TCP-Drinc: Smart Congestion Control
based on Deep Reinforcement Learning[J]. IEEE Access, 2019.
[7] Iwata K, Ito Y. Proposal of Multi-Pathization Method of UDP with
SDN for NFS[C]//2018 International Symposium on Networks,
Computers and Communications (ISNCC). IEEE, 2018: 1-5.
[8] Prajapati A, Sakadasariya A, Patel J. Software defined network:
Future of networking[C]//2018 2nd International Conference on
Inventive Systems and Control (ICISC). IEEE, 2018: 1351-1354.
[9] Taghizadeh S, Bobarshad H, Elbiaze H. CLRPL: context-aware and
load balancing RPL for Iot networks under heavy and highly dynamic
load[J]. IEEE Access, 2018, 6: 23277-23291.
[10] Masirap M, Amaran M H, Yussoff Y M, et al. Evaluation of reliable
UDP-based transport protocols for Internet of Things (IoT)[C]//2016
IEEE Symposium on Computer Applications & Industrial Electronics
(ISCAIE). IEEE, 2016: 200-205.
[11] Barrett R, Facey A, Nxumalo W, et al. Dynamic traffic diversion in
SDN: testbed vs mininet[C]//2017 International Conference on
Fig 9. The ROC curve of four models Computing, Networking and Communications (ICNC). IEEE, 2017:
167-171.
V. CONCLUSION [12] Tian Y, Shi Y, Liu X. Recent advances on support vector machines
research[J]. Technological and Economic Development of Economy,
This paper proposed a link congestion prediction method 2012, 18(1): 5-33.
using machine learning, which can work in the upper layer of [13] Nikravesh A Y, Ajila S A, Lung C H, et al. Mobile network traffic
the controller. The status information of both switches and prediction using MLP, MLPWD, and SVM[C]//2016 IEEE
links are collected to train and test the proposed machine International Congress on Big Data (BigData Congress). IEEE, 2016:
402-409.
learning algorithm to predict the related congestion. We
compared the prediction performance of four machine [14] Cover T M, Hart P E. Nearest neighbor pattern classification[J]. IEEE
transactions on information theory, 1967, 13(1): 21-27.
learning algorithms, 1DCNN has the highest AUC, reaching
[15] Fan X, Xie Y, Ren F, et al. Joint Optical Performance Monitoring and
98.3%, which is more suitable for link congestion prediction Modulation Format/Bit-Rate Identification by CNN-Based Multi-
under our network topology. Task Learning[J]. IEEE Photonics Journal, 2018, 10(5): 1-12.
[16] Powers D M. Evaluation: from precision, recall and F-measure to
ACKNOWLEDGMENT ROC, informedness, markedness and correlation[J]. 2011.
Authorized licensed use limited to: Universiti Kebangsaan Malaysia. Downloaded on October 31,2023 at 11:21:03 UTC from IEEE Xplore. Restrictions apply.