Comparative Study on New AQM Mechanisms for Congestion Control

As usage of network goes increasing day by day, managing network traffic becomes a very difficult task. It is important to avoid high packet loss rates in the Internet. Congestion is the one of the major issue in the present networks. Congestion Control is one of the solutions adopted to solve the congestion issue and to control it. Numbers of queue management algorithms are proposed for congestion control and to reduce high packet loss rates. Active Queue Management (AQM) is one such mechanism which provides better control over congestion. In this paper a study is made on recent load based AQM techniques that are proposed and its merits and shortfall is presented.


Introduction
Network traffic is inherently bursty, so buffers are necessary to smooth out the flow of traffic.Without any buffering, it wouldn't be possible to use the available bandwidth fully.Buffers are essential for the proper functioning of packet networks, but large, unmanaged, and uncoordinated buffers create excessive delays that frustrate and baffle end users.Many of the issues that create delay are not new, but their collective impact has not been widely understood.Thus, buffering problems have been accumulating for more than a decade.Due to this, today's networks are suffering from unnecessary latency and poor system performance.The main reason for this is bufferbloat [7].Bufferbloat causes excess buffering inside a network, effecting in high latency and reduced throughput.Bufferbloat allows queues to grow too long before any packets are dropped.As a result, buffers become flooded with packets and then take time to drain before they can allow in any additional packets.Some buffering is needed; it provides space to queue packets waiting for transmission, thus minimizing data loss.
Congestion Control is one of the solutions adopted to solve the congestion issue and to control it.A number of queue management algorithms are proposed for congestion control and to reduce high packet loss rates.One such method called as Active Queue Management (AQM) is maintained by detecting congestion based on average recent queue size.AQM also drops packets before the buffer overflows and sends early feedback to the sender.It is designed to support end-to-end congestion control in packet networks [3] and improves the performance of a network in terms of delay, packet loss and bulk throughputs [10,11].The Random Early Detection (RED) algorithm is an example of the AQM approach and was proposed by Floyd and Jacobson [2].
The basic idea behind RED queue management is to detect incipient congestion early and to 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 do this, RED maintains an exponentially-weighted moving average of the queue length which it uses to detect congestion.When the average queue length exceeds a minimum threshold (minth) [2], packets are randomly dropped or marked with an explicit congestion notification (ECN).When the average queue length exceeds a maximum threshold (maxth), all packets are dropped or marked.Optimal values for these parameters differ for different scenarios and are dependent on several other factors such as number of flows passing through same bottleneck gateway, packet size, etc.
By keeping the average queue size small, queue management will reduce the delays seen by flows.This is particularly important for interactive applications whose subjective performance is better when the end-to-end delay is low.Active Queue Management can prevent lock-out behavior by ensuring that there will almost always be a buffer available for an incoming packet.It can also prevent a router bias against low bandwidth for highly bursty flows.

Active Queue Management
Congestion in Internet occurs when the link bandwidth exceeds the capacity of available routers which results in bufferbloat problem.This results in long delay in data delivery and wasting of resources due to lost or dropped packets.The primary role of a router is to switch packets from the input links to output links through buffer.To resolve these mentioned congestion problems two approaches are identified.The Drop Tail Scheme is one type of congestion control scheme which drops the packets from the tail of the queue when the buffer is full.The second is the Active Queue Management (AQM), a proactive mechanism to achieve high link utilization with low queuing delay [5], used by routers to control congestion, where packets are dropped probabilistically before buffers are filled and the end nodes respond to congestion when buffers overflow.It is based on First in First out (FIFO) and is recommended by the Internet Engineering Force Task (IEFT) in [12].
AQM schemes can be classified into three types they are queue-based, load based, and scheme based on concurrent queue and load metrics.In queue-based schemes, congestion is observed by average or instantaneous queue length and the control aim is to stabilize the queue length.The drawback of queue-based schemes is that a backlog is inherently necessitated.Load-based schemes accurately predict the utilization of the link, and determine congestion and take actions based on the packet arrival rate.Load-based schemes can provide early feedback for congestion.Other AQM schemes deploy a combination of queue length and input rate to measure congestion and achieve a tradeoff between queues stability and responsiveness, Figure 1 shows different types of AQM schemes.
There are some new queue-management algorithms that are currently being studied.Although the classic RED [2] queue-management approach serves as a starting point for some of this research, it is not itself equal to the present challenge.Still, efforts to create an improved version of RED [3] are already under way.There are several other AQM [1] mechanisms based on RED that have been proposed such as Adaptive RED (ARED) [5], Double Slope RED (DS-RED) [3], Dynamic RED(DRED), RED with Preferential Dropping (RED-PD), Exponential RED, Refined Adaptive RED (Re-ARED) [6], Nonlinear RED (NLRED) [4], AQM mechanism based on Neural Networks (NN-RED), Enhanced Adaptive Virtual Queue (EAVQ), Cautious Adaptive Random Early Detection (CRED), Random Exponential Marking (REM) [19] etc.There are some concerns on the suitability of approaches followed by all these mechanisms since they do not eliminate the parameter sensitivity of RED.Moreover these mechanisms are more complicated to deploy than the basic RED.

