92
Using RIPE Atlas for network measurement and monitoring Sebastian Castro, NZRS (Material kindly provided by RIPE NCC) APRICOT, Auckland, February 2016

Using RIPE Atlas for network measurement and monitoring · Using RIPE Atlas for network measurement and monitoring ... network health (e.g. Nagios and Icinga) • These tools can

  • Upload
    vanthuy

  • View
    219

  • Download
    1

Embed Size (px)

Citation preview

Page 1: Using RIPE Atlas for network measurement and monitoring · Using RIPE Atlas for network measurement and monitoring ... network health (e.g. Nagios and Icinga) • These tools can

Using RIPE Atlas for network measurement and monitoring Sebastian Castro, NZRS (Material kindly provided by RIPE NCC) APRICOT, Auckland, February 2016

Page 2: Using RIPE Atlas for network measurement and monitoring · Using RIPE Atlas for network measurement and monitoring ... network health (e.g. Nagios and Icinga) • These tools can

Source: RIPE NCC

•  Learn how to: Benefit from using RIPE Atlas measurements for network monitoring and troubleshooting Use API calls to create measurements Integrate RIPE Atlas with existing monitoring systems

•  Opportunity for hands-on practice

Goals

Auckland, Feb 2016 APRICOT: RIPE Atlas Tutorial 2

Page 3: Using RIPE Atlas for network measurement and monitoring · Using RIPE Atlas for network measurement and monitoring ... network health (e.g. Nagios and Icinga) • These tools can

Source: RIPE NCC

•  I assume you have already used RIPE Atlas

•  Do you have a RIPE NCC Access account? •  If not - quickly create one: ripe.net/register

•  Do you have credits to spend?

•  If not - tell me to transfer some credits

Prerequisites

Auckland, Feb 2016 APRICOT: RIPE Atlas Tutorial 3

Page 4: Using RIPE Atlas for network measurement and monitoring · Using RIPE Atlas for network measurement and monitoring ... network health (e.g. Nagios and Icinga) • These tools can

Source: RIPE NCC

•  What is your background? network operator? software engineer / programmer? data scientist? sysadmin? other? please specify :-)

Warm-up question

Auckland, Feb 2016 APRICOT: RIPE Atlas Tutorial 4

Page 5: Using RIPE Atlas for network measurement and monitoring · Using RIPE Atlas for network measurement and monitoring ... network health (e.g. Nagios and Icinga) • These tools can

Source: RIPE NCC

• Introduction to RIPE Atlas • Creating measurements • Integration with network monitoring systems

• Real-time performance monitoring • Take part in the RIPE Atlas community • News:

• CLI Toolset • Additional slides

Overview

Auckland, Feb 2016 APRICOT: RIPE Atlas Tutorial 5

Page 6: Using RIPE Atlas for network measurement and monitoring · Using RIPE Atlas for network measurement and monitoring ... network health (e.g. Nagios and Icinga) • These tools can

Source: RIPE NCC

Introduction to RIPE Atlas

Auckland, Feb 2016 APRICOT: RIPE Atlas Tutorial 6

Page 7: Using RIPE Atlas for network measurement and monitoring · Using RIPE Atlas for network measurement and monitoring ... network health (e.g. Nagios and Icinga) • These tools can

Source: RIPE NCC

•  RIPE Atlas is a global active measurements platform

•  Goal: view Internet reachability

•  Probes hosted by volunteers Small probes Anchors

•  Data publicly available

Introduction

Auckland, Feb 2016 APRICOT: RIPE Atlas Tutorial 7

Page 8: Using RIPE Atlas for network measurement and monitoring · Using RIPE Atlas for network measurement and monitoring ... network health (e.g. Nagios and Icinga) • These tools can

Source: RIPE NCC

RIPE Atlas coverage

Auckland, Feb 2016 APRICOT: RIPE Atlas Tutorial 8

Page 9: Using RIPE Atlas for network measurement and monitoring · Using RIPE Atlas for network measurement and monitoring ... network health (e.g. Nagios and Icinga) • These tools can

Source: RIPE NCC

•  Ongoing global measurements towards root nameservers

Visualised as Internet traffic maps

•  Ongoing regional measurements towards “anchors”

•  Users can run customised measurements ping, traceroute, DNS, SSL/TLS and NTP

RIPE Atlas results

Auckland, Feb 2016 APRICOT: RIPE Atlas Tutorial 9

Page 10: Using RIPE Atlas for network measurement and monitoring · Using RIPE Atlas for network measurement and monitoring ... network health (e.g. Nagios and Icinga) • These tools can

Source: RIPE NCC

• 9,200+ probes connected

• 5,000+ active users in the last quarter • 2,500+ results collected per second • 35,000+ customised measurements weekly

Numbers for January 2016

Auckland, Feb 2016 APRICOT: RIPE Atlas Tutorial 10

Page 11: Using RIPE Atlas for network measurement and monitoring · Using RIPE Atlas for network measurement and monitoring ... network health (e.g. Nagios and Icinga) • These tools can

Source: RIPE NCC

Creating a Measurement

Auckland, Feb 2016 APRICOT: RIPE Atlas Tutorial 11

Page 12: Using RIPE Atlas for network measurement and monitoring · Using RIPE Atlas for network measurement and monitoring ... network health (e.g. Nagios and Icinga) • These tools can

Source: RIPE NCC

•  A customer reports a problem: they cannot reach one of your servers You can schedule pings or traceroutes from up to 500 RIPE Atlas probes from a particular region to check where the problem might be

•  Measuring packet loss on a suspected “bad” link •  Testing anycast deployment •  Identify DNS cache poisoning/lies

Benefits of your own measurements

Auckland, Feb 2016 APRICOT: RIPE Atlas Tutorial 12

