Nonlinear RED: A simple yet efficient active queue management scheme q

Size: px
Start display at page:

Download "Nonlinear RED: A simple yet efficient active queue management scheme q"

Transcription

1 Computer Networks 50 (2006) Nonlinear RED: A simple yet efficient active queue management scheme q Kaiyu Zhou *, Kwan L. Yeung, Victor O.K. Li Department of Electrical and Electronic Engineering, The University of Hong Kong, CYC805, HKU, Pokfulam Road, Hong Kong, China Received 1 June 2005; received in revised form 26 January 2006; accepted 13 April 2006 Available online 17 May 2006 Responsible Editor: Chin-T. Lea Abstract Among various active queue management schemes (AQM), random early detection (RED) is probably the most extensively studied. Unlike the existing RED enhancement schemes, we replace the linear packet dropping function in RED by a judicially designed nonlinear quadratic function. The rest of the original RED remains unchanged. We call this new scheme Nonlinear RED, or NLRED. The underlying idea is that, with the proposed nonlinear packet dropping function, packet dropping becomes gentler than RED at light traffic load but more aggressive at heavy load. As a result, at light traffic load, NLRED encourages the router to operate in a range of average queue sizes rather than a fixed one. When the load is heavy and the average queue size approaches the pre-determined maximum threshold (i.e. the queue size may soon get out of control), NLRED allows more aggressive packet dropping to back off from it. Simulations demonstrate that NLRED achieves a higher and more stable throughput than RED and REM, another efficient variant of RED. Since NLRED is fully compatible with RED, we can easily upgrade/replace the existing RED implementations by NLRED. Ó 2006 Elsevier B.V. All rights reserved. Keywords: Active queue management; Nonlinear RED; Random early marking 1. Introduction q This research is supported in part by the Areas of Excellence Scheme established under the University Grants Committee of the Hong Kong Special Administrative Region, China (Project No. AoE/E-01/99), and the Research Grant Council Earmarked Grant 7048/02E. * Corresponding author. Tel.: addresses: kyzhou@eee.hku.hk (K. Zhou), kyeung@ eee.hku.hk (K.L. Yeung), vli@eee.hku.hk (V.O.K. Li). Congestion control is one of the most important problems in the Internet. Most of the existing Internet routers play a passive role in congestion control, and are known as drop-tail routers. A drop-tail router discards packets when its FIFO queue is full. It was shown in [1] that under heavy load conditions, drop-tail routers cause global synchronization, a phenomenon in which all senders sharing the same /$ - see front matter Ó 2006 Elsevier B.V. All rights reserved. doi: /j.comnet