Cautious Adaptive Random Early Detection (CARED)
CARED [1] combines the properties of ARED and Re-RED.ARED's fixed and conservative approach of adapting maxp leads to degradation of throughput when level of congestion changes abruptly, especially in light and moderate traffic load scenarios.
Re-ARED addresses the drawback of ARED and adapts maxp based on the ratio of the change in the average queue size that infers changes in the traffic load.This mechanism improves the throughput of the network in light as well as moderate traffic load scenarios.However, when traffic load is high, it does not eliminate the drawbacks of ARED algorithm.Figure 1.Classifications of existing AQM mechanisms CARED algorithm is designed to adapt maxp either conservatively or aggressively based on the level of traffic load.We classify the level of traffic load into: up and down.If current average queue length (newavg) is greater than previous average queue length (oldavg), the level of traffic load is considered as up since the average queue length is increasing.Similarly if current average queue length (newavg) is less than previous average queue length (oldavg) [1], the level of traffic load is considered as down since the average queue length is decreasing.Setting parameters such as minth, maxth, wq and target queuing delay in CARED is similar to that of ARED.

Loss-ratio based RED (LRED)
The scheme, called Loss based RED (LRED) [8], measures the latest packet loss ratio, and uses it as a complement to queue length in order to dynamically adjust packet drop probability.By using closed-form relationship between packet loss ratio and the number of TCP flows, this scheme is responsive even if the number of TCP flows varies significantly.
LRED calculate packet drop probability using two principles they are: 1) The mismatch of queue length means deviation from stable status and the necessity of updating the packet drop probability; 2) Large packet loss ratio implies overload, indicating that aggressive packet drop is needed.LRED uses instantaneous queue mismatch as an input variable to calculate the required packet drop probability each time packets arrive.Calculated packet drop probability linearly increases with queue mismatch.According to the second principle, when there is a large packet loss ratio, LRED will dynamically increase the packet drop probability.
At packet level, LRED uses instantaneous queue mismatch to update packet drop probability upon arrival of new packets.On the larger time-scale, LRED adjusts the packet drop probability using the measured packet loss ratio.LRED has a shorter response time [8] than other AQM schemes, especially under heavy congestion scenarios.More importantly, LRED achieves better stability and robustness under dynamic environments.LRED can effectively control the queue length to an expected value.It also achieves a better tradeoff between good throughput and queue length than the other AVQ schemes.

Nonlinear RED (NLRED)
In nonlinear RED linear packet dropping function of RED is replaced by a nonlinear quadratic function.In NLRED [13] 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 avg exceeds the minimum threshold, NLRED uses the nonlinear quadratic function to drop packets.Figure 2 gives the comparison result of packet dropping functions for RED and NLRED.
NLRED is less sensitive to parameter settings.NLRED has a more predictable average queue size, and can achieve a higher throughput.

Neural Networks (NNRED)
NN-RED is based on neural networks [14].The main aim of NNRED is to use a neural network as a prediction tool to determine the future values of the queue size and mark or drop the packets if the queue size is predicted to go beyond the targeted value.Role of the neural network in this AQM mechanism is to predict future values of queue size based on current and previous values of the queue length.The router can then use this information to notify the traffic sources in the case of probable congestion and prevent severe congestion from happening.NNRED does not impose a great amount of overhead process on the routers compared to the RED algorithm [14], while it offers a better performance in terms of queuing delay and queue size stability compared to the RED AQM method.

Dynamic RED (DRED)
DRED [15,16] was designed to solve the problem that the average queue length in RED strongly depends on the number of TCP connections in steady state.Steady state means the state where the packet arrival rate to the router balances its packet processing capacity so that the average queue length at the router does not fluctuate.DRED controls the number of packets in the buffer of a router by randomly dropping packets using a control method based on a classical control theory, I (Integral) control [17].
In DRED packet drop rate is calculated from the integrate of difference between the current queue length and the target queue length.Therefore, as long as the cumulative error from past is non-zero, packet drop rate is adjusted to balance it, even if the current queue length is equal to zero.DRED has an intrinsic problem [15] in high-speed networks; i.e., DRED cannot stabilize its queue length when the bottleneck link bandwidth is high.

Effective RED (ERED)
ERED [18] was developed based on RED AQM.ERED has higher throughput and lower packet loss rate than other AQM algorithms.In light traffic load, when average queue size exceeds the minimum threshold (minth) [2], RED drops all packets even though current queue size is small or queue is empty.When the load is getting heavy and the current queue size quickly approaches the queue limit-an indicator that the queue size may soon get out of control, but the average queue size is not big enough to make random drops; ERED allows more aggressive packet dropping to quickly back off from it.
ERED tries to control average queue size when connections immediately reduce their sending rate in the case of no congestion.This is achieved by changing minth and maxth parameters of RED [18].In ERED packet dropping probability calculated according to instantaneous queue size, when queue size increases immediately and exceeds queue limit, but average queue size is below the minth in the case of congestion

Conclusion
In this paper, we presented a survey on recent advances in the area of new load based active queue management mechanisms.The implementation of AQM is useful in a general network environment.Further we classified load based AQM mechanisms according to the type of metrics they used as congestion measure.From the survey we found that the performances of above explained new AQM schemes are better than that of RED AQM scheme.The queue length of rate based scheme is less sensitive to the number of TCP connections than that of queue based schemes.Inclusion of more number of congestion measures in the existing rate based schemes such as AVQ, EAVQ may result in better performance in terms of, throughput, packet loss and link utilization.Above mentioned new load based AQM schemes offers a better performance in terms of queuing delay and queue size stability compared to the RED that is currently the mostly used AQM method.