Characterizing IPv4 Anycast Adoptjon and Deployment
Dario Rossi Professor dario.rossi@telecom-paristech.fr htup://www.enst.fr/~drossi/anycast Joint work with D.Cicalese, J. Auge, D. Joumblatu and T. Friedman
Characterizing IPv4 Anycast Adoptjon and Deployment Dario Rossi - - PowerPoint PPT Presentation
Characterizing IPv4 Anycast Adoptjon and Deployment Dario Rossi Professor dario.rossi@telecom-paristech.fr htup://www.enst.fr/~drossi/anycast Joint work with D.Cicalese, J. Auge, D. Joumblatu and T. Friedman Talk Teaser A seminal work [4] at
Dario Rossi Professor dario.rossi@telecom-paristech.fr htup://www.enst.fr/~drossi/anycast Joint work with D.Cicalese, J. Auge, D. Joumblatu and T. Friedman
12
Note: everything you see in this talk is available as open source at htup://www.telecom-paristech.fr/~drossi/anycast Note: everything you see in this talk is available as open source at htup://www.telecom-paristech.fr/~drossi/anycast
– Motjvatjon, defjnitjon & state of the art
– Recall on Latency-based anycast geolocatjon technique [1]
– IPv4 anycast censuses [2] – Demo, source code, ground truth and more [3]
– Study infrastructure evolutjon & usage – Applicatjon to BGP hijack detectjon
3
[1] D. Cicalese et al. A Fistgul of Pings: Accurate and Lightweight Anycast Enumeratjon and Geolocatjon, IEEE INFOCOM, Apr 2015. [2] D. Cicalese et al. Characterizing IPv4 Anycast Adoptjon and Deployment, ACM CoNEXT, Dec 2015. [3] htup://www.telecom-paristech.fr/~drossi/anycast
O(100ms) O(10ms)
400ms delay , 0.7% less searches (=less ads (=less $)) : ms (2sec) reduces by 1.2% (4.8%) 5sec speedup, +25% visit, +12% revenue
O(10ms) O(10ms)
redirectjon, URL rewritjng
load
metrics
DNS C1 X1 X2 X3 x.com? X1 IP C2 C3
servers
multjple points of origin
(Global vs Local)
IP routjng metrics
(e.g., connectjon-oriented services)
C1 X X X C2 C3 BGP announces IP forwarding
– E.g., Google 8.8.8.8 or CloudFlare, or EdgeCast or root servers, etc. Mountain View, CA (IP2Locatjon) New York, NY (Geobytes) United States (Maxmind)
?????
2 m s f r
E U t
S ? ? ? ? ? S p e e d
l i g h t violaton ! !
Tools using distributed measurement aren’t betuer ! Single (tme varying) answer Unknown accuracy
Commercial databases Distributed measurement
8
ICMP packets are ~3x slower than lightspeed
2 m s f r
E U t
S ? ? ? ? ? S p e e d
l i g h t violaton ! ! Distributed measurement
– E.g., Google 8.8.8.8 or CloudFlare, or EdgeCast or root servers, etc.
– Leverage inconsistency
– This was used in NANOG’59 to detect who are the anycasters – We raise this to the next level and geolocate where they are
– Lightweight: few pings – Protocol agnostc: ICMP probes – Accurate against ground truth – Fast: greedy, but as good as costly optjmum solutjon
9
Outline Background Part I: iGreedy Part II: Census Ongoing work Summary
Tools using distributed measurement aren’t betuer ! But they could!
Hey, that must be anycast! Hey, that must be anycast!
Main difgerentators
enumerate and geolocate anycast instances
instances
10
BG FG FG
all IPv4
Outline Background Part I: iGreedy Part II: Census Ongoing work Summary
PlanetLab (+ RIPE Atlas)
– Broad: apply iGreedy to all IPv4 / 24 for each census – Costly: 3 Billions RIPE Atlas credits, per census; combine PlanetLab and RIPE Atlas (backup slides) – Detailed: complementary nmap portscan of detected anycast replicas
Census iGreedy
11
Outline Background Part I: iGreedy Part II: Census Ongoing work Summary
Census iGreedy PlanetLab and RIPE Atlas
– Lightweight: O(1) pings per target per vantage point – DNS: validate with RIPE Atlas DNS CHAOS ground truth
– PlanetLab
– CDN: ground truth with new protocol- specifjc technique (HTTP headers; see paper) – Protocols: ICMP, DNS/UDP, DNS/TCP, HTTP/TCP, etc.
iGreedy
Measure Latency
Planetlab/RIPE Atlas
Measure Latency
Planetlab/RIPE Atlas
Enumerate Solve MIS
Brute force (Optjmum) Greedy (5-approx)
Enumerate Solve MIS
Brute force (Optjmum) Greedy (5-approx)
Geolocate Classifjcatjon
Maximum likelihood pick the largest city
Geolocate Classifjcatjon
Maximum likelihood pick the largest city
Detect Speed of light violatjons Detect Speed of light violatjons
Scalability Infrastructure Lightweight
Iterate
Feedback Filter latency noise Measure Detect Enumerate Geolocate Iterate
12
Outline Background Part I: iGreedy Part II: Census Ongoing work Summary
Increase recall
Measure Latency
Planetlab/RIPE Atlas
Measure Latency
Planetlab/RIPE Atlas
Enumerate Solve MIS
Brute force (Optjmum) Greedy (5-approx)
Enumerate Solve MIS
Brute force (Optjmum) Greedy (5-approx)
Geolocate Classifjcatjon
Maximum likelihood pick the largest city
Geolocate Classifjcatjon
Maximum likelihood pick the largest city
Detect Speed of light violatjons Detect Speed of light violatjons
Scalability Infrastructure Lightweight
Iterate
Feedback Filter latency noise Measure Detect Enumerate Geolocate Iterate
13
Increase recall
Median latency stretch
Importance of side-channel infos Paris-Madrid 1053Km
14
– Confjrms iGreedy works for non-DNS services – Select a probing protocol and rate – Optjmize data storage and processing – Infrastructure consideratjon (PlanetLab vs RIPE) – Scale up the iGreedy technique (& be gentle)
– At a glance: Geographic heatmap – Big fjshes: Top-50 deployments – Services: Complementary port-scan – Web interface: What’s available
Backup slides
1
1
IPv4/32 census by ANT/ISI
1
Administratjvely prohibited /24 are probed only by 1 VP Avoid
targets Greylist
1
Service agnostjc: Higher recall Results match with difgerent protocols
2
Avoid VP
/fjrewalls
2
Avoid VP
/fjrewalls
than 10k hosts/sec/VP
tjme between ICMP echo request from difgerent VPs to the same target
aggregate at the VP, that receives 10k replies/sec
VP
are fjrewalled– they drop ICMP reply traffjc
no problem with 1k req/sec
2
100ms /run => 1wk Optjmized to 3hrs
2
IP/24 ASes City Country Replicas 897 100 71 38 11,598 RIPE Atlas PlanetLab
Monthly censuses Data since Dec 2015 Exported since Mai 2016
(Top 100 in the paper)
26
Big fjshes! Edgecast CloudFlare Google Yahoo Microsof OVH Amazon ATT Sprint Level3 Linkedin Facebook Verisign Prolexic
Heterogeneous IP Footprint Important ASes Popular Web content Service diversity
27
!! ++
– Orthogonal to spatjal dimension of census – Example from historic RIPE Atlas data
28
– Orthogonal to actjve measurement – Use passive measurement at some ISP point of presence – Cross check with IP/24 anycast list
BGP hijack in the BGP lingo
to advertjse the prefjx or not
29
Credits: renesys
Reactve scan on BGP announces
and issue iGreedy on suspicion
Problem
arrive late at some monitor
Proactve Internet-wide scan
(or an IPv4 subset with opt-in/opt-out)
Problem
(but detectjon easier than geolocatjon)
Faculty Research Award
BGP hijack in the BGP lingo
to advertjse the prefjx or not
30
Credits: renesys
Reactve scan on BGP announces
and issue iGreedy on suspicion
Problem
arrive late at some monitor
Proactve Internet-wide scan
(or an IPv4 subset with opt-in/opt-out)
Problem
(but detectjon easier than geolocatjon)
Faculty Research Award Winner of the CAIDA Hackaton 2016 (HIJACK 2)
BGP hijack in the BGP lingo
to advertjse the prefjx or not
31
Credits: renesys
Reactve scan on BGP announces
and issue iGreedy on suspicion
Problem
arrive late at some monitor
Proactve Internet-wide scan
(or an IPv4 subset with opt-in/opt-out)
Problem
(but detectjon easier than geolocatjon)
Faculty Research Award Credits: renesys
Service soon available
store the last hour worth of censuses on demand query, in case of suspicion
32
Outline Background Part I: iGreedy Part II: Census Ongoing work Summary
This talk: [1] D. Cicalese , D. Joumblatu, D. Rossi, J, Auge, M.O Buob, T. Friedman. A Fistgul of Pings: Accurate and Lightweight Anycast Enumeraton and Geolocaton , IEEE INFOCOM, 2015 [2] D. Cicalese , J. Auge, D. Joumblatu, T. Friedman, D. Rossi, Characterizing IPv4 Anycast Adopton and Deployment , ACM CoNEXT, Dec 2015 [3] htup://www.telecom-paristech.fr/~drossi/anycast Related:
33
Outline Background Part I: iGreedy Part II: Census Ongoing work Summary
34
35
36
37 37
Not even need for fjltering large disks, as iGreedy sorts disk by increasing size, bad disks implicitly fjltered out in the solutjon!! Not even need for fjltering large disks, as iGreedy sorts disk by increasing size, bad disks implicitly fjltered out in the solutjon!!
38
– In theory: Greedy = 5x-approximatjon of global optjmum – In practjce: Greedy solutjon ≈ Brute Force solutjon – Iteratjon introduces a signifjcant benefjt – O(100ms) greedy vs O(1000sec) brute force (for ~300 nodes) In practjce, greedy is good enough In practjce, greedy is good enough
39
Experimental results in [JSAC’16] gathered with open source sofware and dataset Avail in the igreedy-v1.0 sofware at htup://www.telecom-paristech.fr/~drossi/anycast
40
Very noisy delay measurements. Only 10% of disks are smaller than 1000km !! Very noisy delay measurements. Only 10% of disks are smaller than 1000km !!
41
Delay informatjon: useful for enumeratjon, bad for geolocatjon !! Delay informatjon: useful for enumeratjon, bad for geolocatjon !! In 90% of the cases, over 100 citjes in a disk In 90% of the cases, over 100 citjes in a disk Picking one city at random: less than 1/100 success in 90% of disks Picking one city at random: less than 1/100 success in 90% of disks
42
New technique for CDN ground truth HTTP HEAD request, manual inspectjon. CDNs encode IATA locatjons in headers
New technique for CDN ground truth HTTP HEAD request, manual inspectjon. CDNs encode IATA locatjons in headers
p
i = α
c
i
c
j
j
+ (1−α) d
i
d
j
j
– Map each disk Dp to most likely city – Compute likelihood (p) of each city in disk based on:
respectjve likelihoods
Frankfurt p=0.30 Zurich p=0.10 Munich p=0.60 Munich
Ratjonale: users lives in densely populated area; to serve users, servers are placed close to citjes In practjce, pick the largest city is best ! (Argmax with α=1) In practjce, pick the largest city is best ! (Argmax with α=1)
44
Optjmize storage (over 10x) Optjmize processing (have to open 300 fjles in parallel for sortjng due to LFSR orded to avoid overloading destjnatjon) Optjmize storage (over 10x) Optjmize processing (have to open 300 fjles in parallel for sortjng due to LFSR orded to avoid overloading destjnatjon) This is OLD. New censuses (afer Dec 2015) are faster; and we changed the format (again) This is OLD. New censuses (afer Dec 2015) are faster; and we changed the format (again)
45
For BGP hijack detectjon, removing ICMP fjlters yields a 10x speedup ! For BGP hijack detectjon, removing ICMP fjlters yields a 10x speedup ! src
46
ICMP service agnostjc, maximizes (*) reply ICMP service agnostjc, maximizes (*) reply (*) CloudFlare stopped replying
Recall[%]
47
1.8M credits for the top-100 1.8M credits for the top-100 PlanetLab censuses RIPE Atlas PlanetLab 150K credits for 2-instances deployments
– Greater coverage, but artjfacts due to geolocatjon inaccuracy
least 100km far apart
– Betuer than PlaneLab for fewer VPs
geolocatjon tags + those VP that yielded true positjve for CDN/DNS
– Best for RIPE
– Even betuer
48
Top-100 anycast IPv4 deployments All anycast IPv4 deployment
Footprint VPs ASes Country RIPE Atlas (all) 7k 2k 150 RIPE Atlas (subset) 200 139 83 PlanetLab ~300 180 30
Union makes the force! Union makes the force!
– Greater coverage, but artjfacts due to geolocatjon inaccuracy
100km far apart
– Betuer than PlaneLab for fewer VPs
geolocatjon tags + those VP that yielded true positjve for CDN/DNS
– Best for RIPE
– Even betuer
49
Footprint VPs ASes Country RIPE Atlas (all) 7k 2k 150 RIPE Atlas (subset) 200 139 83 PlanetLab ~300 180 30
Infrastructure ? (Microsof IP/24 Example)
49
Vantage point Not always :( Not always :(
sets the geolocatjon
system-auto-geoip-city
50
Pretuy messy. We also have picteures of PlanetLab nodes in Navajo reserves or swimming in the ocean Pretuy messy. We also have picteures of PlanetLab nodes in Navajo reserves or swimming in the ocean