A Technique for Reducing BGP Update Announcements through Path Exploration Damping

Similar documents
BGP Path Exploration Damping (PED)

THE INTERNET S inter-domain routing protocol, the

Taming BGP. An incremental approach to improving the dynamic properties of BGP. Geoff Huston. CAIA Seminar 18 August

Preventing the unnecessary propagation of BGP withdraws

The ISP Column An occasional column on things Internet. Damping BGP. BGP Route Flap Damping. June Geoff Huston

internet technologies and standards

Routing in Geoff Huston Chief Scientist, APNIC

More Specific Announcements in BGP. Geoff Huston APNIC

Internet Routing Dynamics

Routing Geoff Huston Chief Scientist, APNIC. #apricot2017

Examination. ANSWERS IP routning på Internet och andra sammansatta nät, DD2491 IP routing in the Internet and other complex networks, DD2491

Implementing path-exploration damping in the Quagga Software Routing Suite Version

Inter-Domain Routing Trends

BGP Routing and BGP Policy. BGP Routing. Agenda. BGP Routing Information Base. L47 - BGP Routing. L47 - BGP Routing

Measuring BGP. Geoff Huston. CAIA SEMINAR 31 May

Stable Internet Route Selection

Finding a Needle in a Haystack: Pinpointing Significant BGP Routing Changes in an IP Network

BGP Route Flap Damping Algorithms

BGP Route Flap Damping Algorithms

Routing the Internet in Geoff Huston APNIC March 2007

Differentiated BGP Update Processing for Improved Routing Convergence

More Specific Announcements in BGP. Geoff Huston APNIC

Implementing BGP on Cisco ASR 9000 Series Routers

The Internet now-a-days has become indispensable to each and everyone. It is vulnerable to

Dynamics of Hot-Potato Routing in IP Networks

EULER Project Path-Vector Routing Stability Analysis

BGP Techniques for ISP. Terutaka Komorizono

Securing BGP. Geoff Huston November 2007

BGP Scaling Techniques

Route Flap Damping Exacerbates Internet Routing Convergence

Implementing BGP on Cisco ASR 9000 Series Router

4-Byte AS Numbers. The view from the Old BGP world. Geoff Huston February 2007 APNIC

The Impact of Router Outages on the AS-Level Internet

Towards Localizing Root Causes of BGP Dynamics

Routing Basics. ISP Workshops. Last updated 10 th December 2015

BGP Route Flap Damping Algorithms

The Origin of BGP Duplicates

Routing Protocols --- Exterior Gateway Protocol

Module 6 Implementing BGP

Examination. IP routning på Internet och andra sammansatta nät, DD2491 IP routing in the Internet and other complex networks, DD2491

Overview. Problem: Find lowest cost path between two nodes Factors static: topology dynamic: load

Stabilizing BGP Routing without Harming Convergence

Department of Computer and IT Engineering University of Kurdistan. Computer Networks II Border Gateway protocol (BGP) By: Dr. Alireza Abdollahpouri

RFC2547 Convergence Characterization and Optimization

BGP Nonstop Routing was made a default feature.

Rapid Detection of BGP Anomalies

BGP Scaling Techniques

BGP Anomaly Detection. Bahaa Al-Musawi PhD candidate Supervisors: Dr. Philip Branch and Prof. Grenville Armitage.

Other Developments: CIDR

BGP scalability Eduardo Grampín Universidad Carlos III de Madrid

Unit 3: Dynamic Routing

Introduction to IP Routing. Geoff Huston

Troubleshooting High CPU Caused by the BGP Scanner or BGP Router Process

CS BGP v4. Fall 2014

On the Impact of Filters on Analyzing Prefix Reachability in the Internet. Ravish Khosla, Sonia Fahmy, Y. Charlie Hu Purdue University ICCCN 2009

Routing Between Autonomous Systems (Example: BGP4) RFC 1771

BGP Convergence in Virtual Private Networks

Investigating occurrence of duplicate updates in BGP announcements

Chapter 20 Border Gateway Protocol version 4 (BGP-4)

