iPlane Nano: Path Prediction for Peer-to-Peer Applications
Transcript of iPlane Nano: Path Prediction for Peer-to-Peer Applications
![Page 1: iPlane Nano: Path Prediction for Peer-to-Peer Applications](https://reader035.fdocuments.us/reader035/viewer/2022062301/62a5a48498256d4490096ff8/html5/thumbnails/1.jpg)
iPlane Nano: Path Prediction for Peer-to-Peer Applications
Harsha V. Madhyastha, Ethan Katz-Bassett, Thomas Anderson, Arvind Krishnamurthy, and Arun Venkataramani!
University of California, San Diego, University of Washington, and University of Massachusetts, Amherst !
![Page 2: iPlane Nano: Path Prediction for Peer-to-Peer Applications](https://reader035.fdocuments.us/reader035/viewer/2022062301/62a5a48498256d4490096ff8/html5/thumbnails/2.jpg)
Motivation • Example application: P2P CDN!
– Content replicated across geographically distributed set of end-hosts!• RedSwoosh (Akamai)!• Kontiki (BBC’s iPlayer)!
– Every client needs to be redirected to replica that provides best performance!
• Problem (also for BitTorrent, Skype, …):!– Internet performance neither constant nor
queriable!
![Page 3: iPlane Nano: Path Prediction for Peer-to-Peer Applications](https://reader035.fdocuments.us/reader035/viewer/2022062301/62a5a48498256d4490096ff8/html5/thumbnails/3.jpg)
Need for Performance Prediction
• Current Best Practice:!– Each application measures the Internet
independently!
• Desired Solution:!– Ability for end-hosts to predict performance !– Infrastructure shared across applications!
![Page 4: iPlane Nano: Path Prediction for Peer-to-Peer Applications](https://reader035.fdocuments.us/reader035/viewer/2022062301/62a5a48498256d4490096ff8/html5/thumbnails/4.jpg)
Predicted Information
Cost to Scale
Network Coordinates
− Limited to latency + Lightweight distr. system
iPlane + Rich set of metrics + Arbitrary end-hosts
− 2 GB atlas to distribute − Large memory footprint
iPlane Nano + Same info as iPlane + Accurate enough
+ 7 MB atlas for end-hosts + Queries serviced locally
Need for iPlane Nano
![Page 5: iPlane Nano: Path Prediction for Peer-to-Peer Applications](https://reader035.fdocuments.us/reader035/viewer/2022062301/62a5a48498256d4490096ff8/html5/thumbnails/5.jpg)
iPlane Nano: Overview • Server-side: Use iPlane’s measurements
but store and process differently!– Key idea: Replace atlas of paths with atlas of
links from O(n2) to O(n) representation !End-hosts
Vantage points
Links Routers
Size of Atlas = O(#Nodes + #Links)
Size of Atlas = O(#Vantage points X #Destinations X Avg. Path Length)
![Page 6: iPlane Nano: Path Prediction for Peer-to-Peer Applications](https://reader035.fdocuments.us/reader035/viewer/2022062301/62a5a48498256d4490096ff8/html5/thumbnails/6.jpg)
iPlane Nano: Overview
• Server-side: Use iPlane’s measurements but store and process differently!– Key idea: Replace atlas of paths with atlas of
links from O(n2) to O(n) representation !
• Client-side: Application library!– Download atlas and help disseminate atlas!– Service queries locally with prediction engine!
![Page 7: iPlane Nano: Path Prediction for Peer-to-Peer Applications](https://reader035.fdocuments.us/reader035/viewer/2022062301/62a5a48498256d4490096ff8/html5/thumbnails/7.jpg)
Challenge: Loss of Routing Info
• Routing policy information encoded in routes is lost!
• Need to extract routing policy from measured routes and represent compactly!
V
D
![Page 8: iPlane Nano: Path Prediction for Peer-to-Peer Applications](https://reader035.fdocuments.us/reader035/viewer/2022062301/62a5a48498256d4490096ff8/html5/thumbnails/8.jpg)
Routing Policy: Strawman Approach • Common aspects of Internet routing applied!
– Shortest AS path + valley-free + early-exit!• Poor AS path prediction accuracy obtained!
– Too many valley-free shortest AS paths!
81%
30%
![Page 9: iPlane Nano: Path Prediction for Peer-to-Peer Applications](https://reader035.fdocuments.us/reader035/viewer/2022062301/62a5a48498256d4490096ff8/html5/thumbnails/9.jpg)
1. Inferring AS Filters • Every path is not necessarily a route!
– ASes filter propagation of route received from one neighbor to other neighbors!
• Filters inferred from measured routes!– Record every tuple of three successive ASes
observed in any measured route!– Store (AS1, AS2, AS3) to imply AS2 forwards
routes received from AS3 on to AS1!
![Page 10: iPlane Nano: Path Prediction for Peer-to-Peer Applications](https://reader035.fdocuments.us/reader035/viewer/2022062301/62a5a48498256d4490096ff8/html5/thumbnails/10.jpg)
Applying Inferred AS Filters
• AS filters help discard paths not policy-compliant!• Still have multiple policy-compliant paths !
V
D
AS2
AS1
AS4
AS5
AS3
![Page 11: iPlane Nano: Path Prediction for Peer-to-Peer Applications](https://reader035.fdocuments.us/reader035/viewer/2022062301/62a5a48498256d4490096ff8/html5/thumbnails/11.jpg)
2. Inferring AS Preferences
• For every measured route, alternate paths are determined in link-based atlas!• Divergence of paths indicates preference!
– AS1 AS2 AS3 … on measured route!– Alternate paths imply AS1 prefers AS2 over
AS5 and AS2 prefers AS3 over AS6!
AS1 AS2
AS5
V D
AS6
AS3 AS4
![Page 12: iPlane Nano: Path Prediction for Peer-to-Peer Applications](https://reader035.fdocuments.us/reader035/viewer/2022062301/62a5a48498256d4490096ff8/html5/thumbnails/12.jpg)
Challenge: Routing Asymmetry
• Undirected edges used to compute route (S D)!– Assuming symmetric routing!
• But, more than half of Internet routes asymmetric!
V
D
S
![Page 13: iPlane Nano: Path Prediction for Peer-to-Peer Applications](https://reader035.fdocuments.us/reader035/viewer/2022062301/62a5a48498256d4490096ff8/html5/thumbnails/13.jpg)
3. Handling Routing Asymmetry • Client library includes measurement toolkit!
– Traceroutes to random prefixes at low rate!– Uploads to central server!
• Each client’s measurements assimilated into atlas distributed to all clients!
• Directed path computed for route prediction!– Fall back to undirected path if not found!
![Page 14: iPlane Nano: Path Prediction for Peer-to-Peer Applications](https://reader035.fdocuments.us/reader035/viewer/2022062301/62a5a48498256d4490096ff8/html5/thumbnails/14.jpg)
Improved Path Predictions • AS path prediction accuracy with iPlane
Nano almost as good as with iPlane!
2 GB
5 MB
(1.4MB daily update)
Atlas size 81%
30%
70% 6.6 MB
![Page 15: iPlane Nano: Path Prediction for Peer-to-Peer Applications](https://reader035.fdocuments.us/reader035/viewer/2022062301/62a5a48498256d4490096ff8/html5/thumbnails/15.jpg)
From Routes to Properties • To estimate end-to-end path properties
between arbitrary S and D!– Use atlas to predict route!– Combine properties of links on predicted route!
• Ongoing challenge: Measuring link properties!
Latency Sum of link latencies Loss-rate Probability of loss on any link
![Page 16: iPlane Nano: Path Prediction for Peer-to-Peer Applications](https://reader035.fdocuments.us/reader035/viewer/2022062301/62a5a48498256d4490096ff8/html5/thumbnails/16.jpg)
Improving P2P Applications • Used iPlane Nano to improve three apps!
– P2P CDN!• Choose replica with best performance!
– VoIP!• Choose detour node to bridge hosts behind NATs!
– Detour routing for reliability!• Choose detour nodes with disjoint routes to route around failure !
• Refer to paper for VoIP and detour routing experiments!
![Page 17: iPlane Nano: Path Prediction for Peer-to-Peer Applications](https://reader035.fdocuments.us/reader035/viewer/2022062301/62a5a48498256d4490096ff8/html5/thumbnails/17.jpg)
Improving P2P CDN
• Clients: 199 PlanetLab nodes!• Replicas: 10 random Akamai nodes per client!• 1MB file downloaded from “best” replica!
Download time = 2 X Optimal
![Page 18: iPlane Nano: Path Prediction for Peer-to-Peer Applications](https://reader035.fdocuments.us/reader035/viewer/2022062301/62a5a48498256d4490096ff8/html5/thumbnails/18.jpg)
Conclusions • Implemented iPlane Nano!
– Practical solution for scalably providing predictions of Internet path performance to P2P applications !
– Compact representation of routing policy to predict route and path properties between arbitrary end-hosts !
• Demonstrated utility in improving performance of P2P applications!
• Step towards determining minimum information required to capture Internet performance!
![Page 19: iPlane Nano: Path Prediction for Peer-to-Peer Applications](https://reader035.fdocuments.us/reader035/viewer/2022062301/62a5a48498256d4490096ff8/html5/thumbnails/19.jpg)
Thank You!
• iPlane Nano’s atlas and traces gathered by iPlane updated daily at!
http://iplane.cs.washington.edu!
• Send me email if you want to use iPlane Nano’s or iPlane’s predictions!