2 K. Zhou et al. / Computer Networks 50 (2006) bottleneck router/link shut down their transmission windows at almost the same time, thereby causing a sharp drop in the bottleneck link utilization. It was also found in [2] that drop-tail routers are biased against bursty sources. This is because, when a burst of packets from a sender arrives at a fully occupied queue, a sustained packet drop within the same window of data occurs. Research in [3,4] showed that the dominant transport layer protocol, TCP [5], lacks the ability to recover from such multiple packet losses within the same window of data. Therefore, the TCP sender has to rely on retransmission timeouts to recover the lost packets. Retransmission timeout significantly slows down the transmission rate of a TCP flow, because almost no data will be sent when the sender waits for the retransmission timer to expire. A good congestion control scheme should therefore avoid triggering unnecessary timeouts. On the other hand, as more and more multimedia applications running on top of UDP are being deployed, the traditional approach of relying solely on TCP s end-to-end congestion control algorithms will no longer be viable [6]. The network, in particular the routers in the network, should play an active role in its resource allocation, so as to effectively control/prevent congestion. This is known as active queue management (AQM) [7]. The essence is that an AQM router may intelligently drop packets before the queue overflows. Among various AQM schemes, random early detection (RED) [8] is probably the most extensively studied. RED is shown to effectively tackle both the global synchronization problem and the problem of bias against bursty sources. Due to its popularity, RED (or its variants) has been implemented by many router vendors in their products (e.g. Cisco implemented WRED [9]). On the other hand, there is still a hot on-going debate on the performance of RED. Some researchers claimed that RED appears to provide no clear advantage over drop-tail mechanism [10]. But more researchers [2,11 24] acknowledged that RED shows some advantages over drop-tail routers but it is not perfect, mainly due to one or more of the following problems. RED performance is highly sensitive to its parameter settings [11,12,17,18,21,23,25]. In RED (as detailed in Section 2), at least 4 parameters, namely, maximum threshold (max th ), minimum threshold (min th ), maximum packet dropping probability ( ), and weighting factor (x q ), have to be properly set. RED performance is sensitive to the number of competing sources/flows [12,17 19,21,25]. RED performance is sensitive to the packet size [15]. With RED, wild queue oscillation is observed when the traffic load changes [12,22]. As a result, RED has been extended and enhanced in many different ways [2,11 21]. It can be found that a common underlying technique adopted in most studies is to steer a router to operate around a fixed target queue size (which can either be an average queue size or an instantaneous queue size). There are some concerns on the suitability of this approach, since the schemes thus designed are usually more complicated than the original RED. This renders them unsuitable for backbone routers where efficient implementation is of primary concern. In some schemes (e.g. [13]), additional parameters are also introduced. This adds extra complexity to the task of parameter setting. Unlike the existing RED enhancement schemes, we propose to simply replace the linear packet dropping function in RED by a judiciously designed nonlinear quadratic function. The rest of the original RED remains unchanged. We call this new scheme Nonlinear RED, or NLRED. The underlying idea is that, with the proposed nonlinear packet dropping function, packet dropping is gentler than RED at light traffic load but more aggressive at heavy load. Therefore, at light traffic load NLRED encourages the router to operate in a range of average queue sizes rather than a fixed one. When the load is heavy and the average queue size approaches the maximum threshold max th an indicator that the queue size may soon get out of control, NLRED allows more aggressive packet dropping to quickly back off from it. Simulations demonstrate that NLRED achieves a higher and more stable throughput than RED and REM [16], an efficient variant of RED. Since NLRED is fully compatible with RED, we can easily upgrade/replace the existing RED implementations by NLRED. In the next section, some major RED enhancement schemes are reviewed, which provides the necessary background for NLRED design in Section 3. In Section 4, NLRED performance is studied using simulations. Finally, we conclude the paper in Section 5.

3 3786 K. Zhou et al. / Computer Networks 50 (2006) Related work RED [8] was mainly designed to overcome the two problems associated with drop-tail routers, namely, global synchronization and bias against bursty sources. Unlike the drop-tail mechanism, RED measures congestion by the average queue size and drops packets randomly before the router queue overflows. When a packet arrives at a router, the average queue size, denoted avg, is updated using the following exponentially weighted moving average (EWMA) function: avg ¼ð1 x q Þavg 0 þ x q q; where avg 0 is the calculated average queue size when the last packet arrived, q is the instantaneous queue size, and x q is the pre-determined weighting factor with a value between 0 and 1. As avg varies from a minimum threshold min th to a maximum threshold max th, the packet dropping probability p d increases linearly from 0 to a maximum packet dropping probability,or 8 >< 0 avg < min th ; avg min p d ¼ th max th min th min th 6 avg < max th ; >: 1 max th 6 avg: ð1þ May et al. [13] modeled the throughput of RED and they showed that under heavy load the throughput is inversely proportional to the load. This problem can be solved by selecting appropriate parameters for RED [11]. Besides, queuing delay and jitter have also been studied. It is found that delay jitter in RED is very sensitive to the value of the weighting factor x q. Small x q results in large delay variance, which is not suitable for real-time applications [22]. Zheng and Atiquzzaman [14] believed that the most important problem of RED is low throughput. They found that just modifying the parameters of RED for throughput enhancement is not sufficient; so they proposed a scheme that uses a packet dropping function consisting of two linear segments instead of a single one. This change is in fact very similar to that of gentle RED (GRED) by Floyd [26]. In the original RED, the packet dropping probability is set to 1 when max th 6 avg. This was later considered to be too aggressive and thus a gentle version of RED (or GRED) was proposed, which is implemented in the ns-2 [27]. In GRED, the packet dropping probability increases linearly Fig. 1. Dropping functions for RED and GRED. from to 1 when avg increases from max th to 2max th. The resulting packet dropping function is shown in Fig. 1. In [18], Feng et al. showed that the effectiveness of dropping packets to control source rate is affected by the number of sources. So there is no single set of RED parameters that can work well under different congestion scenarios. Therefore, they proposed the adaptive RED (ARED) scheme, which adapts the value based on the traffic load. In [17], Floyd acknowledged that the average queue size of the original RED is sensitive to the level of congestion as well as the RED parameter settings. She then introduced a new adaptive RED scheme, which is partially based on ARED. In this scheme, the variance of average queue size is used to adjust. It also differs from ARED in that the average queue size is steered to a target around (max th + min th )/2. Besides, instead of using a constant weighting factor x q, x q is given by x q =1 e 1/L, where L is the capacity of the bottleneck link under consideration. In [12], Teunis J. Ott et al. observed wild oscillations in instantaneous queue size when the traffic load changes. The traffic load is measured by the number of active flows carried by a link. Therefore, they designed a mechanism to estimate the number of active flows in a bottleneck link. Based on the estimated number of flows, an adaptive AQM scheme was proposed, aiming at operating the router at a fixed target queue size. In [16], by arguing that the average queue size is a performance measure instead of a congestion measure, an approach known as random exponential marking (REM) was developed and analyzed. It was shown that REM is able to achieve high link utilization, negligible packet loss, and short queuing delay in a simple and scalable manner. In REM, a state variable r is maintained via