Protecting an EBGP peer when memory usage reaches level 2 threshold 66 Configuring a large-scale BGP network 67 Configuring BGP community 67

Border Gateway Protocol - BGP

Lecture outline. Internet Routing Security Issues. Previous lecture: Effect of MinRouteAdver Timer. Recap of previous lecture

CS 268: Computer Networking. Next Lecture: Interdomain Routing

Inter-Domain Routing: BGP II

Lecture 18: Border Gateway Protocol

UNDERSTANDING CONVERGENCE IN MPLS VPN NETWORKS. Mukhtiar A. Shaikh Moiz Moizuddin

Destination Reachability and BGP Convergence Time. Beichuan Zhang (UCLA) Dan Massey (Colorado State) Lixia Zhang (UCLA)

TELE 301 Network Management

CSCD 433/533 Network Programming Fall Lecture 14 Global Address Space Autonomous Systems, BGP Protocol Routing

Configuring BGP. Cisco s BGP Implementation

There s something about MRAI

PART III. Implementing Inter-Network Relationships with BGP

BGP. Autonomous system (AS) BGP version 4. Definition (AS Autonomous System)

BGP. Autonomous system (AS) BGP version 4. Definition (AS Autonomous System)

BGP. BGP Overview. Formats of BGP Messages. I. Header

BGP. Border Gateway Protocol A short introduction. Karst Koymans. Informatics Institute University of Amsterdam. (version 18.3, 2018/12/03 13:53:22)

Fast IP Convergence. Section 4. Period from when a topology change occurs, to the moment when all the routers have a consistent view of the network.

DE-CIX Academy: BGP - Multihoming

Routing Basics. ISP Workshops

Configuring BGP community 43 Configuring a BGP route reflector 44 Configuring a BGP confederation 44 Configuring BGP GR 45 Enabling Guard route

Border Gateway Protocol (an introduction) Karst Koymans. Tuesday, March 8, 2016

Juniper JN Enterprise Routing and Switching Support Professional (JNCSP-ENT)

BGP Best Current Practices. ISP/IXP Workshops

Lecture 16: Border Gateway Protocol

BGP Security. Kevin s Attic for Security Research

Outline Computer Networking. Inter and Intra-Domain Routing. Internet s Area Hierarchy Routing hierarchy. Internet structure

LOUP: The Principles and Practice of Intra-Domain Route Dissemination. Nikola Gvozdiev, Brad Karp, Mark Handley

CS 557 BGP Convergence

This appendix contains supplementary Border Gateway Protocol (BGP) information and covers the following topics:

CS 457 Networking and the Internet. The Global Internet (Then) The Global Internet (And Now) 10/4/16. Fall 2016

BGP Support for Next-Hop Address Tracking

Operation Manual BGP. Table of Contents

Configuring BGP on Cisco Routers Volume 1

Next Lecture: Interdomain Routing : Computer Networking. Outline. Routing Hierarchies BGP

Overview. Information About Layer 3 Unicast Routing. Send document comments to CHAPTER

Fast convergence project

On the Impact of Route Processing and MRAI Timers on BGP Convergence Times

Security in inter-domain routing

Introduction. 2002, Cisco Systems, Inc.

BGP Commands. Network Protocols Command Reference, Part 1 P1R-355

Transcription:

A Technique for Reducing BGP Update Announcements through Path Exploration Damping Geoff Huston, Mattia Rossi, Grenville Armitage mrossi@swin.edu.au Centre for Advanced Internet Architectures (CAIA) Swinburne University of Technology Terminology and BGP recap BGP messages between BGP speakers (peers): OPEN KEEP-ALIVE UPDATE NOTIFICATION ROUTE-REFRESH UPDATE messages: carry announcements or withdrawals or both for the same -path announcements or withdrawals are a list of prefixes update packing -path: list of es to be traversed to reach the originator/owner of the prefix -path length is the main criteria for deciding the best path Architectures http://www.caia.swin.edu.au mrossi@swin.edu.au 16 December, 2010 2

