9
Effective fair allocation using smart market label auction with CSLF and CR-CSFQ Jung-Shian Li a, * , Chu-Fen Li b , Cheng-Pong Lo c a Department of Electrical Engineering, Institute of Computer and Communication Engineering, National Cheng Kung University, Taiwan, ROC b Department of Finance, National Formosa University, Taiwan, ROC c Department of Electrical Engineering, Institute of Electrical Engineering, National Cheng Kung University, Taiwan, ROC Received 11 January 2005; received in revised form 8 May 2005; accepted 8 July 2005 Available online 24 August 2005 Abstract Core-stateless mechanisms achieve better scalability by reducing the complexity of fair queuing, which usually needs to maintain states, manage buffers, and perform flow scheduling on a per-flow basis. In this paper, we propose two core-stateless fair bandwidth allocation schemes. Both schemes do not need to maintain per-flow state. Packet is labeled using smart market model according to the characteristics of the flow to which the packet belongs. No matter TCP or UDP flows can get their fair share rate by the pro- posed schemes. The first scheme is called core-stateless labeling fairness (CSLF). In CSLF scheme, packets are labeled only once at the entrance of the network and estimators of number of active flows based on Bloom filter are employed at the core routers. The estimation can be used to provide a fair rate to perform auction. Packets of a flow whose rate exceeds the estimated fair share rate are dropped at a congested router. The second scheme, called congestion-responsive-CSFQ (CR-CSFQ), is one extension from CSFQ. Congestion-responsive flows should get a different treatment from non-responsive flows at each core router. Fairness can be achieved by one extra smart market label in each packet. Through simulations, CSLF and CR-CSFQ are shown to achieve fair allocation effectively. Ó 2005 Elsevier Inc. All rights reserved. Keywords: Smart market auction; CSFQ; Core stateless; CSLF; CR-CSFQ; Bloom filter 1. Introduction To allocate the resource fairly is an important issue. End-hosts could use only a simple congestion control scheme, TCP, to achieve approximate fairness in a homogeneous environment where only congestion- responsive flows exist. However, more and more real- time applications, which are in nature not responsive, join in the bandwidth competition with responsive flows. Researchers suggested that bandwidth allocation for heterogeneous flows could be fair if some flow schedul- ing or queue management mechanisms are employed at the routers. Basically, resource allocation could be for- mulated as an optimization problem seeking to maxi- mize the sum of the utility function of each flow. Individual flows collectively achieve social welfare with a constraint that a global fairness must be provided by a congestion control scheme using congestion indication feedback signals. However, in the reality, non-coopera- tive flows without employing any congestion control scheme do not respond to congestion signals. In this paper, we analyze fairness of congestion control with cooperative and non-cooperative flows. Furthermore, we propose two fast smart market auction schemes to fulfill the social welfare in the environment that cooper- ative and non-cooperative flows co-exist. 0164-1212/$ - see front matter Ó 2005 Elsevier Inc. All rights reserved. doi:10.1016/j.jss.2005.07.014 * Corresponding author. E-mail addresses: [email protected] (J.-S. Li), cfl[email protected] (C.-F. Li). www.elsevier.com/locate/jss The Journal of Systems and Software 79 (2006) 665–673

Effective fair allocation using smart market label auction with CSLF and CR-CSFQ

Embed Size (px)

Citation preview

Page 1: Effective fair allocation using smart market label auction with CSLF and CR-CSFQ

www.elsevier.com/locate/jss

The Journal of Systems and Software 79 (2006) 665–673

Effective fair allocation using smart market label auctionwith CSLF and CR-CSFQ

Jung-Shian Li a,*, Chu-Fen Li b, Cheng-Pong Lo c

a Department of Electrical Engineering, Institute of Computer and Communication Engineering, National Cheng Kung University, Taiwan, ROCb Department of Finance, National Formosa University, Taiwan, ROC

c Department of Electrical Engineering, Institute of Electrical Engineering, National Cheng Kung University, Taiwan, ROC

Received 11 January 2005; received in revised form 8 May 2005; accepted 8 July 2005Available online 24 August 2005

Abstract