4 K. Zhou et al. / Computer Networks 50 (2006) rðk þ 1Þ ¼½rðkÞþcðaðqðkÞ bþþkðkþ C T ÞŠ; ð2þ where b is the desired queue occupancy, k(k) is the arrival rate during the kth sample, T is the sample period, C is the link capacity, c and a are constants. The mapping from r to the packet drop probability is p rem ðkþ ¼1 / rðkþ ; ð3þ where / is a constant parameter. In [20], AVQ takes a rather different approach to design an AQM. AVQ seeks to keep the queue empty. To this end, a virtual link speed is introduced, which is kept no greater than the actual link speed. Accordingly, a virtual queue is maintained along with the virtual link speed. As packets arrive, they are placed in the real queue while a token is placed in the virtual queue. The real packets are served with the link speed, while the tokens are served at the virtual link speed. The service time of a token is the size of the corresponding packet divided by the virtual link speed. If a token finds the virtual queue full, then the real packet and token are dropped. The virtual capacity at each link is then adapted to ensure that the total flow entering each link achieves a desired utilization of the link. Modeling the dynamics of TCP and AQM is another important research area. In particular, Misra et al. modeled the dynamics of TCP and AQM with stochastic differential equations in [15]. They showed that it is the combination of link bandwidth, average packet size, sampling interval, and traffic load that make RED stable. Partly based on those results, in [19], Hollot et al. used control theory to investigate AQM as a classical feedback system and introduced the PI controller to improve RED s performance. Recently, Gao and Hou [23] argued that the model of TCP and AQM dynamics in the previous work does not consider the real implementation of a TCP; so they proposed a state feedback controller (SFC). To summarize, we note that schemes in [12,15 17,20,21,23] tend to be more complicated than the original RED. They all adopted a common underlying technique to steer a router to operate at a fixed target queue size independent of traffic load. We have some concerns on the suitability of this approach. Suppose the target queue size is set too small and the offered load is high (so the number of flows is large), each active flow s congestion window size will be very small due to resource sharing. As a result, when a flow has less than three packets acknowledged in a single window, the flow has to wait for retransmission timeout, and the throughput is low. On the other hand, if the target queue size is set too large and the offered load is light, packets will experience a long queuing delay without any gain in throughput. If the target queue size is allowed to vary with the traffic load, we observe the following advantages: The potential problems with the fixed target queue size can be removed. A fairer congestion control can be realized. To illustrate the second point, we can express the throughput of a TCP connection as R ¼ w MSS RTT ; ð4þ where w is the sender window size, MSS is the segment size, and RTT is the round-trip-time (which increases with the queue size). From (4), increasing RTT reduces the throughput, and thus the sending rate. Therefore, allowing router queue size to build up is another way, probably with a finer granularity of control, to slow down all senders passing through this router when congestion occurs. Therefore, this tends to be fairer than just punishing a few unlucky senders by random packet dropping. 3. Nonlinear random early detection 3.1. NLRED Algorithm The throughput performance of RED is not stable. For example, when the traffic load is very light and RED parameters are aggressively set or when the traffic load is very heavy and the parameters are tenderly set, the throughput is low. It has been shown that no single set of parameters for RED could get a stable performance under different traffic loads. We believe such instability is due, at least in part, to the linear packet dropping function adopted by RED, which tends to be too aggressive at light load, and not aggressive enough when the average queue size approaches the maximum threshold max th. We also believe that the performance improvement of some previous work is at least partly due to the employment of nonlinear dropping function (e.g. [14,16]), either intentionally or unintentionally. (More reasons to be provided later.) However, we notice that these improvements may