Terminology and BGP recap BGP speaker uses 3+1 Tables: ADJ-RIB-IN (per peer) RIB (routing table) ADJ-RIB-OUT (per peer) decision making takes place in RIB using information from ADJ-RIB-IN ADJ-RIB-OUT used for UPDATEs per peer FIB, forwarding table 2 Layers: Control plane (routing plane) exchange of routing information Data plane (forwarding plane) packet forwarding Architectures http://www.caia.swin.edu.au mrossi@swin.edu.au 16 December, 2010 3 BGP dynamics Simplified example for ebgp: 5 2 3 4 1 Architectures http://www.caia.swin.edu.au mrossi@swin.edu.au 16 December, 2010 4

BGP dynamics 5 Path: 1 2 3 4 1 Architectures http://www.caia.swin.edu.au mrossi@swin.edu.au 16 December, 2010 5 BGP dynamics Path: 2,1 5 Path: 1 2 3 4 Path: 2,1 1 Architectures http://www.caia.swin.edu.au mrossi@swin.edu.au 16 December, 2010 6

BGP dynamics Path: *2,1 3,2,1 5 Path: 5,2,1 Path: 1 2 3 4 Path: 2,1 Path: 3,2,1 1 Architectures http://www.caia.swin.edu.au mrossi@swin.edu.au 16 December, 2010 7 BGP dynamics Path: *2,1 3,2,1 4,3,2,1 5 Path: 5,2,1 Path: 1 2 3 4 Path: 2,1 Path: 3,2,1 1 Architectures http://www.caia.swin.edu.au mrossi@swin.edu.au 16 December, 2010 8

What is Path Exploration? From where wepath: left before: *2,1 3,2,1 4,3,2,1 5 Path: 5,2,1 2 3 4 Path: 2,1 Path: 3,2,1 1 Architectures http://www.caia.swin.edu.au mrossi@swin.edu.au 16 December, 2010 9 What is Path Exploration? Path: *3,2,1 4,3,2,1 5 Path: 5,2,1 W 2 W 3 4 Path: 3,2,1 1 Architectures http://www.caia.swin.edu.au mrossi@swin.edu.au 16 December, 2010 10

What is Path Exploration? Path: *4,3,2,1 5 A Path: 5,3,2,1 W 2 3 W 4 1 Architectures http://www.caia.swin.edu.au mrossi@swin.edu.au 16 December, 2010 11 What is Path Exploration? 5 A Path: 5,4,3,2,1 W 2 3 4 1 Architectures http://www.caia.swin.edu.au mrossi@swin.edu.au 16 December, 2010 12

What is Path Exploration? 5 W 2 3 4 1 Architectures http://www.caia.swin.edu.au mrossi@swin.edu.au 16 December, 2010 13 Path Exploration consequences Unnecessary load! Every update triggers one or more decision processes CPU load Every peer sends updates peers CPU load Path Exploration unnecessary updates unnecessary CPU load Unnecessary network load Architectures http://www.caia.swin.edu.au mrossi@swin.edu.au 16 December, 2010 14

Current methods to avoid unnecessary updates Old knowledge - countermeasures exist Outgoing updates depend on arrival time of incoming updates Three methods available in current BGP systems All three based on timing: MRAI - Minimum Route advertisement Interval Delays announcements Goal: Prevention of interim announcements RFD - Route Flap Damping Delays withdrawals and announcements for unstable peers for 24 hrs Goal: Prevention of updates caused by flapping routes WRATE - Withdrawal rate limiting Delays withdrawals and announcements Goal: Allow peer to stabilize before sending updates Architectures http://www.caia.swin.edu.au mrossi@swin.edu.au 16 December, 2010 15 The Problem Current status is not ideal: RFD is strongly discouraged WRATE likely disrupts data delivery MRAI widely deployed with a timer of 30 seconds + random jitter for ebgp often not deployed on a per-prefix basis random behavior We need a better solution! Architectures http://www.caia.swin.edu.au mrossi@swin.edu.au 16 December, 2010 16

