Mobile Network Diversity TJ Giuli David Watson Brett Higgins Azarias Reda Timur Alperovich Jason Flinn Brian Noble 2 Diversity of networks Diversity of behavior Email Fetch messages ID: 546039
Download Presentation The PPT/PDF document "Intentional Networking: Opportunistic Ex..." is the property of its rightful owner. Permission is granted to download and print the materials on this web site for personal, non-commercial use only, and to display it on your personal computer provided you do not modify the materials and that you retain all copyright notices contained in the materials. By downloading content from our website, you accept the terms of this agreement.
Slide1
Intentional Networking: Opportunistic Exploitation of Mobile Network Diversity
T.J. GiuliDavid Watson
Brett Higgins
Azarias Reda Timur AlperovichJason Flinn Brian NobleSlide2
2
Diversity of networks
Diversity of behavior
Email
Fetch messages
The Challenge
Brett Higgins
YouTube
Upload video
Match traffic to available networksSlide3
Current approaches: two extremes
All details hidden All details exposed Result: mismatched Result: hard for traffic applications
3
Please
insert
packets
Brett HigginsSlide4
SolutionSystem measures available networks
Applications describe their trafficSystem matches traffic to networksBrett Higgins4Slide5
Separate concernsSystem monitors and measures available networksApps describe their traffic
System matches traffic to the right networkBe simpleApps use qualitative labels like FG/BG, small/largeEmbrace concurrencyConsider multiple networks like multiple coresAbstractions for network concurrency5
Brett Higgins
Intentional NetworkingSlide6
RoadmapMotivation
AbstractionsApplicationsEvaluationSummary6Brett HigginsSlide7
Abstraction: Multi-socketSocket: logical connection between endpoints
7
Client
Server
Brett HigginsSlide8
Abstraction: Multi-socketMulti-socket:
virtual connectionMeasures performance of each alternativeEncapsulates transient network failure8
Client
Server
Brett HigginsSlide9
Abstraction: LabelQualitative description of network traffic
Size: small (latency) or large (bandwidth)Interactivity: foreground vs. background9Brett Higgins
Client
ServerSlide10
Implementing “foreground”
Foreground traffic takes precedence
Need to keep BG traffic out of the wayBorrow from anticipatory scheduling
10Kernel socket bufferData buffered in library
BG
FG
≤ 50ms of BG data
Brett Higgins
If no FG data,
increase to 1 secSlide11
Abstraction: IROBIROB: Isolated
Reliable Ordered BytestreamGuarantees atomic delivery of data chunkApplication specifies data, atomicity boundary11
Brett Higgins
432
1
IROB 1Slide12
Abstraction: Ordering ConstraintsApp specifies partial ordering on
IROBsReceiving end enforces delivery order12Brett Higgins
Server
IROB 1
IROB 3
IROB 2
IROB 2
IROB 3
Dep
: 2
IROB 1
use_data
()Slide13
Abstraction: ThunkWhat happens when traffic should be deferred?
Application passes an optional callback + stateBorrows from PL domainIf no suitable network is available:Operation will fail with a special codeCallback will be fired when a suitable network appearsUse case: periodic background messagesSend once, at the right time
13Brett HigginsSlide14
Intentional Networking: AbstractionsMulti-socket:
virtual connectionLabel: qualitative message descriptionIROB: atomicity and ordering constraintsThunk: expose network events to application
14Brett HigginsSlide15
RoadmapMotivation
AbstractionsApplicationsEvaluationSummary15Brett HigginsSlide16
ApplicationsDistributed file system
File reads (foreground) and writes (background)Reads and writes unordered with respect to each otherIMAP email + prefetchingUser requests (foreground) and prefetches (background)Add small/large label for responsesVehicular sensingRoad condition monitoring (small, foreground)Vehicle performance trend analysis (large, background)
Use thunks to decide when to send cumulative sensor data
16Brett HigginsSlide17
Applications
Distributed file systemFile reads (foreground) and writes (background)Reads and writes unordered with respect to each otherIMAP email + prefetchingUser requests (foreground) and prefetches (background)Add small/large label for responsesVehicular sensing
Road condition monitoring (small, foreground)Vehicle performance trend analysis (large, background)Use thunks
to decide when to send cumulative sensor data17Brett HigginsSlide18
RoadmapMotivation
AbstractionsApplicationsEvaluationSummary18Brett HigginsSlide19
Evaluation: MethodologyGathered network traces in a moving vehicle
Sprint 3G & open WiFiBW up/down, RTTReplayed in lab (trace map here)19
Brett HigginsSlide20
Evaluation: Comparison StrategiesGenerated from the network traces
Idealized migrationAlways use best-bandwidth networkAlways use best-latency networkIdealized aggregationAggregate bandwidth, minimum latencyUpper bounds on app-oblivious performance20
Brett HigginsSlide21
Evaluation Results: Email
Trace #2: Ypsilanti, MI
3%
7x
21
Brett HigginsSlide22
Evaluation Results: Vehicular SensingTrace #2: Ypsilanti, MI
Brett Higgins22
48%
6%Slide23
Evaluation Results: Vehicular SensingTrace #2: Ypsilanti, MI
Brett Higgins23Slide24
SummaryIntentional Networking
Separates concerns between apps and the systemApplications describe their network trafficSystem matches traffic to the right networkSimplifies app task with qualitative labelsProvides abstractions for network concurrencyOutperforms all application-oblivious strategiesQuestions?
24Brett HigginsSlide25
25
Brett HigginsSlide26
Evaluation Results: Vehicular SensingTrace #2: Ypsilanti, MI
26Single-process
Multi-processUrgent Update Latency
Background ThroughputSingle-processMulti-process
Brett HigginsSlide27
Evaluation Results: EmailBenchmark
User opens 5 emails (foreground)App prefetches 100 emails (background)We report:Average on-demand fetch timeTime to finish prefetching all 100 emails27
Brett HigginsSlide28
Evaluation Results: EmailTrace #1: Ann Arbor, MI
1%
11x
28
Brett HigginsSlide29
Evaluation Results: Vehicular SensingTrace #1: Ann Arbor, MI
29
1%
4x
Brett HigginsSlide30
Evaluation Results: Vehicular Sensing
Trace #2: Ypsilanti, MI30
6%
2x
Brett HigginsSlide31
Evaluation Results: Multiple ProcessesTrace #1: Ann Arbor, MI
31
Single-process
Multi-processUrgent Update LatencyBackground ThroughputSingle-processMulti-process
Brett HigginsSlide32
Vehicular SensingBased on Ford research platform specs
Raw sensor data sent to central serverAbout 25KB/sec of dataUseful for long-term analysis, preventative maintenanceSome sensor readings indicate abnormal conditionsTraction control engaging => slippery roadsSend these reports to service to alert other drivers32
Brett Higgins