Laboratoire LSR Logiciels Systèmes Réseaux Software, Systems, Networks Performance anomaly of 802.11b Andrzej Duda LSR-IMAG Andrzej.Duda@imag.fr Joint work with Martin Heusse, Franck Rousseau, Gilles Berger-Sabbatel
Motivation server LAN Access Point WLAN 802.11b 1 Mb/s rate 11 Mb/s rate A 11 Mb/s rate B A nominal rate (Mb/s) throughput (Mb/s) A B A B 11 11 3.09 3.36 11 1 0.76 0.76 2
One slow host, one fast T f T s T f T s fast slow fast slow t CSMA/CA equal access probability, not equal share Throughput when R = 11 Mb/s, r = 1 Mb/s Fast: (1/11)/(1/11 + 1) * 0.7 * 11 Mb/s = 0.64 Mb/s Slow: (1)/(1/11 + 1) * 0.7 * 1 Mb/s = 0.64 Mb/s 3
Overview Introduction to 802.11 Single host performance Contention overhead Hosts with different rates Performance measurements Conclusion 4
802.11b 802.11b: wireless LAN nominal bit rate of 11 Mb/s, degraded to 5.5, 2, 1 Mb/s shared radio channel MAC layer DCF (Distributed Coordination Function) access method - CSMA/CA (Carrier Sense Multiple Access/Collision Avoidance) similar to Ethernet, no collision detection PCF (Point Coordination Function) polling, optional 5
802.11 Inter-frame spacing SIFS (Short Inter Frame Spacing) for ACK, CTS, polling response PIFS (PCF IFS) for time-bounded service using PCF DIFS (DCF IFS) for contention access DIFS DIFS medium busy PIFS SIFS contention next frame direct access if medium is free? DIFS t 6
802.11 DCF - CSMA/CA DIFS DIFS contention window (randomized back-off mechanism) medium busy direct access if medium is free? DIFS slot time next frame t Channel idle during DIFS, transmit frame If the medium is busy, wait for a free DIFS and a random back-off time (collision avoidance, multiple of slot-time) If another station uses the medium during the back-off time of the station, the back-off timer stops (fairness) 7
802.11b - transmission DIFS T SIFS data ACK t PLCP-p PLCP-h MAC frame PLCP-p PLCP-h ACK t pr t tr t pr t ack DIFS = 50?s, SIFS = 10?s t ack = 10?s, if 11 Mb/s and ACK frame size 112 bits PLCP (Physical Layer Convergence Protocol) preamble and header: t pr = 192?s, if 1 Mb/s, t pr = 96?s, if 11 Mb/s 270?s for any payload, time to transmit 370 B at 11 Mb/s 8
Single host performance Useful throughput proportion t tr /T T = t tr + t ov t ov = DIFS + t pr + SIFS + t pr + t ack Useful throughput proportion if 1500 B of data 0.70 throughput of 7.74 Mb/s measured at UDP layer 5.08 Mb/s 9
802.11 - contention DIFS DIFS DIFS DIFS busy station 1 busy station 2 station 3 busy exponential backoff busy station 4 collision busy station 5 busy medium busy elapsed backoff time residual backoff time t packet arrival at MAC shortest backoff time 10
Contention DIFS T(N) SLOT SIFS data ACK backoff time t Backoff time - random interval Contention Window: uniform distribution [0, CW] * SLOT CW: CW min = 31, CW max = 1023 SLOT = 20?s T(N) should also include time wasted in collisions 11
Multiple host performance Useful throughput proportion t tr /T(N) T(N) = t tr + t ov + t cont (N) Proportion of collisions collision if the chosen backoff interval is equal to the residual backoff interval of at least one host approximation: same backoff interval and no multiple collisions P c (N)? 1 - (1-1/CW min ) N-1 12
Proportion of collisions 13
Multiple host performance Contention overhead proportion of collisions P c (N) mean wait interval of one station SLOT * CW min /2 N stations, mean wait interval per transmission SLOT * CW min /2/N P c (N) transmissions experience a collision - backoff interval is doubled t cont (N)? SLOT*[CW min /2/N*(1-P c (N)) + P c (N)*CW min /N] t cont (N)? SLOT * [1 + P c (N)]/2N * CW min 14
Throughput (simulation) 15
Hosts of different rates N - 1 fast hosts rate R = 11 Mb/s 1 slow host rate r = 5.5, 2, or 1 Mb/s Transmission time of a fast host T f = s d /R + t ovr + t cont s d - data frame size Transmission time of a slow host T s = s d /r + t ovr + t cont 16
One slow host, one fast T f T s T f T s fast slow fast slow t CSMA/CA equal access probability, not equal share Throughput when R = 11 Mb/s, r = 1 Mb/s Fast: (1/11)/(1/11 + 1) * 0.7 * 11 Mb/s = 0.64 Mb/s Slow: (1)/(1/11 + 1) * 0.7 * 1 Mb/s = 0.64 Mb/s 17
Performance of a fast host Channel utilization by a fast host U f = T f /[(N-1)*T f + T s + P c (N)*t jam *N] t jam - time spent in collisions Throughput of a fast host X f = U f * s d /R / T f * R X f = s d /[(N-1)*T f + T s + P c (N)*t jam *N] 18
Performance of a slow host Channel utilization by a slow host U s = T s /[(N-1)*T f + T s + P c (N)*t jam *N] t jam - time spent in collisions Throughput of a slow host X s = U s * s d /r / T s * r Final result X f = X s = X 19
Throughput (simulation) 20
Throughput (simulation) 21
Application scenarios UDP traffic N hosts that send data over UDP, no transport layer ACKs data packets are the only traffic generated at MAC TCP traffic N-1 hosts that send data over TCP Access Point sends TCP ACKs to hosts at the rate of the sending host (R or r) short packets, every other TCP data segment total of N hosts competing for the radio channel 22
Measured throughput, UDP, 2 hosts, N=2 23
Measured throughput, TCP, 2 hosts, N=3 24
Measured throughput Rate Throughput Bali Bali Marie Milos Kea Eq. Collisions Meas. Eq. P c U D P 11 1.71 1.41 1.8 1.41 1.64 0.1 0.091 1 0.69 0.47 0.63 0.49 0.56 0.1 0.091 T C P 11 1.15 0.92 1.21 1.02 1.63 0.09 0.12 1 0.56 0.32 0.41 0.27 0.53 0.09 0.12 25
Mobile host, UDP, 2 hosts, N=2 26
Mobile host, TCP, 2 hosts, N=3 27
Conclusion Analysis of the overhead of 802.11b DCF important overhead, useful 70% simple expressions that fit measurements Hosts with different rates analytical explanation of the phenomenon Comparison with measurements enforced lower rate and real mobility Strong influence of a slow host on overall performance Other factors alleviate the problem TCP congestion control 28