Update categorization Code AA+ AA- AA0 AA* AA AW NA Description Announcement of an already announced prefix with a longer Path (update to longer path) Announcement of an announced prefix with a shorter Path (update to shorter path) Announcement of an announced prefix with a different path of the same length (update to a different Path of same length) Announcement of an announced prefix with the same path but different attributes (update of attributes) Announcement of an announced prefix with no change in path or attributes (possible BGP error or data collection error) Withdrawal of an announced prefix Announcement of a previously unknown or withdrawn prefix Architectures http://www.caia.swin.edu.au mrossi@swin.edu.au 16 December, 2010 17 Update sequences Path Exploration example by update sequence: {NA, AA+, AA+, AW} We define Path Exploration: An update sequence lengthening the -path gradually until stability is reached Architectures http://www.caia.swin.edu.au mrossi@swin.edu.au 16 December, 2010 18

PED Getting rid of unnecessary updates the smart way Path Exploration Damping PED Algorithm: Delay updates announcing a longer (or equal-length) -path (AA+,AA0,AA*,AA) Immediately send announcements of a shorter -path or withdrawals (AA-,AW) Do not delay initial announcements (NA) Perform output queue compression Introduction of the Path Exploration Damping Timer PEDI PED does not change the BGP protocol PED can be deployed incrementally Architectures http://www.caia.swin.edu.au mrossi@swin.edu.au 16 December, 2010 19 PED Implementation Quagga 0.99.13 Implemented in ADJ-RIB-OUT (does not affect decision process) Per-peer and per-prefix basis Added jitter like MRAI does Architectures http://www.caia.swin.edu.au mrossi@swin.edu.au 16 December, 2010 20

PED Reduction in update load Experiments using 24 hours of real BGP updates Two datasets: 1. APNIC (2 peers) 2. Routeviews (5 peers) Replayed using the Quagga-Accelerator 293 11537 3727 4777 4608 2914 48285 6447 Router 2 Routeviews Router 1 65102 Router 1 65102 APNIC 131702 Router 2 Architectures http://www.caia.swin.edu.au mrossi@swin.edu.au 16 December, 2010 21 PED Reduction in update load Used a range of PEDI settings based on intervals of incoming Path Exploration sequences: 1. APNIC: 30s 70s, 5s steps 2. Routeviews: 5s 75s, 5s steps Compared to 0s MRAI (no delay Juniper default) and 30s MRAI (Cisco default) Architectures http://www.caia.swin.edu.au mrossi@swin.edu.au 16 December, 2010 22

Incoming Path Exploration intervals APNIC CDF 1 0.9 0.8 0.7 0.6 0.5 0.4 0.3 0.2 0.1 0 CDF Interval dis tribution 10k 1k 100 10 1 log(number of Path Exploration events ) 0 30 60 90 120 150 180 210 240 270 300 interval times in s econds Architectures http://www.caia.swin.edu.au mrossi@swin.edu.au 16 December, 2010 23 Incoming Path Exploration intervals Routeviews CDF 1 0.9 0.8 0.7 0.6 0.5 0.4 0.3 0.2 0.1 0 CDF Interval dis tribution 100k 10k 1k 100 10 1 log(number of Path Exploration events ) 0 30 60 90 120 150 180 210 240 270 300 interval times in s econds Architectures http://www.caia.swin.edu.au mrossi@swin.edu.au 16 December, 2010 24

Results APNIC number of mes s ages 160k 140k 120k 100k 80k 60k 40k 20k 0 BGP update mes s ages Prefix announcements Prefix withdrawals 70 s ec PEDI 65 s ec PEDI 60 s ec PEDI 55 s ec PEDI 50 s ec PEDI 45 s ec PEDI 40 s ec PEDI 35 s ec PEDI 30 s ec PEDI 0 s ec MRAI 30 s ec MRAI Architectures http://www.caia.swin.edu.au mrossi@swin.edu.au 16 December, 2010 25 Results Routeviews number of mes s ages 150k 100k 50k BGP update mes s ages Prefix announcements Prefix withdrawals 0 75 s ec PEDI 70 s ec PEDI 65 s ec PEDI 60 s ec PEDI 55 s ec PEDI 50 s ec PEDI 45 s ec PEDI 40 s ec PEDI 35 s ec PEDI 30 s ec PEDI 25 s ec PEDI 20 s ec PEDI 15 s ec PEDI 10 s ec PEDI 5 s ec PEDI 0 s ec MRAI 30 s ec MRAI Architectures http://www.caia.swin.edu.au mrossi@swin.edu.au 16 December, 2010 26

