Title: Understanding TCP fairness over Wireless LAN IEEE INFOCOM 2003 Saar Pilosof, Ramachandran Ramjee, Danny Raz, Yuval Shavitt, Prasun Sinha
1Understanding TCP fairness over Wireless LANIEEE
INFOCOM 2003Saar Pilosof, Ramachandran Ramjee,
Danny Raz, Yuval Shavitt, Prasun Sinha
2Agenda
- Introduction
- Problem Overview
- Simulation Study
- Modeling TCP Access
- Our Solution
- Related Work
- Conclusion Discussion
3Introduction A typical 802.11 installation
4IntroductionScenarios (Assumption)
- All senders or receivers Share bandwidth
equally. - One sender and two receivers Sender get half BW,
and receivers share other half.
5Problem OverviewReal Experiment Setup
6Problem OverviewReal Experiment Setup
- Ru Average TCP uplink throughput
- Rd Average TCP downlink throughput
- Ru/Rd Ratio
- MTU Maximum Transmission Unit Varied
- Background UDP to reduce buffer available to TCP
flows varied by packet size and arrival interval
7Problem OverviewResult
8Problem OverviewResult
- In basic case, Ru/Rd 1.44
- Does commercial system give high priority to
downstream? Since most applications involve
download rather than upload. - With UDP flows, ratio Ru/Rd increase
- With smaller MTU, ratio reaches 8
9Problem OverviewFurther investigation with
sniffers
- Upstream TCP window size reaches its maximum in
all cases - Downstream TCP window size changes
10Problem OverviewFurther investigation with
sniffers
11Problem OverviewConcerns
- Wireless link interference
- Base station buffer size
- Implementation details of 802.11 MAC layer
- Difficult to vary and isolate parameters, and
trace their impacts
12Simulation StudyExperiment 1 1 TCP sender and 1
TCP receiver
- TCP receiver window size w 42
- MTU 1500
- Base station buffer size B 6 85 packets
- Number of ACK per data packet ? 1
- Data packet size 1024 bytes
- 5 runs, each lasts 100 second
- Nodes dont move
13Simulation Study Experiment 1 Observation
14Simulation Study Experiment 1 Observation
- Region 1 over 84, ratio is 1
- Region 2 42 to 84, ratio decreases from 10 to 1
- Region 3 6 to 42, ratio varies between 9 and 12
- Region 4 below 6, data points wide spread (too
noisy)
15Simulation Study Experiment 1 More observations
16Simulation Study Experiment 1 More observations
- RTT increases monotonically with base station
buffer size w/o significant rate changes - Data packet loss rate is always higher than ACK
loss rate, not linear with base station buffer
size
17Simulation Study Experiment 1 Further
investigation
18Simulation Study Experiment 1 Further
investigation
- When buffer size is smaller than 42, sharing
result is 110 - When buffer size becomes larger, sharing ratio
increases - When buffer size is larger than 84, Base Packet
is equal to the difference between Down ACK and
the Up Packet
19Simulation StudyExperiment 2 Multiple flows
- Case 1 One upstream and multiple downstream
flows - Case 2 Equal number of multiple upstream and
downstream flows - Base station buffer size is 100 packets
- 5 runs, each lasts 100 seconds
20Simulation Study Experiment 2 Observation
21Simulation Study Experiment 2 Observation
- Case 1
- Ratio is linear
- All downstream flows share bandwidth equally
- Total throughput stay stable
- Case 2
- Average ratio goes up to 800, since upstream
flows ACK clutter base station buffer - Upstream flows maintain maximum window size
- Downstream flows struggle with a window of 0-2
packets
22Modeling TCP Access Scenario 1 One upstream
and one downstream flow
- Base station buffer size B
- TCP receiver window size w
- All packet loss due to buffer overflows at base
station
23Modeling TCP Access Scenario 1 Analysis
- Upstream flow window behavior
- When sender window is large, a loss of an ACK has
no effect on the window size due to TCP
cumulative acknowledgement nature. - Sender window will reach w.
24Modeling TCP Access Scenario 1 Analysis
- Downstream flow window behavior
- It changes depending on B and w, since loss of
data packet will cause sender half window size. - If B ? (? 1)w, all packets have room in base
station buffer, no drops. - Assume BS buffer is full of ?w ACKs.(?) If B ?
(?1)w, B - ?w buffer available for downstream.
Sender window will vary between (B - ?w)/2 and B
- ?w, average window size is 3(B - ?w)/4.
(Simplified) - Ratio R 4w/(3(B - ?w))
25Modeling TCP Access Scenario 1 Further Analysis
- Using bounded size queuing system (M/M/1/K)
- Arrival rate Rd ?Ru , ? 1.
- The probability of K packets in a buffer in a
stable state, Pk (1-?) ?k/(1- ?k1) (1) - ? is ratio between arrival rate and service rate,
- ? (Rd ?Ru)/ Ru 1R, where R Rd/Ru (2)
- Drop rate approximate to p (1BR)/(B1) (3)
- Using Rd sqrt(3?/(2p))/RTTd, and Ruw/RTTu
- R RTTu/RTTdsqrt(3?/(2w2p)) (4)
26Modeling TCP Access Scenario 1 Further Analysis
- Using (3) and (4), We get (1BR)/(B1)
3/(2w2R2) - Finally
- Using 1B ? B and 1BR ? BR, R 1/10.56, it
gives an approximation for region 6 to 42.
27Modeling TCP Access Scenario 1 Further Analysis
28Modeling TCP Access Scenario 1 Further Analysis
- When B gt ?w and only loss is due to buffer
overflow, window size is composed from a fixed
part B - ?w, and a part of interaction with
acknowledgements in the BS buffer. - Effective average window size is sqrt(3?/(2p))
3(B - ?w)/4 - RRTTu/(wRTTd)sqrt(3?/(2p))3(B-?w)/4 (6)
- It gives an approximation to region 42 to 85.
- When w42, it matches with Eq. 4
29Modeling TCP Access Scenario 1 Validation
- TCP doesnt provide a nice arrival behavior like
M/M/1/K
30Modeling TCP Access Scenario 2 Small Buffer
- Upstream flow with small buffer size, using
discrete time Markov chain - State i represents a state where TCP window size
is 2i - On state i, go to state 0 if a timeout occurs
with probability p2i - Otherwise double the window size and move into
state i1 with probability 1- p2i - With ns2, the upstream flow always end up with
maximum window size
31Modeling TCP Access Scenario 3 Multiple Flows
- From eq. 1, ? (Rd nRu)/ Ru 1nR (7)
- Drop rate, p (1nBR)/(B1) (8)
- Rsqrt(3?/(2nw2p))3(B-?w)/(4nw) (9)
- It fits figure 6 very well!
32Modeling TCP Access Scenario 3 Multiple Flows
33Our solution
- Separately queue for TCP data and ACK packets at
base station - Doesnt wok - Fake duplicate ACK packets or discard data
packets to force TCP to reduce the upstream
window size Waste BW - Using advertised receiver window field in the ACK
packets towards TCP sender, BS manipulates the
receiver window
34Our solution Solution 3
- Keep a counter for numbering current TCP flow in
the system - If n flows in system, BS set receiver window to
?B/n? - ? Web traffic, bursty flow, UDP
- ! An XCP way
35Our solutionA simulation for solution 3
36Related Work
- Lu et al. 2 first identified the problem under
a UDP model. They proposed a centralized
scheduling algorithm performed at BS. - Nandagopal et al. 3 suggests a fairness model
that identify the different node fairness and
flow fairness. - Research 9 suggests employ BW reservation over
MA channels to support QoS. - Sobrinho and Krishnakumar 10 suggests
blackburst to find the the real-time sender with
longest waiting time( and thus the highest
priority).
37Related Work
- Deng and Chang 1 suggested to change the
backoff period according to a station priority.
The lower the priority the higher is the maximum
backoff period a station can draw. - Berry et al. 11 follower the line and use two
distinct backoff periods for two priority
classes. - Vaidya et al. 4 suggests a distributed
algorithm that calculates the backoff period for
the stations that resulted access to the channel
will closely match the Self-Clocked Fair Queueing
scheduling. - Ada and Castelluccia suggests three differential
mechanism based on scaling of the congestion
window, modifying the IFSs, and changing the
maximum frame length.
38Conclusion Discussion
- Buffer size at base station plays a key role in
the observed unfairness. - Based on simulation, the unfairness in TCP
throughput ration could be as high as 800. - Using bounded size queuing system (M/M/1/K),
authors explained TCPs behavior and interaction
with MAC layer. - The analysis identified four regions of
unfairness that depend on the buffer availability
at base station. - Proposed solution using advertised window
manipulated by base station alleviates the
problem in simulation and testbed.
39Conclusion Discussion
- Open discussion
- Channel losses
- TCP with different RTT
- Providing higher share of the media to the base
station - Interaction with IPSec