5 3788 K. Zhou et al. / Computer Networks 50 (2006) NLRED for each packet arrival: calculate the average queue size avg if avg < minth no packet drop else if min < th avg < maxth calculate the packet drop probability using (3) drop the packet with the calculated probability else drop the packet not be suitable for core routers, as their nonlinear dropping functions greatly complicate the basic mechanism of RED. In this paper, we propose to replace the linear packet dropping function by a judicially designed quadratic function. The resulting scheme is called non-linear RED or NLRED. The pseudocode of NLRED is summarized in Fig. 2. When avg exceeds the minimum threshold, NLRED uses the nonlinear quadratic function shown in (5) to drop packets, where max 0 p represents the maximum packet dropping probability of NLRED. Fig. 3 compares the packet dropping functions for RED and NLRED. (The choice of a quadratic function is further explained in the next subsection.) 8 0 avg 6 min th; >< p 0 d ¼ avg min 2max th 0 max th min th p min th < avg 6 max th ; >: 1 max th < avg: ð5þ Comparing (5) to the dropping function of original RED in (1), if the same value of is used, NLRED will be gentler than RED for all traffic load. This is because the packet dropping probability of NLRED will always be smaller than that of RED. In order to make the two schemes to have a comparable total packet dropping probabilities, we set max 0 p ¼ 1:5, such that the areas covered by both dropping functions from min th to max th are the same, or Z maxth min th p d dðavgþ ¼ Z maxth min th p 0 d dðavgþ: 3.2. Why use a quadratic function? Given that N TCP flows equally share a link with bandwidth L, and experience a random packet loss/ drop probability p. It was shown [18] that p and N has the following relationship: p < N MSS a 2 L RTT ; where a is a constant. This equation indicates that to effectively manage the flows (so as to fully utilize the available network bandwidth) the packet dropping probability should vary quadratically with the number of flows. However, finding the number of active flows N needs (i) per flow information, (ii) extra storage space for storing extra state information, and (iii) extra router processing overhead. Besides, the resulting flow number is nothing more than an estimation [12,24]. In (5), we have proposed to vary the packet dropping probability based on a quadratic function of average queue size. In [19], it is shown that the average queue size at a router is roughly directly 95 Fig. 2. Pseudocode of NLRED. Average queue length (packets) Fig. 3. Dropping functions for NLRED and RED. Fig. 4. Average queue size vs. number of flows, with drop-tail router.

6 K. Zhou et al. / Computer Networks 50 (2006) Fig. 5. The network simulated. proportional to the number of active TCP flows passing through it. This is further verified by the simulations results shown in Fig. 4. The average queue size versus the number of flows is obtained by simulating the network in Fig. 5 with drop-tail router mechanisms. (Other simulations using RED with different traffic load also show similar results.) In fact, choosing a quadratic function is also intuitively appealing. From Fig. 3, when the average queue size is slightly larger than min th, the packet dropping probability is smaller than the corresponding RED. As such, the average queue size will not be forced to work around min th as strongly as that in RED. Or, one can interpret this as follows. Under current traffic load, the signal for congestion is not strong enough to justify any severe measures to cut back queue size; so a gentler than RED packet dropping probability is desirable. While doing this, we naturally encourage the routers to operate over a range of queue sizes closer to min th (instead of at a fixed target queue size). When avg approaches max th, the congestion becomes more pronounced. The routers can thus take decisive actions to drop packets at a rate higher than RED. 4. Simulation results NLRED is implemented using ns-2 simulator [27]. We conduct the simulations based on the network in Fig. 5, which consists of N senders and one sink, connected together via two routers A and B. The link between the two routers is the bottleneck. By varying N, we produce different levels of traffic load and thus different levels of congestion on the bottleneck link. The active queue management schemes under investigation are implemented at router A, which has a queue buffer size of 120 packets. Unless otherwise stated, we assume that all packets generated by the senders are 0 bytes long. Extensive simulations based on this network using different TCP implementations (Tahoe, Reno, and New Reno), RTTs, and AQM schemes (with different parameter sets), are conducted, whereas only a representative subset of the results based on TCP Reno is reported below. Besides, we choose to compare NLRED with GRED [26] instead of RED, due to the superior performance of GRED over RED. We also compare NLRED with REM [27] as it is a representative scheme that steers a router to operate around a fixed target queue size and reported with excellent performance Experiment 1 Figs. 6 9 show the results of a set of simulations with the number of long-lived TCP flows increasing from 5 to 120 and varying from 0.02 to 0.5. The receiver s advertised window of each connection is set to be bigger than the bandwidth delay product. Each point of the simulation results is Throughput/Bandwidth (%) =0.5 = =0.125 =0.1 = =0.03 =0.025 = Fig. 6. Throughput vs. number of flows using GRED.

