lecture 16: qos and 802 - home | computer...
TRANSCRIPT
1
CSE 123: Computer Networks
Chris Kanich
Lecture 16:
QoS and 802.11
Prj2 due for full credit 11:59pm
Lecture 16 Overview
QoS followup: Packet Scheduling
Fair Queueing
Fluid Flow
802.11 Wireless
CSMA/CA
Hidden Terminals
RTS/CTS
2 CSE 123 – Lecture 16: QoS and 802.11
So far we’ve done flow-based traffic policing
Limit the rate of one flow regardless the load in the network
In general, need scheduling
Dynamically allocate resources when multiple flows compete
Give each “flow” (or traffic class) own queue (at least
theoretically)
Weighted fair queuing
Proportional share scheduling
Schedule round-robins among queues in proportion to some
weight parameter
Scheduling
CSE 123 – Lecture 15: Routers and QoS 3
2
Flow 1
Flow 2
Flow n
I/P O/P
(Weighted) Fair Queuing
CSE 123 – Lecture 15: Routers and QoS 4
Maintain a queue for each flow
What is a flow?
Implements max-min fairness: each flow receives
min(ri, f) , where
ri – flow arrival rate
f – link fair rate (see next slide)
Weighted Fair Queuing (WFQ) – associate a weight
with each flow
Fair Queuing
CSE 123 – Lecture 15: Routers and QoS 5
If link congested, compute f such that
8
6
2
4 4
2
f = 4: min(8, 4) = 4
min(6, 4) = 4
min(2, 4) = 2
10
Fair Rate Computation
CSE 123 – Lecture 15: Routers and QoS 6
3
TCP vs. UDP
CSE 123 – Lecture 15: Routers and QoS 7
TCP vs. UDP w/Fair Queuing
CSE 123 – Lecture 15: Routers and QoS 8
Associate a weight wi with each flow i
If link congested, compute f such that
8
6
2
4 4
2
f = 2: min(8, 2*3) = 6
min(6, 2*1) = 2
min(2, 2*1) = 2
10 (w1 = 3)
(w2 = 1)
(w3 = 1)
If Σk wk <= C, flow i is guaranteed to be allocated a rate >= wi
Flow i is guaranteed to be allocated a rate >= wi*C/(Σk wk)
Another Example
CSE 123 – Lecture 15: Routers and QoS 9
4
Flows can be served one bit at a time
WFQ can be implemented using bit-by-bit weighted
round robin
During each round from each flow that has data to send, send a
number of bits equal to the flow’s weight
Fluid Flow
CSE 123 – Lecture 15: Routers and QoS 10
0 15 2 10 4 6 8
5 1 1 1 1 1
Orange flow has packets
backlogged between time 0
and 10
Other flows have packets
continuously backlogged
All packets have the same
size
flows
link
weights
Fluid Flow Example
CSE 123 – Lecture 15: Routers and QoS 11
Packet (Real) system: packet transmission cannot be
preempted. Why?
Solution: serve packets in the order in which they
would have finished being transmitted in the fluid flow
system
Packet-Based Implementation
CSE 123 – Lecture 15: Routers and QoS 12
5
0 2 10 4 6 8
0 2 10 4 6 8
Select the first packet that finishes in the fluid flow
system
Service
in fluid flow
system
Packet
system
Packet-Based Example
CSE 123 – Lecture 15: Routers and QoS 13
CSE 123 – Lecture 16: QoS and 802.11 14
Infrastructure vs. Ad hoc
infrastructure
network
ad-hoc network
AP AP
AP
wired network
AP: Access Point
CSE 123 – Lecture 16: QoS and 802.11 15
IEEE 802.11 Infrastructure
mobile terminal
access point
fixed
terminal
application
TCP
802.11 PHY
802.11 MAC
IP
802.3 MAC
802.3 PHY
application
TCP
802.3 PHY
802.3 MAC
IP
802.11 MAC
802.11 PHY
LLC
infrastructure
network
LLC LLC
6
CSE 123 – Lecture 16: QoS and 802.11 16
802.11 Frame Format
synchronization SFD signal service HEC payload
PLCP preamble PLCP header
128 16 8 8 16 variable bits
length
16
Synchronization
synch., gain setting, energy detection, frequency offset compensation
SFD (Start Frame Delimiter)
1111001110100000
Signal
data rate of the payload (0A: 1 Mbit/s DBPSK; 14: 2 Mbit/s DQPSK)
Service Length
future use, 00: 802.11 compliant payload length
HEC (Header Error Check)
protection of signal, service and length, x16+x12+x5+1
CSE 123 – Lecture 16: QoS and 802.11 17
WLAN: IEEE 802.11b
Data rate
1, 2, 5.5, 11 Mbit/s
User data rate max. approx. 6 Mbit/s
Transmission range
300m outdoor, 30m indoor
Max. data rate ~10m indoor
Frequency
Free 2.4 GHz ISM-band
CSE 123 – Lecture 16: QoS and 802.11 18
Physical Channels
US (FCC)/Canada (IC)
2400
[MHz]
2412 2483.5 2437 2462
channel 1 channel 6 channel 11
22 MHz
12 channels available for use in the US
Each channel is 22 MHz wide
Only 3 orthogonal channels
Using any others causes interference
7
CSE 123 – Lecture 16: QoS and 802.11 19
CSMA: listen before transmit:
If channel sensed idle: transmit entire pkt
If channel sensed busy, defer transmission
Persistent CSMA: retry immediately with
probability p when channel becomes idle
(may cause instability)
Non-persistent CSMA: retry after random
interval
Carrier Sense Multiple Access
CSE 123 – Lecture 16: QoS and 802.11 20
A B C
Hidden Terminal Problem
B can communicate with both A and C
A and C cannot hear each other
Problem
When A transmits to B, C cannot detect the transmission using the
carrier sense mechanism
If C transmits, collision will occur at node B
Solution
Hidden sender C needs to defer
CSE 123 – Lecture 16: QoS and 802.11 21
CSMA/CA
Cannot detect collision w/half-duplex radios
Wireless MAC protocols often use collision avoidance techniques, in conjunction with a (physical or virtual) carrier sense mechanism
Collision avoidance Nodes negotiate to reserve the channel.
Once channel becomes idle, the node waits for a randomly chosen duration before attempting to transmit.
8
CSE 123 – Lecture 16: QoS and 802.11 22
A B C
When A wants to send a packet to B, A first sends a
Request-to-Send (RTS) to B
On receiving RTS, B responds by sending Clear-to-
Send (CTS), provided that A is able to receive the
packet
When C overhears a CTS, it keeps quiet for the
duration of the transfer
Transfer duration is included in both RTS and CTS
RTS/CTS (MACA)
CSE 123 – Lecture 16: QoS and 802.11 23
Backoff Interval
Problem: With many contending nodes, RTS
packets will frequently collide
Solution: When transmitting a packet, choose a
backoff interval in the range [0, CW]
CW is contention window
Wait the length of the interval when medium is idle
Count-down is suspended if medium becomes busy
Transmit when backoff interval reaches 0
Need to adjust CW as contention varies
CSE 123 – Lecture 16: QoS and 802.11 24
Non-symmetric ranges
C F A B E D
DATA
Transmit “range”
Interference
“range”
Carrier sense
range
F A
9
CSE 123 – Lecture 16: QoS and 802.11 25
802.11 MAC Modes
Distributed Coordination Function (DCF) CSMA/CA
collision avoidance via randomized “back-off“ mechanism
minimum distance between consecutive packets
ACK packet for acknowledgements (not for broadcasts)
DCF w/ RTS/CTS
Distributed Foundation Wireless MAC
avoids hidden terminal problem
Point Control Fuction (PCF) - optional
Access point polls terminals according to a list
We’re not going to discuss…
CSE 123 – Lecture 16: QoS and 802.11 26
IEEE 802.11 DCF
DCF is CSMA/CA protocol
Uses a Network Allocation Vector (NAV) to implement
collision avoidance
DCF suitable for multi-hop ad hoc networking
Optionally uses RTS/CTS exchange to avoid hidden
terminal problem
Any node overhearing a CTS cannot transmit for the duration
of the transfer
Uses ARQ to provide reliability
CSE 123 – Lecture 16: QoS and 802.11 27
C F A B E D
RTS
RTS = Request-to-Send
Pretending a circular range
IEEE 802.11
10
CSE 123 – Lecture 16: QoS and 802.11 28
C F A B E D
RTS
RTS = Request-to-Send
NAV = 10
NAV = remaining duration to keep quiet
IEEE 802.11
CSE 123 – Lecture 16: QoS and 802.11 29
C F A B E D
CTS
CTS = Clear-to-Send
IEEE 802.11
CSE 123 – Lecture 16: QoS and 802.11 30
C F A B E D
CTS
CTS = Clear-to-Send
NAV = 8
IEEE 802.11
11
CSE 123 – Lecture 16: QoS and 802.11 31
C F A B E D
DATA
•DATA packet follows CTS. Successful data reception
acknowledged using ACK.
IEEE 802.11
CSE 123 – Lecture 16: QoS and 802.11 32
C F A B E D
ACK
Reserved area
IEEE 802.11
CSE 123 – Lecture 16: QoS and 802.11 33
When a node fails to receive CTS in response to its
RTS, it increases the contention window
CW is doubled (up to an upper bound)
More collisions longer waiting time to reduce collision
When a node successfully completes a data transfer, it
restores CW to CWmin
Binary Exponential Backoff
12
CSE 123 – Lecture 16: QoS and 802.11 34
802.11 Backoffs
SIFS (Short Inter Frame Spacing)
highest priority, for ACK, CTS, polling response
PIFS (PCF IFS)
medium priority, for time-bounded service using PCF
DIFS (DCF, Distributed Coordination Function IFS)
lowest priority, for asynchronous data service
t
medium busy SIFS
PIFS
DIFS DIFS
next frame contention
direct access if
medium is free DIFS
CSE 123 – Lecture 16: QoS and 802.11 35
DCF Example
data
wait
B1 = 5
B2 = 15
B1 = 25
B2 = 20
data
wait
B1 and B2 are backoff intervals
at nodes 1 and 2 cw = 31
B2 = 10
CSE 123 – Lecture 16: QoS and 802.11 36
Fragmentation
t
SIFS
DIFS
data
ACK1
other
stations
receiver
sender frag1
DIFS
contention
RTS
CTS SIFS SIFS
NAV (RTS) NAV (CTS)
NAV (frag1) NAV (ACK1)
SIFS ACK2
frag2
SIFS