Core-stateless mechanisms achieve better scalability by reducing the complexity of fair queuing, which usually needs to maintainstates, manage buffers, and perform flow scheduling on a per-flow basis. In this paper, we propose two core-stateless fair bandwidthallocation schemes. Both schemes do not need to maintain per-flow state. Packet is labeled using smart market model according tothe characteristics of the flow to which the packet belongs. No matter TCP or UDP flows can get their fair share rate by the pro-posed schemes. The first scheme is called core-stateless labeling fairness (CSLF). In CSLF scheme, packets are labeled only once atthe entrance of the network and estimators of number of active flows based on Bloom filter are employed at the core routers. Theestimation can be used to provide a fair rate to perform auction. Packets of a flow whose rate exceeds the estimated fair share rateare dropped at a congested router. The second scheme, called congestion-responsive-CSFQ (CR-CSFQ), is one extension fromCSFQ. Congestion-responsive flows should get a different treatment from non-responsive flows at each core router. Fairness canbe achieved by one extra smart market label in each packet. Through simulations, CSLF and CR-CSFQ are shown to achieve fairallocation effectively.� 2005 Elsevier Inc. All rights reserved.

Keywords: Smart market auction; CSFQ; Core stateless; CSLF; CR-CSFQ; Bloom filter

1. Introduction

To allocate the resource fairly is an important issue.End-hosts could use only a simple congestion controlscheme, TCP, to achieve approximate fairness in ahomogeneous environment where only congestion-responsive flows exist. However, more and more real-time applications, which are in nature not responsive,join in the bandwidth competition with responsive flows.Researchers suggested that bandwidth allocation forheterogeneous flows could be fair if some flow schedul-

0164-1212/$ - see front matter � 2005 Elsevier Inc. All rights reserved.doi:10.1016/j.jss.2005.07.014

* Corresponding author.E-mail addresses: [email protected] (J.-S. Li), [email protected]

(C.-F. Li).

ing or queue management mechanisms are employed atthe routers. Basically, resource allocation could be for-mulated as an optimization problem seeking to maxi-mize the sum of the utility function of each flow.Individual flows collectively achieve social welfare witha constraint that a global fairness must be provided bya congestion control scheme using congestion indicationfeedback signals. However, in the reality, non-coopera-tive flows without employing any congestion controlscheme do not respond to congestion signals. In thispaper, we analyze fairness of congestion control withcooperative and non-cooperative flows. Furthermore,we propose two fast smart market auction schemes tofulfill the social welfare in the environment that cooper-ative and non-cooperative flows co-exist.

Page 2: Effective fair allocation using smart market label auction with CSLF and CR-CSFQ

LAN #1

FQ Router

FQ Router FQ Router

FQ RouterFQ Router

FQ Router

FQ RouterFQ Router

LAN #4

LAN #3LAN #2

(a)

LAN #1

Edge Router

Edge Router Edge Router

Core RouterEdge Router

Core Router

Core RouterCore Router

LAN #4

LAN #3LAN #2

(b)

Fig. 1. Fair queuing and core-stateless fair queuing networks. (a) Fairqueuing networks. (b) Core-stateless fair queuing networks.

666 J.-S. Li et al. / The Journal of Systems and Software 79 (2006) 665–673

In the Internet, packet loss occurs commonly as a re-sult of congestion. TCPs end-to-end congestion controlmechanism reacts to packet loss by reducing numberof outstanding unacknowledged data segments allowedin the network. TCP flows with similar round trip times(RTTs) that share a common bottleneck reduce theirrates so that the available bandwidth could be distrib-uted equally among them.

Not all Internet applications employ TCP congestioncontrol scheme and therefore, the available bandwidthmay not be allocated fairly among flows. Fairness isnot a serious problem if most of the applications useTCP, such as HTTP, SMTP, or FTP. However, numberof audio/video streaming applications, such as Internetaudio players, IP telephony, video conferencing andsimilar types of real-time applications, is growing andthe percentage of non-TCP traffic increases tremen-dously. Since these applications do not integrate TCP-compatible mechanisms, they treat competing TCPflows in an unfair manner. Upon encountering conges-tion, all contending TCP flows reduce their data ratesin an attempt to dissolve the congestion while the non-TCP flows continue to send at their original rate. Thisunfair situation can lead to starvation of TCP traffic,or even to a congestion collapse (Floyd and Fall,1999). Under such circumstances, available bandwidthin a network is almost occupied by packets belongingto flows without equipping any congestion controlmechanisms (Widmer et al., 2001).

Most existing stateless router congestion controlalgorithms (Ott et al., 1999; Stoica et al., 1998) processresponsive and non-responsive traffic in the same way.But the effect of dropping one packet for a responsiveflow is different from unresponsive. Here, we proposedtwo schemes, CSLF and CR-CSFQ. Both schemes em-ploy distinct labeling for responsive flows. CSLF needsonly a one-time label for each packet and used aBloom-filter based fair rate estimator at each core rou-ter. CR-CSFQ is an extension for CSFQ by using smartmarket labeling. CR-CSFQ needs relabeling at each corerouter. However, it employs a simpler fair rate estima-tion algorithm. Both schemes are able to provide fair-ness in a heterogeneous environment where responsiveand unresponsive flows co-exist.

