karlstad university arxiv:1703.00064v2 [cs.ni] 6 mar 2017 · 2017. 3. 7. · ending the anomaly:...

14
Ending the Anomaly: Achieving Low Latency and Airtime Fairness in WiFi Toke Høiland-Jørgensen Karlstad University Michal Kazior Tieto Poland Dave Täht TekLibre Per Hurtig Karlstad University Anna Brunstrom Karlstad University Abstract With more devices connected, delays and jitter at the WiFi hop become more prevalent, and cor- rect functioning during network congestion becomes more important. However, two important perform- ance issues prevent modern WiFi from reaching its potential: Increased latency under load caused by excessive queueing (i.e. bufferbloat ) and the 802.11 performance anomaly. To remedy these issues, we present a novel two- part solution: We design a new queueing scheme that eliminates bufferbloat in the wireless setting. Leveraging this queueing scheme, we then design an airtime fairness scheduler that operates at the access point and doesn’t require any changes to clients. We evaluate our solution using both a theoret- ical model and experiments in a testbed environ- ment, formulating a suitable analytical model in the process. We show that our solution achieves an order of magnitude reduction in latency under load, large improvements in multi-station through- put, and nearly perfect airtime fairness for both TCP and downstream UDP traffic. Further experi- ments with application traffic confirm that the solu- tion provides significant performance gains for real- world traffic.We develop a production quality im- plementation of our solution in the Linux kernel, the platform powering most access points outside of the managed enterprise setting. The implementa- tion has been accepted into the mainline kernel dis- tribution, making it available for deployment on bil- lions of devices running Linux today. 1 Introduction As more mobile devices connect to the internet, and internet connections increase in capacity, WiFi is in- creasingly the bottleneck for users of the internet. This means that congestion at the WiFi hop be- comes more common, which in turn increases the potential for bufferbloat at the WiFi link, severely degrading performance [11]. The 802.11 performance anomaly [9] also neg- atively affects the performance of WiFi bottleneck links. This is a well-known property of WiFi net- works: if devices on the network operate at different rates, the MAC protocol will ensure throughput fair- ness between them, meaning that all stations will effectively transmit at the lowest rate. The anom- aly was first described in 2003, and several mitiga- tion strategies have been proposed in the literature (e.g., [13, 26]), so one would expect the problem to be solved. However, none of the proposed solutions have seen widespread real-world deployment. Recognising that the solutions to these two prob- lems are complementary, we design a novel queue management scheme that innovates upon previous solutions to the bufferbloat problem by adapting it to support the 802.11n protocol. With this queueing structure in place, eliminating the performance an- omaly becomes possible by scheduling the queues appropriately. We develop a deficit-based airtime fairness scheduler to achieve this. We implement our solution in the WiFi stack of the Linux kernel. Linux is perhaps the most wide- spread platform for commercial off-the-shelf routers and access points outside the managed enterprise, and hundreds of millions of users connect to the internet through a Linux-based gateway or access point on a daily basis. Thus, while our solution is generally applicable to any platform that needs to support 802.11n, using Linux as our example plat- form makes it possible to validate that our solution is of production quality, and in addition gives valuable insights into the practical difficulties of implement- ing these concepts in a real system. The rest of this paper describes our solution in de- tail, and is structured as follows: Section 2 describes 1 arXiv:1703.00064v2 [cs.NI] 6 Mar 2017

Upload: others

Post on 31-Aug-2020

0 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Karlstad University arXiv:1703.00064v2 [cs.NI] 6 Mar 2017 · 2017. 3. 7. · Ending the Anomaly: Achieving Low Latency and Airtime Fairness in WiFi Toke Høiland-Jørgensen Karlstad

Ending the Anomaly: Achieving Low Latency and Airtime Fairnessin WiFi

Toke Høiland-JørgensenKarlstad University

Michał KaziorTieto Poland

Dave TähtTekLibre

Per HurtigKarlstad University

Anna BrunstromKarlstad University

AbstractWith more devices connected, delays and jitter atthe WiFi hop become more prevalent, and cor-rect functioning during network congestion becomesmore important. However, two important perform-ance issues prevent modern WiFi from reaching itspotential: Increased latency under load caused byexcessive queueing (i.e. bufferbloat) and the 802.11performance anomaly.

To remedy these issues, we present a novel two-part solution: We design a new queueing schemethat eliminates bufferbloat in the wireless setting.Leveraging this queueing scheme, we then design anairtime fairness scheduler that operates at the accesspoint and doesn’t require any changes to clients.

We evaluate our solution using both a theoret-ical model and experiments in a testbed environ-ment, formulating a suitable analytical model inthe process. We show that our solution achievesan order of magnitude reduction in latency underload, large improvements in multi-station through-put, and nearly perfect airtime fairness for bothTCP and downstream UDP traffic. Further experi-ments with application traffic confirm that the solu-tion provides significant performance gains for real-world traffic.We develop a production quality im-plementation of our solution in the Linux kernel,the platform powering most access points outside ofthe managed enterprise setting. The implementa-tion has been accepted into the mainline kernel dis-tribution, making it available for deployment on bil-lions of devices running Linux today.

1 IntroductionAs more mobile devices connect to the internet, andinternet connections increase in capacity, WiFi is in-creasingly the bottleneck for users of the internet.This means that congestion at the WiFi hop be-

comes more common, which in turn increases thepotential for bufferbloat at the WiFi link, severelydegrading performance [11].

The 802.11 performance anomaly [9] also neg-atively affects the performance of WiFi bottlenecklinks. This is a well-known property of WiFi net-works: if devices on the network operate at differentrates, the MAC protocol will ensure throughput fair-ness between them, meaning that all stations willeffectively transmit at the lowest rate. The anom-aly was first described in 2003, and several mitiga-tion strategies have been proposed in the literature(e.g., [13, 26]), so one would expect the problem tobe solved. However, none of the proposed solutionshave seen widespread real-world deployment.

Recognising that the solutions to these two prob-lems are complementary, we design a novel queuemanagement scheme that innovates upon previoussolutions to the bufferbloat problem by adapting itto support the 802.11n protocol. With this queueingstructure in place, eliminating the performance an-omaly becomes possible by scheduling the queuesappropriately. We develop a deficit-based airtimefairness scheduler to achieve this.

We implement our solution in the WiFi stack ofthe Linux kernel. Linux is perhaps the most wide-spread platform for commercial off-the-shelf routersand access points outside the managed enterprise,and hundreds of millions of users connect to theinternet through a Linux-based gateway or accesspoint on a daily basis. Thus, while our solution isgenerally applicable to any platform that needs tosupport 802.11n, using Linux as our example plat-form makes it possible to validate that our solution isof production quality, and in addition gives valuableinsights into the practical difficulties of implement-ing these concepts in a real system.

The rest of this paper describes our solution in de-tail, and is structured as follows: Section 2 describes

1

arX

iv:1

703.

0006

4v2

[cs

.NI]

6 M

ar 2

017

Page 2: Karlstad University arXiv:1703.00064v2 [cs.NI] 6 Mar 2017 · 2017. 3. 7. · Ending the Anomaly: Achieving Low Latency and Airtime Fairness in WiFi Toke Høiland-Jørgensen Karlstad

the bufferbloat problem in the context of WiFi andon the WiFi performance anomaly, and shows thepotential performance improvement from resolvingthem. Section 3 describes our proposed solution indetail and Section 4 presents our experimental eval-uation. Finally, Section 5 summarises related workand Section 6 concludes.

