CS BGP v4. Fall 2014

Similar documents
Important Lessons From Last Lecture Computer Networking. Outline. Routing Review. Routing hierarchy. Internet structure. External BGP (E-BGP)

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

CS 640: Introduction to Computer Networks. Intra-domain routing. Inter-domain Routing: Hierarchy. Aditya Akella

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

CS 268: Computer Networking. Next Lecture: Interdomain Routing

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

TELE 301 Network Management

CS 268: Computer Networking

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

Ravi Chandra cisco Systems Cisco Systems Confidential

COMP/ELEC 429 Introduction to Computer Networks

Inter-domain Routing. Outline. Border Gateway Protocol

CS4700/CS5700 Fundamentals of Computer Networks

BGP Configuration. BGP Overview. Introduction to BGP. Formats of BGP Messages. Header

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

internet technologies and standards

15-744: Computer Networking BGP

Internet Interconnection Structure

CS321: Computer Networks Unicast Routing

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

Lecture 16: Interdomain Routing. CSE 123: Computer Networks Stefan Savage

Inter-Domain Routing: BGP

BGP. Autonomous system (AS) BGP version 4

Configuring BGP. Cisco s BGP Implementation

BGP. Autonomous system (AS) BGP version 4

CSCI-1680 Network Layer: Inter-domain Routing Rodrigo Fonseca

Routing Between Autonomous Systems (Example: BGP4) RFC 1771

Internet inter-as routing: BGP

BGP. Autonomous system (AS) BGP version 4

Internet Routing : Fundamentals of Computer Networks Bill Nace

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

CSCI-1680 Network Layer: Inter-domain Routing Rodrigo Fonseca

Why dynamic route? (1)

Inter-Domain Routing: BGP II

PART III. Implementing Inter-Network Relationships with BGP

BGP. Border Gateway Protocol (an introduction) Karst Koymans. Informatics Institute University of Amsterdam. (version 17.3, 2017/12/04 13:20:08)

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

Lecture 16: Border Gateway Protocol

CSCI-1680 Network Layer: Inter-domain Routing Rodrigo Fonseca

Graph abstraction: costs. Graph abstraction 10/26/2018. Interplay between routing and forwarding

Interdomain routing CSCI 466: Networks Keith Vertanen Fall 2011

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

Border Gateway Protocol (an introduction) Karst Koymans. Monday, March 10, 2014

Inter-Domain Routing: BGP II

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

Network Layer: Routing

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

Other Developments: CIDR

An overview of how packets are routed in the Internet

Advanced Computer Networks

Border Gateway Protocol

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

Introduction to IP Routing. Geoff Huston

Routing Unicast routing protocols

Securing BGP. Geoff Huston November 2007

CS4450. Computer Networks: Architecture and Protocols. Lecture 15 BGP. Spring 2018 Rachit Agarwal

ÉCOLE POLYTECHNIQUE FÉDÉRALE DE LAUSANNE. External Routing BGP. Jean Yves Le Boudec 2015

Lecture 18: Border Gateway Protocol

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

! Distance vector routing! Link state routing.! Path vector routing! BGP: Border Gateway Protocol! Route aggregation

Lecture 17: Border Gateway Protocol

Routing. Jens A Andersson Communication Systems

Module 6 Implementing BGP

Internet Protocols Fall Lectures Inter-domain routing, mobility support, multicast routing Andreas Terzis

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

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

Last time. Transitioning to IPv6. Routing. Tunneling. Gateways. Graph abstraction. Link-state routing. Distance-vector routing. Dijkstra's Algorithm

Routing on the Internet. Routing on the Internet. Hierarchical Routing. Computer Networks. Lecture 17: Inter-domain Routing and BGP

Interplay Between Routing, Forwarding

Border Gateway Protocol (BGP-4)

Inter-AS routing. Computer Networking: A Top Down Approach 6 th edition Jim Kurose, Keith Ross Addison-Wesley

Interdomain Routing Reading: Sections P&D 4.3.{3,4}

How does a router know where to send a packet next?

