periscope: standardizing and orchestrating looking glass ...€¦ · high-level goals and...

23
PERISCOPE: Standardizing and Orchestrating Looking Glass Querying Vasileios Giotsas [email protected]

Upload: others

Post on 13-Aug-2020

7 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: PERISCOPE: Standardizing and Orchestrating Looking Glass ...€¦ · High-level goals and principles of Periscope 3 • Respect resource limitations and preserve conservative query

PERISCOPE: Standardizing and Orchestrating Looking Glass Querying

Vasileios Giotsas

[email protected]

Page 2: PERISCOPE: Standardizing and Orchestrating Looking Glass ...€¦ · High-level goals and principles of Periscope 3 • Respect resource limitations and preserve conservative query

Purpose of this talk

2

•  Inform the operational community about Periscope.

•  Solicit feedback:

o Details that we may have missed o Ways to make Periscope more useful o  Technical insights, usage statistics, historical data …

•  Encourage engagement and contributions

Page 3: PERISCOPE: Standardizing and Orchestrating Looking Glass ...€¦ · High-level goals and principles of Periscope 3 • Respect resource limitations and preserve conservative query

High-level goals and principles of Periscope

3

•  Respect resource limitations and preserve conservative query rates

•  Provide transparency and accountability in Looking

Glass querying. •  Be responsive and compliant to operators’ requests.

Periscope unifies the discovery and querying of Looking Glasses under a uniform API

Page 4: PERISCOPE: Standardizing and Orchestrating Looking Glass ...€¦ · High-level goals and principles of Periscope 3 • Respect resource limitations and preserve conservative query

Advantages of LG measurements

•  LGs are among the few public measurement tools that provide direct interfaces to routers:

o Access to non-transitive BGP attributes (e.g. LocPref). o Co-located BGP and traceroute/ping monitors. o Vantage Points at colocation facilities, IXPs, datacenters. o Vantage Points in ASes not covered by other platforms

4

-  Motamedi, R., Rejaie, R., & Willinger, W. (2015). A Survey of Techniques for Internet Topology Discovery. Communications Surveys & Tutorials, IEEE, 17(2), 1044-1065.

-  A. Khan, T. Kwon, H.-c. Kim, & Y. Choi, “AS-level Topology Collection Through Looking Glass Servers,” in IMC ’13

Page 5: PERISCOPE: Standardizing and Orchestrating Looking Glass ...€¦ · High-level goals and principles of Periscope 3 • Respect resource limitations and preserve conservative query

Problems with LGs

•  Lack of standardization and consistency:

o Disparate interfaces and output formats

•  Hard to discover and track:

o No centralized index of LGs, their locations and their capabilities

•  High attrition rates:

o Hard to maintain an up-to-date list of LGs

5

M. Stubbig, “Looking Glass API.” https://tools.ietf.org/html/draft-mst-lgapi-04, May 2016.

Page 6: PERISCOPE: Standardizing and Orchestrating Looking Glass ...€¦ · High-level goals and principles of Periscope 3 • Respect resource limitations and preserve conservative query

Problems with LGs

•  Lack of standardization and consistency:

o Disparate interfaces and output formats

•  Hard to discover and track:

o No centralized index of LGs, their locations and their capabilities

•  High attrition rates:

o Hard to maintain an up-to-date list of LGs

6

M. Stubbig, “Looking Glass API.” https://tools.ietf.org/html/draft-mst-lgapi-04, May 2016.

Periscope implements a common querying scheme, indexing and data persistence features

Page 7: PERISCOPE: Standardizing and Orchestrating Looking Glass ...€¦ · High-level goals and principles of Periscope 3 • Respect resource limitations and preserve conservative query

Periscope Workflow

7

Page 8: PERISCOPE: Standardizing and Orchestrating Looking Glass ...€¦ · High-level goals and principles of Periscope 3 • Respect resource limitations and preserve conservative query

Periscope Architecture

8

•  For each Periscope User the controller allocates a different cloud-hosted VM instance to execute the user queries.

•  Each VM instance takes an IP address from the cloud operator’s address space.

•  The controller implements throttling of query rates.

Page 9: PERISCOPE: Standardizing and Orchestrating Looking Glass ...€¦ · High-level goals and principles of Periscope 3 • Respect resource limitations and preserve conservative query

•  Two limits control the rate of issued LG queries:

o User-specific: Each user can issue only 1 query per 5 minutes to the same LG.

o  LG-specific: Each LG will execute up to 3 queries per minute from all the users.

•  A query is allocated if neither limit is exceeded.

•  Exponential back off when LGs respond with errors

9

Periscope enforces per-user and per-LG query rate limits

Page 10: PERISCOPE: Standardizing and Orchestrating Looking Glass ...€¦ · High-level goals and principles of Periscope 3 • Respect resource limitations and preserve conservative query

o Periscope sets three custom HTTP headers in every request:

o  "X-Request-Origin: periscope" o  "X-Request-For:<user-ip>" o  "X-Request-Client:<gcloud OR aws OR ark>"

•  Periscope IPs configured with reverse DNS records. •  Periscope assigns an LG client with a static IP address to

each Periscope user to allow persistence identification.

10

Transparency and accountability

Page 11: PERISCOPE: Standardizing and Orchestrating Looking Glass ...€¦ · High-level goals and principles of Periscope 3 • Respect resource limitations and preserve conservative query

Coverage of Periscope LGs

11

•  572 ASNs with 2,951 VPs.•  77 countries, 492 cities.

•  > 75% of VPs provide both traceroute and BGP.

•  > 60% of LGs support IPv6.

