Outline. EE 122: Interdomain Routing Protocol (BGP) BGP Routing. Internet is more complicated... Ion Stoica TAs: Junda Liu, DK Moon, David Zats

Similar documents
Exterior Gateway Protocols (BGP)

Inter-domain Routing. Outline. Border Gateway Protocol

Inter-domain Routing Basics. Border Gateway Protocol. Inter-domain Routing Basics. Inter-domain Routing Basics. Exterior routing protocols created to:

Interdomain Routing. Outline

Outline. Internet Routing. Alleviating the Problem. DV Algorithm. Routing Information Protocol (RIP) Link State Routing. Routing algorithms

6.263 Data Communication Networks

Based on Computer Networking, 4 th Edition by Kurose and Ross

Border Gateway Protocol (BGP)

Multihoming and Multi-path Routing. CS 7260 Nick Feamster January

Week 4 / Paper 1. Open issues in Interdomain Routing: a survey

Module 7. Routing and Congestion Control. Version 2 CSE IIT, Kharagpur

Internet inter-as routing: BGP

Active measurements: networks. Prof. Anja Feldmann, Ph.D. Dr. Nikolaos Chatzis Georgios Smaragdakis, Ph.D.

Border Gateway Protocol BGP4 (2)

Towards a Next- Generation Inter-domain Routing Protocol. L. Subramanian, M. Caesar, C.T. Ee, M. Handley, Z. Mao, S. Shenker, and I.

Routing in Small Networks. Internet Routing Overview. Agenda. Routing in Large Networks

Lecture 18: Border Gateway Protocol"

Internet inter-as routing: BGP

Routing Protocols. Interconnected ASes. Hierarchical Routing. Hierarchical Routing

Can Forwarding Loops Appear when Activating ibgp Multipath Load Sharing?

DD2491 p Load balancing BGP. Johan Nicklasson KTHNOC/NADA

CSC458 Lecture 6. Homework #1 Grades. Inter-domain Routing IP Addressing. Administrivia. Midterm will Cover Following Topics

Dynamic Routing Protocols II OSPF. Distance Vector vs. Link State Routing

Introduction to Routing

Route Discovery Protocols

Dove siamo? Architecture of Dynamic Routing

Network-Wide Prediction of BGP Routes

Understanding Large Internet Service Provider Backbone Networks

Administra0via. STP lab due Wednesday (in BE 301a!), 5/15 BGP quiz Thursday (remember required reading), 5/16

Internet Firewall CSIS Packet Filtering. Internet Firewall. Examples. Spring 2011 CSIS net15 1. Routers can implement packet filtering

ITRI CCL. IP Routing Primer. Paul C. Huang, Ph.D. ITRI / CCL / N300. CCL/N300; Paul Huang 1999/6/2 1

Internet Routing Protocols Lecture 04 BGP Continued

Interdomain Routing. Project Report

Masterkurs Rechnernetze IN2097

How To Make A Network Plan Based On Bg, Qos, And Autonomous System (As)

BGP route propagation. Internet AS relationships, Routing policy on Internet paths. Example of commercial relationship. Transit vs.

DD2491 p Inter-domain routing and BGP part I Olof Hagsand KTH/CSC

Doing Don ts: Modifying BGP Attributes within an Autonomous System

Network Level Multihoming and BGP Challenges

IK2205 Inter-domain Routing

Lesson 5-3: Border Gateway Protocol

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

APNIC elearning: BGP Basics. Contact: erou03_v1.0

B. Quoitin, S. Uhlig, C. Pelsser, L. Swinnen and O. Bonaventure

The goal of this lecture is to explain how routing between different administrative domains

APNIC elearning: BGP Attributes

Advanced BGP Policy. Advanced Topics

Chapter 10 Link-State Routing Protocols

BGP. 1. Internet Routing

BGP: Border Gateway Protocol

B. Quoitin, S. Uhlig, C. Pelsser, L. Swinnen and O. Bonaventure

BGP Prefix Hijack: An Empirical Investigation of a Theoretical Effect Masters Project

Border Gateway Protocol (BGP-4)

A Case Study Design of Border Gateway Routing Protocol Using Simulation Technologies

GregSowell.com. Mikrotik Routing

A Systematic Approach to BGP Configuration Checking

Transitioning to BGP. ISP Workshops. Last updated 24 April 2013

How To Understand Bg

Using the Border Gateway Protocol for Interdomain Routing

E : Internet Routing

Datagram-based network layer: forwarding; routing. Additional function of VCbased network layer: call setup.

CSE331: Introduction to Networks and Security. Lecture 8 Fall 2006

BGP overview BGP operations BGP messages BGP decision algorithm BGP states

basic BGP in Huawei CLI

KT The Value Networking Company

