FEAVQCHOKE: AN ALGORITHM TO
PENALIZE THE UNRESPONSIVE
FLOWS IN A DYNAMICALLY
VARYING TRAFFIC IN AN IP
NETWORK
K.CHITRA
Associate Professor, Dept. of Computer Science D.J. Academy for Managerial Excellence Coimbatore, Tamil Nadu, India – 641 032
DR. G.PADAMAVATHI
Head & Professor
Avinashilingam University for Women Coimbatore, Tamil Nadu, India
Abstract:
IP networks face bursty traffic and fewer packets are dropped with Active Queue Management (AQM). The link utilization also increases because less TCP global synchronization occurs due to the implementation of the AQM algorithm. The queue management will reduce the delays and jitter seen by flows only when the average queue size is small. Much of the traffic in existing packet networks is highly periodic, either because of periodic sources (e.g., real time speech or video) or a network-bandwidth limited TCP bulk data transfer. AQMs in an IP network with periodic traffic can result in systematic discrimination against some flows. Discrimination can result in a queue oscillation. This discrimination can be eliminated with the addition of appropriate flow information to the AQM in the network. This paper proposes an AQM algorithm called FEAVQCHOKe that corrects this bias against bursty traffic and achieves a higher and more stable throughput and performs better than current active queue management algorithms due to the lowest packet drops.
Keywords: Congestion; Fairness; Discrimination.
1. The Introduction
Improving the congestion control and queue management algorithms in the Internet has been one of the most active areas of research in the past few years. It is very important to avoid high packet loss rates in the Internet. When a packet is dropped before it reaches its destination, all of the resources it has consumed in transit are wasted. In extreme cases, this situation also leads to congestion collapse. While a number of proposed enhancements or algorithms have been made, IP networks still experience high packet loss rates. Loss rates are especially high during times of heavy congestion, when a large number of connections compete for scarce network bandwidth. Thus resulting effects of such congestion include long delays in data delivery, wasted resources due to lost or dropped packets, and even possible congestion collapse, in which all communication in the entire network comes to an end.
Recent studies have shown that the growing demand for network bandwidth has driven loss rates up across various links in the Internet. It is therefore obvious that in order to maintain good network performance, certain mechanisms must be provided to prevent the network from being congested for any noteworthy period of time. Two approaches to handling congestion are congestion control and congestion avoidance. The former is reactive in that congestion control typically comes into play after the network is overloaded, that is, congestion is detected. The latter is proactive in that congestion avoidance comes into play before the network becomes overloaded, that is, when congestion is expected. In general and throughout this article, the term congestion control is used to denote both approaches.
remains a major problem that leads to poor performance. Internet is still evolving as a high-performance network providing ubiquitous services, including real time voice/video.
This paper presents recommendations to the Internet community concerning measures to improve and preserve Internet performance. It presents a strong recommendation for deployment of active queue management in routers, to improve the performance of today's IP network. It also urges a concerted effort of research, measurement, and ultimate deployment of router mechanisms to protect the Internet from flows that are not sufficiently responsive to congestion notification. Accordingly, many congestion control approaches have been proposed. However, current Internet congestion control methods results in unsatisfactory performance including multiple packet losses and low link utilization as the number of users and the size of the network increases. Active Queue Management (AQM) the network algorithms executed by network components such as routers, detect network congestion, packet losses, or incipient congestion, and inform traffic sources either implicitly or explicitly.
The first AQM algorithm RED detects congestion by observing the queue state. In RED [2] [8] packet drop probability is linearly proportional to queue length. The AQM algorithm RED drops packets before a queue becomes full. This reduces the number of packets dropped. RED and its variant uses queue length as a congestion indicator that results in certain drawbacks. In order to overcome the difficulty of relying only on queue length to identify the level of congestion various other AQMs are introduced with different congestion indicators.
To overcome the problems with RED, REM [1] was proposed. This AQM scheme attempts to make user input rates equal to the network capacity. In case of high congestion, sources are indicated to reduce their rates. In contrast to RED, REM decouples congestion measure from performance measure which stabilizes the queue around its target independent of traffic load leading to high utilisation and low delay. AQM schemes like GREEN [5], AVQ [12] also depend on arrival rate to control the congestion in the router. AVQ uses only the traffic input rate for the measure of congestion. This provides early feedback of congestion. It provides a better control than the number of other well known AQM schemes.
Another AQM scheme BLUE [6] does not use queue length as a congestion metrics. BLUE uses packet loss and link utilization as a congestion indicator. BLUE improves RED’s performance in all the aspects. It is extremely simple and provides a significant performance improvement over the RED queue. This AQM maximizes the link utilisation but suffers from large queuing delays. In LRED [16] packet loss ratio is used to design more adaptive and robust AQM. It uses the instantaneous queue length and packet loss ratio to calculate the packet drop probability.
AQMs that used only the congestion metric faced the problem of unfairness in handling the different types of traffic. RED based AQMs are vulnerable to unresponsive flows in case of varying traffic in a routers queue. To overcome this problem, FRED [14] was proposed that improved uniformity by constraining all flows to occupy loosely equal shares of the queue’s capacity. To overcome the shortcomings of the FRED, CHOKe [15] was designed. This paper considers the advantages of the queue-based, load-based and flow-based algorithms to combine into an improvised AQM algorithm. This improvised AQM algorithm called Flow based EAVQCHOKe (FEAVQCHOKe) tries to achieve its objective of improving the overall performance.
In the next section, a broad study of all possible AQM schemes is presented to identify the basic schemes that exist and their classification based on congestion metric and flow information. In section 3 the FEAVQCHOKe algorithm is discussed to bring out the advantages of the proposed algorithm. Section 4 concludes the proposed algorithm.
2. Background
During the recent years research activities have come out with various congestion avoidance mechanisms in Internet to improve Internet traffic. But each of these mechanisms is ineffective especially in heavy traffic network. That has made research a continuous process in identifying the best Active Queue Management algorithm. Congestion in routers results in high packet loss leading to high cost that is reduced by the various existing AQM schemes.
Queue-based: RED, DS-RED, MRED AdaptiveRED, PD-RED, LRED HRED, ARED, RED with AutoRED Load-based:
Yellow, AVQ, SAVQ, EAVQ Both Queue & Load based: REM, SVB
Others BLUE
Queue-based FRED, CHOKe SHRED, StochasticRED Load-based: SFED, FABA, LUBA Others: SFB
Active Queue Management
Congestion metric Without Flow Information
Congestion metric With Flow Information
Only Flow Information
SRED GREEN
Figure 1 Classification of AQM Schemes
The first well known AQM scheme proposed is RED. It tries to avoid problems like global synchronization, lock-out, bursty drops and queuing delay that exists in the traditional passive queue management i.e Droptail scheme. In this AQM scheme, the dropping probability depends on various parameters like minth, maxth, Qave and wq. These parameters must be tuned well for the RED to perform better. However, it faces weaknesses such as accurate parameter configuration and tuning. This becomes a major disadvantage for the RED algorithm. Though RED avoids global synchronization but fails when load changes dramatically. Queue length gives minimum information regarding the severity of congestion. RED does not consider the packet arrivals from the various sources, which is also a very important measure for the congestion indication. RED based AQMs like DSRED [18], MRED [13], AdaptiveRED [9] tried to remove the problems of RED. DSRED, MRED showed better performance than RED. AdaptiveRED tried to eliminate the problem of parameter tuning by adapting the parameters. Though RED and its variant were simple to handle, the difficulty with it isthe parameter tuning problem. RED based AQMs are vulnerable to unresponsive flows dominating a routers queue.
To overcome this problem, FRED was proposed that improved uniformity by constraining all flows to occupy loosely equal shares of the queue’s capacity. It removed the problem of unresponsive flows dominating a queue. AQMs that used only congestion metric and not flow information faced the problem of unfairness in handling the different types of traffic. FRED is based on instantaneous queue occupancy of a given flow. It removes the unfairness effects found in RED. It provides better protection than RED for adaptive flows and isolating non-adaptive greedy flows. Though it used the congestion metric, it also had to keep track of the additional flow information to control congestion. This became the major weakness of the FRED. Based on this AQMs were developed to get rid of the overhead. Combination of Flow and congestion metric based AQMs like CHOKe, SFB [7], SFED [10], FABA [11], StoRED [3] were proposed to allocate fair buffer between flows considering the effects of misbehaving or non-responsive flows.
To remove the implementation cost of FRED, CHOKe (CHOose and Keep for responsive flows, and CHOose and Kill for unresponsive flows) algorithm was designed that penalizes misbehaving flows by dropping more of their packets. So CHOKe tries to bring fairness for the flows that pass through a congested router. CHOKe provides much better fairness than FRED but penalizes high bandwidth flows and does not handle unresponsive flows in case of few packets. Flow based AQMs with congestion metric are able to discriminate responsive and non-responsive flows. The malicious flows are identified which might cause congestion at the router.
AVQ and YELLOW used only input rate as the congestion indicator to demonstrate that it performed well in terms of link utilisation and packet loss. In AVQ, the virtual queue is updated, when a packet arrives at the real queue to indicate the new arrival of the packet. When the virtual queue or buffer overflows, the packets are marked / dropped. The virtual capacity of the link is modified such that total flow entering each link achieves a desired utilization of the link. This is done by aggressive marking when the link utilization exceeds the desired utilization and less aggressive when the link utilization is below the desired utilization. As a result this provides early feedback than the RED.
utilization as congestion indicator to give a very high throughput and, high utilisation with low queue length stability.
3. Proposed Algorithm
The proposed algorithm is motivated by the need for fair bandwidth allocation irrespective of the varying traffic and congestion characteristics of the increased number of flows. As discussed in Introduction, some of the algorithms arrive at a stable queue size and some of them bring in fairness when the shared link has n flows. The unstable queue size results in high queue oscillation due to the parameter tuning problem in queue based AQMs. We are motivated to identify a scheme that penalizes the unresponsive flows with the stable queue size. The proposed algorithm - Flow based EAVQCHOKe (FEAVQCHOKe) in Figure 2 involves the congestion factors - load factor including the flow information. As mentioned in the previous section, queue length gives minimum information regarding the severity of congestion.
Figure 2. Pseudocode of FEAVQCHOKe For every packet arrival {
max(
(
), 0)
v v
b
b
C
t
s
/* Update VQ size */If (
b
v
b
oB
) {v v o
b
b
b
/* Update VQ size */}
If (
b
v
min
th) {max
Forward the new packet
}
Elseif
{
Select randomly a packet from the queue for their flow id
Compare arriving packet with a randomly selected packet.
If they have the same flow id {
Drop both the packets
}
Elseif (
b
v
max
th) {Calculate the dropping probability pa Drop the packet with probability pa
( min ) max
avg th
b
y
y
e
}
Elseif (
b
v
B
) {Drop the new packet
min
} }max(
(
)
o, 0)
This proposed algorithm does consider the packet arrivals from the various sources, which is also a very important measure for the congestion indication. Another problem that exists with most AQMs is vulnerability to unresponsive flows resulting in dominating a routers queue. FEAVQCHOKe algorithm tries to remove this problem that exists in the other AQMs. In AVQ, Arrival rate at the network link is maintained as a principal measure of congestion. But AVQ holds certain demerits that are removed in EAVQ [17]. So EAVQ only holds the merits of the AVQ scheme and resolves its problems, such as hardness of parameters setting, poor ability of anti-disturbance and a little link capacity loss. This is made possible by using desired link utilization ratio as a subordinate measure. An adaptive mechanism of the parameter is adopted in EAVQ to solve the problem of sensitivity of parameter
of the AVQ scheme.FEAVQCHOKe uses a virtual queue as in AVQ. Let C be the capacity of a link and B be the buffer size of actual queue in the routers. At same time, virtual queue (VQ) maintains capacity as C and the buffer size asB . At each packet arrival, the virtual queue size is updated. A fictitious packet is enqueued in the virtual queue with each real packet arrival. If the virtual queue size is within the virtual buffer size, then the virtual queue size is updated. The virtual queue capacity is adjusted using the desired link utilization. The concept of desired link utilization ratio is introduced to make much better control flexible by avoidance of the physical limitation of
<1 as in AVQ. An adaptive mechanism of the parameter is adopted to solve the problem of sensitivity of parameter
of the AVQ scheme. Therefore, the parameter can be set large value, which ensures the stability and faster responsiveness of the system.Define
is the desired link utilization ratio with the consideration of boundary limit by Eq. (1).
max
( ( ) min )
max ,
min
, 0
( )
min
( )
, min
( )
max
, max
( )
th
th
b t
th th
th
b t
t
e
b t
b t
B
(1)
4. Conclusions
We have discussed the inherent weakness of current active queue management algorithms which use queue occupancy, input rate or both in their algorithms. In order to address this problem, we have designed a queue management algorithm called FEAVQCHOKe that uses input rate of the congested queue, instead of queue lengths to manage congestion. In addition, using the flow information we have proposed a novel algorithm for scalably and accurately enforcing fairness amongst flows in a large aggregate. Using this proposed algorithm, non-responsive flows can be identified and rate-limited using a very small amount of state that improves the performance of congested routers in IP networks. FEAVQCHOKe requires the queue, load and flow information to adapt the queue size with regard to the dynamics of traffic in routers. This algorithm enhances the way virtual capacity is adapted to the varying traffic types in IP networks. This AQM also protects adaptive flows from non-adaptive flows resulting in good service under varying traffic. Future work involves simulating to study the performance of AQM under heavy load and guarding the unresponsive flows from adaptive flows to achieve best QOS to all users.
References
[1] S. Athuraliya. S.; Li.V.H.; Low S.H.; et al: REM: Active queue management, IEEE Network Mag., vol. 15, pp. 48–53, 2001
[2] Braen B, Clark,D.,et.al: Recommendations on queue management and congestion avoidance in the Internet, IETF RFC (Information)2309, April 1998
[3] Chen S.; Zhou Z.; Bensaou B.: Stochastic RED and its applications, ICC 2007
[4] Chitra K.; Padamavathi G.:Classification and Performance of AQM-Based Schemes for Congestion Avoidance, IJSCIS, Vol. 8 No. 1, April 2010
[5] Feng W.; Kapadia A.; Thulasidasan S:, GREEN: Proactive Queue Management over a Best-Effort Network, IEEE GlobeCom (GLOBECOM 2002), Taipei, Taiwan, November 2002
[6] Feng W.; Kandlur D.D.; Saha D.:The Blue active queue management algorithms, IEEE/ACM Transactions on Networking 2002 [7] Feng W.; Kandlur D.D.; Saha D.; et al, Stochastic Fair Blue: A Queue Management Algorithm for Enforcing Fairness, IEEE
INFOCOM 2001
[8] Floyd S.; Jacobson V.:Random early detection gateways for congestion avoidance, IEEE/ACM Trans. Networking, vol. 1, pp. 397–413, Aug. 1993.
[9] Floyd S.; .Gummadi R.; Shenkar S. and ICSI: Adaptive RED: An algorithm for Increasing the robustness of RED’s active Queue Management, Berkely,CA [online] http:www.icir.org/floyd/red.html
[11] Kamra A.; Saran H.; Sen S.; et al Fair Adaptive Bandwidth allocation: a rate control based active queue management discipline, Computer Networks, July 2003
[12] Kunniyur S.; Srikant R.: Analysis and design of an adaptive virtual queue (AVQ) algorithm for active queue management, Proceedings of ACM SIGCOMM, San Diego, 2001
[13] Koo J.; Song B.; Chung K.; et al: MRED: A New Approach To Random Early Detection, 15th International Conference on Information Networking, February 2001
[14] Lin D.; Morris R.; Dynamics of Random Early Detection, Proceedings of ACM SIGCOMM October 1997.
[15] Pan R., Prabhakar.B., and Psounix.K: CHOKe, a Stateless Active Queue Management Scheme for Approximating Fair Bandwidth Allocation, IEEE INFOCOMM, Feb 2000
[16] Wag C.; Liu B.; Hou Y. T.; Sobraby K.: LRED: A Robust Active Queue Management Scheme Based on Packet Loss Ratio, 23rd Annual Joint Conference on Performance, Computing and Communication, 2004
[17] Yanping Q.; Qi L.; Xiangze L.; Wei J.: A Stable Enhanced Adaptive Virtual Queue Management Algorithm for TCP networks, May30 to June 1, 2007, IEEE International Conference on Control and Automation