sprout: stochastic forecasts improve performance in...
TRANSCRIPT
Sprout: Stochastic Forecasts ImprovePerformance in Cellular Networks
Keith Winstein, Anirudh Sivaraman, Hari Balakrishnan
6.829 Fall 2018
October 25, 2018
Cellular Network Architecture
http:
//image.slidesharecdn.com/introductiontomobilecorenetworkpublic-130325020435-phpapp01/95/
introduction-to-mobile-core-network-13-638.jpg
Keith Winstein, Anirudh Sivaraman, Hari Balakrishnan 6.829 Fall 2018
Sprout: Stochastic Forecasts Improve Performance in Cellular Networks
Wireless: Highly Variable Rates
0
500
1000
1500
2000
0:00 0:30 1:00 1:30
thro
ugh
pu
t(k
bp
s)
Verizon LTE uplink throughput
Keith Winstein, Anirudh Sivaraman, Hari Balakrishnan 6.829 Fall 2018
Sprout: Stochastic Forecasts Improve Performance in Cellular Networks
Awful Delays: The Too-Reliable Network
6.02 Fall 2012 Lecture 21, Slide #16 http://nms.csail.mit.edu/papers/index.php?detail=208
Verizon LTE TCP RTT (Cambridge, MA)
6.02 Fall 2012 Lecture 21, Slide #17 17
Round-trip delay
Del
ay
(millise
con
ds)
AT&T Wireless on iPhone 3G
mu: 1697.2 ms stddev: 2346.5 ms min:155.6 ms max:12126.6 ms
Time (s)
RTT (m
s)
On the Acela Amtrak train (BOS à NY)
Keith Winstein, Anirudh Sivaraman, Hari Balakrishnan 6.829 Fall 2018
Sprout: Stochastic Forecasts Improve Performance in Cellular Networks
Highly Variable Signal-to-Noise Ratio (SNR)
0
10
20
30
0 1 2 3 4 5 6 7 8
Mea
sure
d S
NR
(d
B)
Time (s)
0 10 20 30
0 50 100 150 200 250 Time (ms)
Shaded area detail
10-7
10-5
10-3
10-1
0 1 2 3 4 5 6 7 8
Bit
err
or
rate
Time (s)
Slow walk (indoors, 2.4 GHz)
M. Vutukuru, K. Jamieson, HB, “Cross-Layer Wireless Bit Rate Adaptation”, SIGCOMM 2009.
Keith Winstein, Anirudh Sivaraman, Hari Balakrishnan 6.829 Fall 2018
Sprout: Stochastic Forecasts Improve Performance in Cellular Networks
Packet Scheduling
I What is the “fair” way to schedule wireless users?
I Case 1: User i has a rate ri packets/s.
I Case 2: ri (t) is a function of time.
Keith Winstein, Anirudh Sivaraman, Hari Balakrishnan 6.829 Fall 2018
Sprout: Stochastic Forecasts Improve Performance in Cellular Networks
Packet Scheduling
I Cellular networks maintain per-device queues because it allowsthe base station to trade-off between efficiency and fairness.
I Scheduling depends on the state of the channel to a user.
Keith Winstein, Anirudh Sivaraman, Hari Balakrishnan 6.829 Fall 2018
Sprout: Stochastic Forecasts Improve Performance in Cellular Networks
Proportional Fair Wireless Scheduler
I Let ri (t) be the current (“instantaneous”) rate and let Ri (t)be the value of time t of an EWMA-filtered average:
Ri (t + 1) = (1− α)Ri (t) + αri (t) if i = j ,
andRi (t + 1) = (1− α)Ri (t) otherwise
I Select j that maximizes ri (t)Ri (t)
.
Keith Winstein, Anirudh Sivaraman, Hari Balakrishnan 6.829 Fall 2018
Sprout: Stochastic Forecasts Improve Performance in Cellular Networks
Video & Conferencing over Wireless
I We measured cellular networks while driving:
I Verizon LTEI Verizon 3G (1xEV-DO)I AT&T LTEI T-Mobile 3G (UMTS)
I Then ran apps across emulated network:
I Skype (Windows 7)I Google Hangout (Chrome on Windows 7)I Apple Facetime (OS X)
Keith Winstein, Anirudh Sivaraman, Hari Balakrishnan 6.829 Fall 2018
Sprout: Stochastic Forecasts Improve Performance in Cellular Networks
Characterizing Performance
0
500
1000
1500
2000
2500
3000
3500
300500100020003000500010000
Th
rou
gh
pu
t(k
bp
s)
Self-inflicted delay (ms)
Skype
Better
Keith Winstein, Anirudh Sivaraman, Hari Balakrishnan 6.829 Fall 2018
Sprout: Stochastic Forecasts Improve Performance in Cellular Networks
Why is Wireless Videoconferencing So Bad?
I Today’s protocols react to congestion signalsI Packet lossI Increase in round-trip time
I Feedback comes too late to help
I The killer: self-inflicted queueing delay
I Any overshoot means a queue filling up with packets
Keith Winstein, Anirudh Sivaraman, Hari Balakrishnan 6.829 Fall 2018
Sprout: Stochastic Forecasts Improve Performance in Cellular Networks
Sprout’s Goal
I Maximize throughput, but
I Bounded risk of delay > D (e.g., D = 100 ms).
Keith Winstein, Anirudh Sivaraman, Hari Balakrishnan 6.829 Fall 2018
Sprout: Stochastic Forecasts Improve Performance in Cellular Networks
Bounded Risk of Delay
I Infer rate from interarrival distribution
I Predict future link rate and convey prediction to sender
I Don’t wait for congestion
I Control: Send as fast as possible, but require:
I 95% probability all packets will arrive within 100 ms
Keith Winstein, Anirudh Sivaraman, Hari Balakrishnan 6.829 Fall 2018
Sprout: Stochastic Forecasts Improve Performance in Cellular Networks
Infer Rate from Interarrival Process
0.0001
0.001
0.01
0.1
1
10
100
(< 0.5)
39041 10 100 1000
Per
cen
tin
tera
rriv
als
interarrival time (ms)
t−3.27
Verizon LTE. Stationary phone. 3 am... “Flicker noise” process.Keith Winstein, Anirudh Sivaraman, Hari Balakrishnan 6.829 Fall 2018
Sprout: Stochastic Forecasts Improve Performance in Cellular Networks
Predict Future Link Rate
I Model rate evolution as random walk (Brownian motion)
I Count packets in every 20 ms tick
I Use Bayesian updating to make cautious forecast(5th percentile cumulative packets)
I Receiver makes forecast; tells sender in ACK
Keith Winstein, Anirudh Sivaraman, Hari Balakrishnan 6.829 Fall 2018
Sprout: Stochastic Forecasts Improve Performance in Cellular Networks
Network Model
Sender Queue Receiver
Poisson process
Rate λ controls
λ
σ
Brownian motion
λz
If in an outage,
drains queue
Poisson process
of σ√t varies λ λz is escape rate.
Keith Winstein, Anirudh Sivaraman, Hari Balakrishnan 6.829 Fall 2018
Sprout: Stochastic Forecasts Improve Performance in Cellular Networks
Bayesian Update
I Discrete set of possible rates, λ (e.g., 0 to 1000 packets/s)
I Initially, each λ is equi-probable
I Each tick (τ seconds), if we receive k bytes, run update step:
Pnew(λ = x)←Pold(λ = x) · (xτ)
k
k! e−(xτ)
Z,
where Z ensures that the probabilities sum to 1
I Pre-compute most of the math
Keith Winstein, Anirudh Sivaraman, Hari Balakrishnan 6.829 Fall 2018
Sprout: Stochastic Forecasts Improve Performance in Cellular Networks
The Cautious Forecast
I Receiver has “cloud” of current link speeds
I For eight ticks in the future:
I Predict future link rate by simulating Brownian motion of ratesI Find 5th percentile of cumulative packets
I Send forecast to sender on ACKs
I Most of the math is pre-computed
Keith Winstein, Anirudh Sivaraman, Hari Balakrishnan 6.829 Fall 2018
Sprout: Stochastic Forecasts Improve Performance in Cellular Networks
0
1000
2000
3000
4000
5000
6000
7000
8000
100200300500100020005000
Th
rou
gh
pu
t(k
bp
s)
Self-inflicted delay (ms)
Verizon LTE Downlink
SkypeFacetime
Google Hangout
Bette
r
Keith Winstein, Anirudh Sivaraman, Hari Balakrishnan 6.829 Fall 2018
Sprout: Stochastic Forecasts Improve Performance in Cellular Networks
0
1000
2000
3000
4000
5000
6000
7000
8000
100200300500100020005000
Th
rou
gh
pu
t(k
bp
s)
Self-inflicted delay (ms)
Verizon LTE Downlink
Compound TCP
LEDBAT
Cubic
SkypeFacetime
Google Hangout
Vegas
Bette
r
Keith Winstein, Anirudh Sivaraman, Hari Balakrishnan 6.829 Fall 2018
Sprout: Stochastic Forecasts Improve Performance in Cellular Networks
0
1000
2000
3000
4000
5000
6000
7000
8000
100200300500100020005000
Th
rou
gh
pu
t(k
bp
s)
Self-inflicted delay (ms)
Verizon LTE Downlink
Compound TCP
LEDBAT
Cubic
SkypeFacetime
Google Hangout
Vegas
Sprout
Bette
r
Keith Winstein, Anirudh Sivaraman, Hari Balakrishnan 6.829 Fall 2018
Sprout: Stochastic Forecasts Improve Performance in Cellular Networks
0
1000
2000
3000
4000
5000
6000
7000
8000
100200300500100020005000
Th
rou
gh
pu
t(k
bp
s)
Self-inflicted delay (ms)
Verizon LTE Downlink
Sprout-EWMA
Compound TCP
LEDBAT
Cubic
SkypeFacetime
Google Hangout
Vegas
Sprout
Bette
r
Keith Winstein, Anirudh Sivaraman, Hari Balakrishnan 6.829 Fall 2018
Sprout: Stochastic Forecasts Improve Performance in Cellular Networks
0
1000
2000
3000
4000
5000
300500100020003000500010000
Th
rou
gh
pu
t(k
bp
s)
Self-inflicted delay (ms)
Verizon LTE Uplink
Sprout-EWMA
Compound TCP
LEDBAT
Cubic
Skype Facetime
Google Hangout
Vegas
Sprout
Keith Winstein, Anirudh Sivaraman, Hari Balakrishnan 6.829 Fall 2018
Sprout: Stochastic Forecasts Improve Performance in Cellular Networks
150
200
250
300
350
400
450
500
550
200030005000100002000050000100000
Th
rou
gh
pu
t(k
bp
s)
Self-inflicted delay (ms)
Verizon 3G (1xEV-DO) Downlink
Sprout-EWMACompound TCP
LEDBAT
Cubic
Skype
FacetimeGoogle Hangout
Vegas
Sprout
Keith Winstein, Anirudh Sivaraman, Hari Balakrishnan 6.829 Fall 2018
Sprout: Stochastic Forecasts Improve Performance in Cellular Networks
200
300
400
500
600
200300500100020003000500010000
Th
rou
gh
pu
t(k
bp
s)
Self-inflicted delay (ms)
Verizon 3G (1xEV-DO) Uplink
Sprout-EWMA
Compound TCP
LEDBAT
Cubic
Skype
Facetime
Google Hangout
Vegas
Sprout
Keith Winstein, Anirudh Sivaraman, Hari Balakrishnan 6.829 Fall 2018
Sprout: Stochastic Forecasts Improve Performance in Cellular Networks
500
1000
1500
2000
2500
3000
3500
4000
3050100200300500100020005000
Th
rou
gh
pu
t(k
bp
s)
Self-inflicted delay (ms)
AT&T LTE Downlink
Sprout-EWMA
Compound TCPLEDBATCubic
Skype
Facetime
Google Hangout
Vegas
Sprout
Keith Winstein, Anirudh Sivaraman, Hari Balakrishnan 6.829 Fall 2018
Sprout: Stochastic Forecasts Improve Performance in Cellular Networks
200
300
400
500
600
700
800
900
2003005001000200050001000020000
Th
rou
gh
pu
t(k
bp
s)
Self-inflicted delay (ms)
AT&T LTE Uplink
Sprout-EWMA
Compound TCP
LEDBATCubic
SkypeFacetime
Google Hangout
Vegas
Sprout
Keith Winstein, Anirudh Sivaraman, Hari Balakrishnan 6.829 Fall 2018
Sprout: Stochastic Forecasts Improve Performance in Cellular Networks
200
400
600
800
1000
1200
1400
1600
3005001000200030005000
Th
rou
gh
pu
t(k
bp
s)
Self-inflicted delay (ms)
T-Mobile 3G (UMTS) Downlink
Sprout-EWMA
Compound TCPLEDBAT
Cubic
SkypeFacetime
Google Hangout
Vegas
Sprout
Keith Winstein, Anirudh Sivaraman, Hari Balakrishnan 6.829 Fall 2018
Sprout: Stochastic Forecasts Improve Performance in Cellular Networks
200
300
400
500
600
700
800
900
1000
2003005001000200050001000030000
Th
rou
gh
pu
t(k
bp
s)
Self-inflicted delay (ms)
T-Mobile 3G (UMTS) Uplink
Sprout-EWMA
Compound TCP
LEDBAT
Cubic
Skype
Facetime
Google Hangout
Vegas
Sprout
Keith Winstein, Anirudh Sivaraman, Hari Balakrishnan 6.829 Fall 2018
Sprout: Stochastic Forecasts Improve Performance in Cellular Networks
Overall results
Sprout vs. Avg. speedup Delay reduction
Skype 2.2× 7.9×Hangout 4.4× 7.2×Facetime 1.9× 8.7×Compound 1.3× 4.8×TCP Vegas 1.1× 2.1×LEDBAT Same 2.8×Cubic 0.91× 79×
Keith Winstein, Anirudh Sivaraman, Hari Balakrishnan 6.829 Fall 2018
Sprout: Stochastic Forecasts Improve Performance in Cellular Networks
Varying risk tolerance
200
300
400
500
600
700
800
900
1000
2003005001000300050001000030000
Th
rou
gh
pu
t(k
bp
s)
Self-inflicted delay (ms)
Compound TCP
LEDBAT
Cubic
Skype
Facetime
Google Hangout
Vegas
Sprout (5%)
25%
50%
75%
95%
T-Mobile 3G (UMTS) Uplink
Keith Winstein, Anirudh Sivaraman, Hari Balakrishnan 6.829 Fall 2018
Sprout: Stochastic Forecasts Improve Performance in Cellular Networks
Competes with Active Queue Mgmt (AQM)even though end-to-end
0
20
40
60
80
100
2003005001000300050001000030000
Uti
lizat
ion
(per
cen
t)
Self-inflicted delay (ms)
Sprout
Sprout-EWMA
Cubic
Cubic-over-CoDel
Keith Winstein, Anirudh Sivaraman, Hari Balakrishnan 6.829 Fall 2018
Sprout: Stochastic Forecasts Improve Performance in Cellular Networks
Replication by Stanford students(February–March 2013)
I Alterman & Quach reproduced a few of our measurements
I http://ReproducingNetworkResearch.wordpress.com/2013/03/12/1216/
I Won best project award in Stanford networking class!
Keith Winstein, Anirudh Sivaraman, Hari Balakrishnan 6.829 Fall 2018
Sprout: Stochastic Forecasts Improve Performance in Cellular Networks
M.I.T. 6.829 contest (March–April 2013)
I Turnkey network emulator, evaluation
I Sender, receiver run in Linux containers
I Leaderboards
Keith Winstein, Anirudh Sivaraman, Hari Balakrishnan 6.829 Fall 2018
Sprout: Stochastic Forecasts Improve Performance in Cellular Networks
Baseline
Keith Winstein, Anirudh Sivaraman, Hari Balakrishnan 6.829 Fall 2018
Sprout: Stochastic Forecasts Improve Performance in Cellular Networks
Land of 3,000 student protocols
Keith Winstein, Anirudh Sivaraman, Hari Balakrishnan 6.829 Fall 2018
Sprout: Stochastic Forecasts Improve Performance in Cellular Networks
Sprout is on the frontier
Keith Winstein, Anirudh Sivaraman, Hari Balakrishnan 6.829 Fall 2018
Sprout: Stochastic Forecasts Improve Performance in Cellular Networks
Limitations
I Stochastic model has not been tuned
I Only evaluated long-running flows.
I All testing data from Boston.
I User should wrap competing flows inside Sprout.
I Designed for cellular link with per-user queues
I Fortunately, cells have per-device queues. . .I . . . but Wi-Fi generally doesn’t.
I What about when the cell link isn’t the bottleneck?
Keith Winstein, Anirudh Sivaraman, Hari Balakrishnan 6.829 Fall 2018
Sprout: Stochastic Forecasts Improve Performance in Cellular Networks
Thoughts on Methods
I Pick a model, any model.
I All models are (at some level) wrong, but they help anyway!
I See if it lands on the throughput-delay frontier.*
* (On a large set of real network paths or newly-collectedtraces.)
Keith Winstein, Anirudh Sivaraman, Hari Balakrishnan 6.829 Fall 2018
Sprout: Stochastic Forecasts Improve Performance in Cellular Networks
Conclusion: High Throughput + Controlled DelayAchievable over Variable Wireless Networks
I Infer link speed from interarrival distribution
I Predict future link speed
I Control risk of large delay with cautious forecast
I Yields 2–4× throughput of Skype, Facetime, Hangout
I Achieves 7–9× reduction in self-inflicted delay
I Matches active queue management without router changes
I Code and directions at http://alfalfa.mit.edu
Keith Winstein, Anirudh Sivaraman, Hari Balakrishnan 6.829 Fall 2018
Sprout: Stochastic Forecasts Improve Performance in Cellular Networks