7 37 K. Zhou et al. / Computer Networks 50 (2006) Throughput/Bandwidth (%) Average queue length (packets) =0.5 =0.2 =0.125 =0.1 =0.05 =0.03 =0.025 = Fig. 7. Throughput vs. number of flows using NLRED =0.5 =0.2 = =0.1 = =0.03 =0.025 = Fig. 8. Average queue size vs. number of flows using GRED. Average queue length (packets) = =0.2 =0.125 =0.1 = =0.03 =0.025 = Fig. 9. Average queue size vs. number of flows using NLRED. obtained from a single 200 s simulation while the statistics are collected in the second half of the simulation time (i.e. the second -s interval). As explained in Section 3.1, in order to compare GRED and NLRED, the maximum packet dropping probability of NLRED is set as max 0 p ¼ 1:5. As such, the simulation results/curves obtained using NLRED will be labelled by its equivalent instead of max 0 p. As an example, the line labelled with = 0.1 in Fig. 9 means the actual maximum packet dropping probability is max 0 p ¼ 0:15. Both GRED and NLRED use the same set of parameters, x q = 0.002, min th = 10, and max th = 30. Figs. 6 and 7 show the bottleneck link throughput against the number of flows. Each curve in the figures represents the simulation results with a given. Comparing the two figures, we can see that NLRED is less sensitive to the choice of under different traffic loads (i.e. number of flows). Although the throughput of NLRED still changes with the load, for some selections (e.g. = , or max 0 p ¼ 0:075 0:15), NLRED is very successful in maintaining a high throughput regardless of the loading. This is mainly due to NLRED s nonlinear quadratic packet dropping function, which allows more packet bursts to pass when the average queue size is small, and drops more packets when the average queue size becomes large. Figs. 8 and 9 show the change of the average queue size with the number of flows. Unlike GRED, we can see that NLRED allows the average queue size to grow at a faster rate when the number of flows is small. As the number of flows increases, NLRED tends to control the average queue size better (i.e. the queue size converges to a stable value faster) than GRED. To have a closer examination on the ability to control queue size, we show in Figs. 10 and 11 the instantaneous and average queue sizes against time, with the number of flows N = and = We can see that the oscillations in both instantaneous and average queue sizes are much more noticeable when GRED is used. With NLRED, the oscillations are effectively suppressed, again due to its nonlinear packet dropping function Experiment 2 We compare the performance of GRED, REM [28] and NLRED under different traffic loads. We set of all the three AQM schemes to 0.1,

8 K. Zhou et al. / Computer Networks 50 (2006) EWMA Average queue Instantaneous queue 99 Queue length (packets) Time (seconds) Fig. 10. Change in queue occupancy when NLRED is used with N = flows, = 0.02, x q = 0.002, min th = 10, max th = 30. Throughput/Bandwidth (%) GRED REM NLRED Fig. 12. Throughput vs. flow number: GRED, REM and NLRED. EWMA Average queue Instantaneous queue 40 Queue length (packets) Time (seconds) Fig. 11. Change in queue occupancy when GRED is used with N = flows, = 0.02, x q = 0.002, min th = 10, max th = 30. x q = 0.002, min th = 10, and max th = 30. The default parameters of REM in ns-2 are used, they are c = 0.001, a = 0.1, / = 1.001, and b =20. From Fig. 12, we can see that NLRED has the highest overall throughput, whereas GRED is the lowest. It is interesting to see a short concave phase when the traffic is changed from 10 flows to 40 flows. However, as soon as the number of flows is larger than 40, the throughput for NLRED quickly converges to the link bandwidth. Besides, during the concave range, the throughput of NLRED is still always higher than GRED. Fig. 13 shows the corresponding average queue size of using GRED, REM, and NLRED. By steering the queue around a target Average queue length (packets) GRED REM NLRED Fig. 13. Average queue size vs. flow number: GRED, REM and NLRED. length, REM suffers the low throughput when traffic load is extremely light (less than 5 flows) and extremely high. When N > 60, the throughput of REM is unstable and drops as N increases Experiment 3 Since Misra et al. [15] indicated that packet size affects the performance of AQM schemes, in this experiment (again based in Fig. 5), we test and compare the packet size sensitivity of GRED, REM, and NLRED. REM is configured to work in byte mode because packet mode shows extremely poor