Page 13: Using RIPE Atlas for network measurement and monitoring · Using RIPE Atlas for network measurement and monitoring ... network health (e.g. Nagios and Icinga) • These tools can

Source: RIPE NCC

• Running your own measurements cost credits ping = 10 credits, traceroute = 20, etc.

• Why? Fairness and to avoid overload • Daily spending limit & max measurements

user can create • Hosting a RIPE Atlas probe earns credits • Earn extra credits by:

Being a RIPE NCC member Hosting an anchor Sponsoring probes

Credits system

Auckland, Feb 2016 APRICOT: RIPE Atlas Tutorial 13

Page 14: Using RIPE Atlas for network measurement and monitoring · Using RIPE Atlas for network measurement and monitoring ... network health (e.g. Nagios and Icinga) • These tools can

Source: RIPE NCC

Credits overview

My Atlas > Credits Give credits to someone

Auckland, Feb 2016 APRICOT: RIPE Atlas Tutorial 14

Page 15: Using RIPE Atlas for network measurement and monitoring · Using RIPE Atlas for network measurement and monitoring ... network health (e.g. Nagios and Icinga) • These tools can

Source: RIPE NCC

•  Log in to atlas.ripe.net •  “My Atlas” > “Measurements” •  Three methods:

1.  Quick & Easy •  Type •  Target •  Done!

2.  Advanced GUI usage 3.  CLI scripting using API

Scheduling a measurement

Auckland, Feb 2016 APRICOT: RIPE Atlas Tutorial 15

Page 16: Using RIPE Atlas for network measurement and monitoring · Using RIPE Atlas for network measurement and monitoring ... network health (e.g. Nagios and Icinga) • These tools can

Source: RIPE NCC

•  Mostly used for a periodic, long time measurement If just once, ASAP, choose “One-off”

•  Choose type, target, frequency, # of probes, region… Interactive interface helps you at each step

•  Each measurement will have unique ID •  “API Compatible Specification” is generated too

2: Using GUI to schedule a measurement

Auckland, Feb 2016 APRICOT: RIPE Atlas Tutorial 16

Page 17: Using RIPE Atlas for network measurement and monitoring · Using RIPE Atlas for network measurement and monitoring ... network health (e.g. Nagios and Icinga) • These tools can

Source: RIPE NCC

•  Using command-line & scripting: Application Programming Interface (API) https://atlas.ripe.net/docs/measurement-creation-api/ https://atlas.ripe.net/keys/

•  You will need API keys To create measurements without logging in To securely share your measurement data

3: Using API to schedule a measurement

Auckland, Feb 2016 APRICOT: RIPE Atlas Tutorial 17

Page 18: Using RIPE Atlas for network measurement and monitoring · Using RIPE Atlas for network measurement and monitoring ... network health (e.g. Nagios and Icinga) • These tools can

API documentation:

•  https://atlas.ripe.net/docs/measurement-creation-api/

https://atlas.ripe.net/doc/credits https://atlas.ripe.net/doc/udm •  https://atlas.ripe.net/keys/ •  https://atlas.ripe.net/docs/keys2/

18

Page 19: Using RIPE Atlas for network measurement and monitoring · Using RIPE Atlas for network measurement and monitoring ... network health (e.g. Nagios and Icinga) • These tools can

Source: RIPE NCC

•  Go to “My Atlas” > “Measurements”

Looking up measurements results

Auckland, Feb 2016 APRICOT: RIPE Atlas Tutorial 19

Page 20: Using RIPE Atlas for network measurement and monitoring · Using RIPE Atlas for network measurement and monitoring ... network health (e.g. Nagios and Icinga) • These tools can

Source: RIPE NCC

•  List of probes: sortable by RTT

•  Map: colour-coded by RTT

•  Seismograph: stacked multiple pings with packet loss

Available visualisations: ping

Auckland, Feb 2016 APRICOT: RIPE Atlas Tutorial 20

Page 21: Using RIPE Atlas for network measurement and monitoring · Using RIPE Atlas for network measurement and monitoring ... network health (e.g. Nagios and Icinga) • These tools can

Source: RIPE NCC

Exercise Create a Measurement

Auckland, Feb 2016 APRICOT: RIPE Atlas Tutorial 21

Page 22: Using RIPE Atlas for network measurement and monitoring · Using RIPE Atlas for network measurement and monitoring ... network health (e.g. Nagios and Icinga) • These tools can

Source: RIPE NCC

• Create a ping measurement: Involving ten probes To a target of your choice Source is your country Duration of two days

1.  Warm-up: Create a measurement using the GUI

2.  Create API Key 3.  Schedule a measurement using the API

Tasks

Auckland, Feb 2016 APRICOT: RIPE Atlas Tutorial 22

Page 23: Using RIPE Atlas for network measurement and monitoring · Using RIPE Atlas for network measurement and monitoring ... network health (e.g. Nagios and Icinga) • These tools can

Source: RIPE NCC

•  Useful hint: once you generate a measurement, copy “API Compatible Specification” to text file

•  Note Measurement-ID

Sub-task 1: Use web interface

Auckland, Feb 2016 APRICOT: RIPE Atlas Tutorial 23

Page 24: Using RIPE Atlas for network measurement and monitoring · Using RIPE Atlas for network measurement and monitoring ... network health (e.g. Nagios and Icinga) • These tools can

Source: RIPE NCC

•  Click on “Create an API Key” •  Choose type: “create a new user-defined measurement” •  “Object” is not applicable (N/A) for this type •  Give it a label •  Give it a duration of validity (leave empty for defaults) •  “Key” value to be passed on to the API call (next step)

Sub-task 2: Create API key

Auckland, Feb 2016 APRICOT: RIPE Atlas Tutorial 24

Page 25: Using RIPE Atlas for network measurement and monitoring · Using RIPE Atlas for network measurement and monitoring ... network health (e.g. Nagios and Icinga) • These tools can