The rest of this paper is organized as follows. Section2 describes the existing core-stateless schemes includingCSFQ, RFQ, SV-CSFQ and TUF. Section 3 depictsthe idea and framework of CSLF and CR-CSFQ. Sim-ulations in various scenarios are shown in Section 4.Section 5 presents our conclusions.

2. Existing core-stateless schemes

As shown in Fig. 1(a), fair queuing schemes couldachieve fair bandwidth allocations by maintaining per-

flow state and information at each router. However, per-forming per-flow classification, per-flow buffer manage-ment, and per-flow packet scheduling at each routercontribute to a lot of work complexity and theseschemes are not cost-effective. Consequently, a networkarchitecture as shown in Fig. 1(b) was proposed to re-duce the implementation complexity. The architecturedistinguishes between edge and core routers like Diff-Serv scheme. Edge routers maintain per-flow state, esti-mate the incoming rate of each flow and insert a labelinto each packet header based on the rate estimation.Core routers do not perform per-flow management butonly maintain FIFO scheduling and drop a packet prob-abilistically according to the measurement of the aggre-gate flow rate and the label of this packet. Therefore,core routers are simpler than fair queuing routers, andthey can be efficiently implemented on a large scale inhigh-speed networks.

One of the most famous core-stateless fair queuingschemes is CSFQ (Stoica et al., 1998). When a packet ar-rives at the edge router, the estimated rate of its associ-ated flow is labeled on the header of the packet. Corerouters estimate its fair rate according labels of packetsof active flows and link capacity. Then, the estimatedfair rate is relabeled on the header of packets with labelslarger than the fair rate.

A quantile version of CSFQ is called RFQ (Caoet al., 2000). Packets for each flow are marked at edge

Page 3: Effective fair allocation using smart market label auction with CSLF and CR-CSFQ

Fig. 2. Labels of TCP and UDP and fair rate.

J.-S. Li et al. / The Journal of Systems and Software 79 (2006) 665–673 667

routers with a layer label (or color, quantile). A corerouter maintains a color threshold and drops layerswhose color exceeds the threshold.

Self-verifying CSFQ (SV-CSFQ) (Stoica et al., 2002)is another extension of CSFQ. For SV-CSFQ, rate esti-mation is performed by sending hosts, and all routersstatistically verify these rate estimates. Statistical verifi-cation allows routers to identify misbehaving flows andthereby protects the other flows. This makes their ap-proach robust and highly scalable as it eliminates theneed of CSFQ for stateful routers at trust boundaries.However, relabeling is still necessary for SV-CSFQ.

The above CSFQ extensions are not able to providefairness for responsive flows. TUF (Clerget and Dab-bous, 2001) is the first proposed core-stateless fair queu-ing scheme to treat responsive flows fairly. TUF labelsTCP flows differently from UDP flows. The markermight be in source or in edge router. The core router willnot drop any packet when the queue length does not ex-ceed some queue limit. Otherwise, the core router willbegin to search a packet with the highest label in thequeue and drop it. TUF should have to spend lots oftime in searching and it needs a long time to converge.Since TUF does not provide an effective filteringscheme, it is not practical to implement in high-speednetworks.

3. CSLF and CR-CSFQ

3.1. Smart market labeling

3.1.1. TCP flows

The authors in Padhye et al. (1998) proposed a goodmodel of TCP rate function, which depends on the lossprobability and round trip time.

BðpÞ

�minW max

RTT;

1

RTTffiffiffiffiffi2bp

3

qþT 0 min 1;3

ffiffiffiffiffi3bp

8

q� �pð1þ32p2Þ

0B@

1CA;ð1Þ

where RTT is round trip time, T0 is timeout value, p isloss probability, b is the number of acknowledged pack-ets by a received ACK and Wmax is the maximal windowsize.

When a TCP packet arrives at the labeler, the labelergenerates a random number X, which is uniformly dis-tributed in [0, 1], as the loss probability. Then, the labe-ler uses the loss probability and the rate function tomark the rate on the packet. The parameters such asRTT and timeout value are kept at the TCP source.Labeling will be easier if it is done in the TCP source.To avoid that a chain of packets with large labels whichresults in burst loss effects incurring TCP timeout and

entering in the slow start phase, the label is convertedin the CSLF field in Fig. 2 as follows:

Labeltcp

¼ð1�X ÞminW max

RTT;

1