Page 12: PERISCOPE: Standardizing and Orchestrating Looking Glass ...€¦ · High-level goals and principles of Periscope 3 • Respect resource limitations and preserve conservative query

The topology observed by LGs is largely complementary to other

platforms

12

•  Queried 2,000 randomly selected IPs from each LG and from each VP available in RIPE Atlas and CAIDA’s Ark

Page 13: PERISCOPE: Standardizing and Orchestrating Looking Glass ...€¦ · High-level goals and principles of Periscope 3 • Respect resource limitations and preserve conservative query

Benefits

13

•  Easier to discover and query new VPs for reverse paths

•  Easier policing of Looking Glass usage through an access-control layer

•  Improved utilization and load distribution

•  Avoid redundant measurements by archiving and making public historical measurement data.

Page 14: PERISCOPE: Standardizing and Orchestrating Looking Glass ...€¦ · High-level goals and principles of Periscope 3 • Respect resource limitations and preserve conservative query

Request for contributions

•  Please contribute feedback regarding: 1. Per user query limits 2. Global query limits 3. Opt-in or opt-out requests

•  Utilization statistics and archived queries.

•  Funding, infrastructure support (VM instances, cloud computing credit).

14

Page 15: PERISCOPE: Standardizing and Orchestrating Looking Glass ...€¦ · High-level goals and principles of Periscope 3 • Respect resource limitations and preserve conservative query

Conclusion

•  Periscope goals:

o  Unify LGs under a uniform API. o  Enforce per-user and global query limits. o  Provide Transparency and accountability

•  Access request: [email protected] • Documentation: http://www.caida.org/tools/utilities/looking-glass-api/

15

Page 16: PERISCOPE: Standardizing and Orchestrating Looking Glass ...€¦ · High-level goals and principles of Periscope 3 • Respect resource limitations and preserve conservative query

BACKUP SLIDES

Page 17: PERISCOPE: Standardizing and Orchestrating Looking Glass ...€¦ · High-level goals and principles of Periscope 3 • Respect resource limitations and preserve conservative query

L

Support for multiple concurrent users requires multiple LG clients

17

LG

1.1.1.1 1.1.1.2

LGs use the users’ IP address to impose per-user querying quotas

LG client

1.1.1.2

1.1.1.2

Native LG querying

LG client

2.2.2.1 2.2.2.2

1.1.1.2

1.1.1.2

LG client

Single-client Periscope

2.2.2.1

Putting multiple Periscope users behind the same IP causes all the users to share the quotas of a single user

Multi-client Periscope ✔ ✘

Using different client per user allows Periscope to provide the same querying quotas as native querying

Per

isco

pe

Per

isco

pe

L

Page 18: PERISCOPE: Standardizing and Orchestrating Looking Glass ...€¦ · High-level goals and principles of Periscope 3 • Respect resource limitations and preserve conservative query

Traceroute.org

LG Ingestion Workflow

http://www.phplg.com/ https://github.com/Cha0sgr/BGP-Looking-Glass-NG http://sourceforge.net/projects/klg http://mrlg.op-sec.us/

PeeringDB

Automatic configuration

extraction

Manual inspection

needed

Web Crawler LG URLs

https://www.gw.com/sw/stripes/

18

HTML forms

LG templates

No

LG attributers

Yes

Health checker

Successfulmapping

Page 19: PERISCOPE: Standardizing and Orchestrating Looking Glass ...€¦ · High-level goals and principles of Periscope 3 • Respect resource limitations and preserve conservative query

Traceroute.org

LG Ingestion Workflow

http://www.phplg.com/ https://github.com/Cha0sgr/BGP-Looking-Glass-NG http://sourceforge.net/projects/klg http://mrlg.op-sec.us/

PeeringDB

Automatic configuration

extraction

Manual inspection

needed

Web Crawler LG URLs

https://www.gw.com/sw/stripes/

19

HTML forms

LG templates

No

LG attributers

Yes

Successfulmapping

Health checker

Filters-outdeadURLs&extractsHTMLforms

Page 20: PERISCOPE: Standardizing and Orchestrating Looking Glass ...€¦ · High-level goals and principles of Periscope 3 • Respect resource limitations and preserve conservative query

Traceroute.org

LG Ingestion Workflow

http://www.phplg.com/ https://github.com/Cha0sgr/BGP-Looking-Glass-NG http://sourceforge.net/projects/klg http://mrlg.op-sec.us/

PeeringDB

Automatic configuration

extraction

Manual inspection

needed

Web Crawler LG URLs

https://www.gw.com/sw/stripes/

20

HTML forms

LG templates

No

LG attributers

Yes

Health checker

Successfulmapping

Automa>callyextractedLGspecifica>onsusedtointerpretAPIcallstoLGqueries

Page 21: PERISCOPE: Standardizing and Orchestrating Looking Glass ...€¦ · High-level goals and principles of Periscope 3 • Respect resource limitations and preserve conservative query

Load Distribution among LGs

21 AS3356 (High query load) AS680 (Low query load)

Page 22: PERISCOPE: Standardizing and Orchestrating Looking Glass ...€¦ · High-level goals and principles of Periscope 3 • Respect resource limitations and preserve conservative query

Load Distribution among Platforms

22

AS680 (RIPE Atlas probe) AS680 (Looking Glass)

Page 23: PERISCOPE: Standardizing and Orchestrating Looking Glass ...€¦ · High-level goals and principles of Periscope 3 • Respect resource limitations and preserve conservative query

Case study: ARTEMIS

23 G. Chaviaras et al. ARTEMIS: Real-Time Detection and Automatic Mitigation for BGP Prefix Hijacking. ACM SIGCOMM 2016