Deep Dive into BGP Monitoring with BMP
The world of BGP monitoring with the BMP protocol, uncovering hidden paths, understanding peer interactions, and gaining Isights into router behaviors with detailed visual representations. Learn about different BMP message types, challenges in BGP implementation, and the role of collectors in ISP networks. Discover the power of BMP in enhancing network visibility and monitoring capabilities for better routing decisions.
Download Presentation

Please find below an Image/Link to download the presentation.
The content on the website is provided AS IS for your information and personal use only. It may not be sold, licensed, or shared on other websites without obtaining consent from the author.If you encounter any issues during the download, it is possible that the publisher has removed the file from their server.
You are allowed to download the files provided on this website for personal or commercial use, subject to the condition that they are used lawfully. All files are the property of their respective owners.
The content on the website is provided AS IS for your information and personal use only. It may not be sold, licensed, or shared on other websites without obtaining consent from the author.
E N D
Presentation Transcript
OpenBMP BoF RIPE / Budapest 2017.05.11 Randy Bush <randy@psg.com> Serpil Bayraktar <serpil@cisco.com> Tim Evens <tievens@cisco.com> Cristel Pelsser <pelsser@unistra.fr> 170511 RIPE OpenBMP 0 Creative Commons: Attribution & Share Alike
Poor Visibility I want to see more deeply into the router especially BGP 170511 RIPE OpenBMP 1 Creative Commons: Attribution & Share Alike
BGP Monitoring BGP is the world s best information hiding protocol <tm>. It only gives me the router s best path P e e r s P0 Peering Router P1 Best Path Vantage Point (VP) P2 P3 P4 P3 And VP does not even know why P3 was chosen 170511 RIPE OpenBMP 2 Creative Commons: Attribution & Share Alike
BGP Monitoring Protocol With BMP, I learn all the paths the peering router heard P e e r s P0 Peering Router P1 All P0-4 Vantage Point P2 P3 P4 Paths 170511 RIPE OpenBMP 3 Creative Commons: Attribution & Share Alike
You See Much More BMP Message Types (RFC 7854) 0: Route Monitoring 1: Statistics Report 2: Peer Down Notification 3: Peer Up Notification 4: Initiation 5: Termination 6: Route Mirroring (major topic) 7: Your Horoscope 170511 RIPE OpenBMP 4 Creative Commons: Attribution & Share Alike
BGP is the Transport It could have been DNS :) Shared Code But Also Shared Fate And one well-known implementation has shared fate problems with BGP 170511 RIPE OpenBMP 5 Creative Commons: Attribution & Share Alike
An ISPs Collector The Collector sees the outward views of the peering edge, not just the best paths Peering Router Vantage Point Peering Router Vantage Point Collector in NOC? All Vantage Point BMP Peering Router Collector Paths Vantage Point Peering Router Vantage Point Peering Router 170511 RIPE OpenBMP 6 Creative Commons: Attribution & Share Alike
A Public Collector The Collector sees the total views of the peers, not just their best paths ISP0 Vantage Point ISP1 Collects Vantage Points Vantage Point All Vantage Point BMP Collector ISP2 Paths Vantage Point ISP3 Vantage Point ISP4 170511 RIPE OpenBMP 7 Creative Commons: Attribution & Share Alike
OpenBMP Project ISP0 ISP1 WOW! Analysis & GUI All OpenBMP Collector ISP2 Paths ISP3 ISP4 170511 RIPE OpenBMP 8 Creative Commons: Attribution & Share Alike
In a Nutshell Think RIS / Route Views for BMP Add a web-based sexy GUI With some cool analysis tools 170511 RIPE OpenBMP 9 Creative Commons: Attribution & Share Alike
Just Some Examples 170511 RIPE OpenBMP 10 Creative Commons: Attribution & Share Alike
A Tasting Menu 170511 RIPE OpenBMP 11 Creative Commons: Attribution & Share Alike
Noisiest Prefixes 170511 RIPE OpenBMP 12 Creative Commons: Attribution & Share Alike
History of That Prefix Every Change And What Changed dupe! 170511 RIPE OpenBMP 13 Creative Commons: Attribution & Share Alike
And, Of Course, the Mandatory World Map 170511 RIPE OpenBMP 14 Creative Commons: Attribution & Share Alike
OpenBMP Architecture Apps (Analytics) Optionally to DB REST API MySQL Apps Message Bus (Analytics) Data (raw and parsed) BMP Availability Release 3.12 and above SNAS Collector Vendor IOS-XE Notes ASR1K, CSR1000v ASR9K, CRS, NCS6K, XRv N9K, N7K MX, EX ACX (12.3) BMP Routers XE/XR/JunOS IOS-XR 5.2.2 NX-OS JunOS Evergreen Since 10.3 Peers goBGP 1.3+ 170511 RIPE OpenBMP 15 Creative Commons: Attribution & Share Alike
OpenBMP Architecture collector MySQL/MariaDB TCP Listener REST API MariaDB Router Connections Connection Thread Ingress Buffer Web UI Parser (BMP & BGP) DB Connection Produce SQL Transformation RAW Textual (JSON/CSV) Consumer (Native BGP) Kafka 170511 RIPE OpenBMP 16 Creative Commons: Attribution & Share Alike
OpenBMP Architecture App collector MySQL/MariaDB TCP Listener REST API MariaDB Router Connection Thread Connection Ingress Buffer Web UI Parser (BMP & BGP) DB Connection Produce SQL Transformation RAW Textual (JSON/CSV) Consumer (Native BGP) Kafka 170511 RIPE OpenBMP 17 Creative Commons: Attribution & Share Alike
OpenBMP Architecture collector MySQL/MariaDB TCP Listener REST API MariaDB Router Connection Thread Connection Ingress Buffer Web UI Parser (BMP & BGP) DB Connection Produce SQL Transformation RAW Textual (JSON/CSV) Consumer (Native BGP) App Kafka 170511 RIPE OpenBMP 18 Creative Commons: Attribution & Share Alike
How to Configure Your Router 170511 RIPE OpenBMP 19 Creative Commons: Attribution & Share Alike
IOS XE 3.12.0/15.4.2 (or greater) router router bgp bmp server 1 bmp server 1 address 10.20.254.245 port address 10.20.254.245 port- -number 5000 description "BMP Server description "BMP Server - - primary" initial initial- -delay 10 delay 10 failure failure- -retry retry- -delay 120 delay 120 flapping flapping- -delay 120 delay 120 stats stats- -reporting reporting- -period 300 period 300 update update- -source GigabitEthernet1 source GigabitEthernet1 activate activate exit exit- -bmp bmp- -server server- -mode mode ! ! bmp buffer bmp buffer- -size 100 size 100 ! ! neighbor < neighbor <ip ip/group> bmp /group> bmp- -activate all neighbor neighbor ... ... bgp < <nnnn nnnn> > number 5000 primary" activate all 170511 RIPE OpenBMP 20 Creative Commons: Attribution & Share Alike
IOS XR 5.2.2 (or greater) router router bgp ! ! neighbor < neighbor <d.d.d.d bmp bmp- -activate server 1 activate server 1 ... ... ! ! ! ! ! ! bmp server 1 bmp server 1 host 10.20.254.245 port 5000 host 10.20.254.245 port 5000 description BMP Server description BMP Server - - primary update update- -source GigabitEthernet0/0/0/0 source GigabitEthernet0/0/0/0 initial initial- -delay 60 delay 60 initial initial- -refresh delay 60 spread {number of peers * 2} refresh delay 60 spread {number of peers * 2} stats stats- -reporting reporting- -period 300 period 300 bgp < <nnnn nnnn> > d.d.d.d> > primary 170511 RIPE OpenBMP 21 Creative Commons: Attribution & Share Alike
JunOS 13.3 (or greater) routing routing- -options bmp bmp { { options { { station station BMPServer1 { BMPServer1 { initiation initiation- -message local local- -address address 172.20.160.24 connection connection- -mode mode active monitor monitor enable enable; ; route route- -monitoring monitoring { { pre pre- -policy policy; ; post post- -policy; policy; } } station station- -address address 10.20.254.245 station station- -port port 5000 statistics statistics- -timeout timeout 300 } } message " "Development Development/LAB"; 172.20.160.24; ; active; ; /LAB"; 10.20.254.245; ; 5000; ; 300; ; } } 170511 RIPE OpenBMP 22 Creative Commons: Attribution & Share Alike
But I Have 42 Years of Old MRT Data! 170511 RIPE OpenBMP 23 Creative Commons: Attribution & Share Alike
mrt2bmp Converts mrt data, such as RIS and Route Views to OpenBMP Yes, you only get the best path view But it makes backward compatibility possible. You can inject traditional dumps into openBMP For longitudinal analysis it may be good to have the old data parsable using the same tools 170511 RIPE OpenBMP 24 Creative Commons: Attribution & Share Alike
How can a feeding peer tell the collector what flavor feed it is giving? We blew this with RIS and Route Views 170511 RIPE OpenBMP 25 Creative Commons: Attribution & Share Alike
Are current BMP specs and implementations what we want? 170511 RIPE OpenBMP 26 Creative Commons: Attribution & Share Alike
Proposal: Add Access to Adj-RIB-Out and Loc-RIB BGP Peer-B Adj-Rib-In (Pre) BGP Peer-A Adj-Rib-In (Pre) ISIS Static Filters/Policy Filters/Policy Adj-Rib-In (Post) Adj-Rib-In (Post) Passed Filter Passed Filter And this Route Selection We also want to see this Adj-Rib-Out (Pre) Loc-Rib Filters/Policy And this Adj-Rib-Out (Post) draft-evens-grow-bmp-adj-rib-out draft-evens-grow-bmp-local-rib 170511 RIPE OpenBMP 27 Creative Commons: Attribution & Share Alike
Implementor Concerns Compressed or Uncompressed? Mirror or Extract from RIB All are Resource / Loading Issues 170511 RIPE OpenBMP 28 Creative Commons: Attribution & Share Alike
Compressed or Not The "uncompressed" approach requires that every message received from a monitored session must result, 1:1, in a message sent to the monitoring station. Since the potential number of messages received over time is unbounded, and since there are many potential bottlenecks in the system, there are inevitable consequences for system design. One of these is that buffering has to be supplied to absorb bursts on the input side. Another is that exception handling has to be provided for when buffering is exhausted. 170511 RIPE OpenBMP 29 Creative Commons: Attribution & Share Alike
Mirror or Extract from RIB Mirroring has the burst buffering & loading problems in previous slide Extraction from RIB to create stream allows BMP export to control the pace But it has to be very careful not to change attributes, reorder them, So keep a copy of the attribute list in the RIB and generate from RIB 170511 RIPE OpenBMP 30 Creative Commons: Attribution & Share Alike
These are All Resource / Loading Issues Get High Powered Routers & All Will be Fine And Cash Will Fall from the Sky And there will be World Peace 170511 RIPE OpenBMP 31 Creative Commons: Attribution & Share Alike
We Want Moar Dataz! 170511 RIPE OpenBMP 32 Creative Commons: Attribution & Share Alike
Some References Project Overview https https:// ://www.openbmp.org/ www.openbmp.org/ Running your own service from RouteViews data: https https:// ://github.com github.com/ /OpenBMP OpenBMP/ /openbmp b/master/docs/ b/master/docs/GETTING_STARTED.md GETTING_STARTED.md openbmp/blo /blo 170511 RIPE OpenBMP 33 Creative Commons: Attribution & Share Alike
170511 RIPE OpenBMP 34 Creative Commons: Attribution & Share Alike
But Talk is Cheap 170511 RIPE OpenBMP 35 Creative Commons: Attribution & Share Alike
Play with Demo http://demo.snas.io:8000/ http://demo.snas.io:8000/ Username: ripe Username: ripe Password: ripe74 Password: ripe74 170511 RIPE OpenBMP 36 Creative Commons: Attribution & Share Alike