Source: RIPE NCC

•  Schedule a measurement using API Use the “key” you just generated Hint: copy and past API call syntax from the measurement generated by the GUI

•  Example: $ curl -H "Content-Type: application/json" -H "Accept:

application/json" -X POST -d '{ "definitions": [ { "target":

"ping.xs4all.nl", "description": "My First API Measurement",

"type": "ping", "af": 4 } ], "probes": [ { "requested": 10,

"type": "country", "value": "RS" } ] }'

https://atlas.ripe.net/api/v1/measurement/?key=YOUR_API_KEY

Sub-task 3: Use API

Auckland, Feb 2016 APRICOT: RIPE Atlas Tutorial 25

Page 26: Using RIPE Atlas for network measurement and monitoring · Using RIPE Atlas for network measurement and monitoring ... network health (e.g. Nagios and Icinga) • These tools can

Source: RIPE NCC

Example with command line

Auckland, Feb 2016 APRICOT: RIPE Atlas Tutorial 26

Page 27: Using RIPE Atlas for network measurement and monitoring · Using RIPE Atlas for network measurement and monitoring ... network health (e.g. Nagios and Icinga) • These tools can

Source: RIPE NCC

Integration with Network Monitoring Systems

Auckland, Feb 2016 APRICOT: RIPE Atlas Tutorial 27

Page 28: Using RIPE Atlas for network measurement and monitoring · Using RIPE Atlas for network measurement and monitoring ... network health (e.g. Nagios and Icinga) • These tools can

Source: RIPE NCC

•  Network operators use tools for monitoring network health (e.g. Nagios and Icinga)

•  These tools can receive input from RIPE Atlas via the API

•  Benefits: pings from 500 out of 8,000+ probes around the world See your network from the outside Plug into your existing practices

Network monitoring

Auckland, Feb 2016 APRICOT: RIPE Atlas Tutorial 28

Page 29: Using RIPE Atlas for network measurement and monitoring · Using RIPE Atlas for network measurement and monitoring ... network health (e.g. Nagios and Icinga) • These tools can

Source: RIPE NCC

1.  Create a RIPE Atlas ping measurement

2.  Go to “Status Checks” URL

3.  Add your alerts in Nagios or Icinga

Steps for integration

Auckland, Feb 2016 APRICOT: RIPE Atlas Tutorial 29

Page 30: Using RIPE Atlas for network measurement and monitoring · Using RIPE Atlas for network measurement and monitoring ... network health (e.g. Nagios and Icinga) • These tools can

Source: RIPE NCC

•  Status checks work via RIPE Atlas' RESTful API https://atlas.ripe.net/api/v1/status-checks/MEASUREMENT_ID/

•  You define the alert parameters, for example: Threshold for percentage of probes that successfully received a reply How many of the most recent measurements to base it on The maximum packet loss acceptable

•  Documentation: https://atlas.ripe.net/docs/status-checks/

Creating status checks

Auckland, Feb 2016 APRICOT: RIPE Atlas Tutorial 30

Page 31: Using RIPE Atlas for network measurement and monitoring · Using RIPE Atlas for network measurement and monitoring ... network health (e.g. Nagios and Icinga) • These tools can

Source: RIPE NCC

•  Community of operators contributed configuration code! Making use of the built-in “check_http” plugin

•  GitHub examples: https://github.com/RIPE-Atlas-Community/ripe-atlas-

community-contrib/blob/master/scripts_for_nagios_icinga_alerts

•  Post on Icinga blog: https://www.icinga.org/2014/03/05/monitoring-ripe-atlas-

status-with-icinga-2/

Icinga examples

Auckland, Feb 2016 APRICOT: RIPE Atlas Tutorial 31

Page 32: Using RIPE Atlas for network measurement and monitoring · Using RIPE Atlas for network measurement and monitoring ... network health (e.g. Nagios and Icinga) • These tools can

Source: RIPE NCC

Exercise Setting up “Status Checks”

Auckland, Feb 2016 APRICOT: RIPE Atlas Tutorial 32

Page 33: Using RIPE Atlas for network measurement and monitoring · Using RIPE Atlas for network measurement and monitoring ... network health (e.g. Nagios and Icinga) • These tools can

Source: RIPE NCC

•  Set up and configure a “status check” For an existing ping measurement https://atlas.ripe.net/measurements/3369314/ Hint: https://atlas.ripe.net/api/v1/status-checks/3369314/

•  Configure the status check in such a way that you will trigger an alert for this measurement

•  Optional: set-up status check for your own ping measurement!

Tasks

Auckland, Feb 2016 APRICOT: RIPE Atlas Tutorial 33

Page 34: Using RIPE Atlas for network measurement and monitoring · Using RIPE Atlas for network measurement and monitoring ... network health (e.g. Nagios and Icinga) • These tools can

Source: RIPE NCC

•  One possible solution: Set the median RTT to a lower level: https://atlas.ripe.net/api/v1/status-checks/3369314/?median_rtt_threshold=10

•  Example of the alerts

Solution

Auckland, Feb 2016 APRICOT: RIPE Atlas Tutorial 34

Page 35: Using RIPE Atlas for network measurement and monitoring · Using RIPE Atlas for network measurement and monitoring ... network health (e.g. Nagios and Icinga) • These tools can

Source: RIPE NCC

Real-time performance monitoring

Auckland, Feb 2016 APRICOT: RIPE Atlas Tutorial 35

Page 36: Using RIPE Atlas for network measurement and monitoring · Using RIPE Atlas for network measurement and monitoring ... network health (e.g. Nagios and Icinga) • These tools can

Source: RIPE NCC

•  RIPE Atlas streaming is an architecture that allows users to receive the measurement results as soon as they are sent by the probes - in real time Publish/subscribe through web sockets