2 BackgroundIn this section we describe the two performance is-sues we are trying to solve: Bufferbloat in the WiFistack and the 802.11 performance anomaly. We ex-plain why these matter, and show the potential be-nefits from solving them.

2.1 Bufferbloat in the context of WiFi

Previous work on eliminating bufferbloat has shownthat the default buffer sizing in many devices causeslarge delays and degrades performance. It also showsthat this can be rectified by introducing modernqueue management to the bottleneck link [11, 15,29]. However, this does not work as well for WiFi;prior work has shown that neither decreasing buf-fer sizes [23] nor applying queue management al-gorithms to the WiFi interface [11] can provide thesame reduction in latency under load as for wiredlinks.

101 102 103

Latency (ms)

0.0

0.2

0.4

0.6

0.8

1.0

Cum

ulat

ive p

roba

bilit

y

Current kernel Our modifications

Figure 1: Latency of an ICMP ping flow with simultan-eous TCP download traffic, before and afterour modifications.

Figure 1 showcases the potential gain from fix-ing bufferbloat in WiFi. The figure shows alatency measurement (ICMP ping) performed sim-ultaneously with a simple TCP download to each ofthe stations on the network. The solid line shows thestate of the Linux kernel in its default configuration:Several hundred milliseconds of added latency. The

dashed line shows the effects of applying the solutionwe propose in this paper: A latency reduction of anorder of magnitude.

10

00

*

Qdis

c la

yer

MA

C layer

ath

9k d

river

*Can be replaced with anarbitrary configuration

Per HW queue(x4)

2 a

gg

r*

FIFO

FIFO*

buf_q retry_q

TID

12

3

Prio

buf_q retry_q

TID

RR

Assign TID

Retries

To hardware

12

3

Prio

Figure 2: The queueing structure of the Linux WiFistack.

The reason for the limited effect of prior solutionsis queueing in the lower layers of the wireless networkstack. For Linux, this is clearly seen in the queueingstructure, depicted in Figure 2. The upper queuediscipline ("qdisc") layer, which is where the ad-vanced queue management schemes can be installed,sits above both the mac80211 subsystem (which im-plements the base 802.11 protocol) and the driver.As the diagram shows, there is significant unman-aged queueing in these lower layers, limiting the ef-ficacy of the queue management schemes and leadingto increased delay. Because queueing is needed at alow layer in order to build aggregates (more on thislater), an integrated queueing scheme is needed tobring the benefits of modern queue management toWiFi.

2.2 Airtime fairness

The 802.11 performance anomaly was first describedfor the 802.11b standard in [9], which showed thatin a wireless network with differing rates, each sta-tion would achieve the same effective throughputeven when their rates were different. Later work has

2

Page 3: Karlstad University arXiv:1703.00064v2 [cs.NI] 6 Mar 2017 · 2017. 3. 7. · Ending the Anomaly: Achieving Low Latency and Airtime Fairness in WiFi Toke Høiland-Jørgensen Karlstad

showed both analytically and experimentally thattime-based fairness improves the aggregate perform-ance of the network [26], and that the traditionalnotion of proportional fairness [18] translates to air-time fairness when applied to a WiFi network [12].

This latter point is an important part of whyairtime fairness is desirable: Proportional fairnessstrikes a balance between network efficiency and al-lowing all users a minimal level of service. Sincea wireless network operates over a shared medium(the airwaves), access to this medium is the scarceresource that needs to be regulated. Achieving air-time fairness also has the desirable property thatit makes a station’s performance dependent on thenumber of active stations in the network, and not onthe performance of each of those other stations.

To quantify the expected gains of airtime fairnessin the context of 802.11n, the following section devel-ops an analytical model to predict throughput andairtime usage.

2.2.1 An analytical model for 802.11n

The models in [9] and [26] give analytical expres-sions for expected throughput and airtime share for802.11b (the latter also under the assumption of air-time fairness). Later work [16] updates this by de-veloping analytical expressions for packet sizes andtransmission times for a single station using 802.11n.However, this work does not provide expressions forpredicting throughput and airtime usage. In thissection we expand on the work of [16] to providesuch an expression.

The 802.11n standard permits two types of ag-gregation: One is A-MPDU aggregation, whichworks by assigning a MAC-level header and a FrameCheck Sequence (FCS) to each data packet, turningit into a MAC-level Protocol Data Unit (MPDU).Several MPDUs can be aggregated into an A-MPDU, which then has a frame header prependedand is transmitted in a single operation. The othertype of aggregation, called A-MSDU, combines sev-eral packets in a single MPDU, but to simplify themodel we exclude that in the following treatment.1

For the following exposition, we assume a set ofactive stations, I. Each station, i, transmits aggreg-ates consisting of ni packets of size li bytes. Further-more, we assume that all packets in an aggregate areof the same length. All constants are defined by thestandard, and listed in [16]. The size of such anaggregate then becomes:

L(ni, li) = ni(li+Ldelim+Lmac+LFCS+Lpad) (1)1For the version that includes A-MSDU aggregation, see [16].

where Ldelim = 4 is the MPDU delimiter, Lmac =34 is the MAC header, LFCS = 4 is the frame checksequence and Lpad is the padding required to get thetotal length to a multiple of four bytes.

From this we can derive the transmission time ofthe data portion of a packet transmitted at the PHYrate ri (measured in bps):

Tdata(ni, li, ri) = Tphy +8L(ni, li)

ri(2)

where Tphy = 32µs is the time required to trans-mit the PHY header.

From this we can compute the expected rate tothe station assuming no errors or collisions:

R(ni, li, ri) =nili

Tdata(ni, li, ri) + Toh(3)

where Toh = TDIFS + TSIFS + Tack + TBO isthe per-transmission overhead, which consists of theDistributed Inter-Frame Space, TDIFS = 34µs, theShort Inter-Frame Space, TSIFS = 16µs, the aver-age block acknowledgement time, Tack, and the aver-age back-off time before transmission, TBO. The lat-ter two values are discussed extensively in [2] (alongwith cases where various forms of transmission errorsoccur). However, following [16], we limit ourselvesto estimating TBO ' Tslot(CWmin/2) = 68µs in thecase of no collisions and Tack = TSIFS + 8 ∗ 58/ri.

Turning to airtime fairness, we borrow two in-sights from the analysis in [26]:

1. The rate achieved by station i is simply givenby the baseline rate it can achieve when noother stations are present (i.e., R(ni, li, ri))multiplied by the share of airtime available tothe station.

2. When airtime fairness is enforced, the avail-able airtime is divided equally among the sta-tions (by assumption). When it is not, theairtime share available to station i is the ra-tio between the time that station spends on asingle transmission (i.e., Tdata(ni, li, ri)) andtotal time all stations spend doing a singletransmission each.

With these points in mind, we express the expec-ted airtime share T (i) and rate R(i) as:

T (i) =