9 3792 K. Zhou et al. / Computer Networks 50 (2006) Throughput/Bandwidth (%) GRED REM (byte mode) NLRED NLRED was shown to outperform RED as well as REM and some of its variants. In particular, NLRED is less sensitive to parameter settings, has a more predictable average queue size, and can achieve a higher throughput. We credit the above performance gain to the idea of encouraging the router to operate over a range of queue sizes according to traffic load instead of at a fixed one. This is realized in NLRED by using a gentle packet dropping probability at the onset of the congestion, and a much more aggressive dropping probability when the congestion becomes more pronounced Packet size (bytes) performance. 1 (We believe the error in arrival rate estimation is the reason for such poor performance with packet mode REM.) However, the queue length of byte mode REM cannot be directly compared with the results of other schemes, because it uses bytes as unit whereas others use packets. To solve the problem, we normalize the queue length of byte mode REM to use packets as unit. The conversion assumes all the packets are with the same size as the referenced packet size. We simulate 50 long-lived FTPs. For each AQM algorithm, we conduct a set of simulations with the packet size ranging from bytes to 2500 bytes. Fig. 14 shows the throughput against packet size. We can see that NLRED is least sensitive to the packet size and therefore is better than both GRED and REM. 5. Conclusions Fig. 14. Throughput vs. packet size. In this paper, we proposed a new active queue management scheme called Nonlinear RED (NLRED). NLRED is the same as the original RED except that the linear packet dropping probability function is replaced by a nonlinear quadratic function. While inheriting the simplicity of RED, 1 Packet mode REM is processed on a packet basis, i.e. all the variables in (2) use packets as unit. For byte mode REM, the queue length q(k) and arrival rate k(k) are measured in bytes; however, the final result r is required to be in packets (as in (3)), so a variable called referenced packet size is introduced. All the variables in bytes are then mapped into packets by simply dividing by the referenced packet size which is 500 bytes in ns-2 by default. References [1] L. Zhang, S. Shenker, D.D. Clark, Observations on the dynamics of a congestion control algorithm: the effects of two-way traffic, in: Proceeding of ACM SIGCOMM 91, the Conference on Communications Architecture and Protocols, Zurich, Switzerland, September 03 06, 1991, pp [2] R. Mahajan, S. Floyd, D. Wetherall, Controlling highbandwidth flows at the congested router, in: Proceeding of Ninth International Conference on Network Protocols (ICNP 01), Riverside, California, USA, November 11 14, 2001, pp [3] S. Floyd, J. Mahdavi, M. Mathis, et al., An extension to the selective acknowledgement (SACK) option for TCP, in: RFC 2883, [4] K. Xu, N. Ansari, Stability and fairness of rate estimation based AIAD congestion control in TCP, IEEE Communications Letters 9 (2005) [5] I.S. Institute, Transmission control protocol, in: RFC793, [6] S. Floyd, K. Fall, Promoting the use of end-to-end congestion control in the Internet, IEEE/ACM Transactions on Networking 7 (1999) [7] B. Braden, D. Clark, J. Crowcroft, et al., Recommendations on queue management and congestion avoidance in the Internet, in: RFC2309, April [8] S. Floyd, V. Jacobson, Random early detection gateways for congestion avoidance, IEEE/ACM Transactions on Networking 1 (1993) [9] Cisco Systems, Congestion Avoidance Overview. Available from: < software/ios120/12cgcr/qos_c/qcpart3/qcconavd.htm>. [10] C. Brandauer, G. Iannaccone, C. Diot, et al., Comparison of tail drop and active queue management performance for bulk-data and Web-like Internet traffic, in: Proceeding of Sixth IEEE Symposium on Computers and Communications (ISCC 01), Hammamet, Tunisia, July 03 05, 2001, pp [11] W.-C. Feng, D.D. Kandlur, D. Saha, et al., A self-configuring RED gateway, in: Proceeding of Eighteenth Annual Joint Conference of the IEEE Computer and Communications Societies, (INFOCOM 99), vol. 3, New York, NY, USA, March 21 25, 1999, pp [12] T.J. Ott, T.V. Lakshman, L.H. Wong, SRED: stabilized RED, in: Proceeding of Eighteenth Annual Joint Conference of the IEEE Computer and Communications Societies,