RTTffiffiffiffiffiffi2bX

3

qþT 0 min 1;3

ffiffiffiffiffiffi3bX

8

q� �X ð1þ32X 2Þ

0B@

1CA.

ð2Þ

3.1.2. UDP flows

We estimate the arrival rate of UDP flow i by expo-nential averaging formula in the labeler. This formulais discussed in (Stoica et al., 1998) and shown as follows:

Ri ¼ ð1� e�Dt=KÞ LDtþ e�Dt=KRi; ð3Þ

where Dt is the packet interarrival time, L is the bits sentin Dt and K is the estimating interval. After the rate isestimated, the good put and labeling in the CSLF fieldare

BudpðpÞ ¼ Rið1� pÞ ð4Þand

Labeludp ¼ Rið1� X Þ; respectively; ð5Þwhere p is the loss probability and X is a generated ran-dom number in [0,1].

The mapping from loss probability to good put isshown in Fig. 2. When one packet arrives at edge router,CSLF generates a random number, and maps the ran-dom number to good put by its rate function. The pack-ets with rates lower than fair share rate will pass, butthose with rates higher than fair share rate will bedropped when congestion occurs. As shown in Fig. 2,if the fair share is 250 Kbps, the loss probability of eachpacket of a UDP flow with rate 500 Kbps should be 0.5.However, for a TCP flow, the loss probability of eachassociated packet may be only less than 0.1.

3.2. CSLF architecture

Similar to CSFQ, per-flow state is not kept at the corerouters in CSLF and rate information of each flow is

Page 4: Effective fair allocation using smart market label auction with CSLF and CR-CSFQ

Packets labeled by rate Filtered PacketsLow pass filterfiltered by

fair share rate

Fair share rate

Labelvalue Fair share = infinite if Rtotal < C

Fair share = C/Nact if Rtotal >= C

Fig. 4. Core router like low pass filter.

668 J.-S. Li et al. / The Journal of Systems and Software 79 (2006) 665–673

labeled on its packets. CSLF labels packets in a differentway from CSFQ, which marks arrival rate of a flow inthe header of its associated packets. Packets of a flowhave the same labels in CSFQ but different in CSLF.Labeling is done only once in the entrance of the net-works, either at the source or at the edge router, whichis called the labeler. The label is not changed at any corerouters, that is, relabeling is not performed at the corenetworks.

If the router is congested, packets with the largestmarked rate will be dropped. The procedure resemblesan auction. The buyer (packet) with the largest bid(marked rate) gets the commodity (dropping). Gradu-ally, the congestion is released. However, the conver-gence of the auction is slow and it is not efficient for acore router with thousands of packets passing by. Later,we will introduce an efficient dropping mechanism basedon Bloom filter, called fast auction. Whenever a packetgoes through a core router with its queue length largerthan a threshold, it will check whether the rate labeledin the packet larger than the fair share rate or not. Ifthe labeled rate is larger than the fair share rate, thepacket will be dropped at congestion. The architectureof the proposed scheme including labeler and core rou-ters is shown in Fig. 3.

3.2.1. Fast auction based on Bloom filter in CSLF

The core router must estimate the fair share rate. Inthe core routers, we use the scheme described in Section3.4.1 to estimate number of active flows, Nact(t). Let thecore router have capacity C, then we can approximatethe fair share rate at C/Nact(t) when congestion occurs.

When the total arrival rate Rtotal of packets is largerthan capacity C of the link in core router and the queuelength is larger than a threshold, the low pass filter startsworking. The label of an arriving packet is comparedwith the fair share rate C/Nact(t). If the label is largerthan C/Nact(t), then it will be dropped. If not, it willbe inserted in the queue of packets. Since the routermaintains only a FIFO queue, the packet order ispreserved.

With the fair share rate C/Nact(t), our router is justlike a low pass filter as shown in Fig. 4. Packets with lar-ger labels than the fair share rate will be filtered outwhen congestion occurs. However, packets with smaller

Fig. 3. CSLF architecture.

labels can pass even when congestion occurs. The pro-posed scheme does not need to maintain per-flow state,and the packet labeling is done only once in the edge ofthe network. The work complexity of CSLF is lowerthan the existing core-stateless schemes.

3.2.2. Number of active flows

