The congestion controller based on the multiple model adaptive control is designed for the network congestion in TCP/AQM network. As the conventional congestion control is sensitive to the variable network condition, the adaptive control method is adopted in our congestion control. The multiple model adaptive control is introduced in this paper based on the weight calculation instead of the parameter estimation in past adaptive control. The model set is composed by the dynamic model based on the fluid flow. And three “local” congestion controllers are nonlinear output feedback controller based on variable RTT, H2 output feedback controller, and proportional-integral controller, respectively. Ns-2 simulation results in section 4 indicate that the proposed algorithm restrains the congestion in variable network condition and maintains a high throughput together with a low packet drop ratio.
1. Introduction
In recent years, with the rapid growth of network size and network applications, congestion control has been exposed as an essential factor in communication network design. Congestion [1] occurs when the aggregate demand for a resource exceeds the available capacity of the resource, which may deteriorate the performance and the reliability of the network. Resulting effects from such congestion include long delays in data delivery, wasted resources due to lost or dropped packets, and even possible congestion collapse [2], in which all communications cease in the entire network.
TCP can only provide best effort service, in which the traffic is processed as quickly as possible, but there is no guarantee as to timeliness or actual delivery [3]. Moreover, it is difficult for the data source to perceive the network condition. When the incoming packet rate is higher than the router’s outgoing packet rate, the queue size will increase and eventually give rise to the congestion. The queue management scheme in router will use queue to smooth spike in the incoming packet rates. In the Drop Tail (DT) policy which is the most extensive dropping policy, the packet will be dropped when it arrives and finds the queue full. It has been shown that the DT mechanism interacts badly with TCP’s congestion control mechanisms and could lead to a poor performance [3].
In the same time, Active Queue Management (AQM) is the early notification of incipient congestion so that TCP senders can reduce their transmission rate before the queue overflows [4]. Random Early Detection (RED) [5, 6] is an important AQM mechanism, which is recommended by Internet Engineering Task Force (IETF) [7]. The basic idea behind RED queue management is to detect incipient congestion early and convey congestion notification to the end hosts, allowing them to reduce their transmission rates before queues in the network overflow and packets are dropped. To fulfill this aim, RED maintains an exponentially weighted moving average of the queue length which it uses to detect congestion. RED takes an average measure of the queue length and randomly drop packets that are within a threshold between minth and maxth. As a result, RED requires a wide range of parameters to operate correctly under different congestion scenarios. When RED parameters are not correctly defined, RED may perform even worse than the traditional tail drop policy [8, 9].
To solve the problem of the parameter setting in RED, application of the control theory to solve the congestion problem has been considered since late 1990s [10]. In such approach, the main idea is to analyses the dynamic of TCP/AQM networks, build the mathematical models, and use the available tools to design and analyze suitable congestion controllers [11]. Based on the close loop system for the communication networks, several conventional controllers such as P, PI [12], PID [13], Lyapunov Drifts [14], and variable structure control (VSC) [15] have been designed as AQM scheme in TCP/AQM networks.
Due to inevitability of the time-variable parameters in network, some limitations and disadvantages are presented in the controllers mentioned above. For example, PI controllers are very sensitive to system parameter variations, and PID controller would generate a high fluctuation in queue length of router buffers [13]. Consequently, the controller seems necessary, which is of better performance in variable network condition. In [16], a self-regulating AQM controller has been proposed, which has been compared with RED and PI controllers in variable network parameters. However, it is known that self-regulatory control performs weakly in the presence of noise. In order to overcome this, congestion controller based on adaptive controller is presented in [17–23]. The parameters in conventional adaptive controllers would be considered as the infinite model identification [24].
Through the analysis above, the congestion control based on multiple model adaptive control (MMAC) is designed in this paper. Multiple model adaptive control [25–28] is considered as the finite model identification method, which uses the weight calculation rather than the parameters estimation. Simulation results indicate that the proposed multiple model adaptive congestion control (MMACC) is superior from queue length in bottleneck router, throughput for the data source, and drop ratio for the whole communication network of the conventional congestion control.
We believe that three aspects of this paper will make it interesting to general readers. Firstly, the congestion control algorithm based on the adaptive control is proposed in variable network condition. Secondly, the multiple model adaptive control is introduced in this paper based on the weight calculation instead of the parameter estimation in traditional adaptive control. Finally, the model set is introduced in the paper, which is composed by the dynamic model based on the fluid flow. The rest of the paper is structured as follows. The dynamic model of TCP/AQM in congestion control is discussed in Section 2. Section 3 investigates the design of our proposed MMACC for congestion control. Simulation results are presented in Section 4. Finally, Section 5 concludes the paper.
2. A Fluid-Flow Model of TCP Behavior
In this section, we overview the system model [29] for TCP and queue dynamics based on fluid-flow and stochastic differential equation analysis. This model describes a sample path of each long-lived TCP connection with an additive increase and multiplicative decrease (AIMD) strategy and is given by the following coupled, nonlinear differential equations:
(1)W˙(t)=1R(t)-W(t)2W(t-R(t))R(t-R(t))p(t-R(t)),q˙(t)=-C(t)+N(t)R(t)W(t),
where W is the average congestion window size (packets), q is the average queue length (packets), R(t)=q(t)/C(t)+Tp is the round trip time (secs), and p is the probability of packet mark/drop in AQM, which takes value only in [0,1]. C, Tp and N denote the link capacity (packets/sec), the propagation delay (secs), and the connection number, respectively. 1/R(t) indicates the additive increase strategy, and W(t)/2 means the multiplicative decrease strategy. Simulation results demonstrated that this model accurately captured the dynamics of TCP. Hollot et al. [30] illustrated these differential equations in the block diagram of Figure 1 which highlights TCP window-control and queue dynamics.
Block diagram of TCP’s congestion avoidance flow-control mode.
Taking (W,q) as the state variables and p as the reference input, the equilibrium point (W0, q0, p0) is defined by W˙=0 and q˙=0, so that
(2)W0=2p0=R0C0N0=q0+C0TpN0,p0=2N02(R0C0)2=2N02(q0+C0Tp)2,R0=q0C0+Tp,
where the steady sate queue length q0 is the desired queue length in the buffer and N(t)≡N0 and C(t)≡C0 are assumed as constants.
Employing small signal linearization, we linearize the model (1) about equilibrium point and ignore the delay term. The simplified dynamics is given as
(3)x1•(t)=-N0R02C0(x1(t)+x1(t-R0))-R0C022N02u(t-R0)-1R02C0(x2(t)-x2(t-R0)),x2•(t)=N0R0x1(t)-1R0x2(t),
where x1(t)=δW=W(t)-W0, x2(t)=δq=q(t)-q0, u(t)=δp=p(t)-p0.
Based on (3) and assuming R0≫N0/C0 (which allows us to ignore the delay), the open loop transfer function of linearized system can be obtained as
(4)P(s)=K(T1s+1)(T2s+1),
where K=(R0C0)3/4N02, T1=R0, T2=R02C0/2N0.
Remark 1.
For typical network condition, W0≫1 is a reasonable assumption. Based on formula (2), we can get W0=R0C0/N0, so R0≫N0/C0.
Discrediting (4) with sampling period Ts using the bilinear Z-transformation s=(2/T)((1-z-1)/(1+z-1)), the equivalent discrete system model of the linearized TCP/AQM can be written as follows:
(5)P(z)=b0+b1z-1+b2z-21+a1z-1+a2z-2,
where
(6)a1=2(Ts2-4T1T2)(Ts+2T1)(Ts+2T2),a2=(Ts-2T1)(Ts-2T2)(Ts+2T1)(Ts+2T2),b0=b2=KTs2(Ts+2T1)(Ts+2T2),b1=2KTs2(Ts+2T1)(Ts+2T2).
3. Congestion Control Based on Multiple Model Adaptive Control
In this section, we present the proposed multiple model adaptive congestion controller. First, we describe the multiple model adaptive control taken into consideration. Then, we introduce the “local” congestion controller assigned in MMAC.
3.1. The MMAC Controller
Now, the system equation with input u(k), output y(k), and the system noise e(k) can be written as
(7)A(z-1)y(k)=B(z-1)u(k)+e(k),
where A(z-1)=1+a1z-1+⋯+anz-n is a single polynomial of order n with coefficients ai and B(z-1)=b0+b1z-1+⋯+bmz-m is a general polynomial of order m with coefficients bi.
Remark 2.
According to the statistics of MCI, 95% of bytes and 90% of packets are transported within the TCP scheme [31]. So the non-TCP data traffics, such as UDP, are considered as the noise in congestion control model.
In order to estimate the online parameters, the output y(k) can be rewritten as
(8)y(k)=θφT(k),
where
(9)θ=[-a1,…,-an,b0,b1,…,bm],φ(k)=[y(k-1),…,y(k-n),u(k),…,u(k-m)],
where M={Mi,i=1,2,…,N} is the model set that may include the true model of the unknown plant P. Further, define yi as the output of Mi. For each model Mi∈M, its output error is given by
(10)ei=y(k)-yi(k).
A concise block diagram is shown in Figure 2 to represent an MMAC system, where “local” controller Ci is designed according to any possible control strategies, if Ci stabilizes model Mi. Then, the global control u(k) is obtained by
(11)u(k)=∑i=1Npi(k)ui(k),
where ui(k) is the output of the “local” controller Ci.
Block diagram of MMAC system.
Typically, controller weights pi(k) are calculated through a bank of Kalman filters [32]. But in [28], a new algorithm is proposed which is simpler in pi(k) calculation; that is,
(12)pi(0)=li(0)=1N,li′(k)=1+1k∑r=1kei2(r),lmin′(k)=mini{li′(k)},li(k)=lmin′(k)li′(k)li(k-1),pi(k)=li(k)∑r=1Nlr(k).
3.2. “Local” Congestion Controller
The model set M is composed by three kinds of congestion models including nonlinear model, local linearization model, and the model without time delay. The model set is described as follows:
(13)M={Mi,i=1,2,3}.
In other words, three “local” congestion controllers (C1, C2, and C3) should be designed to stabilize the submodel Mi, respectively.
Firstly, nonlinear output feedback control based on variable RTT (NOFC-VRTT, C1) [33] is designed according to nonlinear dynamic model (1); that is,
(14)p1(k)=2[(N0W^(k)q-(k)-1-k1(q-(k)-q-*))N0q-(k)+(N0W^(k)q-(k)-1)(k1q-*-1)+k2q-(k)(N0W^(k)q-(k)-1-k1(q-(k)-q-*))]×(N0W^2(k)q-(k))-1.
The congestion window observer is chosen as
(15)W^˙(k)=C0q-(k)-C02W^2(k)q-(k)p(k),
where
(16)q-=1q+TpC,q-*=1q0+TpC0.
The control parameters k1 and k2 should satisfy the following inequalities:
(17)1≤k1q-*+k2q-≤2,0≤N0q-+1-k1q-*-k2q--k1k2q-z2≤2N0q-(2-k1q-*-k2q-).
Secondly, based on the linear state space model (3), the H2 output feedback controller (H2OFC, C2) could be presented as
(18)x^(t)•=A^0x^(t)+A^1x^(t-R0)+B^y(t),u(t)=C^0x^(t)+C^1x^(t-R0)+D^y(t).
This controller could also be described in the frequency domain by the nonrational transfer function
(19)C2(s)=(C^0+C^1e-sR0)(sI-A^0-A^1e-sR0)-1B^+D^,
where the parameter matrices A^0, A^1, B^, C^0, C^1, and D^ are regulated by the linear matrix inequalities. A detailed description of the regulation could be seen in Section 3 of [34]. In the same time, the transfer function in the z-domain is obtained by the bilinear Z-transformation.
Lastly, the classical proportional integral control (PI, C3) is adopted in the transfer function model (4), and the parameter tuning is discussed in paper [35]:
(20)C3(s)=Kp+Kis=KPI(s/z+1)s.
4. Simulation
In this section, we verify the proposed MMACC via simulation using the Ns-2 simulator. The benchmark network topology is addressed as shown in Figure 3. The following numerical values are considered as the system parameters: N=30 TCP sessions, Tp=0.1 s, q0=200 packets, and buffer size is 800 packets. Also, the bottleneck link bandwidth is 10 Mb/s with an average packet size of 500 byte which results in C=2500 packets/s. Using these parameters, we can calculate other parameters such as R0, W0, and p0 according to formula (2). Node Sd is set up as the UDP sender with a 0.5 Mb/s bandwidth as discussed in Section 3.1. The sample frequency is 160 Hz, and the simulation period equals to 300 s. The parameters of the three “local” controllers are designed by the network simulation condition above.
Network topology.
In detail, the parameters of C1 are as follows:
(21)k1=224,k2=113.
The parameters of C2 are calculated as
(22)a=1.547e-9,b=0.3607.
And the parameters of C3 are
(23)Kp=1.822e-5,Ki=1.816e-5.
Experiment 3.
Now we look at the bottleneck router nn1 running MMACC and router nn2 running drop tail algorithm. In order to verify the robustness of the proposed MMACC, the network condition is changed as follows: (a) initial condition; (b) propagation delay Tp is converted from 0.1 s to 0.15 s; (c) 15 new FTP sources start at 80 s and 15 FTP sources stop at 180 s randomly; (d) UDP/CBR source as noise starts at 80 s and stops at 240 s. Figure 4 shows the instantaneous queue length of the bottleneck router in variable network condition. As depicted in Figure 4, the instantaneous queue length maintains round the equilibrium value. The simulation results show that MMACC has a good robustness when network condition changes or modeling is uncertain.
Robustness of MMACC.
Experiment 4.
MMACC is considered as the linear combination of the NOFC-VRTT, H2OUT, and PI. In this simulation experiment, we compare the performance of the four congestion controllers. Figure 5 displays the queue length of the bottleneck router adopting the four congestion control strategies. It is indicated that MMACC has well disturbance attenuation and strong convergence. Tables 1 and 2 show that MMACC achieves a lower packet drop ratio and a higher link utilization than the other three congestion controls in variable network conditions. The simulation results show that MMACC provides better network performance and higher quality of service (QoS). On the other hand, PI controller omitted the high frequency part of the fluid model, and NOFC-VRTT controller only gave the range of the control coefficient. So the performance of H2OFC is much better among the three “local” congestion controllers.
Packet drop ratio in variable RTT.
RTT(s)
0.10
0.12
0.14
0.16
0.18
0.20
MMACC
0.393%
0.361%
0.329%
0.303%
0.282%
0.271%
NOFC-VRTT
0.683%
0.628%
0.581%
0.540%
0.492%
0.479%
H2OFC
0.931%
0.720%
0.630%
0.504%
0.393%
0.372%
PI
1.556%
1.263%
0.989%
0.767%
0.576%
0.497%
Link utilization in variable RTT.
RTT(s)
0.10
0.12
0.14
0.16
0.18
0.20
MMACC
95.41%
95.09%
94.83%
94.57%
94.22%
94.07%
NOFC-VRTT
95.27%
94.78%
94.45%
93.92%
93.47%
93.10%
H2OFC
95.03%
93.68%
92.04%
89.85%
86.76%
85.71%
PI
95.27%
94.72%
94.14%
93.05%
91.63%
89.69%
Instantaneous queue length in the bottleneck router.
MMACC versus NOFC-VRTT
MMACC versus H2OFC
MMACC versus PI
5. Conclusion
A new AQM method for TCP network based on multiple model adaptive control has been presented in the paper. Three dynamic models based on the TCP/AQM fluid-flow mode have been designed for the MMAC. Then the proposed adaptive method regulates the weight of the “local” congestion controller. Simulation results demonstrate that the proposed MMACC scheme is able to preserve the queue length efficiently in the bottleneck router around the desired point. In addition, the superior performance of the proposed controller has been illustrated through the results obtained via Ns-2 simulation. In the MMACC, all of the “local” congestion controllers are queue-based AQM scheme. As the rate-based schemes, providing early feedback for congestion, the rate-based “local” congestion controller would improve our MMACC, which is the next step for us.
Conflict of Interests
The authors declare that there is no conflict of interests regarding the publication of this paper.
Acknowledgment
The authors are indebted to the National Natural Science Foundation of China (61203048, 61201212, and 61304047) for financial support.
LongC.ZhaoB.GuanX.YangJ.The Yellow active queue management algorithm20054745255502-s2.0-1384429880510.1016/j.comnet.2004.09.006JacobsonV.Congestion avoidance and controlProceeding of the ACM Symposium on Communications Architectures and Protocols (SIGCOMM ’88)1988ACM31432910.1145/52325.52356YaghmaeeM. H.ToosiH. A.A fuzzy based on active queue management algorithmProceeding of the International Symposium on Performance Evaluation of Computer and Telecommunication Systems (SPECTS ’03)2003458462BradenB.ClarkD. D.CrowcroftJ.Recommendations on queue management and congestion avoidance in the internetIETF RFC 2309, 1998FloydS.JacobsonV.Random early detection gateways for congestion avoidance1993143974132-s2.0-002764749010.1109/90.251892FloydS.GummadiR.ShenkerS.Adaptive RED: an algorithm for increasing the robustness of RED2001RamakrishnanK.FloydS.A proposal to add explicit congestion notification (ECN) to IPIETF RFC2481, 1999DoranS.RED experience and differentiated queueingProceeding of the North American Network Operators Group (NANOG ’98)June 1998MartinM.ThomasB.BolotJ. C.Analytic evaluation of RED performance3Proceeding of the 19th Annual Joint Conference of the IEEE Computer and Communications Societies (INFOCOM ’00)March 2000Tel Aviv, Israel1415142410.1109/INFCOM.2000.8325392-s2.0-0033906593KwonW. H.KimH. S.A survey of control theoretic approaches in wired and wireless communication networksProceeding of the Korea-Japan Joint Workshop.20003045ArdestaniM. A.BeheshtiM. T. H.A robust discrete-time controller for delay sensitive applicationsProceeding of the 7th International Conference on Information, Communications and Signal Processing (ICICS ’09)December 2009Macau2-s2.0-7794960014910.1109/ICICS.2009.5397688TanL.ZhangW.PengG.ChenG.Stability of TCP/RED systems in AQM routers2006518139313982-s2.0-3374782054010.1109/TAC.2006.876802MR2248737HollotC. V.MisraV.TowsleyD.GongW. B.On designing improved controllers for AQM routers supporting TCP flows3Proceeding of the 20th Annual Joint Conference of the IEEE Computer and Communications Societies (INFOCOM ’01)April 2001Anchorage, Alska, USA1726173410.1109/INFCOM.2001.9166702-s2.0-0035000477SridharanA.MoellerS.KrishnamachariB.Making distributed rate control using lyapunov drifts a reality in wireless sensor networksProceeding of the 6th International Symposium on Modeling and Optimization in Mobile, AdHoc, and Wireless Networks (WiOPT ’08)April 2008Berlin, Germany4524612-s2.0-5194909675810.1109/WIOPT.2008.4586106YanM.JingY.AnY.Congestion control over internet with uncertainties and input delay based on variable structure control algorithmProceeding of the IEEE International Conference on Mechatronics and Automation (ICMA ’07)August 2007Harbin, China178817932-s2.0-3704903904610.1109/ICMA.2007.4303821FiruziM. F.HaeriM.Active queue management in TCP networks based on self tuning control approachProceeding of the IEEE Conference on Control Applications (CCA ’05)August 2005Toronto, Canada90490910.1109/CCA.2005.1507244ChenR. R.KhorasaniK.A robust adaptive congestion control strategy for large scale networks with differentiated services traffic201147126382-s2.0-7865080317210.1016/j.automatica.2010.08.019MR2878243BarzaminiR.ShafieeM.DadlaniA.Adaptive generalized minimum variance congestion controller for dynamic TCP/AQM networks20123521701782-s2.0-8295516785810.1016/j.comcom.2011.08.010WangJ. X.DongP. P.ChenJ.Adaptive explicit congestion control based on bandwidth estimation for high bandwidth-delay product networks20133610–111235124410.1016/j.comcom.2013.02.006JackoP.SansòB.Optimal anticipative congestion control of flows with time-varying input stream2012692861012-s2.0-8485662406910.1016/j.peva.2011.10.001ZhanZ. Q.ZhuJ.XuD.Stability analysis in an AVQ model of internet congestion control algorithm2012194222810.1016/S1005-8885(11)60278-1RadenkovicM.GrundyA.Efficient and adaptive congestion control for heterogeneous delay-tolerant networks2012107132213452-s2.0-8486054972710.1016/j.adhoc.2012.03.013ZhangW.TanL. S.YuanC.Internet primal-dual congestion control: stability and applications2013211879510.1016/j.conengprac.2012.09.011ZhangW.Stability of weighted multiple model adaptive control2012291216571166FekriS.AthansM.PascoalA.Issues, progress and new results in robust adaptive control200620105195792-s2.0-3384610638910.1002/acs.912MR2281781FekriS.AthansM.PascoalA.Robust multiple model adaptive control (RMMAC): a case study20072111302-s2.0-3384712167210.1002/acs.944MR2290934HassaniV.HespanhaJ.AthansM.PascoalA.Stability analysis of robust multiple model adaptive control18Proceeding of the 18th International Federation of Automatic Control World Congress (IFAC ’11)201135035510.3182/20110828-6-IT-1002.01194ZhangW.Stable weighted multiple model adaptive control: discrete-time stochastic plant201327756258110.1002/acs.2328MisraV.GongW. B.TowsleyD.Fluid-based analysis of a network of AQM routers supporting TCP flows with an application to REDProceedings of the ACM SIGCOMM Conference (SIGCOMM ’00)September 2000Stockholm, SwedenACM1511602-s2.0-0033651669HollotC. V.MisraV.TowsleyD.GongW. B.A control theoretic analysis of REDProceeding of the 20th Annual Joint Conference of the IEEE Computer and Communications Societies (INFOCOM ’01)April 2001Anchorage, Alska, USA1510151910.1109/INFCOM.2001.9166472-s2.0-0035017229ThompsonK.MillerG. J.WilderR.Wide-area internet traffic patterns and characteristics199711610232-s2.0-003127464910.1109/65.642356FekriS.AthansM.PascoalA.Issues, progress and new results in robust adaptive control200620105195792-s2.0-3384610638910.1002/acs.912MR2281781YangX. H.WangZ. Q.NOFC-VRTT: nonlinear AQM algorithm based on variable RTT201025169782-s2.0-77049101455MicheleM.NelsonL. S.JoseC.An optimal active queue management controller4Proceeding of the IEEE International Conference on Communications (ICC ’04)June 2004Paris, France2261226610.1109/ICC.2004.13129202-s2.0-4143073640HollotC. V.MisraV.TowsleyD.GongW. B.On designing improved controllers for AQM routers supporting TCP flows3Proceeding of the 20th Annual Joint Conference of the IEEE Computer and Communications Societies (INFOCOM ’01)April 2001Anchorage, Alska, USA1726173410.1109/INFCOM.2001.9166702-s2.0-0035000477