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)

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)