Lecture 8: Routing I Distance-vector Algorithms. CSE 123: Computer Networks Stefan Savage

Routing Protocol - BGP

ASSEMBLER A BGP-COMPATIBLE MULTIPATH INTER-DOMAIN ROUTING PROTOCOL

Juniper Exam JN0-343 Juniper Networks Certified Internet Specialist (JNCIS-ENT) Version: 10.1 [ Total Questions: 498 ]

Router and Routing Basics

Routing and traffic measurements in ISP networks

Inter-Domain Routing: Stability, Policies, and Incentives

Analyzing Capabilities of Commercial and Open-Source Routers to Implement Atomic BGP

The Case for Source Address Routing in Multihoming Sites

Massachusetts Institute of Technology Department of Electrical Engineering and Computer Science. Abstract

Introduction to LAN/WAN. Network Layer

Introduction to LAN/WAN. Network Layer (part II)

PRASAD ATHUKURI Sreekavitha engineering info technology,kammam

Understanding Route Redistribution & Filtering

Routing with OSPF. Introduction

BGP Routing Stability of Popular Destinations

OSPF Version 2 (RFC 2328) Describes Autonomous Systems (AS) topology. Propagated by flooding: Link State Advertisements (LSAs).

HP Networking BGP and MPLS technology training

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

CS551 Multi-homing in BGP

JNCIA Juniper Networks Certified Internet Associate

CS Computer Networks 1: Routing Algorithms

Introducing Basic MPLS Concepts

ETHEL THE AARDVARK GOES BGP ROUTING

BGP Route Analysis and Management Systems

Layer 3 Routing User s Manual

Link-State Routing Protocols

Evolution of QoS routing in the Internet

Detection and Analysis of Routing Loops in Packet Traces

Lecture 12: Link-state Routing"

Internet Control Message Protocol (ICMP)

Advanced Networking Routing: RIP, OSPF, Hierarchical routing, BGP

Understanding Virtual Router and Virtual Systems

Increasing Path Diversity using Route Reflector

Disaster Recovery Design Ehab Ashary University of Colorado at Colorado Springs

Transcription:

Outline EE 22: Interdomain Routing Protocol (BGP) Ion Stoica TAs: Junda Liu, DK Moon, David Zats http://inst.eecs.berkeley.edu/~ee22/fa9 (Materials with thanks to Vern Paxson, Jennifer Rexford, and colleagues at UC Berkeley) Why does BGP exist? What is interdomain routing and why do we need it? Why does BGP look the way it does? How does BGP work? Path vector algorithm and many boring details pay more attention to the why than the how 2 BGP Routing Internet is more complicated... Provides paths between networks Previous lecture presented two routing designs link-state distance vector Previous lecture assumed single domain all routers have same routing metric (shortest path) no privacy issues, no policy issues 3 Internet not just unstructured collection of networks Internet is comprised of a set of autonomous systems (ASes) independently run networks, some are commercial ISPs currently around 3, ASes ASes are sometimes called domains 4 hence interdomain routing

Internet: a large number of ASes Who speaks BGP? AS2 Large ISP Large ISP AS BGP R2 R3 R Stub Dial-Up ISP Stub Small ISP Stub Access Network R border router internal router Two types of routers Border router (Edge), Internal router (Core) 5 6 Purpose of BGP I-BGP and E-BGP you can reach net A via me AS2 I-BGP IGP: Intradomain routing Example: OSPF AS traffic to A R BGP R2 A R3 AS R2 E-BGP IGP AS2 A R3 announce B 7 table at R: R border router dest next hop A R2 internal router Share connectivity information across ASes 8 R R border router internal router R4 AS3 B R5 2

In more detail Rest of lecture... Motivate why BGP is the way it is Border router Internal router 6 2 3 4 9 2 3 Discuss some problems with interdomain routing Discuss (briefly!) what a new BGP might look like. Provide internal reachability (IGP) 2. Learn routes to external destinations (ebgp) 3. Distribute externally learned routes internally (ibgp) 4. Select closest egress (IGP) 9. ASes are autonomous Want to choose their own internal routing protocol different algorithms and metrics 5 Minute Break Questions Before We Proceed? Want freedom to route based on policy my traffic can t be carried over my competitor s network I don t want to carry transit traffic through my network not expressible as Internet-wide shortest path! Want to keep their connections and policies private would reveal business relationships, network structure 2 3

2. ASes have business relationships 2. ASes have business relationships Relations between ASes provider customer peer peer Business Implications Customer pay provider Peers don t pay each other 3 traffic allowed traffic not allowed Peers provide transit between their customers Peers do not provide transit to each other 4 AS-level topology Destinations are IP prefixes (e.g., 2.../8) Nodes are Autonomous Systems (ASes) internals are hidden Links are connections & business relationships 4 3 What routing algorithm can we use? Key issues are policy and privacy Can t use shortest path domains don t have any shared metric policy choices might not be shortest path 5 2 Client 7 5 6 Web server Can t use link state would have to flood policy preferences and topology would violate privacy 6 4