•  There are two types of data: Measurement results Probe connection status events

RIPE Atlas streaming

Auckland, Feb 2016 APRICOT: RIPE Atlas Tutorial 36

Page 37: Using RIPE Atlas for network measurement and monitoring · Using RIPE Atlas for network measurement and monitoring ... network health (e.g. Nagios and Icinga) • These tools can

Source: RIPE NCC

•  Visualising network outages •  Server and performance monitoring •  In March 2015: used by almost all hackathon

teams: https://labs.ripe.net/Members/becha/ripe-atlas-hackathon-results

•  Documentationhttps://atlas.ripe.net/docs/result-streaming/ https://labs.ripe.net/Members/suzanne_taylor_muzzin/data-streaming-in-ripe-atlas

Real time streaming uses

Auckland, Feb 2016 APRICOT: RIPE Atlas Tutorial 37

Page 38: Using RIPE Atlas for network measurement and monitoring · Using RIPE Atlas for network measurement and monitoring ... network health (e.g. Nagios and Icinga) • These tools can

Source: RIPE NCC

Probe (dis)connection events

https://labs.ripe.net/Members/andreas_strikos/amsterdam-power-outage-as-seen-by-ripe-atlas

Auckland, Feb 2016 APRICOT: RIPE Atlas Tutorial 38

Page 39: Using RIPE Atlas for network measurement and monitoring · Using RIPE Atlas for network measurement and monitoring ... network health (e.g. Nagios and Icinga) • These tools can

Source: RIPE NCC

Exercise Using streaming API

Auckland, Feb 2016 APRICOT: RIPE Atlas Tutorial 39

Page 40: Using RIPE Atlas for network measurement and monitoring · Using RIPE Atlas for network measurement and monitoring ... network health (e.g. Nagios and Icinga) • These tools can

Source: RIPE NCC

•  Scenario: customers are complaining that it occasionally takes a long time to reach your service or server

•  Action: ping your server from 500 probes Decide what is acceptable latency threshold to apply Notice and react when you start receiving samples

•  Task: Use the ping measurement ID 2340408 Choose which threshold (e.g. greater than 30ms) Imposes the threshold on “min” (the minimum result of the three ping attempts)

Monitoring server reachability

Auckland, Feb 2016 APRICOT: RIPE Atlas Tutorial 40

Page 41: Using RIPE Atlas for network measurement and monitoring · Using RIPE Atlas for network measurement and monitoring ... network health (e.g. Nagios and Icinga) • These tools can

Source: RIPE NCC

1. Go to http://atlas.ripe.net/webinar/streaming01.html

2. Open the development console 3. Wait for results to arrive 4. Optional: Save the HTML file locally

and edit the code to your liking

Steps

Auckland, Feb 2016 APRICOT: RIPE Atlas Tutorial 41

Page 42: Using RIPE Atlas for network measurement and monitoring · Using RIPE Atlas for network measurement and monitoring ... network health (e.g. Nagios and Icinga) • These tools can

Source: RIPE NCC

Page Source

Auckland, Feb 2016 APRICOT: RIPE Atlas Tutorial 42

Page 43: Using RIPE Atlas for network measurement and monitoring · Using RIPE Atlas for network measurement and monitoring ... network health (e.g. Nagios and Icinga) • These tools can

Source: RIPE NCC

Example of results

Auckland, Feb 2016 APRICOT: RIPE Atlas Tutorial 43

Page 44: Using RIPE Atlas for network measurement and monitoring · Using RIPE Atlas for network measurement and monitoring ... network health (e.g. Nagios and Icinga) • These tools can

Task 2: View (dis)connect events

See in the console of your browser the connection and disconnection events of all the RIPE Atlas probes Steps:

•  Create your empty HTML page •  Connect to the streaming •  Subscribe to stream_type: “probestatus”

44

Page 45: Using RIPE Atlas for network measurement and monitoring · Using RIPE Atlas for network measurement and monitoring ... network health (e.g. Nagios and Icinga) • These tools can