Results in Numbers Reduction of announcements compared to 30s MRAI: APNIC dataset: 20% for 35s PEDI 29% for 65s PEDI Routeviews dataset: 18% for 35s PEDI 32% for 65s PEDI Architectures http://www.caia.swin.edu.au mrossi@swin.edu.au 16 December, 2010 27 Good results but... What about convergence time!? Architectures http://www.caia.swin.edu.au mrossi@swin.edu.au 16 December, 2010 28

What is convergence in BGP? Convergence is commonly understood as: All es participating in a BGP system have received the latest, up-to-date routing information for a certain prefix A BGP system is stable Approximated by: How long does it take for the upstream peer to have a stable route to a prefix? Architectures http://www.caia.swin.edu.au mrossi@swin.edu.au 16 December, 2010 29 Convergence time approximation APNIC data 800 700 600 Upper and lower quartile Mean Median 500 s econds 400 200 150 100 50 0 70s PEDI 65s PEDI 60s PEDI 55s PEDI 50s PEDI 45s PEDI 40s PEDI 35s PEDI 30s PEDI 0s MRAI 30s MRAI Architectures http://www.caia.swin.edu.au mrossi@swin.edu.au 16 December, 2010 30

Convergence time approximation Routeviews data seconds 800 700 600 500 400 250 200 Upper and lower quartile Mean Median 150 100 50 0 70 sec PDI 65 sec PDI 60 sec PDI 55 sec PDI 50 sec PDI 45 sec PDI 40 sec PDI 35 sec PDI 30 sec PDI 25 sec PDI 20 sec PDI 15 sec PDI 10 sec PDI 5 sec PDI 0 sec MRAI 30 sec MRAI Architectures http://www.caia.swin.edu.au mrossi@swin.edu.au 16 December, 2010 31 Convergence refined optimality vs. reachability Convergence in BGP is actually twofold: Optimality: Every in the BGP system has the best path to the originator/owner of the prefix Control plane convergence The BGP system is stable Reachability: Every in the BGP system has a path to the originator/owner of the prefix Path doesn t need to be valid, data delivery needs to be ensured Data plane convergence BGP system doesn t need to be stable to achieve this state Control plane convergence only needed up to an altbgp speaker Reachability ensures data delivery, optimality the best path Architectures http://www.caia.swin.edu.au mrossi@swin.edu.au 16 December, 2010 32

Convergence refined optimality vs. reachability We have 4 possible events that trigger instability: T long A link failure triggers an announcement of a longer (or equal-length) -path T short A link recovery triggers an announcement of a shorer -path T down A link failure triggers a withdrawal T up A link recovery triggers a new announcement Reachability and optimality are achieved at different times, depending on the event: T long Reachability is achieved before optimality T short Reachability is already ensured, only optimality needs to be achieved T down Reachability can not be achieved, optimality is achieved when every peer has withdrawn the route T up Reachability and optimality are mostly achieved at the same time, optimality can be delayed by timers though Architectures http://www.caia.swin.edu.au mrossi@swin.edu.au 16 December, 2010 33 Convergence with MRAI at 30s and PEDI at 35s Announcement of initial route at 6 : PED: 5 seconds MRAI: 60-120 seconds Stable System: * 1 * 2,1 *3,2,1 *4,3,2,1 6,13,12,11,10,1 *13,12,11,10,1 5,4,3,2,1 2 3 4 5 6 * 1 *10,1 Data to 1 *11,10,1 22,21,20,10,1 1 10 11 12 13 Prefix Origin: 1.0.0.0/8 *12,11,10,1 20 21 22 30 *10,1 *20,10,1 *21,20,10,1 12,11,10,1 *13,12,11,10,1 Architectures http://www.caia.swin.edu.au mrossi@swin.edu.au 16 December, 2010 34

