A Neuro-Fuzzy Control for TCP Network Congestion S. Hadi Hosseini, Mahdieh Shabanian, and Babak N. Araabi*
Abstract. We use Active Queue Management (AQM) strategy for congestion avoidance in Transmission Control Protocol (TCP) networks to regulate queue size close to a reference level. In this paper we present two efficient and new AQM systems as a queue controller. These methods are designed using Improved Neural Network (INN) and Adaptive Neuro-Fuzzy Inference Systems (ANFIS). Our aim is low queue variation, low steady state error and fast response with using these methods in different conditions. Performance of the proposed controllers and disturbance rejection is compared with two well-known AQM methods, Adaptive Random Early Detection (ARED), and Proportional-Integral (PI). Our AQM methods are evaluated through simulation experiments using MATLAB.
1 Introduction The congestion controllers strategies are used for prevent a starting congestion or recover from network congestion. Many of Transmission Control Protocol (TCP) schemes, adjusted window size for congestion avoidance, have been explored in the last two decades. The first used scheme, TCP Tahoe, and the next, TCP Reno [1]. Active Queue Management (AQM) scheme is a congestion avoidance strategy for TCP networks. Random Early Detection (RED) is a popular example of an AQM scheme [2]. Hollot and his colleagues in [3] have used the control theoretic approaches to determine the RED parameters. Several researchers have proposed as a controller for AQM system: the conventional controllers such as Proportional (P), Proportional-Integral (PI) [4], Proportional-Derivative (PD) [5], ProportionalIntegral-Derivative (PID) [6], and adaptive controller such as Adaptive Random Early Detection (ARED) [7], and the heuristic methods such as fuzzy logic [8, 9, 10] and Neural Networks (NN) [11]. S. Hadi Hosseini . Mahdieh Shabanian Science and Research branch, Islamic Azad University, Tehran, Iran e-mail: {sh_hosseini,m_shabanian}@itrc.ac.ir
*
Babak N. Araabi School of Electrical and Computer Eng., University of Tehran, Tehran, Iran e-mail:
[email protected] J. Mehnen et al. (Eds.): Applications of Soft Computing, AISC 58, pp. 93–101. © Springer-Verlag Berlin Heidelberg 2009 springerlink.com
94
S.H. Hosseini, M. Shabanian, and B.N. Araabi
We present a more sophisticated adaptive control strategy for AQM in TCP networks using a dynamic Artificial Neural Network (ANN) AQM control. The neural network operates as an adaptive and robust [11]. TCP networks involve several stochastic variables with nonstationary time-varying statistics. Most of these factors are regarded as uncertainty in the AQM system. Thus, an AQM control requires adaptive stochastic control to overcome uncertainty and timevariance [17]. We choose a Multi Layer Perceptron (MLP) dynamic neural model. For simplicity, we derive a learning procedure by the gradient descent Back Propagation (BP) method. Then we improved this method with Delta-Bar-Delta algorithm [13] and designed a new Improved Neural Network (INN) AQM. After the INN AQM, we choose Adaptive Neuro-Fuzzy Inference Systems (ANFIS) AQM, for TCP networks. This controller can promptly adapt its operation to the nonlinear time-varying and stochastic nature of TCP networks. As a result, unlike RED, classical linear control, and adaptive control approaches, ANFIS is able to determine satisfactory AQM system parameters values autonomously. Here we choose a four-input first order Takagi-Sugeno fuzzy model with three membership functions, in our five layer ANFIS architecture [12]. Performance of the proposed controllers is evaluated via simulations in MATLAB environment and compared with ARED and PI. In the following section we present our improved neural network AQM TCP congestion control with adaptive Delta-Bar-Delta learning algorithm. ANFIS controller approach which is used in this paper is described in Sect. 3. In Sect. 4 simulation results and comparison between the proposed controllers with other controllers are given. Finally, the paper is concluded in Sect. 5.
2 Improved Neural Network AQM The block diagram of TCP congestion control with the INN AQM proposed in this paper is shown in Fig. 1. q0
e q(k)
Z
-1
Z-1
INN q(k-1)
Fc(k)
TCP Plant
q(k)
AQM
Fc(k-1)
Fig. 1 INN AQM for TCP Congestion
In Fig. 1, q(k) is the queue size of available in router’s buffer. The INN controller minimize the error signal (e), between the actual queue size q(k), and the reference queue target value q0. The loss probability Pd(k), is the control input to the TCP plant.
A Neuro-Fuzzy Control for TCP Network Congestion
95
The MLP neural network model used in this paper is shown in Fig. 2.
Fig. 2 MLP neural network for AQM
Wij is the weight matrix of this model that number of neurons is i and number of input signals is j. We improve the neural network training algorithm and combine gradient descent BP algorithm and Delta-Bar-Delta algorithm (for adaptation of η) [13]. Wij = Wij − ηij
∂J ∂Wij
(1) (2)
ηij (k + 1) = ηij (k ) + Δηij (k ) Ψ (k ) =
∂J ∂Wij
,
Ψ ( k ) = (1 − ε)Ψ ( k ) + εΨ ( k − 1)
⎧K ⎪ Δηij (k ) = ⎨− βηij (k ) ⎪ ⎩0
if
Ψ (k − 1)Ψ (k ) > 0
if
Ψ (k − 1)Ψ (k ) < 0
(3)
(4)
else
Where J is our cost function and K > 0, β ∈ [0,1], ε ∈ [0,1] are constants. We show that the mentioned algorithm is better than previous methods in tracking TCP queue size.
3 ANFIS AQM The block diagram of TCP congestion control with the ANFIS AQM proposed in this paper is similar to INN AQM block diagram. In this approach, the INN controller is replaced with the ANFIS controller. The ANFIS model used in this paper is shown in Fig. 3. Our ANFIS model is a simple Takagi-Sugeno fuzzy model [12]. It is includes four-inputs with three Gaussian membership functions for each input signals. Parameters in this layer are referred to as Premise Parameters, such as ci and σi. The membership function is given by:
96
S.H. Hosseini, M. Shabanian, and B.N. Araabi μ(x) = exp(
- (x - c) 2 2σ 2
(5)
)
This model includes five layers: Layer 1 consists of Premise Parameters, Layer 2 is a product layer, Layer 3 is a normalized layer, Layer 4 consists of Consequent Parameters, and Layer 5 is a summation layer. We have 34=81 rules. The Consequent Parameters are given by: (6)
Fj = α ij u i + α1( j+1) U ma1 u1
ma2
×
Z1
N
Zn1
F1
×
Z2
N
Zn2
F2
ma3 mb1 u2
mb2
U
. . .
mb3 mc1 u3
mc2
. . .
. . .
+
Y
mc3 U
md1 u4
×
md2
Z81
N
Zn81
F81
md3
Fig. 3 ANFIS model for AQM
Gaussian Membership Functions
Where i is number of input signals, u is input signal, and j is number of rules. We fixed the Premise Parameters and membership functions cleverly that they shown in Fig. 4 and then trained the Consequent Parameters with gradient descent BP algorithm. 1
1
0 .5
0 .5
0 -1 0 0
-5 0
0 m a
50
100
0
1
1
0 .5
0 .5
0
0
50
100 m c
150
Fig. 4 ANFIS membership functions
200
0
0
0
50
0 .2
100 m b
0 .4
150
0 .6 m d
0 .8
200
1
A Neuro-Fuzzy Control for TCP Network Congestion
97
4 Simulations and Results We evaluate performance of the proposed INN and ANFIS AQM methods via simulations using MATLAB subroutine. To comparison the results, we also simulate the PI and ARED AQM schemes. The parameters of the PI controller are given in [4] and the parameters of the ARED are defined in [16]. PI parameters are: Ki=0.001, and Kp=0.0015, and also ARED parameters are: a=0.01, b=0.9, minth=80, and maxth=159.
4.1 Simulation 1 In this simulation we use the nominal values known to controller parameters and compare four AQM algorithms: ANFIS, INN, PI and ARED. The scenario defined in [15] follows: Nn=50 (TCP sessions), Cn=300 (packet/sec), Tp=0.2 (sec), therefore R0n=0.533 (sec) and W0n=3.2 (packets). The desired queue lengths is q0=100. Furthermore, propagation links delay, Tp is used as a random number. Simulation results are depicted in Fig. 5. 200 ANFIS NN ARED PI
Queue Length with Nominal Parameters
180 160 140 120 100 80 60 40 20 0
0
5
10
15 Time (sec)
20
25
30
Fig. 5 Comparison of four AQM algorithms in nominal condition
In this case, the PI and ANFIS controller have an oscillatory behavior, but it is not important. The PI essentially is a fast controller with a high overshoot. The INN and ANFIS have a delay time because they are trained by their previous values of queue length. In the steady state, all of results are similar and good. In Table 1 the mean and variance of queue length for four AQM are given. In the all of the simulations the mean and variance of queue computed in steady state condition from 15 sec to 100 sec.
98
S.H. Hosseini, M. Shabanian, and B.N. Araabi
4.2 Simulation 2 In this simulation we evaluate the robustness of the INN and ANFIS controller against variations in the network parameters. The numbers of sessions (N), link capacity (C) and propagation links delay (T) are changed during the simulation. First we consider the constant and real values for these parameters that given in [15]. This scenario follows: Np=40 (TCP sessions), Cp=250 (packet/sec), and Tp = 0.3 (sec). These values are very different from the nominal values. After 20 seconds we increase those to twice of the previous values. Then after 20 seconds we decrease them to the nominal values at 40th second. Those parameters are decreased to half of the initial values at 60th second and returned to the initial values at 80th second. Simulation results are depicted in Fig. 6.
160
Queue Length in Increased & Decreased Mode
140
120
100
80
60
40 ANFIS NN ARED PI
20
0
0
10
20
30
40
50 Time (sec)
60
70
80
90
100
Fig. 6 Comparison of four AQM algorithms in real condition
As is shown in Fig. 6 and Table 1, queue length regulation using the ANFIS controller is considerably better than the others. Moreover, the ARED method could not track the desired queue and the PI method has an oscillatory treat in queue tracking. According to the Table 1, the ANFIS controller is better than the INN controller, because the variation of the ANFIS AQM is low.
4.3 Simulation 3 We evaluate the robustness of the proposed controller with respect to variations in the network parameters. The number of TCP flows N is considered as a normally distributed random signal with mean 45, and standard deviation 6, that it is added to a pulse train of period 50 (sec) and amplitude of 5. Moreover, the link capacity C is a normally distributed random signal with mean of 250 (packets/sec), and
A Neuro-Fuzzy Control for TCP Network Congestion
99
standard deviation 6 (packets/sec), that it is added to a pulse of period 80 (sec) and amplitude of 50 (packets/sec). Also the propagation delay Tp is a normally distributed random signal with mean of 0.2 (sec), and standard deviation 2 (ms), that it is added to a pulse of period 50 (sec) and amplitude of 10 (ms). The sampling time is 0.53 (sec) for any parameters. These parameters are shown in Fig. 7. 70 60 Np
Fig. 7 Variation of N, C and Tp parameters corresponding to Simulation 3
50 40 30
0
10
20
30
40
50
60
70
80
90
100
0
10
20
30
40
50
60
70
80
90
100
0
10
20
30
40
50 Time (sec)
60
70
80
90
100
Cp
350 300 250 200
0.5
Tp
0.4 0.3 0.2 0.1
Fig. 8 shows the queue regulation for four AQM methods. According to the Table 1 and Fig. 8, the proposed methods (INN and ANIS) are better than the others. ANFIS NN ARED PI
Queue Length with Time Varient Parameters
160 140 120 100 80 60 40 20 0
0
10
20
30
40
50 60 Time (sec)
70
80
90
100
Fig. 8 Comparison of four AQM algorithms in time-variant condition
As is shown in Fig. 8, queue length regulation using the ANFIS controller is considerably better than the others. Moreover, the PI controller’s queue length variation is much higher than the ANFIS controller. According to the Table 1, the ARED AQM’s queue length mean is far from the desired value. In addition, the ANFIS controller is better than the INN controller, because the ANFIS AQM has a high mean of queue. Also, the queue length variance of ANFIS AQM has a low.
100
S.H. Hosseini, M. Shabanian, and B.N. Araabi
Table 1 Comparison of four AQM algorithms in three simulations Simulation AQM
1
2
3
Mean Queue Size (Packets) Variance Queue Size (Packets)
ARED
100.05
PI
99.99
0.001 0.001
INN
100.02
2.84 * e-5
ANFIS
100.00
1.26 * e-9
ARED
35.35
2600.35
PI
99.42
2782.81
INN
100.44
232.36
ANFIS
100.07
183.55
ARED
41.51
302.68
PI
99.82
1759.65
INN
99.23
185.49
ANFIS
99.58
136.54
5 Conclusions We presented two novel AQM methodology using a dynamic neural network and neuro-fuzzy system for TCP congestion control. Both methods acted as a feedback controller to maintain the actual queue size close to a reference target. The neurofuzzy (ANFIS) AQM is trained by a gradient descent BP algorithm, but the improved neural network (INN) AQM is trained by a modified algorithm. In this modified algorithm we combined gradient descent BP algorithm with Delta-Bar-Delta algorithm. We applied proposed AQM systems to a single bottleneck network supporting multiple TCP flows. Three scenarios were examined in the simulation experiments to compare ANFIS and INN AQM to ARED and PI AQM. The PI AQM resulted in queue saturation and larger overshoot. Also the result of ARED AQM is far from a reference target. However, ANFIS and INN AQM reduced overshoot and eliminated saturation and steady state error. ANFIS and INN AQM had the best regulation performance. Especially for real parameters (Sect. 4.2) and also for the case of time-varying TCP dynamics (Sect. 4.3), the ANFIS AQM was superior. We conclude that ANFIS AQM is an effective adaptive controller in TCP networks. Future work will extend our results to more complex network scenarios, such as short TCP connections or noise disturbance networks, and will include various simulation scenarios using a network simulation tool such as NS-2 and OPNET to verify our results.
Acknowledgments The authors sincerely thank the Iran Telecommunication Research Center (ITRC) for their financial support under grant number 11547.
A Neuro-Fuzzy Control for TCP Network Congestion
101
References [1] Jacobson, V.: Congestion avoidance and control. In: Proc. of SIGCOMM 1988, pp. 314–329 (1988) [2] Floyd, S., Jacobson, V.: Random early detection gateways for congestion avoidance. IEEE/ACM Trans. on Networking 1, 397–413 (1993) [3] Hollot, C.V., Misra, V., Towsley, D., Gong, W.B.: A Control Theoretic Analysis of RED. In: Proc. of IEEE INFOCOM, pp. 1510–1519 (2001) [4] Hollot, C.V., Misra, V., Towsley, D., Gong, W.B.: Analysis and design of controllers for AQM routers supporting TCP flows. IEEE Trans. on Automatic Control 47, 945– 959 (2002) [5] Sun, C., Ko, K.T., Chen, G., Chen, S., Zukerman, M.: PD-RED: To improve the performance of RED. IEEE Communication Letters 7, 406–408 (2003) [6] Ryu, S., Rump, C., Qiao, C.: A Predictive and robust active queue management for Internet congestion control. In: Proc. of ISCC 2003, pp. 1530–1346 (2003) [7] Zhang, H., Hollot, C.V., Towsley, D., Misra, V.: A self-tuning structure for adaptation in TCP/AQM networks. In: Proc. of IEEE/GLOBECOM 2003, vol. 7, pp. 3641– 3646 (2003) [8] Hadjadj, Y., Nafaa, A., Negru, D., Mehaoua, A.: FAFC: Fast Adaptive Fuzzy AQM Controller for TCP/IP Networks. IEEE Trans. on Global Telecommunications Conference 3, 1319–1323 (2004) [9] Taghavi, S., Yaghmaee, M.H.: Fuzzy Green: A Modified TCP Equation-Based Active Queue Management Using Fuzzy Logic Approach. In: Proc. of IJCSNS, vol. 6, pp. 50–58 (2006) [10] Hadjadj, Y., Mehaoua, A., Skianis, C.: A fuzzy logic-based AQM for real-time traffic over internet. Proc. Computer Networks 51, 4617–4633 (2007) [11] Cho, H.C., Fadali, M.S., Lee, H.: Neural Network Control for TCP Network Congestion. In: Proc. American Control Conference, vol. 5, pp. 3480–3485 (2005) [12] Jang, J.R., Sun, C., Mizutani, E.: Neuro-Fuzzy and Soft Computing. Prentice-Hall, Englewood Cliffs (1997) [13] Haykin, S.: Neural Networks: A comprehensive foundation. Prentice Hall, Englewood Cliffs (1999) [14] Misra, V., Gong, W.B., Towsley, D.: Fluid-based analysis of a network of AQM routers supporting TCP flows with an application to RED. In: Proc. of ACM/SIGCOMM, pp. 151–160 (2000) [15] Quet, P.F., Ozbay, H.: On the design of AQM supporting TCP flows using robust control theory. IEEE Trans. on Automatic Control 49, 1031–1036 (2004) [16] Floyed, S., Gummadi, R., Shenker, S.: Adaptive RED: An Algorithm for Increasing the Robustness of RED s Active Queue Management. Technical Report, ICSI (2001) [17] Cho, H.C., Fadali, S.M., Lee, H.: Adaptive neural queue management for TCP networks. In: Proc. Computers and Electrical Engineering, vol. 34, pp. 447–469 (2008)