What about distance vector? Does not reveal any connectivity information But is designed to compute shortest paths Extend distance vector to allow policy choices? Path-Vector Routing Extension of distance-vector routing Support flexible routing policies Faster loop detection (no count-to-infinity) Key idea: advertise the entire path Distance vector: send distance metric per dest d Path vector: send the entire path for each dest d 3 d: path (2,) d: path () 2 7 8 data traffic data traffic d Faster Loop Detection Node can easily detect a loop Look for its own node identifier in the path E.g., node sees itself in the path 3, 2, Node can simply discard paths with loops E.g., node simply discards the advertisement Flexible Policies Each node can apply local policies Path selection: Which path to use? Path export: Which paths to advertise? Examples Node 2 may prefer the path 2, 3, over 2, Node may not let node 3 hear the path, 2 3 d: path (2,) d: path () 2 9 d: path (3,2,) 2 5

Selection vs Export Selection policies determines which paths I want my traffic to take Export policies determines whose traffic I am willing to carry Illustration Route export Customer Route selection Primary Notes: any traffic I carry will follow the same path my traffic takes, so there is a connection between the two from a protocol perspective, decisions can be arbitrary can depend on entire path (advantage of PV approach) 2 Competitor Backup 22 Selection: controls traffic out of the network Export: controls traffic into the network Examples of Standard Policies Transit network: Selection: prefer customer to peer to provider Export: Let customers use any of your routes Let anyone route through you to your customer Block everything else Multihomed (nontransit) network: Export: Don t export routes for other domains Selection: pick primary over backup Issues with Path-vector Policy Routing Reachability Security Performance Lack of isolation Policy oscillations 23 24 6

Reachability In normal routing, if graph is connected then reachability is assured With policy routing, this does not always hold Peers don t provide transit to each other Customer doesn t provide transit for provider Security An AS can claim to serve a prefix that they actually don t have a route to (blackholing traffic) problem not specific to policy or path vector important because of AS autonomy Provider AS X AS 3 Provider Even worse: snoop on all traffic to almost any destination without anyone realizing that anything is wrong 25 AS 2 Customer Fixable: make ASes prove they have a path 26 but not used in today s Internet Performance BGP designed for policy not performance Performance (example) AS path length can be misleading An AS may have many router-level hops Hot Potato routing common but suboptimal AS wants to hand off the packet as soon as possible Even BGP shortest paths are not shortest Fewest AS s!= Fewest number of routers AS 3 BGP says that path 4 is better than path 3 2 AS 4 2% of paths inflated by at least 5 router hops AS 2 Not clear this is a significant problem 27 28 AS 7

Lack of Isolation: dynamics If there is a change in the path, the path must be re-advertised to every node using the path Lack of isolation: routing table size Each BGP router must know path to every other IP prefix but router memory is expensive and thus constrained Number of prefixes growing more than linearly Subject of current research BGP updates per hour per prefix Fig. from [Huston] Number of prefixes in BGP table Fig. from [G. Huston] 29 3 Depends on the interactions of policies prefers over to reach Initially: nodes, 2, and 3 know only shortest path to 2 3 2 3 3 32 8

advertises its path to 2 advertise: 2 3 2 3 33 34 3 advertises its path to advertise: 2 3 2 3 35 36 9

withdraws its path from 2 since is no longer using it withdraw: 2 3 2 3 37 38 2 advertises its path to 3 2 3 2 3 advertise: 39 4

3 withdraws its path from since is no longer using it withdraw: 2 3 2 3 4 42 advertises its path to 2 2 3 2 3 43 44

2 withdraws its path from 3 since is no longer using it Depends on the interactions of policies 2 3 2 3 45 withdraw: 46 We are back to where we started! Policy Oscillations (cont d) Redesigning BGP Policy autonomy vs network stability focus of much recent research Not an easy problem PSPACE-complete to decide whether given policies will eventually converge! [FP28] However, if policies follow normal business practices, stability is guaranteed [GR2] If we keep all the current constraints, not many alternative design options (at high-level) Which constraints might we lift? Are most policies really private? could use link-state for some of the routing Do ASes really need to see the entire path? could hide some of the path, reducing updates Can AS structure be integrated into addressing? 47 48 2

Summary BGP is essential to the Internet ties different organizations together Poses fundamental challenges... leads to use of path vector approach...and myriad details (not presented in this lecture) Reading: Sections K&R 4.6.3 49 3