The method to estimate number of active flows ismotivated from Bloom filter (Bloom, 1970) and bitmap(Estan et al., 2003). Our method is an extension frombitmap and uses two multiple-level hash tables to avoidwarm up effects. As shown in Fig. 5, an L-level hashtable is used to estimate number of active flows and eachlevel i is associated with a hash function hi(x). Beforepackets enter the queue, their source and destinationpair will be examined and hashed into different bins. Ini-tial value of each bin in the table is set to 0. For an arriv-ing packet, the hashed bin of level i with the hashfunction hi(x) is B[i][hi]. If one of the L hashed binsassociated with this packet is 0, that is, B[0][h0] *B[1][h1] * � � � * B[L � 1][hL�1] = 0, a counter Nact,named estimated number of active flows, increases 1.Then, each of the L hashed bins is set to 1 despite its pre-vious value. If each of the L hashed bins is 1, that is,B[0][h0] * B[1][h1] * � � � * B[L � 1][hL�1] = 1, the counterNact remains the same. By this way, number of activeflows can be easily estimated. Basically, packets belong-ing to different flows may be mapped into the same binfor a particular hash function. It is so-called hash colli-

Fig. 5. Updating of the number of active flows (Nact) when the packetarrives at the queue. One hash table includes L hash functions.

Page 5: Effective fair allocation using smart market label auction with CSLF and CR-CSFQ

J.-S. Li et al. / The Journal of Systems and Software 79 (2006) 665–673 669

sion. In order to avoid this collision, L-level hash func-tions are employed. Basically, L levels with N bins ineach level can provide NL virtual buckets. This allowsour algorithm to effectively identify a single flow in aNL flow aggregate using O(NL) amount of states. Con-sequently, the probability that packets belonging to dif-ferent flows are hashed into the same L bins is very small(Feng et al., 2001). Moreover, for detecting the time-varying number of active flows, we periodically resetthe bins to 0. Two sets of hash tables are used inter-changeably to prevent warm up effects to get a fast con-vergent estimation of number of active flows. As shownin Fig. 6, to avoid the warm up effects for estimatingnumber of active flows, two sets of alternative hash ta-bles are used.

3.2.3. Limiting rate for dropping

Consider a fluid model of a router with output linkcapacity C. Similarly as fair queuing schemes (Caoet al., 2000; Feng et al., 2001; Lin and Morris, 1997;Nabeshima et al., 2000; Ott et al., 1999; Shreedhar andVarghese, 1995; Stoica et al., 1998), we want to achievemax–min fair bandwidth sharing. Assume that flow i hasthe arrival rate ri(t). Each flow passing the bottleneckrouter should be limited to the fair share rate. Let f(t)be the fair share rate at time t. Flow i should allocatedthe rate min(ri(t), f(t)) at congestion. Let Rtotal denotethe total arrival rate:

Rtotal ¼Xn

i¼1

riðtÞ. ð6Þ

Then, the service obtained by flow i is as follows:

• Limited: queue length larger than a threshold andarrival rate ri(t) > f(t), then flow i will be served atthe rate f(t).

• Unlimited: queue length smaller than a threshold orarrival rate ri(t) 6 f(t), the router then severs the flowat the rate ri(t).

By the rate limiting in the core routers and the differ-entiating rate-labeling in the labeler, max–min fairness

Fig. 6. Two different hash tables.

can be achieved. TCP flows can get their fair share ratesas same as unresponsive UDP flows. When a packet ar-rives at the labeler, CSLF generates a random numberuniformly distributed in [0,1] to get a rate by the associ-ated rate function (UDP or TCP). Then, the rate is la-beled in the CSLF field of the header of the packet.The labels of packets in a flow follow a distributiondependent on its traffic type. The core router decideswhether to drop the packet based on the rate limitingmechanism when congestion occurs.

3.3. CR-CSFQ

In CSFQ (Stoica et al., 1998), each edge node shouldestimate the incoming rate of each flow, and use it tolabel flow�s packets. In turn all nodes, including edgenodes, perform the following operations periodicallyestimate the fair rate along the outgoing link. Uponpacket arrival compute the forwarding probability basedon the packet label (which represents the current valueof the estimated flow rate) the fair rate of the outputlink. Then the node forwards the packet with the for-warding probability and its label is replaced with theminimum between its previous value and the fair rateof the output link.

CSFQ may fail to provide fairness if responsive andunresponsive flows co-exist. Smart market labelingshould be able to remedy this flaw. Using one extrasmart market label in packets, CSFQ could achieve fair-ness using its packet forwarding rate and relabelingalgorithm. The extension of CSFQ is called conges-tion-responsive CSFQ (CR-CSFQ). In CR-CSFQ eachedge node estimates the incoming rate of each flowand furthermore, one extra label according to smartmarket model for UDP or TCP flow is added to treatunresponsive and responsive flows differently.

