0 20 40 60 80 100
0 200 400 600 800 1000
Time (s)
Packet Generation Rate (Mb/s)
(a) The traffic patterns of switchesS1,S2, andS3.
0 0.1 0.2 0.3 0.4 0.5 0.6
0 200 400 600 800 1000
Packet Loss Rate
Time (s)
(b) The network packet loss rate.
0 50 100 150 200 250 300 350
0 200 400 600 800 1000
Delay (ms)
Time (s) (c) The network delay.
Figure 4.2: An illustrative example: when switches S1, S2, and S3 choose S5 as the next node to destinationS8,S5 will be the bottleneck, which means that traffic congestion will easily happen to S5.
fixed-5 16 … 20
8 15 … 6
… … … …
14 3 … 34
10 31 … 65
22 54 … 34
… … … …
14 22 … 33
Switch
Packet Generation Rate
Metric type
Time Intervals Remaining
Buffer Size
Figure 4.3: The input of the CNN in our proposal.
rule-based routing protocols, e.g., minimum or maximum metric values, resulting in the same decision when similar traffic patterns occur, even though the decision has been proved wrong. To describe this more clearly, we can take the data plane as shown in Fig. 4.1 as an example. Here, it is reasonable to assume that some switches, S1, S2, and S3, in the data plane, generate packets destined for the switch S8. And the central controller chooses the best paths which have the minimum hop numbers. According to the network topology, it is easily understood that the central controller choosesS5 as the next node for source switches, S1, S2, and S3, to send packets to S8. Therefore, when three source switches send packets to S8 along with their shortest paths concurrently, the joint router of these paths, S5, easily becomes the network bottleneck, leading to the degradation of network performance [83]. Even though the congestion can be alleviated after the switches inform the controller about the congestion and the controller updates the paths forS1,S2, andS3, this situation can happen again while similar traffic patterns appear. Seriously, when source switches S1, S2, and S3 have burst traffic patterns as shown in Fig. 4.2a and all these packets are destined for S8, the joint switch S5 becomes congested and the network performance in terms of the packet loss rate and average packet delay deteriorates repeatedly as shown in Figs. 4.2b and 4.2c.
The reason behind this phenomenon is because of the fixed rule based routing strategy which lacks the ability of self-reconfiguration. According to the conventional routing algorithm, the controller always chooses S5 as the next node for S1, S2, and S3 since these paths have the minimum hop numbers, despite of the fact that this decision has been proved wrong many times. If the router can adjust its configuration according to the previous experience, the joint node can be easily avoided. However, conventional proprietary hardware based router architecture does not allow the reconfiguration of the routing rules without redesigning the hardware architecture. Furthermore, to increase the adaptation of the routing strategies is concerned with more complex algorithms. On the other hand, the central controller equipped with a large computation capacity in the SDCSs can act as the platform to run the improved routing algorithms.
In this chapter, we consider utilizing deep learning to improve the routing strategy as
the deep learning technique is promising in the future communication network manage-ment. To design a deep learning based routing protocol, the first step is to choose the suitable deep learning structure and define its input and output. Since our goal is to man-age multiple paths to avoid the traffic congestion, we can choose the most direct sign of the traffic situation, the traffic pattern, as the input. We can merge the values of different features of the traffic pattern into a three dimensional matrix as shown in Fig. 4.3. And the three dimensions represent the router ID, the time interval, and different features of traffic patterns, respectively. If we use TP to denote the input matrix, then the value of unit, tpijk denotes the value of switch Si’s feature k at the jth time interval. The size of the router ID dimension depends on the number of considered switches, while that of the time dimension is decided by many factors, such as the network size, the required accuracy rate, and so on. The number of chosen time intervals should be reasonable since traffic patterns of too few time intervals leads to low prediction accuracy and too many time intervals cause high computation burden. The number of traffic pattern features is concerned with our purpose. As the deep learning architectures in our proposal are utilized for routing, we choose the packet generation rates and the switches’ remaining buffer sizes as our considered features. Considering the input design, suppose the whole network as an image and different traffic pattern features as the different color channels of the image. Therefore, it is reasonable to choose the CNN shown in Fig. 2.2c as the deep learning structure due to its wide applications to process the images. For the output design, since there are several paths for each OD pair in our proposal, the chosen paths in every round can be regarded as a paths combination, which consists of one path for each OD pair. Then, each CNN can represent one paths combination and the output of the CNN should indicate whether the paths combination will be congested or not. In our proposal, we can use a two dimensional vector to denote the output. We can set (1,0) as the notation of congestion and use (0,1) to denote that the paths combination will not be congested in the next round. Moreover, if the trained CNN outputs results of (0, 0) or (1, 1), it means that the training is not effective. Therefore, we can make some adjustment of the architecture or accumulate more training data. Since the output layer consists of the binary units, we consider the softmax regression method in the final output layer. The cost function is the same as Equation 2.36. To adapt to the changing traffic patterns, we consider the online training manner which means the adopted CNNs will be periodically trained with the real-time traffic patterns. Therefore, the CNNs can adjust its parameters through the training with new traffic trace.