proteus: network performance forecast for real- time, interactive mobile applications qiang xu*...
TRANSCRIPT
![Page 1: PROTEUS: Network Performance Forecast for Real- Time, Interactive Mobile Applications Qiang Xu* Sanjeev Mehrotra# Z. Morley Mao* Jin Li# *University of](https://reader036.vdocuments.us/reader036/viewer/2022062301/5697bfc81a28abf838ca892a/html5/thumbnails/1.jpg)
PROTEUS: Network Performance Forecast for Real-Time, Interactive Mobile
Applications
Qiang Xu* Sanjeev Mehrotra# Z. Morley Mao* Jin Li#
*University of Michigan#Microsoft Research
![Page 2: PROTEUS: Network Performance Forecast for Real- Time, Interactive Mobile Applications Qiang Xu* Sanjeev Mehrotra# Z. Morley Mao* Jin Li# *University of](https://reader036.vdocuments.us/reader036/viewer/2022062301/5697bfc81a28abf838ca892a/html5/thumbnails/2.jpg)
Real-time, interactive apps enrich mobile user experience
Qiang Xu 2
VoIP
Video conferencing
Online gaming
Head Up Display (HUD)
MobiSys’13
![Page 3: PROTEUS: Network Performance Forecast for Real- Time, Interactive Mobile Applications Qiang Xu* Sanjeev Mehrotra# Z. Morley Mao* Jin Li# *University of](https://reader036.vdocuments.us/reader036/viewer/2022062301/5697bfc81a28abf838ca892a/html5/thumbnails/3.jpg)
Bad condition• Performance adaptation
• Forward error correction (FEC), de-jitter buffer, source coding rate
Unpredictable condition• Performance degradation
Sensitivity to network performance
Qiang Xu 3MobiSys’13
Which category is cellular network performance?
![Page 4: PROTEUS: Network Performance Forecast for Real- Time, Interactive Mobile Applications Qiang Xu* Sanjeev Mehrotra# Z. Morley Mao* Jin Li# *University of](https://reader036.vdocuments.us/reader036/viewer/2022062301/5697bfc81a28abf838ca892a/html5/thumbnails/4.jpg)
Determining the predictability of cellular network performance in short term• What performance metrics?• What time granularity?• How predictable?
Leveraging network performance predictability in real-time, interactive applications• How to efficiently predict?• How to support applications?• How much benefit?
What problems does PROTEUS address?
Qiang Xu 4MobiSys’13
![Page 5: PROTEUS: Network Performance Forecast for Real- Time, Interactive Mobile Applications Qiang Xu* Sanjeev Mehrotra# Z. Morley Mao* Jin Li# *University of](https://reader036.vdocuments.us/reader036/viewer/2022062301/5697bfc81a28abf838ca892a/html5/thumbnails/5.jpg)
Hidden factors, e.g., on devices, in networks• Using regression trees
• Treating hidden factors together as a blackbox
Cost of learning predictability• Passive monitoring, no active probing
• Application behavior is stable in short term
Awareness to predictability• Implementing PROTEUS library connecting
regression trees and applications
Challenges & solutions
Qiang Xu 5MobiSys’13
![Page 6: PROTEUS: Network Performance Forecast for Real- Time, Interactive Mobile Applications Qiang Xu* Sanjeev Mehrotra# Z. Morley Mao* Jin Li# *University of](https://reader036.vdocuments.us/reader036/viewer/2022062301/5697bfc81a28abf838ca892a/html5/thumbnails/6.jpg)
Predictability of cellular network performance
Resource allocation at different network aggregations levels, e.g., base station, RNC, GGSN
The predictability at time granularity of seconds is best suitable for real-time interactive applications• A chunk for adaptive bitrate streaming is multi-
second
Qiang Xu 6
Liu et al. MobiCom’08
Manweiler et al.
MobiSys’11
Shafiq et al. SIGMETRICS’
11
second minute hour
MobiSys’13
![Page 7: PROTEUS: Network Performance Forecast for Real- Time, Interactive Mobile Applications Qiang Xu* Sanjeev Mehrotra# Z. Morley Mao* Jin Li# *University of](https://reader036.vdocuments.us/reader036/viewer/2022062301/5697bfc81a28abf838ca892a/html5/thumbnails/7.jpg)
400+ one-hour packet traces• Protocol: UDP
• TCP has congestion control and retransmission
• Device: Android, iPhone, USB dongle• Windows Phone doesn’t have a packet
sniffer• Location: Ann Arbor (MI), Chicago
(IL)• Carrier: AT&T, Sprint, T-Mobile
Verifying performance predictability
Qiang Xu 7MobiSys’13
![Page 8: PROTEUS: Network Performance Forecast for Real- Time, Interactive Mobile Applications Qiang Xu* Sanjeev Mehrotra# Z. Morley Mao* Jin Li# *University of](https://reader036.vdocuments.us/reader036/viewer/2022062301/5697bfc81a28abf838ca892a/html5/thumbnails/8.jpg)
MobiSys’13 8
Evidence of performance predictability
Qiang Xu
The current throughput is highly correlated with the one 1s ago, but unlikely with 20s ago
![Page 9: PROTEUS: Network Performance Forecast for Real- Time, Interactive Mobile Applications Qiang Xu* Sanjeev Mehrotra# Z. Morley Mao* Jin Li# *University of](https://reader036.vdocuments.us/reader036/viewer/2022062301/5697bfc81a28abf838ca892a/html5/thumbnails/9.jpg)
Proportional fair scheduling: X vs. Y• X: device with the best
network condition• Y: fairness among devices
A device can occupy the same channel for ~1s• The time slot for channel resource allocation is ~1.67ms• The aggressiveness factor to favor the current device is
0.001
Why predictable? Scheduling at base stations
Qiang Xu 9MobiSys’13
![Page 10: PROTEUS: Network Performance Forecast for Real- Time, Interactive Mobile Applications Qiang Xu* Sanjeev Mehrotra# Z. Morley Mao* Jin Li# *University of](https://reader036.vdocuments.us/reader036/viewer/2022062301/5697bfc81a28abf838ca892a/html5/thumbnails/10.jpg)
Using regression trees for prediction
Exponential backoff to favor recent performance • Short time window, e.g., 0.5s, for real-time
requirement• Small history window, e.g., 20s, for efficiency
Qiang Xu 10
time windowhistory window
MobiSys’13
![Page 11: PROTEUS: Network Performance Forecast for Real- Time, Interactive Mobile Applications Qiang Xu* Sanjeev Mehrotra# Z. Morley Mao* Jin Li# *University of](https://reader036.vdocuments.us/reader036/viewer/2022062301/5697bfc81a28abf838ca892a/html5/thumbnails/11.jpg)
No offline training, predicting in real-time
• Available after the first history window
Comparing against two adaption solutions• AD1: adapt to the current time window• AD2: adapt to the averaged history window
Running regression trees over traces
Qiang Xu 11MobiSys’13
![Page 12: PROTEUS: Network Performance Forecast for Real- Time, Interactive Mobile Applications Qiang Xu* Sanjeev Mehrotra# Z. Morley Mao* Jin Li# *University of](https://reader036.vdocuments.us/reader036/viewer/2022062301/5697bfc81a28abf838ca892a/html5/thumbnails/12.jpg)
Prediction accuracy for lossA false positive occurs if a loss is predicted but actually not
FP: PROTEUS 1%, AD1 3-20%, AD2 >80%, ∀ linear 3-5%; FN: PROTEUS 1-3%, AD1 5-25%, AD2 20-80%, ∀ linear 3-20%
Qiang Xu 12MobiSys’13
![Page 13: PROTEUS: Network Performance Forecast for Real- Time, Interactive Mobile Applications Qiang Xu* Sanjeev Mehrotra# Z. Morley Mao* Jin Li# *University of](https://reader036.vdocuments.us/reader036/viewer/2022062301/5697bfc81a28abf838ca892a/html5/thumbnails/13.jpg)
Collecting throughput, loss, and OWD predictions from AD1, AD2, and PROTEUS• How to guarantee reproducible cellular network
performance?
Adjusting source rate, redundancy (FEC), and de-jitter buffer size• Standard approach using the H.264 reference software• No such open-source encoding/decoding suite for
mobile
Evaluating PROTEUS in video conferencing
Qiang Xu 13MobiSys’13
![Page 14: PROTEUS: Network Performance Forecast for Real- Time, Interactive Mobile Applications Qiang Xu* Sanjeev Mehrotra# Z. Morley Mao* Jin Li# *University of](https://reader036.vdocuments.us/reader036/viewer/2022062301/5697bfc81a28abf838ca892a/html5/thumbnails/14.jpg)
Equivalent mobile video conferencing
Qiang Xu 14
Per-frame adaptation
Encoding/decoding suite
Reproducible network
conditions
Modifying the H.264 reference software
Running the modified H.264 reference suite on a laptop
Replaying the 400+ packet traces with adaptively encoded content
MobiSys’13
![Page 15: PROTEUS: Network Performance Forecast for Real- Time, Interactive Mobile Applications Qiang Xu* Sanjeev Mehrotra# Z. Morley Mao* Jin Li# *University of](https://reader036.vdocuments.us/reader036/viewer/2022062301/5697bfc81a28abf838ca892a/html5/thumbnails/15.jpg)
Replaying packet trace in encoding
Qiang Xu 15
1. Compute <source rate, FEC>
2. Encode <frame> adaptively
3. Refill <random> with <frame>
PROTEUSAD1/AD2
<frame><frame><frame>
MobiSys’13
![Page 16: PROTEUS: Network Performance Forecast for Real- Time, Interactive Mobile Applications Qiang Xu* Sanjeev Mehrotra# Z. Morley Mao* Jin Li# *University of](https://reader036.vdocuments.us/reader036/viewer/2022062301/5697bfc81a28abf838ca892a/html5/thumbnails/16.jpg)
Decoding replayed packet traces
PROTEUS 36dB
AD1/AD2 23dB TCP 20dB
Qiang Xu 16MobiSys’13
![Page 17: PROTEUS: Network Performance Forecast for Real- Time, Interactive Mobile Applications Qiang Xu* Sanjeev Mehrotra# Z. Morley Mao* Jin Li# *University of](https://reader036.vdocuments.us/reader036/viewer/2022062301/5697bfc81a28abf838ca892a/html5/thumbnails/17.jpg)
Additional FEC overhead: PROTEUS 5kbps, AD1/AD2 20kbps
FEC overhead due to over-protection
Qiang Xu 17MobiSys’13
![Page 18: PROTEUS: Network Performance Forecast for Real- Time, Interactive Mobile Applications Qiang Xu* Sanjeev Mehrotra# Z. Morley Mao* Jin Li# *University of](https://reader036.vdocuments.us/reader036/viewer/2022062301/5697bfc81a28abf838ca892a/html5/thumbnails/18.jpg)
Identified the predictability of cellular network performance in short term (e.g., 0.5s)• Prediction accuracy: loss 98%, delay 97%, throughput
10±10kbps
Designed PROTEUS to provide applications with performance forecast
Evaluated the benefit to video conferencing• Video conferencing: PSNR 15dB higher, almost identical to
the hypothetical optimal
Concluding PROTEUS
Qiang Xu 18MobiSys’13
![Page 19: PROTEUS: Network Performance Forecast for Real- Time, Interactive Mobile Applications Qiang Xu* Sanjeev Mehrotra# Z. Morley Mao* Jin Li# *University of](https://reader036.vdocuments.us/reader036/viewer/2022062301/5697bfc81a28abf838ca892a/html5/thumbnails/19.jpg)
Qiang Xu 19MobiSys’13