Active Queue Management and Wireless Networks Vikas Paliwal November 13, 2003 1 Introduction Considerable research has been done on internet dynamics and it has been shown that TCP s congestion avoidance mechanisms, while necessary and powerful, are not sufficient to provide good service in all circumstances. Basically, there is a limit to how much control can be accomplished from the edges of the network. Some mechanisms are needed in the routers to complement the endpoint congestion avoidance mechanisms. It is here that, active queue management(aqm) [1], an advanced form of router queue management that provides significant Internet performance improvement, comes into picture. Several techniques for AQM are available in the existing literature with varying degrees of efficacy. In this work, I will bring out the salient features of some of these techniques. Also, since our future work is to develop an effective congestion control mechanism for wireless networks, we will delve into new challenges posed by wireless networks in terms of congestion and AQM as opposed to wired networks. 2 Need for AQM The traditional technique for managing the router queues is to set a maximum length for each queue and, accept packets for the queue until the maximum length is reached, then reject subsequent packets. This technique is known as tail drop. Such queues suffer from several drawbacks like lock-out and full queues. AQM techniques address these issues and offer the following enhancements: Reduction in number of packets dropped using some queue management principle instead of dropping greater packets only when a queue does overflow. AQM techniques, among other targets, aim for keeping the average queue size small and hence reduce the delays seen by the flows. This is particularly important for interactive applications. 1
Prevention of lock-out behavior by ensuring that there will almost always be a buffer for an incoming packet. 3 AQM Techniques A greater interest in the field of router-level queue management was generated after the introduction of RED [2] algorithm. Subsequently, several variants of RED and other queue management algorithms were proposed offering improved performance. Some of the important proposed techniques are: 3.1 Random Early Detection (RED) RED technique make use of average queue length to avoid congestion. A REDbased router detects incipient congestion by computing the average queue size and if it exceeds a preset threshold, the router drops or marks each arriving packet with a certain probability, where the exact probability is a function of the average queue size. RED helps in keeping the average queue size low while allowing occassional bursts of packets in queue. Also, RED avoids the global synchronization of many connections decreasing their window at the same time. In RED, the average queue size is calculated using a low-pass filter with an exponential weighted moving average. The average queue size is compared to two thresholds, a minimum min th, and a maximum max th. When the average queue size is greater than the min th, no packets are marked, and when it exceeds max th, every arriving packet is marked. When the average queue size is between the maximum and the minimum threshold, each arriving packet is marked with a probability p a, where p a is a function of average queue size. Based on the basic framework in RED, several other forms of RED have been proposed: Adaptive RED, A-RED, adapts the value of maximum packet-marking probability, p b, to keeep the target average queue size between min th and max th [3]. Balanced RED, B-RED, drops packets based on the buffer occupancy of the flow, to achieve a more balanced bandwidth allocation in the presence of non-adaptive traffic [4]. RED with Preferential Drop, RED-PD, uses the packet drop history at the router to detect high-bandwidth flows in times of congestion, and preferentially drops packets from these high-bandwidth flows to control the bandwidth received by these flows at the congested queue [5]. Fair RED, FRED, uses per-active-connection accounting to make different dropping decisions for connections with different bandwidth usages [6]. 2
3.2 Random Exponential Marking :REM REM [7], offers high utilization and negligible loss and delay in a simple and scalable manner. It attempts to match user rates to network capacity while clearing buffers. Each queue that implements REM maintains a variable, price, as a congestion measure. Price is updated, periodically or asynchronously, based on rate mismatch (i.e. difference between input rate and link capacity) and queue mismatch(i.e. difference between queue length and target). The variable price is used to determine the marking probability. Also, REM uses sum of the link prices along a path as a measure of congestion in the path and embeds this into end-to-end marking probability. 3.3 Virtual Queue based AQM In this approach, a virtual queue [8] is maintained and is used in marking of packets. The router maintains a virtual queue with a capacity less than the capacity of the real queue and whose buffer size is equal to its real counterpart. Upon each packet arrival, fictitious packet is enqueued in the virtual queue if there is sufficient space in the buffer. If new packet overflows the virtual buffer, then the packet is discarded in virtual buffer and the real packet is marked by setting its ECN bit. This is easily implemented in an analogous manner to token bucket. However in an adaptive version [9] of this scheme, the virtual queue capacity is updated according to an equation and is dynamically adjusted offering greater utilization. 3.4 BLUE Algorithm BLUE [10] performs queue management based directly on packet loss and link utilization rather than on the instantaneous average queue length as in RED. BLUE maintains a single probability, p m, which it uses to mark (or drop) packets when they are enqueued. If the queue is continually dropping packets due to buffer overflow, BLUE increments p m, thus increasing the rate at which it sends back congestion notification. Conversely, if the queue becomes empty or if the link is idle, BLUE dcreases its marking probability. Thus BLUE learns the correct rate it needs to send back congestion notification. As an extension, Stochastic Fair BLUE (SFB), is an algorithm which can identify and rate-limit non-responsive flows using a very small amount of state information. 4 AQM in CDMA2000 Networks After having seen the various AQM schemes, it would be worthwhile to look at their effectiveness in the networks of our interest - CDMA data networks. With an expected increase in the data traffic on CDMA networks, congestion 3
at various levels on these networks becomes an issue. In a CDMA network, as apart from a fully wired network, congestion control mechanisms have to address additional problems like: The packet losses on the wireless link are hidden, so that the source only sees congestion induced losses. This is achieved by various techniques like error control, local retransmission that have various impacts on the TCP viz. increase in round-trip-time (RTT) and need to be seen from a fresher perspective. AQM can not be implemented at all the links in a CDMA network. Parts of the network especially, the base-stations (BTSs) and, to an extent, the base station controllers (BSCs), as opposed to routers in a wired networks, are minimal packet forwarding entities and are incapable of implementing computationally intensive AQM schemes. The network traffic is composed of both congestion-control compliant traffic like TCP and greedy, rogue traffic like CBR video, UDP etc. It is essential to allocate the resources in a fair manner so that compliant TCP flows are not unnecessarily penalized and non-compliant flows do not hog the bandwidth. Also, the relative composition of the traffic is known best at the gateway and BSCs only and not at the BTSs. All this calls for some AQM (preferably on a per-flow-basis) at the gateway and the BSCs. Based on the issues as discussed, we can now work out an AQM scheme for CDMA networks. The gateway to external internet can go with the standard RED scheme. However, the BSC must exploit both, its knowledge of relative composition of network traffic and the buffer overflows on the queues to base stations in the forward link, in form of an elaborate per-flow-based AQM like FRED (Fair RED) or SFB (Stochastic Fair Blue). Among these two, FRED excels over SFB in terms of lesser implementation complexity and greater reported fairness. The only overhead is that of maintaining a large buffer for effective protection against non-responsive flows. BTSs do not implement any kind of AQM and remain mere packet forwarders on forward and reverse links. So, an AQM scheme with RED gateway to external internet and FRED BSCs can effectively address the issue of congestion control in CDMA networks. 5 Conclusion In this work, I looked into various possible AQM schemes. Also, I tried to develop an effective AQM scheme for CDMA networks and argued why such a scheme is preferrable. References [1] Braden B, Clark D, Crowcroft J, Davie B, Deering S, Estrin D, Floyd S, Jacobson V, Minshall G, Partridge C, Peterson L, Ramakrishnan K, Shenker 4
S, Wroclawski J, Zhang L., Recommendations on queue management and congestion avoidance in the Internet, RFC 2309, April 1998. [2] Floyd S, Jacobson V, Random early detection gateways for congestion avoidance, IEEE/ACM Transactions on Networking, Aug. 1993. [3] Feng W, Kandlur D, Saha D, Shin K, Techniques for Eliminating Packet Loss in Congested TCP/IP Networks, U. Michigan CSE-TR-349-97, Nov. 1997. [4] Anjum F, Tassiulas L, Balanced-RED: An Algorithm to Achieve Fairness in the Internet, Infocom 1999, March 1999. [5] Mahajan R, Floyd S, RED with Preferential Dropping (RED-PD), IEEE/ACM Transactions on Networking, Sept. 1998 [6] Lin D, Morris R, Dynamics of Random Early Detection, SIGCOMM 97 [7] Athuraliya S, Li V, Low S, Yin Q, REM: Active Queue Management, IEEE Transactions on Network, May 2001. [8] Gibbens R, Kelly F, Distributed connection acceptance control for a connectionless network, Proc. of 16th Intl. Teletraffic Congress, Edinburgh, Scotland, June 1999. [9] Kunniyur S, Srikant R, Analysis and Design of an Adaptive Virtual Queue Algorithm for Active Queue Management, Proc. ACM Sigcomm 2001. [10] Feng W, Shin K, Kandlur D, Saha D, The BLUE Active Queue Management Algorithms, UM CSE-TR-387-99, 1999. [11] Kohler E, Handley M, Floyd S, Padhye J, Datagram Congestion Control Protocol (DCCP), Work in Progress, draft-ietf-dccp-spec-04, Jun. 2003. 5