Solution <script src="http://atlas-stream.ripe.net/socket.io.js"></script> <script> var socket = io("http://atlas-stream.ripe.net:80", { path : "/stream/socket.io" }); socket.on("atlas_probestatus", function(status){ console.log("I received ", status); }); socket.emit("atlas_subscribe", { stream_type: “probestatus" }); </script>

45

Page 46: Using RIPE Atlas for network measurement and monitoring · Using RIPE Atlas for network measurement and monitoring ... network health (e.g. Nagios and Icinga) • These tools can

Source: RIPE NCC

The Newest Features LatencyMON

Auckland, Feb 2016 APRICOT: RIPE Atlas Tutorial 46

Page 47: Using RIPE Atlas for network measurement and monitoring · Using RIPE Atlas for network measurement and monitoring ... network health (e.g. Nagios and Icinga) • These tools can

Source: RIPE NCC

LatencyMON

Auckland, Feb 2016 APRICOT: RIPE Atlas Tutorial 47

Page 48: Using RIPE Atlas for network measurement and monitoring · Using RIPE Atlas for network measurement and monitoring ... network health (e.g. Nagios and Icinga) • These tools can

Source: RIPE NCC

•  If multiple targets are involved, the auto-grouping will be by target.

Adding multiple measurements

Auckland, Feb 2016 APRICOT: RIPE Atlas Tutorial 48

Page 49: Using RIPE Atlas for network measurement and monitoring · Using RIPE Atlas for network measurement and monitoring ... network health (e.g. Nagios and Icinga) • These tools can

Source: RIPE NCC

•  You can search for any probe attribute •  You can specify a group name

Adding a group of probes

Auckland, Feb 2016 APRICOT: RIPE Atlas Tutorial 49

Page 50: Using RIPE Atlas for network measurement and monitoring · Using RIPE Atlas for network measurement and monitoring ... network health (e.g. Nagios and Icinga) • These tools can

Source: RIPE NCC

Command Line Interface (CLI) Toolset

Auckland, Feb 2016 APRICOT: RIPE Atlas Tutorial 50

Page 51: Using RIPE Atlas for network measurement and monitoring · Using RIPE Atlas for network measurement and monitoring ... network health (e.g. Nagios and Icinga) • These tools can

Source: RIPE NCC

•  Access RIPE Atlas from the terminal / shell console

•  Quick & dirty shortcuts for network troubleshooting

•  FLOSS (open source) tools written & maintained by RIPE NCC open for contributions by the community

•  Before you can use the toolset download the tools install configure

Why CLI RIPE Atlas tools

Auckland, Feb 2016 APRICOT: RIPE Atlas Tutorial 51

Page 52: Using RIPE Atlas for network measurement and monitoring · Using RIPE Atlas for network measurement and monitoring ... network health (e.g. Nagios and Icinga) • These tools can

Source: RIPE NCC

1.  create a measurement 2.  generate a simple report abut ongoing measurement

3.  look at the results 4.  collect results from the ongoing measurement (streaming)

Use cases for CLI tools

Auckland, Feb 2016 APRICOT: RIPE Atlas Tutorial 52

Page 53: Using RIPE Atlas for network measurement and monitoring · Using RIPE Atlas for network measurement and monitoring ... network health (e.g. Nagios and Icinga) • These tools can

Source: RIPE NCC

•  Simplest: one-off, using default values: (50 probes to “target”)

Creating ping measurement

Auckland, Feb 2016 APRICOT: RIPE Atlas Tutorial 53

ripe-­‐atlas  measure  ping  -­‐-­‐auth  API_KEY    -­‐-­‐target  wikipedia.org    

Page 54: Using RIPE Atlas for network measurement and monitoring · Using RIPE Atlas for network measurement and monitoring ... network health (e.g. Nagios and Icinga) • These tools can

Source: RIPE NCC

• Geo-specific from 20 probes from Canada: ripe-­‐atlas  measure  ping  -­‐-­‐target  example.com  -­‐-­‐probes  20  -­‐-­‐from-­‐country  ca  

• 20 Canadian probes that definitely support IPv6: ripe-­‐atlas  measure  ping  -­‐-­‐target  example.com  -­‐-­‐probes  20  -­‐-­‐from-­‐country  ca  -­‐-­‐include-­‐tag  system-­‐ipv6-­‐works  

•  Create a recurring measurement: ripe-­‐atlas  measure  ping  -­‐-­‐target  example.com  -­‐-­‐interval  3600  

Other examples of ping

Auckland, Feb 2016 APRICOT: RIPE Atlas Tutorial 54

Page 55: Using RIPE Atlas for network measurement and monitoring · Using RIPE Atlas for network measurement and monitoring ... network health (e.g. Nagios and Icinga) • These tools can

Source: RIPE NCC

•  Report for the traceroute • ripe-­‐atlas  measure  traceroute          -­‐-­‐probes  2              -­‐-­‐target  google.ca  

Traceroute

Auckland, Feb 2016 APRICOT: RIPE Atlas Tutorial 55

Page 56: Using RIPE Atlas for network measurement and monitoring · Using RIPE Atlas for network measurement and monitoring ... network health (e.g. Nagios and Icinga) • These tools can

Source: RIPE NCC

Searching for existing measurements

Auckland, Feb 2016 APRICOT: RIPE Atlas Tutorial 56

ripe-­‐atlas  measurements  -­‐-­‐af  6  -­‐-­‐status  ongoing  -­‐-­‐limit  15    -­‐-­‐search  google  

Page 57: Using RIPE Atlas for network measurement and monitoring · Using RIPE Atlas for network measurement and monitoring ... network health (e.g. Nagios and Icinga) • These tools can

Source: RIPE NCC

Searching for very specific probes

Auckland, Feb 2016 APRICOT: RIPE Atlas Tutorial 57

ripe-­‐atlas  probes  -­‐-­‐asn  3333  -­‐-­‐field  id  -­‐-­‐field  asn_v6  -­‐-­‐field  country  -­‐-­‐field  is_public  -­‐-­‐field  description  -­‐-­‐field  status  

Page 58: Using RIPE Atlas for network measurement and monitoring · Using RIPE Atlas for network measurement and monitoring ... network health (e.g. Nagios and Icinga) • These tools can

Source: RIPE NCC

•  Source: https://github.com/RIPE-NCC/ripe-atlas-tools/

•  Documentation: https://ripe-atlas-tools.readthedocs.org/

•  How to contribute: https://github.com/RIPE-NCC/ripe-atlas-tools/blob/master/CONTRIBUTING.rst

Links

Auckland, Feb 2016 APRICOT: RIPE Atlas Tutorial 58

Page 59: Using RIPE Atlas for network measurement and monitoring · Using RIPE Atlas for network measurement and monitoring ... network health (e.g. Nagios and Icinga) • These tools can

Source: RIPE NCC

Take part in the RIPE Atlas community

Auckland, Feb 2016 APRICOT: RIPE Atlas Tutorial 59

Page 60: Using RIPE Atlas for network measurement and monitoring · Using RIPE Atlas for network measurement and monitoring ... network health (e.g. Nagios and Icinga) • These tools can

Source: RIPE NCC

•  Individual volunteers host probes in homes or offices

•  Organisations host RIPE Atlas anchors

•  Sponsor organisations give financial support or host multiple probes in their own networks

RIPE Atlas community (part 1)

Auckland, Feb 2016 APRICOT: RIPE Atlas Tutorial 60

Page 61: Using RIPE Atlas for network measurement and monitoring · Using RIPE Atlas for network measurement and monitoring ... network health (e.g. Nagios and Icinga) • These tools can

Source: RIPE NCC

•  Ambassadors help distribute probes at conferences, give presentations, etc.

•  Developers contribute free and open software •  Network operators create measurements to

monitor and troubleshoot •  Researchers and students write papers

RIPE Atlas community (part 2)

Auckland, Feb 2016 APRICOT: RIPE Atlas Tutorial 61

Page 62: Using RIPE Atlas for network measurement and monitoring · Using RIPE Atlas for network measurement and monitoring ... network health (e.g. Nagios and Icinga) • These tools can

Source: RIPE NCC

•  https://atlas.ripe.net & http://roadmap.ripe.net/ripe-atlas/

•  Users’ mailing list: [email protected] •  Articles and updates: https://labs.ripe.net/atlas •  Questions and bugs: [email protected] •  Twitter: @RIPE_Atlas and #RIPEAtlas

Contact us

Auckland, Feb 2016 APRICOT: RIPE Atlas Tutorial 62

Page 63: Using RIPE Atlas for network measurement and monitoring · Using RIPE Atlas for network measurement and monitoring ... network health (e.g. Nagios and Icinga) • These tools can

Source: RIPE NCC

https://atlas.ripe.net/docs/rest/ https://github.com/RIPE-NCC/ripe.atlas.sagan

https://atlas.ripe.net/docs/measurement-creation-api/ • https://atlas.ripe.net/doc/credits • https://atlas.ripe.net/doc/udm

https://atlas.ripe.net/keys/ https://atlas.ripe.net/docs/keys2/

Documentation

Auckland, Feb 2016 APRICOT: RIPE Atlas Tutorial 63

Page 64: Using RIPE Atlas for network measurement and monitoring · Using RIPE Atlas for network measurement and monitoring ... network health (e.g. Nagios and Icinga) • These tools can

Source: RIPE NCC

Additional slides

Auckland, Feb 2016 APRICOT: RIPE Atlas Tutorial 64

Page 65: Using RIPE Atlas for network measurement and monitoring · Using RIPE Atlas for network measurement and monitoring ... network health (e.g. Nagios and Icinga) • These tools can

Source: RIPE NCC

Finding results of public measurements

Auckland, Feb 2016 APRICOT: RIPE Atlas Tutorial 65

Page 66: Using RIPE Atlas for network measurement and monitoring · Using RIPE Atlas for network measurement and monitoring ... network health (e.g. Nagios and Icinga) • These tools can

Source: RIPE NCC

•  There are many measurements already running!

•  Search for existing public measurements first

•  Schedule your own measurement if you don’t find what you’re looking for

Use existing measurements

Auckland, Feb 2016 APRICOT: RIPE Atlas Tutorial 66

Page 67: Using RIPE Atlas for network measurement and monitoring · Using RIPE Atlas for network measurement and monitoring ... network health (e.g. Nagios and Icinga) • These tools can

Source: RIPE NCC

•  Log in to atlas.ripe.net •  Use your RIPE NCC

Access account •  Same account for LIR

Portal, RIPE Atlas, RIPEstat, RIPE Labs...

•  Create an account if you don’t have one already

Logging in

Auckland, Feb 2016 APRICOT: RIPE Atlas Tutorial 67

Page 68: Using RIPE Atlas for network measurement and monitoring · Using RIPE Atlas for network measurement and monitoring ... network health (e.g. Nagios and Icinga) • These tools can

Source: RIPE NCC

•  Go to “My Atlas” > “Measurements”

Looking up measurements results

Auckland, Feb 2016 APRICOT: RIPE Atlas Tutorial 68

Page 69: Using RIPE Atlas for network measurement and monitoring · Using RIPE Atlas for network measurement and monitoring ... network health (e.g. Nagios and Icinga) • These tools can

Source: RIPE NCC

•  List of probes: sortable by RTT

•  Map: colour-coded by RTT

•  Seismograph: stacked multiple pings with packet loss

Available visualisations: ping

Auckland, Feb 2016 APRICOT: RIPE Atlas Tutorial 69

Page 70: Using RIPE Atlas for network measurement and monitoring · Using RIPE Atlas for network measurement and monitoring ... network health (e.g. Nagios and Icinga) • These tools can

Source: RIPE NCC

Seismograph tips Vertical pattern: possible problem in your network

Out of each 3 pings max, min & average are calculated

Filtering & grouping by: country, IPv4 ASN, IPv6 ASN

Chose absolute or relative RTT values

Red = packet loss

Horizontal pattern: possible problem in that ASN network

Auckland, Feb 2016 APRICOT: RIPE Atlas Tutorial 70

Page 71: Using RIPE Atlas for network measurement and monitoring · Using RIPE Atlas for network measurement and monitoring ... network health (e.g. Nagios and Icinga) • These tools can

Source: RIPE NCC

•  List of probes, colour-

coded number of hops •  Map •  Traceroute paths

map, geolocation using OpenIPMap: https://github.com/RIPE-Atlas-Community/openipmap

Available visualisations: traceroute

Auckland, Feb 2016 APRICOT: RIPE Atlas Tutorial 71

Page 72: Using RIPE Atlas for network measurement and monitoring · Using RIPE Atlas for network measurement and monitoring ... network health (e.g. Nagios and Icinga) • These tools can

Source: RIPE NCC

•  Map, colour-coded response time or diversity

•  List of probes, sortable by response time

Available visualisations: DNS

Auckland, Feb 2016 APRICOT: RIPE Atlas Tutorial 72

Page 73: Using RIPE Atlas for network measurement and monitoring · Using RIPE Atlas for network measurement and monitoring ... network health (e.g. Nagios and Icinga) • These tools can

Source: RIPE NCC

•  Documentation for analysing measurements results:

https://atlas.ripe.net/docs/rest/ https://github.com/RIPE-NCC/ripe.atlas.sagan

•  More tools: https://github.com/RIPE-Atlas-Community https://github.com/RIPE-Atlas-Community/ripe-atlas-community-contrib/blob/master/README.md

Documentation

Auckland, Feb 2016 APRICOT: RIPE Atlas Tutorial 73

Page 74: Using RIPE Atlas for network measurement and monitoring · Using RIPE Atlas for network measurement and monitoring ... network health (e.g. Nagios and Icinga) • These tools can

Source: RIPE NCC

Exercise Analyse Measurement Results

Auckland, Feb 2016 APRICOT: RIPE Atlas Tutorial 74

Page 75: Using RIPE Atlas for network measurement and monitoring · Using RIPE Atlas for network measurement and monitoring ... network health (e.g. Nagios and Icinga) • These tools can

Source: RIPE NCC

•  Download results of a specific public measurement

•  Read the text of the result, to understand structure

Tasks

Auckland, Feb 2016 APRICOT: RIPE Atlas Tutorial 75

Page 76: Using RIPE Atlas for network measurement and monitoring · Using RIPE Atlas for network measurement and monitoring ... network health (e.g. Nagios and Icinga) • These tools can

Source: RIPE NCC

•  Find the measurement ping, IPv6 to google.com msm-ID 1004005

•  Click on measurement, then “Download” Specify the time period (for example, YESTERDAY)

•  Results in JSON

Task 1: Download measurement results

Auckland, Feb 2016 APRICOT: RIPE Atlas Tutorial 76

Page 77: Using RIPE Atlas for network measurement and monitoring · Using RIPE Atlas for network measurement and monitoring ... network health (e.g. Nagios and Icinga) • These tools can

Source: RIPE NCC

•  Solution URL: https://atlas.ripe.net/api/v1/measurement/1004005/result/?start=1435104000&stop=1435276799&format=json

•  Save the measurement(s) locally $ curl https://atlas.ripe.net/api/v1/measurement/1004005/result/?start=1435104000&stop=1435276799&format=json > measurement-test.json

Tips for downloading results

Auckland, Feb 2016 APRICOT: RIPE Atlas Tutorial 77

Page 78: Using RIPE Atlas for network measurement and monitoring · Using RIPE Atlas for network measurement and monitoring ... network health (e.g. Nagios and Icinga) • These tools can

Source: RIPE NCC

Packet loss: difference between sent & received!

•  [{“af":6,"avg" 61.32,

•  ”dst_addr":"2a00:1450:4004:802::1014",“dst_name":"www.google.com",

•  “dup":0,

•  “from":"2001:8a0:7f00:b201:220:4aff:fec5:5b5b",

•  “fw":4660,“lts":411,

•  “max”:62.148,"min":60.372,

•  “msm_id":1004005,"msm_name":"Ping",

•  "prb_id":722,"proto":"ICMP","rcvd":10,

•  “result":[{"rtt":62.148},{"rtt":61.437},{"rtt":61.444},{"rtt":61.448},{"rtt":61.794},{"rtt":61.533},{"rtt":60.372},{"rtt":60.373},{"rtt":61.384},{"rtt":61.267}],

•  “sent":10,"size"64,

•  “src_addr":"2001:8a0:7f00:b201:220:4aff:fec5:5b5b",

•  "step":240,"timestamp":1410220847,"ttl":54,"type":"ping"},

Task 2: Look at the result Destination (IP & name)

Reference (msm ID)

Source (probe public IP address)

Auckland, Feb 2016 APRICOT: RIPE Atlas Tutorial 78

Page 79: Using RIPE Atlas for network measurement and monitoring · Using RIPE Atlas for network measurement and monitoring ... network health (e.g. Nagios and Icinga) • These tools can

Source: RIPE NCC

•  Find out how many times RTT was above 60ms Use Python o Javascript or something else

•  For the Javascript solution, you can use this as a starting point:

https://stat.ripe.net/widgets/demo/script_me.html

Task 3: Analyse results (optional)

Auckland, Feb 2016 APRICOT: RIPE Atlas Tutorial 79

Page 80: Using RIPE Atlas for network measurement and monitoring · Using RIPE Atlas for network measurement and monitoring ... network health (e.g. Nagios and Icinga) • These tools can

Source: RIPE NCC

Python:

Parse json and find total avg:import json f = open(“measurement.json”,”r”) measurements = json.load(f) for m in measurements: for r in m[“result”]: rtt = r[“rtt”]

If rtt > 60: i += 1

i must be > than 14563.

Task 4: Examples of code Javascript:

var dataAPIUrl = "https://atlas.ripe.net/api/v1/measurement/1004005/result/?start=1410220800"; jQuery.ajax({

url: dataAPIUrl, error: function() {

alert("error"); },

success: function( response ) { var i = 0;

for ( var i = 0, n = response.length; i < n; i++) { var measurement = response[i];

for ( var j = 0, m = measurement.result.length; j < m; j++) { var rtt = measurement.result[j].rtt; console.log(rtt); if (rtt > 60)

i++; }

} jQuery("p").html("The RTT has been above 60ms for " + i + " times");

},

dataType: "jsonp" });

Auckland, Feb 2016 APRICOT: RIPE Atlas Tutorial 80

Page 81: Using RIPE Atlas for network measurement and monitoring · Using RIPE Atlas for network measurement and monitoring ... network health (e.g. Nagios and Icinga) • These tools can

Source: RIPE NCC

RIPE Atlas anchors

Auckland, Feb 2016 APRICOT: RIPE Atlas Tutorial 81

Page 82: Using RIPE Atlas for network measurement and monitoring · Using RIPE Atlas for network measurement and monitoring ... network health (e.g. Nagios and Icinga) • These tools can

Source: RIPE NCC

•  Well-known targets and powerful probes Regional baseline and “future history”

•  Anchoring measurements Measurements between anchors 200 probes targeting each anchor with measurements Each probe measures 4-5 anchors Vantage points for DNSMON service

•  130+ RIPE Atlas anchors

RIPE Atlas anchors

Auckland, Feb 2016 APRICOT: RIPE Atlas Tutorial 82

Page 83: Using RIPE Atlas for network measurement and monitoring · Using RIPE Atlas for network measurement and monitoring ... network health (e.g. Nagios and Icinga) • These tools can

Source: RIPE NCC

https://atlas.ripe.net/results/maps/network-coverage/#anchors

Locations of anchors

Auckland, Feb 2016 APRICOT: RIPE Atlas Tutorial 83

Page 84: Using RIPE Atlas for network measurement and monitoring · Using RIPE Atlas for network measurement and monitoring ... network health (e.g. Nagios and Icinga) • These tools can

Source: RIPE NCC

IXP country Jedi Measuring Impact of IXPs on Keeping Traffic Local

Auckland, Feb 2016 APRICOT: RIPE Atlas Tutorial 84

Page 85: Using RIPE Atlas for network measurement and monitoring · Using RIPE Atlas for network measurement and monitoring ... network health (e.g. Nagios and Icinga) • These tools can

Source: RIPE NCC

•  Operators Routing and traffic optimisation

•  IXP operators Shows how IXPs help keep traffic local and regional

•  IPv6 advocates Comparing IPv4 and IPv6 paths

•  Country level: regulators, politicians, cyber-security… How much traffic stays within the country? Where do the paths go? Comparing countries with each other

Benefits (part 1)

Auckland, Feb 2016 APRICOT: RIPE Atlas Tutorial 85

Page 86: Using RIPE Atlas for network measurement and monitoring · Using RIPE Atlas for network measurement and monitoring ... network health (e.g. Nagios and Icinga) • These tools can

Source: RIPE NCC

•  RIPE Atlas community More probes in more networks = higher quality of measurements data

•  Geolocation data community Use case for improving data quality

•  Examples: https://labs.ripe.net/Members/emileaben/measuring-ixps-with-ripe-atlas https://labs.ripe.net/Members/emileaben/measuring-countries-and-ixps-in-the-see-region http://sg-pub.ripe.net/emile/ixp-country-jedi/CL+AR-2015-04/geopath/

Benefits (part 2)

Auckland, Feb 2016 APRICOT: RIPE Atlas Tutorial 86

Page 87: Using RIPE Atlas for network measurement and monitoring · Using RIPE Atlas for network measurement and monitoring ... network health (e.g. Nagios and Icinga) • These tools can

Source: RIPE NCC

http://sg-pub.ripe.net/emile/ixp-country-jedi/SI-2015-04/ixpcountry/

Paths going via an IXP?

Auckland, Feb 2016 APRICOT: RIPE Atlas Tutorial 87

Page 88: Using RIPE Atlas for network measurement and monitoring · Using RIPE Atlas for network measurement and monitoring ... network health (e.g. Nagios and Icinga) • These tools can

Source: RIPE NCC

•  Green: “good”, as far as we can see it •  Not a judgment, only

one way of visualising data

•  Red or blue: path is going out of country •  If this is a surprise: talk

to your upstream(s) •  Yellow: path is not going

via a local IXP •  If this is undesired:

make a new peering agreement

Interactive diagnostic tool

http://sg-pub.ripe.net/emile/ixp-country-jedi/SI-2015-04/ixpcountry/

Auckland, Feb 2016 APRICOT: RIPE Atlas Tutorial 88

Page 89: Using RIPE Atlas for network measurement and monitoring · Using RIPE Atlas for network measurement and monitoring ... network health (e.g. Nagios and Icinga) • These tools can

Source: RIPE NCC

•  traceroute measurements using RIPE Atlas probes

•  Steps: Identify ASNs in the country using RIPEstat Identify IXPs and IXP LANs using PeeringDB Construct mesh: from all (*) country’s probes to each other

*Maximum of two probes per ASN and only “public” probes with “good” geolocation •  Hops geolocated using “OpenIPMap” database

Method

Auckland, Feb 2016 APRICOT: RIPE Atlas Tutorial 89

Page 90: Using RIPE Atlas for network measurement and monitoring · Using RIPE Atlas for network measurement and monitoring ... network health (e.g. Nagios and Icinga) • These tools can

Source: RIPE NCC

•  Use this tool to find possible suboptimal routing and fix it Find your ASN in the mesh Find the person from another ASN Take them out for tea :)

•  To improve accuracy of this diagnostic tool If your ASN is not on the graph, apply for a RIPE Atlas probe Add more probes to your country to increase “resolution” If you move, remember to update your probe’s geolocation

Actions (part 1)

Auckland, Feb 2016 APRICOT: RIPE Atlas Tutorial 90

Page 91: Using RIPE Atlas for network measurement and monitoring · Using RIPE Atlas for network measurement and monitoring ... network health (e.g. Nagios and Icinga) • These tools can

Source: RIPE NCC

•  Re-use and rewrite the code: it is free and open source software https://github.com/emileaben/ixp-country-jedi

•  Improve infrastructure geolocation: contribute data to OpenIPMap! https://marmot.ripe.net/openipmap/ https://github.com/RIPE-Atlas-Community/openipmap

Actions (part 2)

Auckland, Feb 2016 APRICOT: RIPE Atlas Tutorial 91

Page 92: Using RIPE Atlas for network measurement and monitoring · Using RIPE Atlas for network measurement and monitoring ... network health (e.g. Nagios and Icinga) • These tools can

Contact: www.nzrs.net.nz

[email protected]

Want to host a probe?