Convergence MRAI at 30s and PEDI at 35s T long between 10 and 11 : Reachability achieved ( 11 ) PED: 0 seconds MRAI: 0-4 or 29-30 seconds * 1 * 2,1 *3,2,1 *4,3,2,1 6,13,12,11,10,1 *13,12,11,10,1 5,4,3,2,1 2 3 4 5 6 * 1 Data to 1 *22,21,20,10,1 *12,22,21,20,10,1 1 10 11 12 13 Prefix Origin: 1.0.0.0/8 *12,11,10,1 *10,1 *20,10,1 20 21 22 30 *21,20,10,1 *13,12,11,10,1 Architectures http://www.caia.swin.edu.au mrossi@swin.edu.au 16 December, 2010 35 Convergence MRAI at 30s and PEDI at 35s T long between 10 and 11 : MRAI goes further within 1-30 seconds * 1 * 2,1 *3,2,1 *4,3,2,1 6,13,12,11,10,1 *5,4,3,2,1 13,12,22,21,20,10,1 2 3 4 5 6 * 1 Data to 1 *22,21,20,10,1 *12,22,21,20,10,1 1 10 11 12 13 Prefix Origin: 1.0.0.0/8 *12,22,21,20,10,1 *10,1 *20,10,1 20 21 22 30 *21,20,10,1 *13,12,11,10,1 Architectures http://www.caia.swin.edu.au mrossi@swin.edu.au 16 December, 2010 36

Convergence MRAI at 30s and PEDI at 35s T long between 10 and 11 : Optimality achieved: PED: 66 seconds (+-jitter) MRAI: 2-58 seconds * 1 * 2,1 *3,2,1 *4,3,2,1 *5,4,3,2,1 13,12,22,21,20,10,1 2 3 4 5 6 * 1 Data to 1 *22,21,20,10,1 *12,22,21,20,10,1 1 10 11 12 13 Prefix Origin: 1.0.0.0/8 *12,22,21,20,10,1 *10,1 *20,10,1 *21,20,10,1 20 21 22 30 *13,12,22,21,20,10,1 Architectures http://www.caia.swin.edu.au mrossi@swin.edu.au 16 December, 2010 37 Convergence MRAI at 30s and PEDI at 35s T short between 10 and 11 : Optimality achieved: PED: 2 seconds MRAI: 31-33 and 55-60 seconds * 1 * 2,1 *3,2,1 *4,3,2,1 6,13,12,11,10,1 *13,12,11,10,1 5,4,3,2,1 2 3 4 5 6 * 1 *10,1 Data to 1 *11,10,1 22,21,20,10,1 1 10 11 12 13 Prefix Origin: 1.0.0.0/8 *12,11,10,1 *10,1 *20,10,1 20 21 22 30 *21,20,10,1 12,11,10,1 *13,12,11,10,1 Architectures http://www.caia.swin.edu.au mrossi@swin.edu.au 16 December, 2010 38

Convergence MRAI at 30s and PEDI at 35s Announcement of initial route at 6 : PED: 5 seconds MRAI: 60-120 seconds T down at 1 Optimality achieved (all routes withdrawn): PED: 0 seconds MRAI: 0 seconds T up at 1 Optimality achieved (same as initial anouncement): PED: 5 seconds MRAI: 32-34, 58-60, 76-90 seconds Architectures http://www.caia.swin.edu.au mrossi@swin.edu.au 16 December, 2010 39 Conclusions PED diminishes update load PED delays optimality in some cases PED is faster than MRAI for T up and T short, slower for T long and same for T down PED is more consistent than MRAI 35 second PEDI is a safe default value Can be deployed incrementally Interacts well with MRAI Architectures http://www.caia.swin.edu.au mrossi@swin.edu.au 16 December, 2010 40

Future work Dynamic PEDI calculation Improvement of heuristics / addition of new heuristics Improvement of implementation Improvement of evaluation tools Architectures http://www.caia.swin.edu.au mrossi@swin.edu.au 16 December, 2010 41 Thank you! Questions? Architectures http://www.caia.swin.edu.au mrossi@swin.edu.au 16 December, 2010 42