sibyl: a practical internet route oracle · in each round, allocate probing budget to best serve...
TRANSCRIPT
![Page 1: Sibyl: A Practical Internet Route Oracle · In each round, allocate probing budget to best serve queries Optimize Use of Probing Budget 32! Max utility of traceroutes ! T r: set of](https://reader036.vdocument.in/reader036/viewer/2022071105/5fdf6398c32691773a5a77ae/html5/thumbnails/1.jpg)
Sibyl: A Practical Internet Route Oracle
1
Ethan Katz-Bassett (University of Southern California)
with:Pietro Marchetta (University of Napoli Federico II),Matt Calder, Yi-Ching Chiu (USC), Italo Cunha (UFMG),Harsha Madhyastha (Michigan), Vasileios Giotsas (CAIDA)
Supported By:
![Page 2: Sibyl: A Practical Internet Route Oracle · In each round, allocate probing budget to best serve queries Optimize Use of Probing Budget 32! Max utility of traceroutes ! T r: set of](https://reader036.vdocument.in/reader036/viewer/2022071105/5fdf6398c32691773a5a77ae/html5/thumbnails/2.jpg)
Sibyl: A Practical Internet Route Oracle
2
Supported By:
Ethan Katz-Bassett (University of Southern California)
with:Pietro Marchetta (University of Napoli Federico II),Matt Calder, Yi-Ching Chiu (USC), Italo Cunha (UFMG),Harsha Madhyastha (Michigan), Vasileios Giotsas (CAIDA)
![Page 3: Sibyl: A Practical Internet Route Oracle · In each round, allocate probing budget to best serve queries Optimize Use of Probing Budget 32! Max utility of traceroutes ! T r: set of](https://reader036.vdocument.in/reader036/viewer/2022071105/5fdf6398c32691773a5a77ae/html5/thumbnails/3.jpg)
Traceroute Widely Used by Operators and Researchers
“The number one go-to tool is traceroute.� NANOG Network operators troubleshooting tutorial, 2009.
! Lots of use cases: ! topology and AS relationships ! route performance and inflation ! location of congestion ! outages ! prefix hijacks ! etc
3
![Page 4: Sibyl: A Practical Internet Route Oracle · In each round, allocate probing budget to best serve queries Optimize Use of Probing Budget 32! Max utility of traceroutes ! T r: set of](https://reader036.vdocument.in/reader036/viewer/2022071105/5fdf6398c32691773a5a77ae/html5/thumbnails/4.jpg)
Traceroute Widely Used by Operators and Researchers
“The number one go-to tool is traceroute.� NANOG Network operators troubleshooting tutorial, 2009.
! Lots of use cases: ! topology and AS relationships ! route performance and inflation ! location of congestion ! outages ! prefix hijacks ! etc
4
! Lots of vantage points: ! PlanetLab, Ark ! RIPE Atlas, BISmark ! traceroute servers ! MobiPerf, Dasu ! RIPE RIS, RouteViews ! etc
![Page 5: Sibyl: A Practical Internet Route Oracle · In each round, allocate probing budget to best serve queries Optimize Use of Probing Budget 32! Max utility of traceroutes ! T r: set of](https://reader036.vdocument.in/reader036/viewer/2022071105/5fdf6398c32691773a5a77ae/html5/thumbnails/5.jpg)
Traceroute Is Extremely Limited
“The number one go-to tool is traceroute.� NANOG Network operators troubleshooting tutorial, 2009.
! Lots of use cases: ! topology and AS relationships ! route performance and inflation ! location of congestion ! outages ! prefix hijacks ! etc
! But traceroute only supports one query: “What is the path from vantage point s to destination d?”
5
! Lots of vantage points: ! PlanetLab, Ark ! RIPE Atlas, BISmark ! traceroute servers ! MobiPerf, Dasu ! RIPE RIS, RouteViews ! etc
![Page 6: Sibyl: A Practical Internet Route Oracle · In each round, allocate probing budget to best serve queries Optimize Use of Probing Budget 32! Max utility of traceroutes ! T r: set of](https://reader036.vdocument.in/reader036/viewer/2022071105/5fdf6398c32691773a5a77ae/html5/thumbnails/6.jpg)
6
![Page 7: Sibyl: A Practical Internet Route Oracle · In each round, allocate probing budget to best serve queries Optimize Use of Probing Budget 32! Max utility of traceroutes ! T r: set of](https://reader036.vdocument.in/reader036/viewer/2022071105/5fdf6398c32691773a5a77ae/html5/thumbnails/7.jpg)
Current pathHistorical path
How I’d Like to Use Vantage Points7
What’s the path fromAT&T mobile in LA to YouTube?
Query for: ! Path from a certain network
![Page 8: Sibyl: A Practical Internet Route Oracle · In each round, allocate probing budget to best serve queries Optimize Use of Probing Budget 32! Max utility of traceroutes ! T r: set of](https://reader036.vdocument.in/reader036/viewer/2022071105/5fdf6398c32691773a5a77ae/html5/thumbnails/8.jpg)
Current pathHistorical path
MobiPerf
How I’d Like to Use Vantage Points8
Did paths fromAT&T mobile in LA always go to Seattle?
Query for: ! Path from a certain network ! Historical path
![Page 9: Sibyl: A Practical Internet Route Oracle · In each round, allocate probing budget to best serve queries Optimize Use of Probing Budget 32! Max utility of traceroutes ! T r: set of](https://reader036.vdocument.in/reader036/viewer/2022071105/5fdf6398c32691773a5a77ae/html5/thumbnails/9.jpg)
Current pathHistorical path
MobiPerf
How I’d Like to Use Vantage Points9
Do any paths throughAT&T in LA to YouTube still go to LA server?
Query for: ! Path from a certain network ! Historical path ! Paths through series of hops
![Page 10: Sibyl: A Practical Internet Route Oracle · In each round, allocate probing budget to best serve queries Optimize Use of Probing Budget 32! Max utility of traceroutes ! T r: set of](https://reader036.vdocument.in/reader036/viewer/2022071105/5fdf6398c32691773a5a77ae/html5/thumbnails/10.jpg)
Current pathHistorical path
How I’d Like to Use Vantage Points10
Other paths that went to YouTube LA and now go to YouTube Seattle?
Query for: ! Path from a certain network ! Historical path ! Paths through series of hops ! Relationship between
historical path and current path
![Page 11: Sibyl: A Practical Internet Route Oracle · In each round, allocate probing budget to best serve queries Optimize Use of Probing Budget 32! Max utility of traceroutes ! T r: set of](https://reader036.vdocument.in/reader036/viewer/2022071105/5fdf6398c32691773a5a77ae/html5/thumbnails/11.jpg)
Current pathHistorical path
MeasrDroid
How I’d Like to Use Vantage Points11
Query for: ! Path from a certain network ! Historical path ! Paths through series of hops ! Relationship between
historical path and current path
![Page 12: Sibyl: A Practical Internet Route Oracle · In each round, allocate probing budget to best serve queries Optimize Use of Probing Budget 32! Max utility of traceroutes ! T r: set of](https://reader036.vdocument.in/reader036/viewer/2022071105/5fdf6398c32691773a5a77ae/html5/thumbnails/12.jpg)
Current pathHistorical path
MeasrDroid
MobiPerf
How I’d Like to Use Vantage Points12
YouTube appears tomap these clientstogether.
Query for: ! Path from a certain network ! Historical path ! Paths through series of hops ! Relationship between
historical path and current path
![Page 13: Sibyl: A Practical Internet Route Oracle · In each round, allocate probing budget to best serve queries Optimize Use of Probing Budget 32! Max utility of traceroutes ! T r: set of](https://reader036.vdocument.in/reader036/viewer/2022071105/5fdf6398c32691773a5a77ae/html5/thumbnails/13.jpg)
Current pathHistorical path
MeasrDroid
MobiPerf
How I’d Like to Use Vantage Points13
Or…other pathstraversing AT&T-NTT?
Query for: ! Path from a certain network ! Historical path ! Paths through series of hops ! Relationship between
historical path and current path
![Page 14: Sibyl: A Practical Internet Route Oracle · In each round, allocate probing budget to best serve queries Optimize Use of Probing Budget 32! Max utility of traceroutes ! T r: set of](https://reader036.vdocument.in/reader036/viewer/2022071105/5fdf6398c32691773a5a77ae/html5/thumbnails/14.jpg)
Current pathHistorical path
MeasrDroid
MobiPerf
How I’d Like to Use Vantage Points14
Or…other pathstraversing GTT-NTT?
Query for: ! Path from a certain network ! Historical path ! Paths through series of hops ! Relationship between
historical path and current path
![Page 15: Sibyl: A Practical Internet Route Oracle · In each round, allocate probing budget to best serve queries Optimize Use of Probing Budget 32! Max utility of traceroutes ! T r: set of](https://reader036.vdocument.in/reader036/viewer/2022071105/5fdf6398c32691773a5a77ae/html5/thumbnails/15.jpg)
Current pathHistorical path
MeasrDroid
MobiPerf
How I’d Like to Use Vantage Points15
Or…other pathstraversing NTTbut not AT&T or GTT?
Query for: ! Path from a certain network ! Historical path ! Paths through series of hops ! Relationship between
historical path and current path
![Page 16: Sibyl: A Practical Internet Route Oracle · In each round, allocate probing budget to best serve queries Optimize Use of Probing Budget 32! Max utility of traceroutes ! T r: set of](https://reader036.vdocument.in/reader036/viewer/2022071105/5fdf6398c32691773a5a77ae/html5/thumbnails/16.jpg)
Current pathHistorical path
MeasrDroid
MobiPerf
How I’d Like to Use Vantage Points16
Or…other pathstraversing NTTbut not LA or SEA?
Query for: ! Path from a certain network ! Historical path ! Paths through series of hops ! Relationship between
historical path and current path
![Page 17: Sibyl: A Practical Internet Route Oracle · In each round, allocate probing budget to best serve queries Optimize Use of Probing Budget 32! Max utility of traceroutes ! T r: set of](https://reader036.vdocument.in/reader036/viewer/2022071105/5fdf6398c32691773a5a77ae/html5/thumbnails/17.jpg)
2014 Measurement vs 2016 Measurement
! What I do
17
MobiPerf 1 MobiPerf 2RIPE Atlas 1 RIPE Atlas 2
Experiment
Dest Path
MobiPerf 1 MobiPerf 2MobiPerf 2RIPE Atlas 1 RIPE Atlas 2
Experiment
Unified Probing Platform
Dest1
Path Dest2
MobiPerf 2
MeasrDroid
Give me pathslike X. Here are some
paths.
! What I want to do
![Page 18: Sibyl: A Practical Internet Route Oracle · In each round, allocate probing budget to best serve queries Optimize Use of Probing Budget 32! Max utility of traceroutes ! T r: set of](https://reader036.vdocument.in/reader036/viewer/2022071105/5fdf6398c32691773a5a77ae/html5/thumbnails/18.jpg)
Benefit of Combining Platforms
! Combining platforms improves coverage
18
0
20
40
60
80
100
10-1 100 101 102 103 104
% o
f ASe
s H
ostin
g Va
ntag
e Po
ints
Minimum Customer Cone Size
RIPE+PL+TS+Dasu
RIPETS
DasuPL
![Page 19: Sibyl: A Practical Internet Route Oracle · In each round, allocate probing budget to best serve queries Optimize Use of Probing Budget 32! Max utility of traceroutes ! T r: set of](https://reader036.vdocument.in/reader036/viewer/2022071105/5fdf6398c32691773a5a77ae/html5/thumbnails/19.jpg)
Challenge of Combining Platforms
! Combining platforms improves coverage
19
0
0.2
0.4
0.6
0.8
1
0 100 200 300 400 500 600 700 800
CD
F of
Des
tinat
ions
Number of ASes seen on Path
PL
![Page 20: Sibyl: A Practical Internet Route Oracle · In each round, allocate probing budget to best serve queries Optimize Use of Probing Budget 32! Max utility of traceroutes ! T r: set of](https://reader036.vdocument.in/reader036/viewer/2022071105/5fdf6398c32691773a5a77ae/html5/thumbnails/20.jpg)
Challenge of Combining Platforms20
0
0.2
0.4
0.6
0.8
1
0 100 200 300 400 500 600 700 800
CD
F of
Des
tinat
ions
Number of ASes seen on Path
RIPEPL
! Combining platforms improves coverage
![Page 21: Sibyl: A Practical Internet Route Oracle · In each round, allocate probing budget to best serve queries Optimize Use of Probing Budget 32! Max utility of traceroutes ! T r: set of](https://reader036.vdocument.in/reader036/viewer/2022071105/5fdf6398c32691773a5a77ae/html5/thumbnails/21.jpg)
Challenge of Combining Platforms21
0
0.2
0.4
0.6
0.8
1
0 100 200 300 400 500 600 700 800
CD
F of
Des
tinat
ions
Number of ASes seen on Path
RIPEPL
Rate Limited - RIPE
! Combining platforms improves coverage ! … but exhaustive probing is infeasible
![Page 22: Sibyl: A Practical Internet Route Oracle · In each round, allocate probing budget to best serve queries Optimize Use of Probing Budget 32! Max utility of traceroutes ! T r: set of](https://reader036.vdocument.in/reader036/viewer/2022071105/5fdf6398c32691773a5a77ae/html5/thumbnails/22.jpg)
Challenge of Combining Platforms22
0
0.2
0.4
0.6
0.8
1
0 100 200 300 400 500 600 700 800
CD
F of
Des
tinat
ions
Number of ASes seen on Path
RIPERate Limited
- TS+RIPE+PLPL
Rate Limited - RIPE
! Combining platforms improves coverage ! … but exhaustive probing is infeasible
![Page 23: Sibyl: A Practical Internet Route Oracle · In each round, allocate probing budget to best serve queries Optimize Use of Probing Budget 32! Max utility of traceroutes ! T r: set of](https://reader036.vdocument.in/reader036/viewer/2022071105/5fdf6398c32691773a5a77ae/html5/thumbnails/23.jpg)
Challenge of Combining Platforms23
0
0.2
0.4
0.6
0.8
1
0 100 200 300 400 500 600 700 800
CD
F of
Des
tinat
ions
Number of ASes seen on Path
RIPE
Rate Limited(G) - TS+RIPE+PL
Rate Limited - TS+RIPE+PL
PL
Rate Limited(G) - RIPE
Rate Limited - RIPE
! Combining platforms improves coverage ! … but exhaustive probing is infeasible ! Rate limits mean you have to be smart about what to issue
![Page 24: Sibyl: A Practical Internet Route Oracle · In each round, allocate probing budget to best serve queries Optimize Use of Probing Budget 32! Max utility of traceroutes ! T r: set of](https://reader036.vdocument.in/reader036/viewer/2022071105/5fdf6398c32691773a5a77ae/html5/thumbnails/24.jpg)
Goals
! Take advantage of diverse vantage points ! Efficient use of probing budgets
! High rate, low diversity vantage points like Ark and PL ! Low rate, high diversity vantage points like Atlas and LG
! Support rich queries
Service queries: ! as if we had traceroutes from all vantage points to all
Internet destinations ! even though probing budgets are very restricted
24
![Page 25: Sibyl: A Practical Internet Route Oracle · In each round, allocate probing budget to best serve queries Optimize Use of Probing Budget 32! Max utility of traceroutes ! T r: set of](https://reader036.vdocument.in/reader036/viewer/2022071105/5fdf6398c32691773a5a77ae/html5/thumbnails/25.jpg)
Related Work
! IXPs: Mapped?, RocketFuel, Lord of the Links, Reverse Traceroute, etc ! Issued measurements likely to traverse particular links
! iPlane ! Predicted source/destination paths
! TopHat ! Unified historical and current ! Multiple testbeds? ! Does it exist anymore?
! MPlane ! Srikanth’s talk ! Others?
25
![Page 26: Sibyl: A Practical Internet Route Oracle · In each round, allocate probing budget to best serve queries Optimize Use of Probing Budget 32! Max utility of traceroutes ! T r: set of](https://reader036.vdocument.in/reader036/viewer/2022071105/5fdf6398c32691773a5a77ae/html5/thumbnails/26.jpg)
Goals26
! Take advantage of diverse vantage points ! Efficient use of probing budgets
! High rate, low diversity vantage points like Ark and PL ! Low rate, high diversity vantage points like Atlas and LG
! Support rich queries
Service queries: ! as if we had traceroutes from all vantage points to all
Internet destinations ! even though probing budgets are very restricted
![Page 27: Sibyl: A Practical Internet Route Oracle · In each round, allocate probing budget to best serve queries Optimize Use of Probing Budget 32! Max utility of traceroutes ! T r: set of](https://reader036.vdocument.in/reader036/viewer/2022071105/5fdf6398c32691773a5a77ae/html5/thumbnails/27.jpg)
Goal: ! In each round, allocate probing budget to best serve queries
Optimize Use of Probing Budget27
![Page 28: Sibyl: A Practical Internet Route Oracle · In each round, allocate probing budget to best serve queries Optimize Use of Probing Budget 32! Max utility of traceroutes ! T r: set of](https://reader036.vdocument.in/reader036/viewer/2022071105/5fdf6398c32691773a5a77ae/html5/thumbnails/28.jpg)
Goal: ! In each round, allocate probing budget to best serve queries
Optimize Use of Probing Budget28
![Page 29: Sibyl: A Practical Internet Route Oracle · In each round, allocate probing budget to best serve queries Optimize Use of Probing Budget 32! Max utility of traceroutes ! T r: set of](https://reader036.vdocument.in/reader036/viewer/2022071105/5fdf6398c32691773a5a77ae/html5/thumbnails/29.jpg)
Goal: ! In each round, allocate probing budget to best serve queries
Optimize Use of Probing Budget29
! Max utility of traceroutes
![Page 30: Sibyl: A Practical Internet Route Oracle · In each round, allocate probing budget to best serve queries Optimize Use of Probing Budget 32! Max utility of traceroutes ! T r: set of](https://reader036.vdocument.in/reader036/viewer/2022071105/5fdf6398c32691773a5a77ae/html5/thumbnails/30.jpg)
Goal: ! In each round, allocate probing budget to best serve queries
Optimize Use of Probing Budget30
! Max utility of traceroutes ! Tr: set of traceroutes in the
round is union of those from each platform V
![Page 31: Sibyl: A Practical Internet Route Oracle · In each round, allocate probing budget to best serve queries Optimize Use of Probing Budget 32! Max utility of traceroutes ! T r: set of](https://reader036.vdocument.in/reader036/viewer/2022071105/5fdf6398c32691773a5a77ae/html5/thumbnails/31.jpg)
Goal: ! In each round, allocate probing budget to best serve queries
Optimize Use of Probing Budget31
! Max utility of traceroutes ! Tr: set of traceroutes in the
round is union of those from each platform V
! Utility of set of traceroutes Tr is sum of utility in matching each query q
![Page 32: Sibyl: A Practical Internet Route Oracle · In each round, allocate probing budget to best serve queries Optimize Use of Probing Budget 32! Max utility of traceroutes ! T r: set of](https://reader036.vdocument.in/reader036/viewer/2022071105/5fdf6398c32691773a5a77ae/html5/thumbnails/32.jpg)
Goal: ! In each round, allocate probing budget to best serve queries
Optimize Use of Probing Budget32
! Max utility of traceroutes ! Tr: set of traceroutes in the
round is union of those from each platform V
! Utility of set of traceroutes Tr is sum of utility in matching each query q
! Each platform V has a rate limit budget CV
![Page 33: Sibyl: A Practical Internet Route Oracle · In each round, allocate probing budget to best serve queries Optimize Use of Probing Budget 32! Max utility of traceroutes ! T r: set of](https://reader036.vdocument.in/reader036/viewer/2022071105/5fdf6398c32691773a5a77ae/html5/thumbnails/33.jpg)
Goal: ! In each round, allocate probing budget to best serve queries
Need to solve (rest of talk): ‣What is query language?
‣ How to find paths to match queries, given we can’t issue every traceroute (or know the results before issuing)?
‣ How to solve the optimization efficiently?
Challenges in Optimization33
![Page 34: Sibyl: A Practical Internet Route Oracle · In each round, allocate probing budget to best serve queries Optimize Use of Probing Budget 32! Max utility of traceroutes ! T r: set of](https://reader036.vdocument.in/reader036/viewer/2022071105/5fdf6398c32691773a5a77ae/html5/thumbnails/34.jpg)
Query language
! How to express what paths you care about? ! Sibyl in its current state:
! Regular expressions over hops ! All evaluation with AS-level hops, but internal representation is PoPs
! Supports two types of queries: ! Existence query: Give me (at least) one path that matches
! A path that goes through Sprint on the way to USC? Sprint-.*-USC$
! Diversity query: Give me as diverse a set of matching paths as possible ! Suspected problem on peering between GTT and Level3?
\(^.*-(GTT-Level3|Level3-GTT)-.*$\) ! Actually, NTT-GTT too! Other GTT peers?
\(^.*-[^NTT-Level3]-GTT-[^NTT-Level3]-.*$\)
! Thoughts?
34
![Page 35: Sibyl: A Practical Internet Route Oracle · In each round, allocate probing budget to best serve queries Optimize Use of Probing Budget 32! Max utility of traceroutes ! T r: set of](https://reader036.vdocument.in/reader036/viewer/2022071105/5fdf6398c32691773a5a77ae/html5/thumbnails/35.jpg)
Goal: ! In each round, allocate probing budget to best serve queries
Need to solve (rest of talk): ‣What is query language? Regular expressions over hops.
‣ How to find paths to match queries, given we can’t issue every traceroute (or know the results before issuing)?
‣ How to solve the optimization efficiently?
Challenges in Optimization35
![Page 36: Sibyl: A Practical Internet Route Oracle · In each round, allocate probing budget to best serve queries Optimize Use of Probing Budget 32! Max utility of traceroutes ! T r: set of](https://reader036.vdocument.in/reader036/viewer/2022071105/5fdf6398c32691773a5a77ae/html5/thumbnails/36.jpg)
Finding Paths to Match Queries
1. Find candidate (v1 to d2) by splicing existing traceroutes a. Find historical traceroute t1 from a vantage point v1 to
destination d1 that matches a prefix qp of q b. Find historical traceroute t2 from a vantage point v2 to
destination d2 that matches a prefix qp of q s.t.: i. t1 and t2 intersect at a common PoP p ii. v1…p…d2=qpqs=q
c. Nominate v1 to d2 as a candidate to match q
2. Predict probability that traceroute (v1 to d2) matches q a. Generate all possible spliced paths from v1 to d2
b. Rate how likely each spliced path is to be correct c. Probability of matching q is sum of likelihood of the spliced
paths that match
36
![Page 37: Sibyl: A Practical Internet Route Oracle · In each round, allocate probing budget to best serve queries Optimize Use of Probing Budget 32! Max utility of traceroutes ! T r: set of](https://reader036.vdocument.in/reader036/viewer/2022071105/5fdf6398c32691773a5a77ae/html5/thumbnails/37.jpg)
Finding Paths to Match Queries
1. Find candidate (v1 to d2) by splicing existing traceroutes a. Find historical traceroute t1 from a vantage point v1 to
destination d1 that matches a prefix qp of q b. Find historical traceroute t2 from a vantage point v2 to
destination d2 that matches a prefix qp of q s.t.: i. t1 and t2 intersect at a common PoP p ii. v1…p…d2=qpqs=q
c. Nominate traceroute (v1 to d2) as a candidate to match q
2. Predict probability that traceroute (v1 to d2) matches q a. Generate all possible spliced paths from v1 to d2
b. Rate how likely each spliced path is to be correct c. Probability of matching q is sum of likelihood of the spliced
paths that match
37
![Page 38: Sibyl: A Practical Internet Route Oracle · In each round, allocate probing budget to best serve queries Optimize Use of Probing Budget 32! Max utility of traceroutes ! T r: set of](https://reader036.vdocument.in/reader036/viewer/2022071105/5fdf6398c32691773a5a77ae/html5/thumbnails/38.jpg)
Finding Paths to Match Queries
1. Find candidate (v1 to d2) by splicing existing traceroutes a. Find historical traceroute t1 from a vantage point v1 to
destination d1 that matches a prefix qp of q b. Find historical traceroute t2 from a vantage point v2 to
destination d2 that matches a prefix qp of q s.t.: i. t1 and t2 intersect at a common PoP p ii. v1…p…d2=qpqs=q
c. Nominate traceroute (v1 to d2) as a candidate to match q
2. Predict probability that traceroute (v1 to d2) matches q a. Generate all possible spliced paths from v1 to d2
b. Rate how likely each spliced path is to be correct c. Probability of matching q is sum of likelihood of the spliced
paths that match
38
![Page 39: Sibyl: A Practical Internet Route Oracle · In each round, allocate probing budget to best serve queries Optimize Use of Probing Budget 32! Max utility of traceroutes ! T r: set of](https://reader036.vdocument.in/reader036/viewer/2022071105/5fdf6398c32691773a5a77ae/html5/thumbnails/39.jpg)
How Likely is a Spliced Path Correct?
! Train system to recognizelikely vs unlikely splices ! Features include:
! AS relationships atsplice point
! AS path similarity with other possible splices
! AS path inflation vsshortest prediction
! System scores splicedpath based on features
! Evaluation shows a positive score from system usually means the prediction is correct
39
0
0.05
0.1
0.15
0.2
0.25
0.3
-10 -8 -6 -4 -2 0 2 4 6
Prob
abilit
y D
ensi
ty
RuleFit Score
Correct PredictionsIncorrect Predictions
![Page 40: Sibyl: A Practical Internet Route Oracle · In each round, allocate probing budget to best serve queries Optimize Use of Probing Budget 32! Max utility of traceroutes ! T r: set of](https://reader036.vdocument.in/reader036/viewer/2022071105/5fdf6398c32691773a5a77ae/html5/thumbnails/40.jpg)
Goal: ! In each round, allocate probing budget to best serve queries
Need to solve (rest of talk): ‣What is query language? Regular expressions over hops.
‣ How to find paths to match queries, given we can’t issue every traceroute (or know the results before issuing)? Splice existing traceroutes to predict new ones, learn which predictions are good. ‣ How to solve the optimization efficiently?
Challenges in Optimization40
![Page 41: Sibyl: A Practical Internet Route Oracle · In each round, allocate probing budget to best serve queries Optimize Use of Probing Budget 32! Max utility of traceroutes ! T r: set of](https://reader036.vdocument.in/reader036/viewer/2022071105/5fdf6398c32691773a5a77ae/html5/thumbnails/41.jpg)
! In each round, allocate probing budget to best serve queries ! Solve greedily
! Greedy heuristic known to perform well for submodular function subject to partition constraints
Optimize Use of Probing Budget41
! Submodular function: function on sets that exhibits diminishing returns
! Partition constraints: each traceroute subject to at most one constraint
![Page 42: Sibyl: A Practical Internet Route Oracle · In each round, allocate probing budget to best serve queries Optimize Use of Probing Budget 32! Max utility of traceroutes ! T r: set of](https://reader036.vdocument.in/reader036/viewer/2022071105/5fdf6398c32691773a5a77ae/html5/thumbnails/42.jpg)
Goal: ! In each round, allocate probing budget to best serve queries
Need to solve (rest of talk): ‣What is query language? Regular expressions over hops.
‣ How to find paths to match queries, given we can’t issue every traceroute (or know the results before issuing)? Splice existing traceroutes to predict new ones, learn which predictions are good. ‣ How to solve the optimization efficiently? Greedily.
Challenges in Optimization42
![Page 43: Sibyl: A Practical Internet Route Oracle · In each round, allocate probing budget to best serve queries Optimize Use of Probing Budget 32! Max utility of traceroutes ! T r: set of](https://reader036.vdocument.in/reader036/viewer/2022071105/5fdf6398c32691773a5a77ae/html5/thumbnails/43.jpg)
Evaluation: Does Sibyl efficiently allocate probing budget? (I)
! Prediction is effective: Sibyl satisfies 80% as many queries as an Oracle that knows all paths but is subject to rate limits
! Important to assess likelihood: Sibyl satisfies 107% more than Randomly selecting among spliced candidates
43
0
0.2
0.4
0.6
0.8
1
0 5 10 15 20 25 30 35 40 45 50
Frac
tion
of Q
uerie
s Sa
tisfie
d
Round
Oracle LimitedSibyl
Random Candidates
![Page 44: Sibyl: A Practical Internet Route Oracle · In each round, allocate probing budget to best serve queries Optimize Use of Probing Budget 32! Max utility of traceroutes ! T r: set of](https://reader036.vdocument.in/reader036/viewer/2022071105/5fdf6398c32691773a5a77ae/html5/thumbnails/44.jpg)
Evaluation: Does Sibyl efficiently allocate probing budget? (II)
! By combining diverse but rate limited RIPE Atlas vantage points with the smaller number of PlanetLab vantage points, Sibyl matches nearly as many queries as RIPE Atlas without rate limits
44
0
0.2
0.4
0.6
0.8
1
0 5 10 15 20 25 30 35 40 45 50
Frac
tion
of Q
uerie
s Sa
tisfie
d
Round
RIPE unlimitedSibyl - PL unlimited and RIPE limited
PL unlimitedSibyl - RIPE limited
![Page 45: Sibyl: A Practical Internet Route Oracle · In each round, allocate probing budget to best serve queries Optimize Use of Probing Budget 32! Max utility of traceroutes ! T r: set of](https://reader036.vdocument.in/reader036/viewer/2022071105/5fdf6398c32691773a5a77ae/html5/thumbnails/45.jpg)
Conclusion
¬ Lots of route vantage points exist,but our interface to them is extremely limited"Little unification of historical and live measurements"Each platform is independent"Can only ask one question:
“What is the path from here to there?”¬ Sibyl: A unified platform for Internet path queries
"Goal: Get relevant paths with properties of interest, without limiting queries by testbed, source, or destination
"Approach: Predict paths based on previously measured ones, and optimize budget use based on predictions
45