Enhanced Random Early Detection using Responsive Congestion Indicators

Random Early Detection (RED) is an Active Queue Management (AQM) method proposed in the early 1990s to reduce the effects of network congestion on the router buffer. Although various AQM methods have extended RED to enhance network performance, RED is still the most commonly utilized method; this is because RED provides stable performance under various network statuses. Indeed, RED maintains a manageable buffer queue length and avoids congestion resulting from an increase in traffic load; this is accomplished using an indicator that reflects the status of the buffer and a stochastic technique for packet dropping. Although RED predicts congestion, reduces packet loss and avoids unnecessary packet dropping, it reacts slowly to an increase in buffer queue length, making it inadequate to detect and react to sudden heavy congestion. Due to the aforementioned limitation, RED is found to be significantly influenced by the way in which the congestion indicator is calculated and used. In this paper, RED is modified to enhance its performance with various network statuses. RED technique is modified to overcome several disadvantages in the original method and enhance network performance. The results indicate that the proposed Enhanced Random Early Detection (EnRED) and Time-window Augmented RED (Windowed-RED) methods—compared to the original RED, ERED and BLUE methods—enhances network performance in terms of loss, dropping and packet delay. Keywords—Congestion; random early detection; active queue


I. INTRODUCTION
The evolution of the computer network and its broad usability for communication, remote controlling, organizational monitoring and information governing has resulted in the widespread utilization of its resources.Congestion is a phenomenon that occurs on a computer network when the traffic load exceeds the capabilities of these resources.The memory allocated by the network router is the most critical resource in the network that is susceptible to congestion, which can cause delays, packet loss and low network performance [1].Congestion degrades the quality of services provided to the users and the applications.To predict congestion before it occurs, or before it starts to severely affect performance, various Active Queue Management (AQM) methods have been proposed.Although AQM methods were proposed to overcome the limitations of the first approach, i.e.Random Early Detection (RED) [2], RED is still the most commonly utilized method; this is because RED provides stable performance under various network statuses [3][4][5][6].
The AQM methods monitor the status of the router buffers, calculate the dropping probability (Dp) for each packet arrival, and implement packet dropping stochastically based on the calculated value.Accordingly, AQM methods take one of the two opposite decisions: packet accommodation and packet dropping.The role of the router is to accommodate the arrival packets to transfer them to the intended destination; However, to avoid congestion, packets are dropped when the buffer overflows and network performance degrading is expected [4].Generally, the developed AQM methods consist of three main components: the congestion indicators used to monitor the buffer/network status, the function used to calculate Dp and the algorithm that determines when to use these equations and indicators [6].For RED, Dp is calculated using a mathematical function with a reference to the average queue length (aql), a parameter that reflects the average length over time [7,8].
The advantages of RED are summarized as follows: (1) RED predicts congestion before it affects network performance and reacts by dropping packets stochastically to avoid the effects of congestion; (2) RED, using random dropping, avoids global synchronization-a phenomenon that occurs when all senders reduce their transmission rates simultaneously for a period and then start increasing them again, also simultaneously; (3) RED uses aql to calculate the average queue length over time.Accordingly, when the arrival rate increases for a short while, aql does not increase rapidly.Thus, RED avoids dropping packets unnecessarily during short, heavy traffic [9].Thus, the limitations can be summarized as follows: (1) RED exhibits low performance during sudden congestion, because it uses aql, which is insensitive to sudden changes in queue length; (2) RED causes packet delay in heavy traffic, because it does not monitor the router buffer delays [2,[9][10][11].
Using aql as a congestion indicator has its advantages and disadvantages.One advantage is that aql is able to avoid false, and thus deceptive, congestion indications.However, the disadvantages are the result of sudden high traffic and unexpected congestion.To overcome this disadvantage, it is recommended to use modified parameters that are equal to aql or to ease the dependency on aql to enhance network performance.However, RED is found to be badly influenced by the way in which the congestion indicator is calculated and used [4].
In this paper, RED is modified to enhance its performance with various network statuses.RED technique is modified to overcome several disadvantages in the original method and www.ijacsa.thesai.orgenhance network performance.Enhanced Random Early Detection (EnRED) and Time-window Augmented RED (Windowed-RED) methods are proposed to address the problem of slow reaction time, and thus increase the number of queued packets in the buffer.The rest of the paper is organized as follows: Section II discusses the RED method in details and the disadvantages to be overcome are clarified.Section III presents the related work.The proposed Work is presented in Section IV; the simulation details are given in Section V and the related results is presented in Section VI.Finally, the conclusion is given in Section VII.

II. RED METHOD
RED is implemented, as given in Algorithm 1, in three stages; these are: (1) aql calculation, (2) Dp calculation and stochastic packet dropping, (3) buffer tracing.In the first stage, aql is calculated using two different equations.The first is used if the buffer is currently idle (see line #5).This equation is a function of the previous aql and the period of idleness.The second equation is used if the buffer is not idle, and it is a function of the previous aql and the current queue size q.In the second stage, Dp is calculated and the dropping is implemented or skipped according to the three scenarios.
In the first case, as given in line #8, Dp is calculated as a function of aql and another variable, counter, as well as a set of parameters.Subsequently, the packet is dropped or accommodated as a function of the calculated Dp, while the counter variable is set to zero if the packet is dropped.The counter parameter counts the number of packets in the critical case, which were not dropped according to the stochastic decision.The counter is simply increased with each accommodated packet, and is reset when a packet is dropped.As the value of the counter increases, the Dp value increases significantly.This variable is required to avoid, as much as possible, dropping sequential packets to circumvent global synchronization.In the second case, the packet is dropped and the counter is set to zero [12].In the third case, the packet is accommodated and the counter is set to the value of negative one.A negative counter value reduces the dropping probability when the status of the queue jumps from a low-queue state to a high-queue critical state.A Dp value that is calculated using a negative value for counter will be of a low value.Accordingly, with sudden heavy traffic, the Dp value will increase slowly.Finally, in the third stage, the buffer tracing process saves the period of idleness [2,12,13].
RED calculates the value of aql with each packet arrival.The calculated value is then compared to two pre-determined threshold values (the minimum and maximum thresholds), which divide the buffer into three parts, as illustrated in Fig. 1.The value of aql based on the threshold comparison determines the action to be taken, which can be one of the following: (1) If the calculated aql value is less than the minimum threshold, then the arrival packet is accommodated with a Dp value equal to zero; no dropping occurs when aql is below the minimum threshold [14].(2) If the aql value is greater than the maximum threshold, then the arrival packet is dropped with Dp equal to one; The arrival packet is firmly dropped when aql is greater than the maximum threshold.(3) A stochastic dropping process is implemented when aql is between the minimum and the maximum thresholds.In this case, Dp is calculated using a mathematical function Dp(aql), which depends on the value of aql that affects Dp proportionally.As such, Dp increases as aql increases, and vice versa [14][15][16][17].Various extensions to the RED method have been proposed in the literature to overcome the limitations discussed above.For example, Gentle RED (GRED) [12] was proposed to resolve the delay problem in RED.GRED uses a third threshold parameter, called the double maximum threshold, in addition to the other parameters (as illustrated in Fig. 2).The goal of the introduced threshold is to stabilize aql at a specific value.Accordingly, the computed aql value is compared to three thresholds: minimum, maximum and double maximum.This creates four cases for the calculated Dp rather than three.This extension, however, increases the dependency on parameter settings.Moreover, GRED is more sensitive to sudden congestion, because it reduces packet dropping compared to RED.Moreover, GRED exhibits poor performance when heavy congestion occurs while aql is below the maximum threshold.Thus, Adaptive RED (ARED) [13] was proposed to resolve the delay problem in RED while preserving the RED mechanism as much as possible.ARED used aql, minimum and maximum thresholds as the main parameters, in addition to a new parameter that represents the optimal target of the queue length, called target aql (Taql).Accordingly, aql is compared with three values in ARED, and Dp is calculated the same as in RED.However, the value of the initial dropping, D max , which is fixed in RED, is calculated adaptively in ARED.The D max value increases or decreased based on the value of aql compared to Taql.
Other methods extend RED by marginally modifying the original algorithm.For example, PI [18] uses traffic load value and aql value to calculate Dp.Accordingly, dropping increases when traffic load increases when aql is low to reduce delay.Dynamic RED (DRED) [19] extends RED by comparing instance queue length to a single threshold value.When queue length is below the threshold, no dropping is implemented.Moreover, when queue length is above the threshold, Dp increases or decreases based on queue length and the previous Dp value.Random Exponential Marking (REM) [20] extends RED using instance queue length, instead of aql, combined with the estimated load rate.However, instance queue length causes unnecessary packet dropping and false congestion.BLUE method [21] uses an adaptive value of Dp, which increases or decreases based on the estimated congestion status; This is similar to ARED and DRED in regard to packet loss and the threshold value.Various other AQM methods have been proposed in the literature, with different modifications made to the original RED mechanism for different purposes, as summarized in Table I.Overall, existing AQM methods can be broadly classified into two groups : The first involves methods that preserve the RED mechanism and parameters for monitoring and reacting, such as GRED [12] and ARED [13]; The other group contains methods that implemented major modifications while preserving the overall concepts of stochastic packet dropping.
Accordingly, the similarities among the existing AQM methods are: (1) AQM depends on stochastically packet dropping to avoid global synchronization; (2) AQM dropping probability is calculated with reference to the buffer or the network status; (3) AQM buffer monitoring is tracked and the decision-making is activated with each packet arrival.
The differences between the AQM methods can be summarized as follows: (1) Different congestion indicators and www.ijacsa.thesai.orgparameters (such as aql, q, load, delay, loss) are utilized by different AQM methods.(2) Different decision-making scenarios are used for different AQM methods; RED used three scenarios (firmly dropping, stochastic dropping and no dropping), while other methods keep the stochastic dropping and add or remove other scenarios.(3) Different AQM methods use different heuristic equations and methods to calculate the dropping probability.These differences are motivated by different objectives, such as to reduce packet loss, reduce packet dropping, reduce round-trip delay, maximize resource utilization, and fair allocation.The first four objectives are conflicted, as reducing delay will minimize resource utilization and reducing dropping will increase delay.
RED is a well-known, stable AQM technique that was adapted by the Internet Engineering Task Force (IETF) in RFC 2309.For a long time, RED was utilized in distributed routers all over the world.Extended methods provide different capabilities and cause different QoS.Accordingly, replacing RED with different methods will harm the stability of the existing systems.Thus, it is necessary to enhance RED while maintaining its characteristics and configuration.

IV. PROPOSED WORK
As network technology evolves, the limitations of the RED have been discovered.RED can be viewed as a dualmechanism method, in which the first mechanism is a multireaction process activated by the implemented algorithm and all the utilized parameters, except for aql.This mechanism reacts differently based on the status of the queue, as discussed above, and it is the reason behind the first and the second advantages of the RED method.The second mechanism is the RED congestion alert mechanism, which is implemented using aql.This mechanism is related to the third advantage and the first disadvantage.Accordingly, it is easier to point at the source of the limitation, which can be referred back to the utilization of aql.RED uses aql for two tasks: (1) As an indicator for monitoring to determine the reaction scenario; (2) As a parameter for dropping the probability calculation.
In fact, all of these tasks use aql in different ways.Since using aql has both positive and negative effects, replacing aql in all of these tasks is not a good approach; Instead, RED can use different bounds and parameters to gain an advantage and eliminate its disadvantages.
In the dropping calculation, using aql has proven to have the following advantages: (1) Avoid high dropping with limited increase in buffer length; (2) Avoid high delay with limited decrease in buffer length.These advantages refer to slow changes in aql value with the changes in the buffer length, which can be temporarily according to the busty nature of the traffic.To determine the reaction scenario, using three scenarios for packet dropping (based on a threshold comparison) is sufficient and has several advantages.However, using aql as a monitoring indicator has the disadvantage of providing an unreal indication of the queue status.This disadvantage refers to variations in aql as a result of sudden congestion.Because the slow variation has both advantages and disadvantages, the disadvantage of using aql is directly related to the monitoring of the queue rather than the dropping calculation.Accordingly, the decision between fully dropping, no dropping, and stochastic dropping should be made based on the status of the buffer.Thus, instead of using aql to make a suitable decision, other indicators should be used to determine buffer status.Accordingly, an enhanced random early detection (EnREd) method and Windowed RED (WRED) method based on simple, yet efficient, monitoring parameters are presented.

A. Indicator Calculation
Two indicators are used to replace aql for congestion monitoring: instance queue length (q) and average queue length on a limited time window (aql w ).At any time, the number of packets queued in the router buffer is referred to as q.The advantages of using this indicator are: (1) No extra calculation is required, as q is used in RED to calculate aql; (2) Overcome the disadvantages of using aql in the original RED.The indicator aql w represents an equally averaged packet number on a limited time window.Unlike aql, which is calculated as a weighted average with low weights for current length, aql w is calculated as the equal-weight average for a predetermined time window.Accordingly, aql w intermediate q and aql in considering of past and recent queue length as illustrated in Fig. 3 [8].The advantages of using this indicator are: (1) Can fully replace the existing aql for monitoring, decision making and probability calculation; (2) Overcome the disadvantages of using aql in the original RED, to some extent.

B. EnRED Mechanism
The proposed EnRED uses q to determine the reaction scenario for packet dropping as each packet arrives.This process requires a simple and direct modification to the original RED algorithm.As given in Algorithm 2, RED is modified at line #8 and line #14 by comparing q with the two thresholds, instead of using aql for comparison, as in the original RED.EnRED is implemented, as in Algorithm 2, in three stages.In the first stage, aql is calculated using two different equations.The first is used if the buffer is currently idle, as in line #5.The second is used if the buffer is not idle, and is a function of the previous aql and the current queue size q.In the second stage, Dp is calculated and the dropping is implemented or skipped according to three implemented scenarios.The first scenario, as given in line #8, is implemented when the queue length is between the minimum and maximum threshold.Queue length provides a true indication of buffer status, regardless of network status.Nevertheless, Dp is calculated as a function of the aql that reflects the status of the network.Subsequently, the packet is dropped or accommodated as a function of the calculated Dp, while the counter variable is set to zero if the packet is dropped.As the value of counter increases, the Dp value increases significantly, and vice versa.This variable is required to avoid, as much as possible, dropping sequential packets to circumvent global synchronization.The second case is implemented when the queue length exceeds the maximum threshold.In this case, the packet is dropped and the counter is set to zero.Finally, the third case is implemented when the queue length is below the minimum threshold, and results in packet accommodation and counter reset to the value of negative one.In the third stage, the buffer tracking process saves the period of idleness.Accordingly, packet monitoring in EnRED is the responsibility of the parameter q, while the dropping value is calculated based on aql.www.ijacsa.thesai.org

C. Time-Window Augmented RED (Windowed-RED)
The proposed Windowed-RED (also WRED) is implemented using aql w to determine the reaction scenario and to calculate dropping probability (Dp).This process required replacing all instances of aql with aql w in the original RED algorithm; aql w is implemented based on two scenarios, as given in lines #5 and #6.In the initial stage, aql w is set to a value equal to q. Subsequently, aql w is calculated on a window size that is equal to the buffer size; the window-tailed boundary is the current queue length.The dropping calculation and the dropping scenarios will be calculated based on aql w , as given in lines #8-14.The tracing empty buffer is eliminated, as the utilized aql w does not require empty buffer tracing.As in Algorithm 3, Windowed-RED is implemented in two stages: aql w calculation and Dp calculation and stochastic packet dropping.In the first stage, aql w is calculated in two ways.The first is used when Window-RED starts running (see line #5).In this case, aql w is set to a value equal to q.While the second is used throughout the execution of the Window-RED, and is calculated as window-average of q.In the second stage, Dp is calculated and the dropping is implemented or skipped according to three implemented scenarios.In the first case, as given in line #8, Dp is calculated as a function of aql w and counter.Then, the packet is dropped or accommodated as a function of the calculated Dp, while the counter variable is set to zero if the packet is dropped.As the value of counter increases, the Dp value increases as well, and vice versa.This variable is maintained to avoid global synchronization.In the second case, the packet is dropped and the counter is set to zero if aql w is greater than the maximum threshold.In the third case, the packet is accommodated and the counter is set to the value of negative one if aql w is less than the minimum threshold.Accordingly, packet monitoring in Windowed-RED and dropping calculation is the responsibility of the parameter aql w , which is more sensitive to queue changes than aql.

SIMULATION AND PARAMETER SETTINGS
In the simulation process, the router buffer is modelled as first-in-first-out (FIFO).The network as a whole is simulated using the discrete time queue model, which is commonly used in simulating and capturing the performance of AQM methods.Generally, the discrete time queue is represented by a sequence of time slots, each of which has a single departure process, a departure and arrival process, a single arrival or none of these.Accordingly, in each time slot, the arrival and departure process simulates the stochastic process based on a predefined arrival and departure rate.A discrete time queue implements the departure process, d n , before arrival.Accordingly, d n occurs at time slot n-1.Thus, the performance of the network can be captured accurately by counting and tracing the arrived, departure, lost, dropped, and other packets at each time slot [30,31].Eventually, these traced counters can be used to calculate the network performance accurately [4,7,32].The simulation parameters are set to match the parameters recommended in the literature for RED; these parameters are listed in Table II.The arrival and departure rates are also set to create different traffic loads and congestion statuses.www.ijacsa.thesai.org

VI. RESULTS
The performance of the proposed EnRED and WRED is evaluated and compared to the original RED method, as well as to the BLUE and ERED methods.The performance is captured using the set of commonly utilized measures for network evaluation, which are delay, packet dropping, packet loss, and total packet missing at the router buffer.When the number of dropped packets using method A is more than the number of dropped packets using method B, and while loss is less in method A, then method A is considered to be more efficient than method B. Accordingly, to clearly illustrate this indistinct relationship between loss and drop using AQM methods, the total missing indicator is used in addition to the well-known measures.
The first experiment evaluates the proposed methods in comparison with the other methods under extremely heavy traffic load.Accordingly, the arrival probability, α, is set to a value of 0.9; the departure probability, β, is set to 0.3.According to the results depicted in Fig. 4, packet loss in EnRED and WRED is less than all other methods (Fig. 4(a)).Moreover, BLUE and RED lost less packets compared to ERED, which seems to perform badly under heavy traffic.In Fig. 4(b), the packet dropping rate of EnRED, WRED and RED is better than the rate of BLUE.ERED drops less packets compared to all other methods.Fig. 4(c) illustrates the total number of packets lost and dropped.All the methods are equal according to this measure, which means that the method with less packet loss is better.Accordingly, EnRED and WRED outperform all other methods; EnRED is slightly better than WRED, and RED is better than ERED and BLUE.Accordingly, the experiments showed that the proposed methods preserve the network performance and deal more efficiently with the queued packets compared to all other methods, as the utilized congestion indicators are more accurate than the indicators used in the other methods.Finally, in terms of packet delay, BLUE outperforms all other methods, while the proposed EnRED slightly outperforms RED and WRED, as illustrated in Fig. 4(d).According to the results presented in Fig. 4, packet dropping using the indicators selected in the proposed methods is much better than packet dropping in the original RED.This is because the utilized indicator is better at sensing congestion and avoiding packet loss.Dropping and delay of the proposed methods are not the best this is because the proposed methods avoid loss.Nevertheless, delay and dropping for the proposed method are shown to be comparable with the best methods, except for ERED, for which the loss rate is huge.The second experiment evaluates the compared methods under a heavy traffic load.Accordingly, the arrival probability is set to a value of 0.9, while the departure probability is set to 0.5.The results of this experiment, as illustrated in Fig. 5, are almost similar to the obtained results in the first experiment.Packet loss, using EnRED and WRED, is less than in all other methods (Fig. 5(a)).Moreover, BLUE and RED drop less packets compared to ERED.Fig. 5(b) reveals that the packet dropping of EnRED, WRED and RED is better than all other methods.Moreover, ERED drops less packets compared to all other methods.Fig. 5(c) illustrates the total packets lost and dropped.Accordingly, EnRED and WRED outperform the other methods, while EnRED is lightly better than WRED, and RED is better than ERED and BLUE.Finally, in terms of packet delay, BLUE outperforms all other methods, while the proposed EnRED slightly outperforms RED and WRED, as illustrated in Fig. 5(d).
The third experiment evaluates the methods based on moderate traffic load.Accordingly, both the arrival probability and departure probability are set to a value of 0.5.The results of this experiment are illustrated in Fig. 6.Loss is avoided by all methods (Fig. 6(a)).Similarly, dropping is not necessary when the traffic load is moderate, and thus the evaluated methods did not implement packet dropping except for the BLUE method, which scarified unnecessary packets (Fig. 6(b)).Fig. 6(c) reveals that BLUE is the worst in such a case, because it drops unnecessary packets.Finally, Fig. 6(d) illustrates that delay is almost equal in all evaluated methods except for the BLUE method, which exhibits an improved delay due to the implemented dropping.The fourth experiment evaluates and compares the proposed methods based on light traffic load, as illustrated in Fig. 7. Accordingly, the arrival probability is set to a value of 0.3 and the departure probability is set to 0.5.Moreover, no dropping or packet loss occurred, and the results are almost identical for all the compared methods.
Fig. 8 presents and compares the results of the various methods using the average of several arrival probabilities with a departure probability of 0.5.The results indicate that RED, EnRED and WRED are the best in terms of packet dropping, while BLUE outperforms ERED.For dropping, ERED is the best, while RED, EnRED and WRED outperform the BLUE method.In terms of delay, BLUE is the best, while EnRED outperform RED and WRED, which outperforms ERED.Accordingly, the proposed EnRED method and Windowed-RED method enhance network performance, avoid congestion and preserve delay in extremely heavy, heavy and moderate traffic.As noted, replacing the congestion indicator with a firm indicator or tightening the loose indicator with a more compact indicator in the windowed-RED significantly enhances RED performance.www.ijacsa.thesai.org

VII. CONCLUSION
In this paper, the RED technique is analyzed, and the source of the shortcomings is identified.The loose congestion indicator in RED that leads to packet loss is fixed using two approaches: First, by preserving all the steps in the original RED and replacing the loose congestion indicator with a firmer one.Secondly, by replacing the loose congestion indicator and with a more confirmed one.Thus, both methods preserve the form of the original RED, and consequently, the stability of the existing systems that use RED.Although WRED is not as good as EnRED, it has the advantage of reducing the number of utilized parameters, and thus reducing the sensitivity of parameter initialization.The results also confirm that RED outperforms both ERED and BLUE.Future work should focus on using other indicators that enhance network performance and reduce overall delay.