{1|I| with fairness

Tdata(ni,li,ri)∑j∈I Tdata(nj ,lj ,rj)

otherwise(4)

R(i) = T (i)R(ni, li, ri) (5)

3

Page 4: Karlstad University arXiv:1703.00064v2 [cs.NI] 6 Mar 2017 · 2017. 3. 7. · Ending the Anomaly: Achieving Low Latency and Airtime Fairness in WiFi Toke Høiland-Jørgensen Karlstad

Using the above, we can calculate the expectedairtime share and effective rate for each station inour experimental setup, assuming a fixed packet sizeof 1500 bytes. The assumption of no contentionholds because all data is transmitted from the accesspoint. As the queueing structure affects the achiev-able aggregation level (and thus the predictions ofthe model), we use the measured average aggrega-tion levels in our experiments as input to the model.

Aggrsize

T (i) Rates (Mbps)

PHY Base R(i) Exp

Baseline (FIFO queue)2

4.47 10% 144.4 97.3 9.7 7.15.08 11% 144.4 101.1 11.4 6.31.89 79% 7.2 6.5 5.1 5.3

Total 26.4 18.7

Airtime Fairness18.44 33% 144.4 126.7 42.2 38.818.52 33% 144.4 126.8 42.3 35.61.89 33% 7.2 6.5 2.2 2.0

Total 86.8 76.4

Table 1: Calculated airtime, calculated rate and meas-ured rate for the three stations (two fast andone slow) in our experimental setup. The ag-gregation size is the measured mean aggrega-tion size (in packets) from our experiments andthe measured rates (Exp column) are meanUDP throughput values.

The model predictions, along with the actualmeasured throughput in our experiments, are shownin Table 1. The values will be discussed in more de-tail in Section 4, so for now we will just remark thatthis clearly shows the potential of eliminating theperformance anomaly: An increase in total through-put by up to a factor of five.

3 Our solutionWe focus on the access point scenario in formulat-ing our solution, since a solution that only requiresmodifying the access point makes deployment easieras there are fewer devices to upgrade. However,WiFi client devices can also benefit from the pro-posed queueing structure. The rest of this sectiondescribes the two parts of our solution in detail, andoutlines the current implementation status in Linux.2The aggregation size and throughput values vary quite a bitfor this test, because of the randomness of the FIFO queueemptying and filling. We use the median value over all re-petitions of the per-test mean throughput and aggregationsize; see the online appendix for graphs with error bars.

3.1 A bloat-free queueing structure for802.11

An operating system networking stack has many lay-ers of intermediate queueing between different sub-systems, each of which can add latency. For special-ised systems, it is possible to remove these queuesentirely, which achieves significant latency reduc-tions [1]. While such a radical restructuring of theoperating system is not always possible, the generalprinciple of collapsing multiple layers of queues canbe applied to the problem of reducing bufferbloat inWiFi. What we propose here is such an integratedqueueing structure that is specifically suited to the802.11 MAC.

The 802.11e specification adds the Traffic Identi-fier (TID) concept to 802.11, which is used to dis-tinguish between different QoS levels. Each sta-tion has 16 TIDs assigned (four identifiers for eachof the four QoS priority levels), and packets arecommonly mapped to TIDs based on their DiffServmarkings [25]. The TID is attached to every framewhen it goes over the air, and the 802.11n standardspecifies that aggregation must be performed on aper-TID level. Because of this need to do aggrega-tion on a per-TID basis, it is necessary to be ableto separate packets by their assigned TIDs. Havinga separate logical queue for each TID is the naturalway to achieve this, and so this is also the basis forour queueing structure.

To manage the individual per-TID queues, we ad-apt the FQ-CoDel queue management scheme, whichhas been shown to be a best-in-class bufferbloatmitigation technique [11, 15, 29]. The originalFQ-Codel algorithm is a hybrid fairness queueingand AQM algorithm [10]. It functions as a DeficitRound-Robin (DRR) scheduler [24] between flows,hashing packets into queues based on their transportprotocol flows. Each queue has a deficit which con-trols when it is allowed to transmit packets: Send-ing data causes the deficit to drop, and the round-robin mechanism ensures all back-logged flows re-cover from negative deficits at the same rate. Thesize of the quantum controls the granularity of thefairness between flows. FQ-CoDel also adds an op-timisation for sparse flows to the basic DRR al-gorithm. This optimisation allows flows that use lessthan their fair share of traffic to gain scheduling pri-ority, reducing the time their packets spend in thequeue. Finally, the CoDel AQM is applied separ-ately to each queue, in order to keep the latencyexperienced by each flow under control. For a fullexplanation of FQ-CoDel, see [10].

FQ-CoDel allocates a number of sub-queues that

4

Page 5: Karlstad University arXiv:1703.00064v2 [cs.NI] 6 Mar 2017 · 2017. 3. 7. · Ending the Anomaly: Achieving Low Latency and Airtime Fairness in WiFi Toke Høiland-Jørgensen Karlstad

are used for per-flow scheduling, and so simply as-signing a full instance of FQ-CoDel to each TID isimpractical. Instead, we innovate on the FQ-CoDeldesign by having it operate on a fixed total num-ber of queues, and group queues based on whichTID they are associated with. So when a packetis hashed and assigned to a queue, that queue isin turn assigned to the TID the packet is destinedfor. In case a hash collision occurs and the queueis already active and assigned to another TID, thepacket is instead queued to a TID-specific overflowqueue. A global queue size limit is kept, and whenthis is exceeded, packets are dropped from the glob-ally longest queue, which prevents a single flow fromlocking out other flows on overload. The full enqueuelogic is shown in Algorithm 1.

The lists of active queues are kept in a per-TID structure, and when a TID needs to dequeuea packet, the FQ-CoDel scheduler is applied to theTID-specific lists of active queues. A global limit onthe number of queued packets is applied, with pack-ets being dropped from the (globally) longest queueon overflow. This is shown in Algorithm 2.

The resulting queueing structure is depicted inFigure 3. One additional thing to notice about thisstructure is that packets can be dequeued in a dif-ferent order than they are enqueued (because of theper-flow scheduling). Thus, any protocol-specific en-coding that is sensitive to reordering (notably 802.11sequence numbers and encryption IVs) will causepackets to be discarded by the receiver if they arereordered and thus needs to be applied on dequeue.

3.1.1 Dealing with burstiness in the MAC

The WiFi MAC is bursty in nature because stationshave to contend for the media with each other. Thismeans that more queueing is needed than for a lessbursty MAC such as full-duplex switched Ethernet.

Algorithm 1 802.11 queue management algorithm -enqueue.

1: function enqueue(pkt, tid)2: if queue_limit_reached() then . Global limit3: drop_queue← find_longest_queue()4: drop(drop_queue.head_pkt)5: queue← hash(pkt)6: if queue.tid 6= NULL and queue.tid 6= tid then7: queue← tid.overflow_queue8: queue.tid← tid9: timestamp(pkt) . Used by CoDel at dequeue

10: append(pkt, queue)11: if queue is not active then12: list_add(queue, tid.new_queues)

Qdisc layer (bypassed)

MA

C layer

ath

9k d

river

HW queue(x4)

2 a

ggr

FIFO

RR

Assign TID

Retries

To hardware

retry_q

TID

Prio

FQ-CoDel

Split flows

81

92

(Glo

bal lim

it)

retry_q

TID

FQ-CoDel

Prio

Split flows

81

92

(Glo

bal lim

it)

Figure 3: Our 802.11-specific queueing structure, as itlooks when applied to the Linux WiFi stack.

This is especially true after the introduction of ag-gregation in 802.11n and later standards. The CoDelAQM employed on each queue can become too ag-gressive when applied to WiFi traffic. In addition,as others have shown before [11, 15], CoDel needstuning for very low bandwidths, or it will drop tooaggressively. In WiFi, transmission rates can varyover a large range and different stations can have dif-ferent rates. This is important to take into accountwhen tuning the behaviour of an AQM. To deal withthis, we assign CoDel parameters per station insteadof globally. The parameters are assigned per stationrather than per TID because the link characteristicsvaries with the physical medium, which is a propertyof each station, but identical between TIDs assignedto the same station.

We use a simple threshold combined with an es-timate of the station’s current throughput, obtainedfrom the rate selection algorithm, changing CoDel’starget to 50 ms and interval to 300 ms when theexpected rate drops below 12 Mbps. We apply hys-teresis so the values are not changed more than onceevery two seconds. We have found this simple mech-anism avoids the worst starvation in our setup, andso leave refinements to future work.

5

Page 6: Karlstad University arXiv:1703.00064v2 [cs.NI] 6 Mar 2017 · 2017. 3. 7. · Ending the Anomaly: Achieving Low Latency and Airtime Fairness in WiFi Toke Høiland-Jørgensen Karlstad

Algorithm 2 802.11 queue management algorithm -dequeue.

1: function dequeue(tid)2: if tid.new_queues is non-empty then3: queue ← list_first(tid.new_queues)4: else if tid.old_queues is non-empty then5: queue ← list_first(tid.old_queues)6: else7: return NULL8: if queue.deficit ≤ 0 then9: queue.deficit← queue.deficit+ quantum

10: list_move(queue, tid.old_queues)11: restart12: pkt ← codel_dequeue(queue)13: if pkt is NULL then . queue empty14: if queue ∈ tid.new_queues then15: list_move(queue, tid.old_queues)16: else17: list_del(queue)18: queue.tid ← NULL19: restart20: queue.deficit ← queue.deficit − pkt.length21: return pkt

3.2 Airtime fairness scheduling

Given the above queueing structure, it achieving air-time fairness becomes a matter of measuring theairtime used by each station, and appropriatelyscheduling the order in which stations are served.For each packet sent or received, the packet dur-ation can either be extracted directly from a hard-ware register, or it can be calculated from the packetlength and the rate at which it was sent (includingany retries). Each packet’s duration is subtractedfrom an airtime deficit that is kept for each QoSlevel for each station (so four deficits per station,corresponding to the VO,VI,BE and BK 802.11 pre-cedence levels). This deficit is then used by a deficitscheduler modelled after FQ-CoDel to decide whichstation receives the next transmission.

The resulting airtime fairness scheduler is shownin Algorithm 3. It is similar to the the FQ-CoDeldequeue algorithm, with stations taking the placeof flows, and the deficit being accounted in micro-seconds instead of bytes. The two main differencesare (1) that the scheduler function loops until thehardware queue becomes full (at two queued aggreg-ates), rather than just dequeueing a single packet;and (2) that when a station is chosen to be sched-uled, it gets to build a full aggregate rather than asingle packet.

Compared to the closest previously proposedsolution [6], our scheme has several advantages:

1. We lower implementation complexity by lever-aging already existing information on per-aggregate transmission rates and time, andby using a per-station deficit instead of tokenbuckets, which means that no token bucketaccounting needs to be performed at TX andRX completion time.

2. [6] measures time from an aggregate is sub-mitted to the hardware until it is sent, whichrisks including time spent waiting for otherstations to transmit. We increase accuracy byonly measuring the actual time spent trans-mitting, and by also accounting the airtimefrom received frames to each station’s deficit.

3. We improve on the basic scheduler designby adding an optimisation for sparse sta-tions, analogous to FQ-CoDel’s sparse flowoptimisation. This improves latency for sta-tions that only transmit occasionally, by giv-ing them temporary priority for one roundof scheduling (but not more; we apply thesame protection against gaming this mech-anism that FQ-CoDel does to its sparse flowmechanism [10]).

Algorithm 3 Airtime fairness scheduler. The sched-ule function is called when new packets arrive and aftertransmission completes.

1: function schedule2: while hardware queue is not full do3: if new_stations is non-empty then4: station ← list_first(new_stations)5: else if old_stations is non-empty then6: station ← list_first(old_stations)7: else8: return9: if station.deficit ≤ 0 then

10: station.deficit← station.deficit+quantum11: list_move(station, old_stations)12: restart13: if station’s queue is empty then14: if station ∈ new_stations then15: list_move(station, old_stations)16: else17: list_del(station)18: restart19: build_aggregate(station)

3.3 Implementation

We have implemented our proposed queueingscheme in the Linux kernel, modifying the mac80211subsystem to include the queueing structure itself,

6

Page 7: Karlstad University arXiv:1703.00064v2 [cs.NI] 6 Mar 2017 · 2017. 3. 7. · Ending the Anomaly: Achieving Low Latency and Airtime Fairness in WiFi Toke Høiland-Jørgensen Karlstad

and modifying the ath9k and ath10k drivers forQualcomm Atheros 802.11n and 802.11ac chipsetsto use the new queueing structure. The airtimefairness scheduler implementation is limited to theath9k driver, as the ath10k driver lacks the requiredscheduling hooks.

Our modifications have been accepted into themainline Linux kernel, different parts going into ker-nel releases 4.8 through 4.11. The implementationis available online, as well as details about our testenvironment and the full evaluation dataset.3

4 EvaluationWe evaluate our modifications in a testbed setupconsisting of five PCs: Three wireless clients, an ac-cess point, and a server located one Gigabit Ethernethop from the access point, which serves as sourceand sink for the test flows. All the wireless nodesare regular x86 PCs equipped with PCI-ExpressQualcomm Atheros AR9580 adapters (which use theath9k driver). Two of the test clients are placed inclose proximity to the access point (and are referredto as fast nodes), while the last (referred to as theslow node) is placed further away and configuredto only support the MCS0 rate, giving a maximumthroughput to that station of 7.2 Mbps at the PHYlayer. A fourth virtual station is added as an ad-ditional fast node to evaluate the sparse station op-timisation (see Section 4.1.4 below). All tests arerun in HT20 mode on an otherwise unused channelin the 5Ghz band. We use 30 test repetitions of 30seconds each unless noted otherwise.

The wireless nodes run an unmodified Ubuntu16.04 distribution. The access point has had itskernel replaced with a version 4.6 kernel from ker-nel.org on top of which we apply our modifications.We run all experiments with four queue managementschemes, as follows:

• FIFO: The default 4.6 kernel from kernel.orgmodified only to collect the airtime used bystations, running with the default PFIFOqueueing discipline installed on the wirelessinterface.

• FQ-CoDel: As above, but using the FQ-CoDel qdisc on the wireless interface.

• FQ-MAC: Kernel patched to include the FQ-CoDel based intermediate queues in the MAC

3See http://www.cs.kau.se/tohojo/airtime-fairness/for the online appendix that contains additional material,as well as the full experimental dataset and links to therelevant Linux kernel patches.

layer (patching the mac80211 subsystem andthe ath9k driver).

• Airtime fair FQ: As FQ-MAC, but addition-ally modified to include our airtime fairnessscheduler in the ath9k driver.

Our evaluation is split into two parts. First, wevalidate the effects of the modifications in simplescenarios using synthetic benchmark traffic. Second,we evaluate the effect of our modifications on two ap-plication traffic scenarios, to verify that they providea real-world benefit.

4.1 Validation of effects

In this section we present the evaluation of our modi-fications in simple synthetic scenarios designed tovalidate the correct functioning of the algorithmsand to demonstrate various aspects of their perform-ance.

4.1.1 Latency reductions

Figure 4 is the full set of results for our ICMP latencymeasurements with simultaneous TCP downloadtraffic (of which a subset was shown earlier in Fig-ure 1). Here, the FIFO case shows several hundredmilliseconds of latency when the link is saturated bya TCP download. FQ-CoDel alleviates this some-what, but the slow station still sees latencies of morethan 200 ms in the median, and the fast stationsaround 35 ms. With the FQ-MAC queue restruc-turing, this is reduced so that the slow station nowhas the same median latency as the fast one does inthe FQ-CoDel case, while the fast stations get theirlatency reduced by another 45%. The airtime sched-uler doesn’t improve further upon this, other thanto alter the shape of the distribution slightly for theslow station (but retaining the same median). Forthis reason, we have omitted it from the figure tomake it more readable.

For simultaneous upload and download the effectis similar, except that in this case the airtime sched-uler slightly worsens the latency to the slow station,because it is scheduled less often to compensate forits increased airtime usage in the upstream direc-tion. The graph of this case can be found in theonline appendix.

4.1.2 Airtime usage

Figure 5 shows the airtime usage of the three act-ive stations for one-way UDP traffic going to thestations. There is no reverse traffic and no conten-tion between stations, since only the access pointis transmitting data. This is the simplest case to

7

Page 8: Karlstad University arXiv:1703.00064v2 [cs.NI] 6 Mar 2017 · 2017. 3. 7. · Ending the Anomaly: Achieving Low Latency and Airtime Fairness in WiFi Toke Høiland-Jørgensen Karlstad

101 102 103

Latency (ms)

0.0

0.2

0.4

0.6

0.8

1.0Cu

mul

ativ

e pro

babi

lity

Fast - FIFOSlow - FIFO

Fast - FQ-CoDelSlow - FQ-CoDel

Fast - FQ-MACSlow - FQ-MAC

Figure 4: Latency (ICMP ping) with simultaneousTCP download traffic.

reason about and measure, and it clearly shows theperformance anomaly is present in the current Linuxkernel (left half of the figure): The third station(which transmits at the lowest rate) takes up around80 % of the available airtime, while the two otherstations share the remaining 20 %.

Fast

1

Fast

2

Slow

Fast

1

Fast

2

Slow

Fast

1

Fast

2

Slow

Fast

1

Fast

2

Slow

0.0

0.2

0.4

0.6

0.8

1.0

Airt

ime s

hare

FIFO FQ-CoDel FQ-MAC Airtime fair FQ

Figure 5: Airtime usage for one-way UDP traffic. Eachcolumn shows the relative airtime usage ofone of the three stations, with the four sec-tions corresponding to the four queue man-agement schemes.

The differences between the first two columns andthe third column are due to changes in aggrega-tion caused by the change to the queueing struc-ture. In the FIFO and FQ-CoDel cases, there isa single FIFO queue with no mechanism to ensurefair sharing of that queue space between stations.This means that because the slow station has a loweregress rate, it will build more queue until it occupiesthe entire queueing space. This means that thereare not enough packets queued to build sufficientlylarge aggregates for the fast stations to use the air-time effectively. The FQ-MAC queueing scheme

drops packets from the largest queue on overflow,which ensures that the available queueing space isshared between stations, which improves aggrega-tion for the fast stations and thus changes the air-time shares. Referring back to Table 1, the valuescorrespond well to those predicted by the analyticalmodel. The fourth column shows the airtime fairnessscheduler operating correctly: Each station receivesexactly the same amount of airtime in this simpleone-way test.

Going beyond the simple UDP case, Figure 6shows Jain’s fairness index for the airtime of thefour different schemes for UDP (for comparison)and both unidirectional (to the clients) and bidirec-tional (simultaneous up and down) TCP traffic. Thesame general pattern is seen with TCP as with UDPtraffic: The performance anomaly is clear for theFIFO case, but somewhat lessened for the FQ-CoDeland FQ-MAC cases. The airtime fairness sched-uler achieves close to perfect sharing of airtime inthe case of uni-directional traffic, with a slight dipfor bidirectional traffic. The latter is because thescheduler only exerts indirect control over the trafficsent from the clients, and so cannot enforce perfectfairness as with the other traffic types. However,because airtime is also accounted for received pack-ets, the scheduler can partially compensate, whichis why the difference between the unidirectional andbidirectional cases is not larger than it is.

UDP

TCP

dl

TCP

bidi

r

UDP

TCP

dl

TCP

bidi

r

UDP

TCP

dl

TCP

bidi

r

UDP

TCP

dl

TCP

bidi

r0.0

0.2

0.4

0.6

0.8

1.0

Fairn

ess i

ndex

FIFO FQ-CoDel FQ-MAC Airtime fair FQ

Figure 6: Jain’s fairness index computed over theairtime fairness usage between the threestations, for UDP traffic, TCP download,and simultaneous TCP upload and downloadtraffic.

4.1.3 Effects on throughput

As was already shown in Table 1, fixing the perform-ance anomaly improves the efficiency of the networkfor unidirectional UDP traffic. Figure 7 shows thethroughput for downstream TCP traffic. For this

8

Page 9: Karlstad University arXiv:1703.00064v2 [cs.NI] 6 Mar 2017 · 2017. 3. 7. · Ending the Anomaly: Achieving Low Latency and Airtime Fairness in WiFi Toke Høiland-Jørgensen Karlstad

case, the fast stations increase their throughput asfairness goes up, and the slow station decreases itsthroughput. The total effect is a net increase inthroughput. The increase from the FIFO case toFQ-CoDel and FQ-MAC is due to better aggrega-tion for the fast stations. This was observed for UDPas well in the case of FQ-MAC, but for FQ-CoDelthe slow station would occupy all the queue space inthe driver, preventing the fast station from achiev-ing full aggregation. With the TCP feedback loopin place, this lock-out behaviour is lessened, and sofast stations increase their throughput.

FIFO

FQ-C

oDel

FQ-M

ACAi

rtim

e

FIFO

FQ-C

oDel

FQ-M

ACAi

rtim

e

FIFO

FQ-C

oDel

FQ-M

ACAi

rtim

e

FIFO

FQ-C

oDel

FQ-M

ACAi

rtim

e0

5

10

15

20

25

30

35

40

Mbi

ts/s

Station 1 Station 2 Station 3 Average

Figure 7: Throughput for TCP download traffic (toclients).

When traffic is flowing in both directions simul-taneously, the pattern is similar, but with a slightlyhigher variance. The graph for the bidirectional casecan be found in the online appendix.

4.1.4 The sparse station optimisation

To evaluate the impact of the sparse station optim-isation, we add a fourth station to our experimentswhich receives only a ping flow, but no other traffic,while the other stations receive bulk traffic as above.We measure the latency to this extra station bothwith and without the sparse station optimisation.The results of this are shown in Figure 8, for bothUDP and TCP download traffic. In both cases, asmall, but consistent, improvement is visible: theround-trip latency to the fourth station is reducedby 10− 15% (in the median) when the optimisationis in place.

4.1.5 Scaling to more stations

While the evaluations presented in the previous sec-tions have shown that our modifications work asplanned, and that they provide a substantial bene-fit in a variety of scenarios, one question is left un-answered: Does the solution scale to more stations?

5 10 15 20 25 30Latency (ms)

0.0

0.2

0.4

0.6

0.8

1.0

Cum

ulat

ive p

roba

bilit

y

Enabled (UDP)Disabled (UDP)Enabled (TCP)Disabled (TCP)

Figure 8: The effects of the sparse station optimisa-tion.

To answer this, we arranged for an independent thirdparty to repeat a subset of our tests in their test-bed, which features an access point and 30 clients.The nodes are all embedded wireless devices froma commercial vendor that bases its products on theOpenWrt/LEDE open-source router platform, run-ning a LEDE firmware development snapshot fromNovember 2016.

In this setup, one of the 30 clients is artificiallylimited to only transmit at the lowest possible rate(1 Mbps, i.e. disabling HT mode), while the othersare configured to select their rate in the usual way,on a HT20 channel in the 2.4 Ghz band. One of the29 "fast" clients only receives ping traffic, leaving 28stations to contend with the slow 1 Mbps station forairtime and bandwidth.

0.0

0.1

0.2

0.3

0.4

0.5

0.6

0.7

Airt

ime s

hare

FQ-CoDel FQ-MAC Airtime fair FQ

Figure 9: Airtime share between stations in the 30 sta-tions TCP test.

In this environment, our downstream TCP exper-iment presented above was repeated, with the dif-ference that each test was run for five minutes, butwith only five repetitions, and without the FIFO testcase. A subset of these results are shown in figures9 and 10, which show airtime usage and latency re-spectively. From this experiment, we make several

9

Page 10: Karlstad University arXiv:1703.00064v2 [cs.NI] 6 Mar 2017 · 2017. 3. 7. · Ending the Anomaly: Achieving Low Latency and Airtime Fairness in WiFi Toke Høiland-Jørgensen Karlstad

500 1000 1500 2000Latency (ms)

0.0

0.2

0.4

0.6

0.8

1.0Cu

mul

ativ

e pro

babi

lity

Slow - FQ-CoDelFast - FQ-CoDelSlow - FQ-MACFast - FQ-MACSlow - AirtimeFast - Airtime

Figure 10: Latency for the 30 stations TCP test.

observations:

1. When the slow station is at this very low rate,it manages to grab around two thirds of theavailable airtime, even with 28 other stationsto compete with. However, our airtime fair-ness scheduler manages to achieve completelyfair sharing of airtime between all 29 stations.

2. Total throughput goes from a mean of 3.3Mbps for the FQ-CoDel case to 17.7 Mbpswith the airtime scheduler. That is, the relat-ive gain of throughput with airtime fairness is5.4x in this scenario.4

3. As can be expected, with the airtime fairnessscheduler, the latency to the fast stations isimproved with the increased throughput, butthe latency to the slow station increases byan order of magnitude in the median. Over-all, the average latency (to all stations) is im-proved by a factor of two.

4. With 30 stations, we see the sparse station op-timisation being even more effective; in thisscenario it reduces latency to the sparse sta-tion by a factor of two.4

Finally, we verify the in-kernel airtime measure-ment against a tool developed by the same thirdparty that measures airtime from captures takenwith a monitor device. We find that the two typesof measurements agree to within 1.5%, on average.

4.2 Effects on real-world application per-formance

In the previous section we evaluated our solution ina number of scenarios that verify its correct func-tioning and quantify its benefits. In this section we4Not shown in the figures. See the online appendix.

expand on that validation by examining how ourmodifications affect performance of two importantreal-world applications: VoIP and web browsing.

4.2.1 VoIP

VoIP is an important latency-sensitive applicationwhich it is desirable to have working well over WiFi,since that gives mobile handsets the flexibility ofswitching between WiFi and cellular data as signalconditions change. To evaluate our modifications inthe context of VoIP traffic, we measure VoIP per-formance when mixed with bulk traffic. As in Sec-tion 4.1.4 we include a virtual station as another faststation, and so these scenarios have three fast sta-tions. Due to space constraints, we only include thecase where the slow station receives both VoIP trafficand bulk traffic, while the fast stations receive bulktraffic. The other cases show similar relative per-formance between the different queue managementschemes.

The QoS markings specified in the 802.11e stand-ard can be used to improve the performance of VoIPtraffic, and so we include this aspect in our evalu-ation. 802.11e specifies four different QoS levels, ofwhich voice (VO) has the highest priority. Pack-ets transmitted with this QoS marking gets bothqueueing priority and a shorter contention window,but cannot be aggregated. This difference can dra-matically reduce the latency of the traffic, at a costin throughput because of the lack of aggregation.We repeat the voice experiments in two variants:One where the VoIP packets are sent as best efforttraffic, and one where they are put into the high-priority VO queue. We also repeat the tests with abaseline one-way delay of both 5 ms and 50 ms.

To serve as a metric of voice quality, we calculatean estimate of the Mean Opinion Score (MOS) ofthe VoIP flow according to the E-model specified inthe ITU-T G.107 recommendation [27]. This modelcan predict the MOS from a range of parameters,including the network conditions. We fix all audioand codec related parameters to their default valuesand calculate the MOS estimate based on the meas-ured delay, jitter and packet loss. The model givesMOS values in the range from 1− 4.5.

Table 2 shows the results. As expected, the FIFOand FQ-CoDel cases have low MOS values when thevoice traffic is marked as BE, and higher values whenusing the VO queue. However, both the FQ-MACand airtime fairness schemes achieve better MOS val-ues with best-effort traffic than the unmodified ker-nel does with VO-marked traffic. In the FQ-MACand airtime cases, using the VO queue still gives a

10

Page 11: Karlstad University arXiv:1703.00064v2 [cs.NI] 6 Mar 2017 · 2017. 3. 7. · Ending the Anomaly: Achieving Low Latency and Airtime Fairness in WiFi Toke Høiland-Jørgensen Karlstad

slightly better MOS score than using the BE queuedoes; but the difference is less than half a percent.This is an important improvement, because it meansthat with our modifications, applications can relyon excellent real-time performance even when not incontrol of the DiffServ markings of their traffic

5 ms 50 ms

QoS MOS Thrp MOS Thrp

FIFO VO 4.17 27.5 4.13 21.6BE 1.00 28.3 1.00 22.0

FQ-CoDel VO 4.17 25.5 4.08 15.2BE 1.24 23.6 1.21 15.1

FQ-MAC VO 4.41 39.1 4.38 28.5BE 4.39 43.8 4.37 34.0

Airtime VO 4.41 56.3 4.38 49.8BE 4.39 57.0 4.37 49.7

Table 2: MOS values and total throughput when usingdifferent QoS markings for VoIP traffic. Datafor 5 ms and 50 ms baseline one-way delay.

4.2.2 Web

Another important real-world application is webtraffic. To investigate the impact of our modific-ations on this, we measure page load time (PLT)with emulated web traffic using a web client basedon the cURL library. The client mimics the commonweb browser behaviour of fetching multiple requestsin parallel over four different TCP connections. Wesimply measure the total time to fetch a web siteand all its attached resources (including the initialDNS lookup) for two different pages: A small page(56 KB data in three requests) and a large page (3MB data in 110 requests). We run the experimentsin two scenarios: One where a fast station fetchesthe web sites while the slow station runs a simul-taneous bulk transfer, to emulate the impact of aslow station on the browsing performance of otherusers on the network. And another scenario wherethe slow station fetches the web sites while the faststations run simultaneous bulk transfers, to emulatethe browsing performance of a slow station on a busynetwork.

The results for the fast station are seen in Fig-ure 11: Fetch times decrease from the FIFO case asthe slowest to the airtime fair FQ case as the fast-est. In particular, there is a an order-of-magnitudeimprovement when going from FIFO to FQ-CoDel,which we attribute to the corresponding significantreduction in latency seen earlier.

When the slow station is fetching the web page,adding airtime fairness increases page load time by5 − 10%. This is as expected since in this case theslow station is being throttled. The graph for thiscan be found in the online appendix.

FIFO

FQ-C

oDel

FQ-M

AC

Airt

ime

FIFO

FQ-C

oDel

FQ-M

AC

Airt

ime

100

101

Mea

n do

wnl

oad

time (

s)

Small page Large page

Figure 11: HTTP page fetch times for a fast station(while the slow station runs a bulk transfer).Note the log scale - the fetch time for thelarge page is 35 seconds for the FIFO case.

4.3 Summary

Our evaluation shows that our modifications achievetheir design goal: We eliminate the performance an-omaly and achieve close to perfect airtime fairnesseven when station rates vary, and our solution scalessuccessfully as more clients are added. We improvetotal throughput by up to a factor of five and reducelatency under load by up to an order of magnitude.We also achieve close to perfect airtime fairness ina scenario where traffic is mixed between upstreamand downstream flows from the different stations.Finally, the optimisation that prioritises sparse sta-tions achieves a consistent improvement in latency tostations that only receive a small amount of traffic.

In addition, we show that our modifications givesignificant performance increases for two importantreal-world applications: VoIP and web traffic. In thecase of VoIP, we manage to achieve better perform-ance with best effort traffic than was achievable withtraffic marked as Voice according to the 802.11e QoSstandard. With web traffic we achieve significant re-ductions in the page load time for both large andsmall web sites.

5 Related workThere have been several previous studies on buf-ferbloat and its mitigations (e.g. [15, 29]), but onlya few that deal with the problem in a WiFi-specificcontext: [11] and [15] both feature a WiFi compon-ent in a larger evaluation of bufferbloat mitigation

11

Page 12: Karlstad University arXiv:1703.00064v2 [cs.NI] 6 Mar 2017 · 2017. 3. 7. · Ending the Anomaly: Achieving Low Latency and Airtime Fairness in WiFi Toke Høiland-Jørgensen Karlstad

techniques and show that while these techniques canhelp on a WiFi link, the lower-level queueing in theWiFi stack prevents a full solution of the problem inthis space. [23] draws similar conclusions while look-ing at buffer sizing (but only mentions AQM-basedsolutions briefly). Finally, [4] touches upon conges-tion at the WiFi hop and uses different queueingschemes to address it, but in the context of a cent-ralised solution that also seek to control fairness inthe whole network. None of these works actuallyprovide a solution for bufferbloat at the WiFi linkitself, as we present here.

Several different schemes to achieve fairness basedon modifying the contention behaviour of nodes arepresented in [8, 12, 13, 19, 22, 30]. [12] and [19] bothpropose schemes that use either the 802.11e TXOPfeature to allocate equal-length to all stations, orscaling of the contention window by the inverse ofthe transmission rate to achieve fairness. [13] devel-ops an analytical model to predict the values to usefor a similar scaling behaviour, which is also verifiedin simulation. [22] presents a modified contentionbehaviour that can lower the number of collisions ex-perienced, but they do not verify the effect of theirschemes on airtime fairness. [8] proposes a modific-ation to the DCF based on sensing the idle time ofthe channel scaling CWmin with the rate to achievefairness. Finally, [30] proposes a scheme for airtimefairness that runs several virtual DCF instances pernode, scaling the number of instances with the rateand channel properties.

Achieving fairness by varying the transmissionsize is addressed in [5, 16, 20]. The former twopredate the aggregation features of 802.11n and so[5] proposes to scale the packet size downwards byvarying the MTU with the transmission rate. [20]goes the other way and proposes a scheme where astation will burst packets to match the total trans-mission length of the previous station that was heardon the network. Finally, [16] uses the two-level ag-gregation feature of 802.11n and proposes a schemeto dynamically select the optimal aggregation size soall transmissions take up the same amount of time.

Turning to schedulers, [7] and [6] both proposeschedulers which work at the access point to achieveairtime fairness, the former estimating the packettransmission time from channel characteristics, andthe latter measuring it after transmission has oc-curred. [21] proposes a solution for wireless meshnetworks, which leverages routing metrics to sched-ule links in a way that ensures fairness. Finally, [17]proposes a scheme to scale the queue space at theaccess point based on the BDP of the flows goingthrough the access point. Our solution is closest to

[6], but we improve upon it by increasing accuracyand reducing implementation difficulty, while addingnew features to the algorithm, as was described inSection 3.2.

A few proposals fall outside the categories above:[14] proposes a TCP congestion control algorithmthat uses information about the wireless conditionsto cap the TCP window size of clients to achievefairness. Finally, there are schemes that sidestepthe fairness problems of the 802.11 MAC and in-stead replace it entirely with TDMA scheduling.[3] proposes a scheme for TDMA scheduling in amesh network that ensures fair bandwidth alloca-tion to all connecting clients, and [28] implements aTDMA transmission scheme for infrastructure WiFinetworks.

6 ConclusionWe have developed a novel two-part solution totwo large performance problems affecting WiFi:Bufferbloat and the 802.11 performance anom-aly. The solution consists of a new integratedqueueing scheme tailored specifically to eliminat-ing bufferbloat in WiFi, which reduces latency un-der load by an order of magnitude. Leveragingthe queueing structure, we have developed a deficit-based airtime fairness scheduler that works at the ac-cess point with no client modifications, and achievesclose to perfect fairness in all the evaluated scen-arios, increasing total throughput by up to a factorof 5.

Our solution reduces implementation complexityand increases accuracy compared to previous work,and has been accepted into the mainline Linux ker-nel, making it deployable on billions of Linux-baseddevices.

7 AcknowledgementsWe would like to thank Sven Eckelmann and SimonWunderlich for their work on independently verify-ing our implementation. Their work was funded byOpen Mesh Inc, who also supplied their test hard-ware. We would also like to thank Felix Fietkau,Tim Shepard, Eric Dumazet, Johannes Berg, andthe numerous other contributors to the Make-Wifi-Fast and LEDE projects for their insights, reviewand contributions to many different iterations of theimplementation.

Portions of this work were funded by Google Fiberand by the Comcast Innovation Fund.

12

Page 13: Karlstad University arXiv:1703.00064v2 [cs.NI] 6 Mar 2017 · 2017. 3. 7. · Ending the Anomaly: Achieving Low Latency and Airtime Fairness in WiFi Toke Høiland-Jørgensen Karlstad

8 References[1] Adam Belay et al. ‘IX: A Protected Dataplane

Operating System for High Throughput andLow Latency’. In: OSDI. 11th USENIX Sym-posium on Operating Systems Design and Im-plementation. Oct. 2014, pp. 49–65.

[2] Teuku Yuliar Arif and Riri Fitri Sari.‘Throughput Estimates for A-MPDU andBlock ACK Schemes Using HT-PHY Layer’.In: Journal of Computers 9.3 (Mar. 2014).doi: 10.4304/jcp.9.3.678-687.

[3] Naouel Ben Salem and Jean-Pierre Hubaux.‘A fair scheduling for wireless mesh networks’.In: WiMesh. 2005.

[4] Kan Cai et al. ‘Wireless Unfairness: Allevi-ate MAC Congestion First!’ In: Proceedingsof the Second ACM International Workshopon Wireless Network Testbeds, ExperimentalEvaluation and Characterization. WinTECH’07. New York, NY, USA: ACM, 2007, pp. 43–50. doi: 10.1145/1287767.1287777.

[5] Joseph Dunn et al. ‘A practical cross-layermechanism for fairness in 802.11 networks’. In:Broadband Networks, 2004. BroadNets 2004.Proceedings. First International Conferenceon. IEEE, 2004, pp. 355–364.

[6] Rosario G. Garroppo et al. ‘Providing air-timeusage fairness in IEEE 802.11 networks withthe deficit transmission time (DTT) sched-uler’. In: Wireless Networks 13.4 (Aug. 2007),pp. 481–495. doi: 10 . 1007 / s11276 - 006 -9201-7.

[7] K. Gomez et al. ‘On efficient airtime-based fairlink scheduling in IEEE 802.11-based wirelessnetworks’. In: 2011 IEEE 22nd InternationalSymposium on Personal, Indoor and MobileRadio Communications. Sept. 2011, pp. 930–934. doi: 10.1109/PIMRC.2011.6140105.

[8] Martin Heusse et al. ‘Idle Sense: An OptimalAccess Method for High Throughput and Fair-ness in Rate Diverse Wireless LANs’. In: Pro-ceedings of the 2005 Conference on Applic-ations, Technologies, Architectures, and Pro-tocols for Computer Communications. SIG-COMM ’05. New York, NY, USA: ACM,2005, pp. 121–132. doi: 10.1145/1080091.1080107.

[9] Martin Heusse et al. ‘Performance anomalyof 802.11 b’. In: INFOCOM 2003. Twenty-Second Annual Joint Conference of the IEEEComputer and Communications. IEEE Soci-eties. Vol. 2. IEEE, 2003, pp. 836–843.

[10] T. Høiland-Jørgensen et al. FlowQueue-Codel.Internet Draft (informational). 2016.

[11] Toke Høiland-Jørgensen, Per Hurtig and AnnaBrunstrom. ‘The Good, the Bad and the WiFi:Modern AQMs in a residential setting’. In:Computer Networks 89 (Oct. 2015), pp. 90–106. doi: 10.1016/j.comnet.2015.07.014.

[12] Li Bin Jiang and Soung Chang Liew. ‘Propor-tional fairness in wireless LANs and ad hocnetworks’. In: Wireless Communications andNetworking Conference, 2005 IEEE. Vol. 3.IEEE, 2005, pp. 1551–1556.

[13] T. Joshi et al. ‘Airtime Fairness for IEEE802.11 Multirate Networks’. In: IEEE Trans-actions on Mobile Computing 7.4 (Apr. 2008),pp. 513–527. doi: 10.1109/TMC.2007.70740.

[14] K. Kashibuchi, A. Jamalipour and N. Kato.‘Channel Occupancy Time Based TCP RateControl for Improving Fairness in IEEE 802.11DCF’. In: IEEE Transactions on VehicularTechnology 59.6 (July 2010), pp. 2974–2985.doi: 10.1109/TVT.2010.2048931.

[15] Naeem Khademi, David Ros and MichaelWelzl. ‘The New AQM Kids on the Block:Much Ado About Nothing?’ In: Technical Re-port, Oslo University (2013).

[16] Minho Kim, Eun-Chan Park and Chong-HoChoi. ‘Adaptive Two-Level Frame Aggreg-ation for Fairness and Efficiency in IEEE802.11n Wireless LANs’. In: Mobile Inform-ation Systems 2015 (2015), pp. 1–14. doi: 10.1155/2015/548109.

[17] Dzmitry Kliazovich et al. ‘Queue Manage-ment Mechanism for 802.11 Base Stations’.In: IEEE Communications Letters 15.7 (July2011), pp. 728–730. doi: 10 . 1109 / LCOMM .2011.051911.110642.

[18] M. Laddomada et al. ‘On the throughput per-formance of multirate IEEE 802.11 networkswith variable-loaded stations: analysis, mod-eling, and a novel proportional fairness cri-terion’. In: IEEE Transactions on WirelessCommunications 9.5 (May 2010), pp. 1594–1607. doi: 10.1109/TWC.2010.05.081191.

13

Page 14: Karlstad University arXiv:1703.00064v2 [cs.NI] 6 Mar 2017 · 2017. 3. 7. · Ending the Anomaly: Achieving Low Latency and Airtime Fairness in WiFi Toke Høiland-Jørgensen Karlstad

[19] Pochiang Lin, Wu-I. Chou and Tsungnan Lin.‘Achieving airtime fairness of delay-sensitiveapplications in multirate IEEE 802.11 wirelessLANs’. In: Communications Magazine, IEEE49.9 (2011), pp. 169–175.

[20] Tahiry Razafindralambo et al. ‘Dynamicpacket aggregation to solve performance an-omaly in 802.11 wireless networks’. In: Pro-ceedings of the 9th ACM international sym-posium on Modeling analysis and simulationof wireless and mobile systems. ACM, 2006,pp. 247–254.

[21] R. Riggio, D. Miorandi and I. Chlamtac. ‘Air-time Deficit Round Robin (ADRR) packetscheduling algorithm’. In: 2008 5th IEEE In-ternational Conference on Mobile Ad Hoc andSensor Systems. Sept. 2008, pp. 647–652. doi:10.1109/MAHSS.2008.4660101.

[22] Luis Sanabria-Russo et al. ‘Future evolu-tion of CSMA protocols for the IEEE 802.11standard’. In: Communications Workshops(ICC), 2013 IEEE International Conferenceon. IEEE, 2013, pp. 1274–1279.

[23] A. Showail, K. Jamshaid and B. Shihada.‘Buffer sizing in wireless networks: chal-lenges, solutions, and opportunities’. In: IEEECommunications Magazine 54.4 (Apr. 2016),pp. 130–137. doi: 10 . 1109 / MCOM . 2016 .7452277.

[24] M. Shreedhar and G. Varghese. ‘Efficientfair queuing using deficit round-robin’. In:IEEE/ACM Transactions on Networking 4.3(June 1996), pp. 375–385. doi: 10.1109/90.502236.

[25] T. Szigeti and F. Baker. DiffServ to IEEE802.11 Mapping. Internet Draft (standardstrack). Nov. 2016.

[26] Godfrey Tan and John V. Guttag. ‘Time-based Fairness Improves Performance inMulti-Rate WLANs.’ In: USENIX AnnualTechnical Conference, General Track. 2004,pp. 269–282.

[27] The E-model: a computational model for usein transmission planning. Tech. rep. G.107.ITU-T, June 2015.

[28] Wim Torfs and Chris Blondia. ‘TDMAon commercial of-the-shelf hardware: Factand fiction revealed’. In: AEU-InternationalJournal of Electronics and Communications69.5 (2015), pp. 800–813.

[29] Greg White. Active Queue Management Al-gorithms for DOCSIS 3.0: A Simulation Studyof CoDel, SFQ-CoDel and PIE in DOCSIS 3.0Networks. Tech. rep. Cable Television Labor-atories, Inc., 2013.

[30] M. A. Yazici and N. Akar. ‘Running Mul-tiple Instances of the Distributed Coordina-tion Function for Air-Time Fairness in Multi-Rate WLANs’. In: IEEE Transactions onCommunications 61.12 (Dec. 2013), pp. 5067–5076. doi: 10.1109/TCOMM.2013.111113.130120.

14