Professor Yashar Ganjali Department of Computer Science University of Toronto.

Inter-AS routing and BGP. Network Layer 4-1

CSE/EE 461 Lecture 11. Inter-domain Routing. This Lecture. Structure of the Internet. Focus How do we make routing scale?

Routing Protocols --- Exterior Gateway Protocol

Connecting to a Service Provider Using External BGP

Routing part 2. Electrical and Information Technology

c2001, Dr.Y.N.Singh, EED, IITK 2 Border Gateway Protocol - 4 BGP-4 (RFC intended to be used for routing between Autonomou

Architectures and Protocols for Integrated Networks. Intra-domain and Inter-domain Routing Protocols

Interdomain Routing Reading: Sections K&R EE122: Intro to Communication Networks Fall 2007 (WF 4:00-5:30 in Cory 277)

Inter-Domain Routing: BGP

EECS 122, Lecture 17. The Distributed Update Algorithm (DUAL) Optimization Criteria. DUAL Data Structures. Selecting Among Neighbors.

Planning for Information Network

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

Communication Networks

EE 122: Inter-domain routing Border Gateway Protocol (BGP)

Routing(2) Inter-domain Routing

Configuration prerequisites 45 Configuring BGP community 45 Configuring a BGP route reflector 46 Configuring a BGP confederation 46 Configuring BGP

Advanced Computer Networks

2011, Sushile Tejwani

CS 43: Computer Networks. 24: Internet Routing November 19, 2018

Routing(2) Inter-domain Routing

Lecture 4: Intradomain Routing. CS 598: Advanced Internetworking Matthew Caesar February 1, 2011

Internet Routing Protocols Lecture 01 & 02

BGP Attributes (C) Herbert Haas 2005/03/11 1

From the given configuration taken from RTA and graphic, which network will be filtered from being propagated to RTC from RTA?

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

Connecting to a Service Provider Using External BGP

Transcription:

CS 457 - BGP v4 Fall 2014

Autonomous Systems What is an AS? a set of routers under a single technical administration uses an interior gateway protocol (IGP) and common metrics to route packets within the AS uses an exterior gateway protocol (EGP) to route packets to other AS s AS may use multiple IGPs and metrics, but appears as single AS to other AS s

Example 1 2 IGP 1.1 1.2 EGP IGP 2.1 2.2 2.2.1 5 IGP EGP EGP EGP 3 3.1 3.2 IGP EGP IGP 4.1 4.2 4 5.1 5.2

BGP Routing Choices Link state or distance vector? no universal metric - policy decisions Problems with distance-vector: Bellman-Ford algorithm slow to converge (counting to infinity problem) Problems with link state: metric used by routers not the same - loops LS database too large - entire Internet may expose policies to other AS s

Solution: Path Vectors Each routing update carries the entire path Loops are detected as follows: when AS gets route check if AS already in path if yes, reject route if no, add self and (possibly) advertise route further Advantage: metrics are local - AS chooses path, protocol ensures no loops

Interconnecting BGP Peers BGP uses TCP to connect peers (port 179) Advantages: makes BGP much simpler no need for periodic refresh - routes are valid until withdrawn, or the connection is lost incremental updates Disadvantages congestion control on a routing protocol?

Hop-by-hop Model BGP advertises to neighbors only those routes that it uses consistent with the hop-by-hop Internet paradigm e.g., AS1 cannot tell AS2 to route to other ASs in a manner different than what AS2 has chosen (need source routing for that)

AS Categories Stub: an AS that has only a single connection to one other AS - carries only local traffic Multi-homed: an AS that has connections to more than one AS, but does not carry transit traffic Transit: an AS that has connections to more than one AS, and carries both transit and local traffic (under certain policy restrictions)

AS Categories AS1 AS1 AS3 AS2 AS1 AS3 AS2 Transit Stub AS2 Multi-homed

Policy With BGP BGP provides capability for enforcing various policies Policies are not part of BGP: they are provided to BGP as configuration information BGP enforces policies by choosing paths from multiple alternatives and controlling advertisement to other AS s

Examples of BGP Policies A multi-homed AS refuses to act as transit limit path advertisement A multi-homed AS can become transit for some AS s only advertise paths to those AS s An AS can favor or disfavor certain AS s for traffic transit from itself Pick appropriate routes by examining path vectors

BGP Is NOT Needed If: Single homed network (stub) AS does not provide downstream routing AS uses a default route

Routing Information Bases (RIB) Routes are stored in RIBs Adj-RIBs-In: routing info that has been learned from other routers (unprocessed routing info) Loc-RIB: local routing information selected from Adj-RIBs-In (routes selected locally) Adj-RIBs-Out: info to be advertised to peers (routes to be advertised)

BGP Messages Open Opens a BGP connection (establishes a TCP connection) Update Withdrawn routes New routes that include path attributes e.g., origin, path Notification Used for error notification - TCP connection is closed immediately after notification Keep alive Sent periodically to peers to ensure connectivity sent in place of an update message

AS_PATH Attribute

Next Hop Path Attribute NEXT_HOP: IP address of border router to be used as next hop Usually, next hop is the router sending the UPDATE message Useful when some routers do not speak BGP

Example of NEXT_HOP AS1 AS2 A (BGP) UPDATE MSG through BGP Traffic to 138.39.0.0/16 B (BGP) C (no BGP) 138.39.0.0/16

LOCAL-PREF Path Attribute Provided by a BGP router to all other internal BGP routers denotes degree of preference for each destination Higher preference wins

LOCAL-PREF Example 1 11/8 AS1 a c Link A Link B b AS2 d 12/8 You are AS1 with two links A & B to AS2. Suppose AS2 advertises 12/8 on both links. How to force all traffic to AS2 s prefix 12/8 through link A? At a: LP=10 for 12/8:b At c: LP=5 for 12/8:d

LOCAL-PREF Example 2 AS1 a Link A b AS2 You are AS1 with two links A & B to AS2. How to load-share AS2-bound traffic between links A & B? 11/8 c Link B d 12/8 a: 12.0/9:b - LP 10 a: 12.128/9:b - LP 5 c: 12.0/9:d - LP 5 c: 12.128/9:d - LP 10

Multi-exit Discriminator (MED) Path Attribute Link A Cost=10 PFX AS3 AS1 AS2 Cost=50 Link B AS4 Used when two AS s connect to each other in more than one place Metric expresses degree of preference AS2 includes MEDs with prefixes sent to AS1 over links A, B AS1 uses these to select appropriate link when sending to prefix PFX

..MED Lower cost wins

MED Example north: 11.0/16 AS1 a Link A b AS2 You are AS1 with two links A & B to AS2. How can you make AS2 send north traffic to link A and south traffic to link B? south: 11.1/16 c Link B d 11.0/16:a (MED: 10) 11.0/16:c (MED: 20) 11.1/16:a (MED: 20) 11.1/16:c (MED: 10)

MED (Continued) advertisement AS1 Link A AS2 AS3 traffic Link B AS4 AS2 can use MED to instruct AS1 to prefer link A for traffic to AS3, and link B for traffic to AS4. How is this done?

MED (Continued) MED is typically used in provider/subscriber scenarios. It can lead to unfairness if used between ISPs because it may force one ISP to carry more traffic: SF ISP1 ISP2 NY ISP1 ignores MED from ISP2 ISP2 obeys MED from ISP1 ISP2 ends up carrying traffic most of the way

Local Pref vs. MED Use Local Pref if you have multiple exit points to a neighbor and want to tell your routers where to direct traffic Intra-AS policy Use MED if you have multiple links with a neighbor and want to tell neighbor where to send traffic to you Inter-AS policy

Internal v.s. External BGP R1 R3 BGP R4 R2 BGP can be used by R3 and R4 to learn routes. How do R1 and R2 learn routes? Option 1: Inject routes in IGP only works for small routing tables Option 2: Use I-BGP

Internal BGP (I-BGP) Same messages as E-BGP Different rules about re-advertising prefixes: prefix learned from E-BGP can be advertised to I-BGP neighbor and vice-versa, but prefix learned from one I-BGP neighbor cannot be advertised to another I-BGP neighbor reason: no AS PATH within the same AS and thus danger of looping

Internal BGP (I-BGP) R1 R3 E-BGP R4 R2 I-BGP R3 can tell R1 and R2 prefixes from R4 R3 can tell R4 prefixes from R1 and R2 R3 cannot tell R2 prefixes from R1 R2 can only find these prefixes through a direct connection to R1 Result: I-BGP routers must be fully connected (via TCP)! contrast with E-BGP sessions that map to physical links

I-BGP Mesh I-BGP mesh

BGP Example AS1 R1 R1 advertises routes within AS1 to R2 R2 advertises routes within AS2 and AS3 to R1 R2 learns AS3 routes from I-BGP with R4 R4 learns AS3 routes from E-BGP with R6 R4 advertises routes within AS2 and AS1 to R6 E-BGP AS2 I-BGP R2 R5 R3 R4 E-BGP R6 AS3

Decision Process Calculate degree of preference for each route in Adj-RIB-In as follows (apply following steps until one route is left): select route with highest LOCAL-PREF select route with shortest AS-PATH apply MED (if routes learned from same neighbor) select route with smallest NEXT-HOP cost

...Decision Process select route learned from E-BGP peer with lowest BGP ID select route from I-BGP neighbor with lowest BGP ID Install selected route in Loc-RIB Selectively disseminate routes to peers, update Adj-RIB-Out Done

Multi-homing With multi-homing, a single network has more than one connections to the Internet Improves reliability and performance: can accommodate link failure bandwidth is sum of links to Internet Multiple connections provide load sharing but not load balancing BGP cannot do load balancing

Issues With Multi-homing Symmetric routing while conventional wisdom prefers symmetric paths, many (most?) are asymmetric Packet re-ordering may trigger TCP s fast retransmit algorithm Other concerns: addressing, DNS, aggregation

Static Routing May Not Work ISP2 ISP3 ISPn Interconnect Static route from R1 to customer over L1 Static route from R2 to customer over L2 L1 R1 R2 ISP1 L2 Customer Static routing may send traffic from ISPs 2-n to customer over one link and traffic from ISP1 over the other link. Lacks flexibility.

Multi-homing with Multiple Providers Major issues: addressing aggregation Customer address space: delegated by ISP1 delegated by ISP2 delegated by ISP1 and ISP2 obtained independently Advantages and disadvantages? ISP1 ISP3 Customer ISP2

Case 1: Customer Uses Address Space From One ISP (1 or 2) Customer uses address space from ISP1 ISP1 advertises /16 aggregate Customer advertises /24 route to ISP2 ISP2 relays route to ISP1 and ISP3 ISP2-3 use the /24 route ISP1 routes directly Problems with traffic load? 138.39/16 ISP1 ISP3 Customer 138.39.1/24 ISP2

Case 2: Customer Uses Address Space From Both ISPs ISP1 and ISP2 continue to announce aggregates Load sharing depends on traffic to two prefixes Lack of reliability: if ISP1 link goes down, part of customer becomes inaccessible Customer may announce prefixes to both ISPs ISP3 ISP1 ISP2 138.39.1/24 204.70.1/24 Customer

Case 3: Customer Uses Its Own Address Space Offers the most control, but at the cost of aggregation Still need to control paths: suppose ISP1 large, ISP2-3 small want traffic directly from ISP1, but ISP3 should send via ISP2 customer advertises artificially long path to ISP1, but local-pref attribute at ISP overrides ISP3 learns shorter path from ISP2 ISP1 ISP3 Customer ISP2

How can BGP express the following policies: 2 will not act as transit to 3 2 will not accept packets sourced in 1 1 will use the green path for packets destined to 4 and the red for packets destined to 5 1 2 2.1 2.2 1.1 1.2 2.2.1 5 3 3.1 3.2 4.1 4.2 4 5.1 5.2