Professional Documents
Culture Documents
Abstract. Internet routers play an important role during the time of network
congestion. All the Internet routers have some buffer at input and output ports,
which hold the packets at the time of congestion. Many queue management
algorithms have been proposed but they focus on fixed queue limit.
Recognizing the fact that active queue management algorithms have fixed
maximum queue limit, we direct our attention to variable length queue limit for
Combined Input Output Queued (CIOQ) switches. We incorporated our
proposed technique, which is a fuzzy logic control based generic variable length
active queue management scheme in TCP/IP networks, to the drop-tail and the
Adaptive RED (A-RED) algorithm. The empirical results show low packet loss
and high queue utilization in modified algorithms (augmented with variable
length active queue management scheme) in comparison to the original droptail, RED and A-RED algorithms.
Keywords: Congestion Control, Fuzzy Logic Controller (FLC), Active Queue
Management (AQM), Virtual Output Queue (VOQ), Combined Input Output
Queued (CIOQ) Switch, Adaptive RED (A-RED).
1 Introduction
Congestion is a critical issue as it reduces the overall throughput of the network and
users experience greater delay. Though the routers play an active role in its resource
allocation to effectively control/prevent congestion, it is still a major cause of concern
because of ever growing Internet and ever growing number of users; they increase the
amount of data to be carried over the Internet. Todays Internet routers have some
buffer at input and output ports. The buffer size of the router should be large enough
to accommodate the packets during the time of congestion but, at the same time,
should also take care of the queuing delay. It demands for an optimum size and
efficient management of buffers at the input/output ports. This is known as active
queue management (AQM) [6].
Most of the Internet routers run drop-tail gateways. However, drop-tail buffer
management introduces large queuing delays in bursty traffic [13]. The RED
algorithm [4] [12] [14] manages the (buffer) queue more effectively and monitors the
average queue length. The average queue length is compared with minimum threshold
(minth) and maximum threshold (maxth). If the queue length is less than minth then all
S. Aluru et al. (Eds.): IC3 2011, CCIS 168, pp. 123134, 2011.
Springer-Verlag Berlin Heidelberg 2011
124
the incoming packets are accepted. If the queue length is in between minth and maxth
then packets are dropped with a probability that increases linearly up to maximum
drop probability (maxp) and if the queue length exceeds the maxth then all the
incoming packets are dropped. The most important advantage of RED is that it keeps
the average queue length low to allow occasional burst of packets in queue. However,
it has several shortcomings, e.g., a high degree of sensitivity towards its operating
parameters, unfairness to flows with different round-trip times, the problem of global
synchronization. A related weakness of RED is that throughput is also sensitive to the
traffic load and the RED parameter. In particular RED does not perform well when
the average queue length becomes larger than maxth. It results in a significant decrease
in throughput and a significant increase in the drop rate [5] [17].
The A-RED [11] [13], proposed by one of the authors of RED, attempts to solve
the problem of need for continuously (re)tuning RED parameters. In particular, ARED adjusts the value of maximum drop probability (maxp) to keep average queue
length within a target range half way between the minth and maxth. It is shown in
Figure 1. Though A-RED attempts to tune the RED parameters for a robust behavior,
it fails to do so in various dynamic cases as A-RED retains REDs basic linear
structure.
Every interval seconds:
if (avg > target and maxp 0.5)
increase maxp ;
maxp maxp+ ;
else if (avg < target and maxp > 0.01)
decrease maxp:
maxp maxp * ;
Variables:
avg: average queue length
Fixed parameters:
Interval: time; 0.5 seconds;
target : target for avg ;
[minth +0.4*( maxth minth ), minth + 0.6*(maxth - minth)].
: increment; min (0.01, maxp / 4)
: decrease factor; 0.9
Fig. 1. Adaptive RED algorithm
Many other active queue management schemes are also reported in the literature,
e.g., Random Exponential Marking (REM) [2], fuzzy Proportional Integral (PI) [19],
and Adaptive Virtual Queue (AVQ) [15]. All these existing active queue management
schemes are based on the equation model. These equation models use various control
parameters, which are dependent on different network parameters, e.g., number of
flows, round trip time. However, it is very difficult to set these parameter as TCP/IP
network is dynamic in nature. Many researchers, e.g., [3], [7], [8], [10], adopted fuzzy
logic controller (FLC) to set these parameters dynamically in the congestion control
algorithms because of its strength in controlling highly nonlinear, complex systems.
In this paper, we design a fuzzy logic controller (FLC) based on fuzzy logic set
theory [23], [24] for computing the change in virtual output queue (VOQ) length [1],
125
[21], [18] according to its instantaneous queue length. It is a generic variable length
active queue management scheme, which may be incorporated to any VOQ based
active queue management congestion control mechanism to improve its performance
while keeping the basic structure of the original algorithm same. In this paper, we
incorporate our proposed generic method to the drop-tail and the A-RED and obtained
encouraging results.
Rest of the paper is organized as follows. Section 2 discusses about variable length
VOQ. In Section 3, we present our proposed generic variable length active queue
management method and its application to drop-tail (Fuzzy drop-tail) and A-RED
(Fuzzy A-RED). The rule base design of FLC is presented in Section 4. We discuss
the performance of proposed method through a set of extensive simulation and
compare the obtained results with well-known methods in Section 5. Finally in
section 6, we present our conclusion.
Fig. 2. In Case 1, the maximum queue limit of both VOQs is equal; in case 2, the maximum
queue limit for VOQ11 is less than the VOQ12 and in case 3, the maximum queue limit for
VOQ11 is greater than the VOQ12
126
Our approach is based on the fact that we can vary the buffer size of the VOQ
during the processing time as per the requirement. Figure 2 shows three possible cases
for 22 switch. We can modify any VOQ based active queue management algorithm
which uses a fixed queue limit. The amount of variation in the maximum queue limit
of VOQs (while the total buffer size of an input port is fixed) is calculated by using
the fuzzy logic controller.
127
A notation convention for fuzzy sets [22], when the universe of discourse, X, is
discrete and finite, is shown in Eq. 1. Here, A is a fuzzy set.
A= {
.}={
(1)
For our algorithm, the fuzzy sets are represented as follows (refer, Eq. 2):
VOQ11= {
VOQ12= {
}
}
(2)
Where VOQ11 and VOQ12 are fuzzy variables; low, average, and high are the
possible values for fuzzy variables, and 1, 2, and 3 are the membership functions
of the fuzzy variable.
3.1 Variable Length VOQ for Drop-Tail Algorithm
In modified drop-tail algorithm the maximum queue limit of each VOQ is not fixed.
The FLC uses the instantaneous queue length as feedback, which is measured
periodically, to compute new limit of the queue length. In other words, the controller
varies the maximum queue length limit (refer, manipulated variable in Figure 3) as
per sampled queue length of each VOQ. Variation in queue limit gives the low loss
rate in comparison to simple drop-tail algorithm while the average queue length of
both the algorithm is approximately same. It means modified drop-tail algorithm
gives higher queue utilization in comparison to original drop-tail.
3.2 Fuzzy Adaptive RED
The overall guideline for fuzzy A-RED algorithm is same as A-RED algorithm except
the variable target. In A-RED algorithm (refer, Section 1) the target value is fixed
and is calculated as follows:
Target value:
[minth + 0.4*( maxth minth ), minth + 0.6*(maxth - minth)]
In modified A-RED algorithm, which has the variable length VOQ, the value of
maxth and minth is not fixed. As a result the target value of the A-RED algorithm
changes in each time interval with the varying values of minth and maxth according to
fuzzy logic controller. For nth time interval the target value is calculated as follows:
Target value:
[minth (n) + 0.4*( maxth (n) minth (n)), minth (n) + 0.6*(maxth(n) - minth(n))]
Here the minth(n) and maxth(n) is the minimum and maximum threshold at nth time
interval respectively. Fuzzy A-RED removes A-REDs dependence on target value.
Adapting the target value results in low packet loss and low average queue length in
comparison to A-RED.
128
129
Fig. 5. Control decision surface of the Fuzzy Logic Controller shaped by rule base and
linguistic variables
Table 1. Rule base of fuzzy controller
Input variable
VOQ11 VOQ12
low
low
average
high
low
low
low
average
high
low
average
high
average
average
average
high
high
high
5 Simulation Result
In this Section, We compare our scheme with the original drop-tail, RED and A-RED
algorithm.
5.1 Experimental Setup
We perform our simulation on 22 CIOQ [21] switch as shown in Figure 6. The size
of the buffer at input and the output port is 120 and 100 respectively. Buffer size at
the input port is segmented according to the number of VOQs. Each input port carries
multiplexed TCP Reno flows. The TCP flows are generated at separate source nodes
and then multiplexed into the backbone before reaching at the input port of the switch.
In this experiment, we use 4 source nodes at each input port, hence, total 8 source
nodes generates TCP flows in the range of 50 to 500 sessions to the input ports of the
switch. The size of the packets is 1000 bytes. The queue monitoring interval is set to
0.0001 sec. In A-RED algorithm is set to 0.01 and is set to 0.9.
130
Fig. 7. Average input queue length v/s speedup for 22 Switch (load 200 TCP sessions)
On the input port, the drop-tail algorithm has the longest queue Length as it drops
packets only when the buffer overflows. The suggested change in drop-tail algorithm,
i.e., the variable length VOQs, has the same average queue length as original drop-tail
131
algorithm whereas the RED algorithm has lower queue length as it drops packets even
before buffer is overflow.
As A-RED keeps the average queue length away from maxth, the input queue
length for A-RED is less than RED algorithm. As mentioned in section 3, the target
value is not fixed in the Fuzzy A-RED algorithm; hence the result is even better than
original A-RED algorithm.
5.3 Loss Rate
Loss rate is the ratio of the number of packets dropped and the number of packets
sent. In this experiment, the speedup is fixed at 1.1whereas the load varies from 50 to
500 TCP sessions. Figure 8 shows that the loss rate of the fuzzy A-RED algorithm is
lowest. Adjusting the maxp and target value of the Fuzzy A-RED algorithm avoids the
higher packet loss as the average queue length oscillates near to the target value. We
observe that the performance of fuzzy A-RED is comparatively better than the droptail, RED and the original A-RED because of the efficient management of the buffer
space among the VOQs as per the requirement and the variation in the target value as
well.
132
Fig. 9. Buffer size variation of VOQ11& VOQ12 over time (for drop-tail algorithm)
both of the VOQs simultaneously is not more than 60. The reason is that at that
instant of time the other VOQ had relatively less queue length hence it could
relinquish a portion of its unused address space to share with other heavily loaded
VOQ. Therefore, the proposed variable length VOQ algorithm minimizes the packet
loss and provides efficient management of the buffer space at input ports.
Fig. 10. Buffer size variation of VOQ11&VOQ12 over time (variable length VOQ for drop-tail)
As fuzzy A-RED algorithm has the basic structure of the A-RED algorithm, the
size of the buffer oscillates near to the target value. Figure 11 shows that the number
of packets buffered is half way between maximum and minimum threshold.
133
Fig. 11. Buffer size variation of VOQ11&VOQ12 over time (Fuzzy A-RED)
6 Conclusion
Our proposed scheme is a generic concept which may be used to improve the
performance of any active queue management scheme. In this paper, we have
incorporated variable length VOQ with the active queue management algorithms, e.g.,
drop-tail, A-RED algorithm, which improves the performance in terms of queuing
delay, average queue length and loss rate. Variable length VOQ for drop-tail is the
improvement over simple drop-tail algorithm which utilizes the queue more
efficiently. In fuzzy A-RED target value dynamically change with change in VOQ
length which gives improvement over A-RED algorithm in dynamic network
environment. We formulate an effective and efficient technique for queue
management using the fuzzy logic control, to solve the problem of congestion in
TCP/IP networks. We have demonstrated that in the real world for the non-linear and
complex system the fuzzy logic control gives the acceptable solution with the help of
linguistic models. Additionally, it does not require any change in the switch hardware.
In future work, we plan to explore the proposed scheme on other active queue
management algorithms such as REM, AVQ and in other network scenario like DiffServ, and in different types of traffic condition. We also plan to check the stability
and performance of the proposed method on the larger switches.
References
1. Anderson, T.E., et al.: High Speed Switch Scheduling for Local Area Networks. ACM
Trans. on Computer System 11, 319352 (1993)
2. Athuraliya, S., Li, V.H., Low, S.H., Yin, Q.: REM: active queue management. IEEE
Network Magazine 15(3), 4853 (2001)
3. Behrouz, S., Amir, M.R., Mahdipour, E.: A New Fuzzy Congestion Control Algorithm in
Computer Networks. In: International Conference on Future Computer and
Communication, pp. 314318 (2010)
134
4. Bonald, T., May, M., Bolot, J.C.: Analytic Evaluation of RED Performance. In:
proceedingof the 19thAnnual Joint Conference of the IEEE Computer and Communications
Societies (INFOCOM), vol. 3, pp. 14151424 (2000)
5. Brandauer, C., Iannaccone, G., Diot, C., et al.: Comparison of Tail Drop and Active Queue
Management Performance for Bulk-data and Web-like Internet Traffic. In: Proceedings
of6thIEEE Symposium on Computers and Communications(ISCC), pp. 122129 (2001)
6. Braden, B., Clark, D., Crowcroft, J., Davie, B., Deering, S., Estrin, D., Floyed,
S., Jacobson, V., Minshall, G., Partidge, C., Peterson, L., Ramakrishnan, K., Shenker,
S., Wroclawski, J., Zhang, L.: Recommendation on Queue Management and Congestion
Avoidance in the Internet. RFC 2309 (1998)
7. Chrysostomou, C., Pitsillides, A., Sekercioglu, Y.A.: Fuzzy Explicit Marking: A Unified
Congestion Controller for Best-Effort and Diff-ServNetworks. Computer Networks 53(5),
650667 (2009)
8. Chrysostomou, C., Pitsillides, A., Rossides, L., Sekercioglu, A.: Fuzzy Logic Controlled
RED: Congestion Control in TCP/IP Differentiate Services Networks. Soft
Computing 8(2), 7992 (2003)
9. Chuang, S.T., Goel, A., McKeown, N., Prabhakar, B.: Matching Output Queuing with a
Combined Input/Output-Queued Switch. IEEE Journal On Selected Areas in
Communications 17(6), 10301039 (1999)
10. Douligeris, C., Develekos, G.: A fuzzy Logic Approach to Congestion Control in ATM
Networks. In: Proceedings of IEEE ICC 1995, Seattle, vol. 3, pp. 19691973 (1995)
11. Feng, W.C., Kandlur, D.D., Saha, D., et al.: A Self-Configuring RED Gateway. In:
proceedings of 18thAnnual Joint Conference of the IEEE Computer and Communications
Societies (INFOCOM), vol. 3, pp. 13201328 (1999)
12. Floyd, S., Jacobson, V.: RandomEarly Detection Gateways for Congestion Avoidance.
IEEE/ACM Trans. on Networking 1(4), 397413 (1993)
13. Floyd, S., Gummadi, R., Shenker, S.: Adaptive RED: An Algorithm for Increasing the
Robustness of REDs Active Queue Management. Technical Report, ICSI (2001)
14. Hollot, C.V., Misra, V., Towsley, D., et al.: Analysis and Design of Controllers for AQM
Routers Supporting TCP Flows. IEEE Trans. on Automatic Control 47, 945959 (2002)
15. Kunniyur, S., Srikant, R.: An Adaptive Virtual Queue (AVQ) Algorithm for Active Queue
Management. IEEE/ACM Trans. on Networking 12(2), 286299 (2004)
16. Mamdani, E.H.: Application of Fuzzy Algorithm for Simple Dynamic Plant. Proceedings
of IEEE 121(12), 15851588 (1974)
17. May, M., Bolot, J., Diot, C., Lyles, B.: Reasons Not to Deploy RED. In: 7th International
Workshop on Quality of Service, IWQoS 1999, pp. 260262 (1999)
18. McKeown, N.: The iSLIP Scheduling Algorithm for Input-Queued Switches. IEEE/ACM
Trans. on Networking 7(2), 188201 (1999)
19. Misir, D., Malki, A., Chen, G.: Design and Analysis of a Fuzzy Proportional-Integral
Derivative Controller. Fuzzy Sets and System 79, 297314 (1996)
20. Network Simulator, NS-2, http://nsnam.isi.edu/nsnam/
21. Sundararajan, J., Zhao, K., Pamela, F., Muriel, M.Y.,, M.: A Modification to RED AQM
for CIOQ Switches. In: IEEE Global Communication Conference (Globecom), Dallas,
vol. 3, pp. 17081712 (2004)
22. Timothy, J.R.: Fuzzy Logic with Engineering Application. John Wiley, Chichester (2004)
23. Zadeh, L.A.: Fuzzy sets. Information and Control 8, 338353 (1965)
24. Zadeh, L.A.: Outline of a New Approach to the Analysis of Complex System and Decision
Process. IEEE Trans. on Systems, Man, and Cybernetics 3(1), 2844 (1973)