10 K. Zhou et al. / Computer Networks 50 (2006) (INFOCOM 99), vol. 3, New York, NY, USA, March 21 25, 1999, pp [13] M. May, J.-C. Bolot, A. Jean-Marie, et al., Simple performance models of differentiated services schemes for the Internet, in: Proceeding of Eighteenth Annual Joint Conference of the IEEE Computer and Communications Societies, (INFOCOM 99), vol. 3, New York, NY, USA, March 1 25, 1999, pp [14] B. Zheng, M. Atiquzzaman, DSRED: an active queue management scheme for next generation networks, in: Proceeding of 25th Annual IEEE Conference on Local Computer Networks (LCN 00), Tampa, Fl, USA, November 8 10, 2000, pp [15] V. Misra, W.-B. Gong, D. Towsley, Fluid-based analysis of a network of AQM routers supporting TCP flows with an application to RED, ACM SIGCOMM Computer Communication Review 30 (2000) [16] S. Athuraliya, S.H. Low, V.H. Li, et al., REM: active queue management, IEEE Network 15 (2001) [17] S. Floyd, R. Gummadi, S. Shenker, Adaptive RED: An algorithm for increasing the robustness of RED s active queue management, Available from: < icir.org/floyd/papers/adaptivered.pdf>. [18] W. Feng, D. Kandlur, D. Saha, et al., Blue: An alternative approach to active queue management, in: Proceeding of the 11th International Workshop on Network and Operating Systems Support for Digital Audio and Video (NOSSDAV 01), Port Jefferson, NY, USA, June 25 26, 2001, pp [19] C.V. Hollot, V. Misra, D. Towsley, et al., Analysis and design of controllers for AQM routers supporting TCP flows, IEEE Transactions on Automatic Control 47 (2002) [20] S.S. Kunniyur, R. Srikant, An adaptive virtual queue (AVQ) algorithm for active queue management, IEEE/ACM Transaction on Networking 12 (2004) [21] L. Zhu, N. Ansari, Local stability of a new adaptive queue management (AQM) scheme, IEEE Communications Letters 8 (2004) [22] T. Bonald, M. May, J.-C. Bolot, Analytic evaluation of RED performance, in: Proceeding of the Nineteenth Annual Joint Conference of the IEEE Computer and Communications Societies (INFOCOM 00), vol. 3, Tel Aviv, Israel, March 26 31, 2000, pp [23] Y. Gao, J.C. Hou, A state feedback control approach to stabilizing queues for ECN-enabled TCP connections, in: Proceeding of the Twenty-Second Annual Joint Conference of the IEEE Computer and Communications Societies (INFOCOM 03), vol. 3, San Francisco, CA, USA, March 30 April 3, 2003, pp [24] S. Bohacek, K. Shah, G.R. Arce, et al., Signal processing challenges in active queue management, IEEE Signal Processing Magazine 21 (2004) [25] S. Kunniyur, R. Srikant, Analysis and design of an adaptive virtual queue (AVQ) algorithm for active queue management, ACM SIGCOMM Computer Communication Review 31 (2001) [26] S. Floyd, Recommendation on using the gentle_variant of RED, March Available from: < floyd/red/gentle.html>. [27] UCN/LBL/VINT, Network Simulator NS2. Available from: < [28] D. Lapsley, S. Low, Random early marking for Internet congestion control, in: Proceeding of Global Telecommunications Conference (GLOBECOM 99), vol. 3, Rio de Janeiro, Brazil, December 5 9, 1999, pp Zhou Kaiyu received the M.S. and B.S. degree in electronics from the University of Electronic Science and Technology of China, Cheng Du, China, in 1994 and 1997, respectively. He is currently working toward the Ph.D. degree in the Department of Electrical and Electronic Engineering at the University of Hong Kong, Hong Kong, China. His research focuses on transport layer protocol analysis and improvement, Internet congestion control and avoidance. Kwan L. Yeung was born in He received his B.Eng. and Ph.D. degrees in Information Engineering from The Chinese University of Hong Kong in 1992 and 1995, respectively. He joined the Department of Electrical and Electronic Engineering, The University of Hong Kong in July 2000, where he is currently an Associate Professor. Before that, he has spent five years in the Department of Electronic Engineering, City University of Hong Kong as an Assistant Professor. During the summer of 1993, He served with the Performance Analysis Department, AT&T Bell Laboratories (now Bell Labs, Lucent Technologies), Holmdel, USA, as a Member of Technical Staff-I. His research interests include next-generation Internet, active queue management, packet switch/router design, all-optical networks and wireless data networks. He is a regular technical reviewer for many international journals and conferences, and a regular reviewer of CERG grant applications. He has published about papers in international journals and conferences. He was ranked First Place in 1993 IEEE (HK) Student Paper Contest (postgraduate). He has also been listed in Marquis Who s Who in the World and Who s Who in Science and Engineering. In the academic year of , he was recognized as an Outstanding Teacher in the Department of Electronic Engineering, City University of Hong Kong. He becomes a senior member of IEEE since Victor O.K. Li received SB, SM, EE and ScD degrees in Electrical Engineering and Computer Science from the Massachusetts Institute of Technology, Cambridge, Massachusetts, in 1977, 1979, 1980, and 1981, respectively. He joined the University of Southern California (USC), Los Angeles, California, USA in February 1981, and became Professor of Electrical Engineering and Director of the USC Communication Sciences Institute. Since September 1997 he has been with the University of Hong Kong, Hong Kong, where he is Chair