When the link is congested, the fair rate f is computedsuch that the rate of the aggregate forwarded rate equalsthe link capacity. Since the aggregate forwarded rate is anon-decreasing and monotonic function of f. An itera-tive algorithm based on linear interpolation is used tocompute it. When the link is uncongested, f is taken tobe the maximum among the arrival rates of the incom-ing flows (i.e., the largest label of a packet seen duringa certain period). A link is assumed to be congested/uncongested if during a predefined time interval theaggregate forwarded rate is always larger/lower thanthe link capacity.

All nodes, including edge nodes, perform the follow-ing operations:

• periodically estimate the fair rate along the outgoinglink,

• upon packet arrival compute the current fair ratebased on the packet rate label and the previous fairrate of the output link. Then forward the packet if

Page 6: Effective fair allocation using smart market label auction with CSLF and CR-CSFQ

670 J.-S. Li et al. / The Journal of Systems and Software 79 (2006) 665–673

the smart market label is smaller than the fair ratewhen congestion occurs,

• when a packet is forwarded, replace its rate label withthe minimum between its previous value and the fairrate of the output link.

3.4. Max–min fairness

Assume that there are N active flows in a router. si isthe sending rate of flow i, and ri is the good put receivedby flow i. We classify the N flows into three sets, whichare Q1{si jdsi/dt = 0, si P rf, "i 2 kQ1k}, Q2 = {si jdsi/dt = 0, si < rf, "i 2 kQ2k}, and Q3 = {si jdsi/dt 5 0,"i 2 kQ3k} where rf = C/N. The rates of flows belongingto Q1 are constant and unlimited; the rates of flowsbelonging to Q2 are constant and limited by sources;and the flows belonging to Q3 are adaptive flows. Thepackets are tagged by loss-good put function Bi(x),x 2 [0,1], which is shown in Fig. 6. In core routers, pack-ets are passed following the cumulative distributionFi(rf) = Probability(Bi(x) < rf). We can obtain that

F iðrf Þ ¼1� B�1

i ðrf Þ if rf 6 si;

1 if rf > si.

(ð7Þ

R2 R3R1S

TCP/UDPSources

10Mbps 5Mbps 10Mbps 10MbpsR

Sinks

Fig. 7. Single congested link topology, all links have 1 ms delay.

3.4.1. Max–min fairness of different kinds of flows

• Unresponsive flows

When a packet arrives at the router, it will have prob-ability Fi(rf) to pass through the low pass filter. For theflows belonging to Q1,Z

ri dt ¼Z

si � F iðrf Þ� �

dt; i 2 Q1

¼Z

si �rf

si

� �dt

¼Z

rf dt

ð8Þ

ri ¼ rf ; i 2 Q1. ð9Þ

For the flows belonging to Q2,Zri dt ¼

Zsi � F iðrf Þ� �

dt; i 2 Q2

¼Z

si � 1f gdt

¼Z

si dt

ð10Þ

ri ¼ si; i 2 Q2. ð11Þ• Responsive flows

We consider responsive flows in the following. Wesuppose that we know the stochastic time average goodput Bi(p). The function Bi(p) is strictly decreasing contin-uous functions, and Bi(1) = 0, Bi(0) = si, where si is the

maximum sending rate. When the packets pass throughthe bottleneck core router, the loss rate intensity pi willbe submitted by sender, and the throughput will con-verge towards Bi(pi)/(1 � pi). Now we suppose that theytry to converge exponentially towards their instanta-neous target rate s�i ¼ BiðpiÞ=ð1� piÞ : ða > 0Þdsi

dt¼ aðs�i � siÞ ¼ a

Bi�1ðrf ÞFiðrf Þ � si

. ð12Þ

If aðs�i � siÞ ! 0, then dsidt ! 0. It means that si will

converge to s�i and be stable.

3.5. Single-packet or short-lived flows

Flow size distribution in the Internet is highly skewedand a fraction of flows traversing any link may be single-packet or short-lived flows. Single-packet or short-livedflows should be handled differently from long-livedflows. Packets belonging to single-packet or short-lived flows could be labeled two possible values for itsbandwidth, 0 (high priority) or1 (best effort). For highpriority applications, packets could pass even when con-gestion occurs, but for low priority applications, packetscould pass only when extra bandwidth exists. Further-more, at core routers, packets with label 0 or 1 areexcluded no matter in estimation of number of activeflows in CSLF or fair rate estimation in CR-CSFQ.

4. Simulation results

In this section, we compare the performance of CSLFand CR-CSFQ with the existing schemes, such as DRR(Shreedhar and Varghese, 1995), FRED and CSFQ(Stoica et al., 1998). All the simulations are performedby ns-2 simulator (http://www.isi.edu/nsnam/ns/).

4.1. A single congested link

In the first simulation, we consider the impact of oneaggressive UDP flow that sends 5 Mbps competing with100 TCP flows divided into ten groups, as shown inFig. 7. Fig. 8 shows the average throughput of theUDP flow (group 0) and each group of TCP flows.The UDP flow under FRED or CSFQ gets much morebandwidth than TCP flows. The average throughputs ofUDP flow under DRR, TUF, CSLF and CR-CSFQ are50 Kbps, 54 Kbps, 57 Kbps and 55 Kbps, respectively.

Page 7: Effective fair allocation using smart market label auction with CSLF and CR-CSFQ

1

10

100

1000

10000

0 1 2 3 4 5 6 7 8 9 10Group of TCP flows

Aver

age

thro

ughp

ut (k

bps)

CSFQ DRR FREDCSLF TUF CR-CSFQ

Fig. 8. Simulation results for a 5 Mbps bottleneck shared by oneaggressive UDP flow (group 0) competing with 100 TCP flows.

E Es r

TCP/UDP0source

TCP/UDP0sink

EEEE

sss ssss s

UDP1~UDP10 source

UDP1~UDP20 source

UDP(10k+1)~UDP10(k+1) source

EEEE

r r rrr r r r

UDP1 ~UDP10 sink

UDP11~UDP20 sink

UDP(10K+1) ~UDP10(K+1) sink

CC C C C

Fig. 10. Topology of multiple congested links.

J.-S. Li et al. / The Journal of Systems and Software 79 (2006) 665–673 671

CSLF, CR-CSFQ and TUF can effectively constrain theunresponsive aggressive UDP flows. However, somegroups of TCP flows under TUF get smaller bandwidththan the fair share.

In the third simulation, we test the effect on a singleTCP flow competing with multiple UDP flows. We ana-lyze 10 different conditions, a single TCP flow competingwith (10i � 1) UDP flows, i = 1,2,3 . . . , 10. In eachexperiment, UDP flows send at twice the fair share rate,5/(10i) Mbps. In Fig. 9, the TCP flow under DRR,CSLF and CR-CSFQ still achieve satisfactory ratio ofthe average throughput to the fair share rate. FRED,TUF and CSFQ fail to provide fairness. CSLF andCR-CSFQ can effectively protect the responsive TCP

0

0.2

0.4

0.6

0.8

1

1.2

1.4

0 20 40 60 80 100Total Number of UDP Flows

Allo

cate

d BW

/Idea

l BW

CSFQ DRR FREDCSLF TUF CR-CSFQ

Fig. 9. The normalized throughput of a TCP flow competing withN � 1 UDP flows sending at twice the fair share rate of the bottleneck.

flows. From these three simulations, CSLF and CR-CSFQ can achieve a similar performance as DDR evenwith lower complexity than DDR for either TCP orUDP flows.

4.2. Multiple congested links

Here, we analyze the throughput when one flowpasses multiple congested links. As shown in Fig. 10,there exist multiple congested links between core rou-ters. The link capacity between edge and core routersis 10 Mbps while the link bandwidth between two corerouters is 5 Mbps. A TCP flow or a UDP flow passesfrom the left side to the right side. The UDP sourcesin the background send 600 Kbps. However, UDP0,as the foreground traffic, sends at the fair share rate5/11 Mbps. First, we test the scenario with one singleTCP flow passing multiple congested links. Fig. 11shows that TCP under DRR, CSLF or CR-CSFQ getsgood performance while that under CSFQ or FRED

0

0.1

0.2

0.3

0.4

0.5

0.6

0.7

0.8

0.9

1

1 2 3 4 5 6 7 8 9 10Number of Congested Links

Allo

cate

d B

W/Id

eal B

W

CSFQ DRR FREDCSLF TUF CR-CSFQ

Fig. 11. The normalized throughput of a TCP flow vs. number ofcongested links with UDP flows.

Page 8: Effective fair allocation using smart market label auction with CSLF and CR-CSFQ

0.6

0.7

0.8

0.9

1

1.1

1 3 6 7 10Number of Congested Links

Allo

cate

d BW

/Idea

l BW

CSFQ DRR FREDCSLF TUF CR-CSFQ

98542

Fig. 12. The normalized throughput of a UDP flow sending 5/11 vs.number of congested links with UDP flows.

672 J.-S. Li et al. / The Journal of Systems and Software 79 (2006) 665–673

performs poorly. TUF could not provide fairness. In thenext scenario, we simulate the situation while one well-behaved UDP0 flow passing through multiple congestedlinks. As shown in Fig. 12 UDP under FRED gets fewthroughputs while passing more congested links. CSFQ,DRR, TUF, CSLF and CR-CSFQ perform better thanFRED.

4.3. Fairness among flows with different RTTs

In this simulation, we use a topology as shown inFig. 7, and we have 1 TCP source and 39 UDP sources.The delay of the link between routers R1 and R2 is vary-ing from 1 ms to 499 ms, and the other links have 1ms

0

0.2

0.4

0.6

0.8

1

1.2

0 200 400 600 800 1000Link round trip time

Allo

cate

d BW

/Idea

l BW

CSFQ DRR FREDCSLF TUF CR-CSFQ

Fig. 13. The normalized throughput of TCP vs. round trip times.

delay. As shown in Fig. 13, DRR, TUF, CSLF andCR-CSFQ can work well with large round trip time,but CSFQ and FRED cannot perform well with largeround trip time. DRR achieves better bandwidth alloca-tion. However, DRR needs to maintain per-flow state,while CSLF and CR-CSFQ are core stateless schemes.

5. Conclusions

In this paper, we propose two novel core-statelessfairness schemes, CSLF and CR-CSFQ. CSLF canfairly allocate bandwidth for responsive and unrespon-sive flows. CSLF does not need to maintain per-flowstate and the packet labeling is performed only once inthe edge of the network. Packet relabeling in each corerouter is not necessary. Furthermore, CSLF uses asmart estimation for number of active flows motivatedfrom Bloom filter. CR-CSFQ extends CSFQ to providecongestion-responsive flows fairness. CR-CSFQ hassimpler fair rate estimation than CSLF but it needsone extra one-time smart market label at the edge nodeand relabeling its rate mark at each core router.Through detailed simulations, CSLF and CR-CSFQcan achieve max–min fairness in various networkscenarios.

Acknowledgement

The authors would like to thank the National ScienceCouncil of the Republic of China for financially sup-porting this research under Contract No. NSC93-2213-E-006-095.

References

Bloom, B., 1970. Space/time trade-offs in hash coding with allowableerrors. Communications of the ACM 13 (7).

Cao, Z., Wang, Z., Zegura, E., 2000. Rainbow fair queuing: fairbandwidth sharing without per-flow state. In: Proceedings of IEEEINFOCOM 2000.

Clerget, A., Dabbous, W., 2001. TUF: tag-based unified fairness. In:Proceedings of IEEE INFOCOM 2001.

Estan, C., Varghese, G., Fisk, M., 2003. Bitmap algorithms forcounting active flows on high speed links. UCSD Technical ReportCS2003-0738, March 2003.

Feng, W., Kandlur, D., Daha, D, Shin, K., 2001. Stochastic fair blue: aqueue management algorithm for enforcing fairness. In: Proceed-ings of IEEE INFOCOM 2001.

Floyd, S., Fall, K., 1999. Promoting the use of end-to-end congestioncontrol in the Internet. IEEE/ACM Transactions on Networking 7(4), 458–472.

Lin, D., Morris, R., 1997. Dynamic of random early detection. In:Proceedings of ACM SIGCOMM�97, pp. 127–137.

Nabeshima, M., Shimizu, T., Yamasaki, I., 2000. Fair queuing with in/out bit in core stateless networks. In: Proceedings of IEEEINFOCOM 2000.

Page 9: Effective fair allocation using smart market label auction with CSLF and CR-CSFQ

J.-S. Li et al. / The Journal of Systems and Software 79 (2006) 665–673 673

Ott, T., Lakshman, T., Wong, L., SRED: stabilized RED. In:Proceedings of IEEE INFOCOM�1999.

Padhye, J., Firoiu, V., Towsley, D., Kurose, J., 1998. Modeling TCPthroughput: a simple model and its empirical validation. In:Proceedings of ACM SIGCOMM�98.

Shreedhar, M., Varghese, G., 1995. Efficient fair queuing using deficitround Robin. In: Proceedings of ACM SIGCOMM�95.

Stoica, I., Shenker, S., Zhang. H., 1998. Core-stateless fair queuing: ascalable architecture to approximate fair bandwidth allocations inhigh speed networks. In: Proceedings of ACM SIGCOMM�98.

Stoica, I., Zhang, H., Shenker, S., 2002. Self-verifying CSFQ. In:Proceedings of IEEE INFOCOM 2002.

Widmer, J., Denda, R., Mauve, M., 2001. A survey on TCP-friendlycongestion control. IEEE Network Magazine.