11 3794 K. Zhou et al. / Computer Networks 50 (2006) Professor of Information Engineering at the Department of Electrical and Electronic Engineering. He has also served as Managing Director of Versitech Ltd. ( the technology transfer and commercial arm of the University, and on various corporate boards. His research is in information technology, including all-optical networks, wireless networks, and Internet technologies and applications. He is a Principal Investigator of the Area of Excellence in Information Technology funded by the Hong Kong government. Sought by government, industry, and academic organizations, he has lectured and consulted extensively around the world. He chaired the Computer Communications Technical Committee of the IEEE Communications Society , and the Los Angeles Chapter of the IEEE Information Theory Group He co-founded the International Conference on Computer Communications and Networks (IC3N), and chaired its Steering Committee He also chaired various international workshops and conferences, including, most recently, IEEE INFOCOM He has served as an editor of IEEE Network, IEEE JSAC Wireless Communications Series, and Telecommunication Systems. He also guest edited special issues of IEEE JSAC, Computer Networks and ISDN Systems, and KICS/ IEEE Journal of Communications and Networking. He is now serving as an editor of ACM/Kluwer Wireless Networks and IEEE Communications Surveys and Tutorials. He has been appointed to the Hong Kong Information Infrastructure Advisory Committee by the Chief Executive of the Hong Kong Special Administrative Region. He is a part-time member of the Central Policy Unit of the Hong Kong Government. He also serves on the Innovation and Technology Fund (Electronics) Vetting Committee, the Small Entrepreneur Research Assistance Programme Committee, the Engineering Panel of the Research Grants Council, and the Task Force for the Hong Kong Academic and Research Network (HARNET) Development Fund of the University Grants Committee. He was a Distinguished Lecturer at the University of California at San Diego, at the National Science Council of Taiwan, and at the California Polytechnic Institute. He has also delivered keynote speeches at many international conferences. He has received numerous awards, including, most recently, the Changjiang Chair Professorship from the Ministry of Education, China, the UK Royal Academy of Engineering Senior Visiting Fellowship in Communications, the Outstanding Researcher Award of the University of Hong Kong, the Croucher Foundation Senior Research Fellowship, and the Bronze Bauhinia Star, Government of the Hong Kong Special Administrative Region, China. He was elected an IEEE Fellow in He is also a Fellow of the HKIE and the IAE.