Border Gateway Protocol

Slides:



Advertisements
Similar presentations
1 Interdomain Traffic Engineering with BGP By Behzad Akbari Spring 2011 These slides are based on the slides of Tim. G. Griffin (AT&T) and Shivkumar (RPI)
Advertisements

BGP.
CS Summer 2003 CS672: MPLS Architecture, Applications and Fault-Tolerance.
Border Gateway Protocol Ankit Agarwal Dashang Trivedi Kirti Tiwari.
CS540/TE630 Computer Network Architecture Spring 2009 Tu/Th 10:30am-Noon Sue Moon.
Lecture 9 Overview. Hierarchical Routing scale – with 200 million destinations – can’t store all dests in routing tables! – routing table exchange would.
© J. Liebeherr, All rights reserved 1 Border Gateway Protocol This lecture is largely based on a BGP tutorial by T. Griffin from AT&T Research.
Border Gateway Protocol Autonomous Systems and Interdomain Routing (Exterior Gateway Protocol EGP)
Fundamentals of Computer Networks ECE 478/578 Lecture #18: Policy-Based Routing Instructor: Loukas Lazos Dept of Electrical and Computer Engineering University.
1 Interdomain Routing Protocols. 2 Autonomous Systems An autonomous system (AS) is a region of the Internet that is administered by a single entity and.
Chapter 4: Network Layer 4. 1 Introduction 4.2 Virtual circuit and datagram networks 4.3 What’s inside a router 4.4 IP: Internet Protocol –Datagram format.
1 Network Architecture and Design Routing: Exterior Gateway Protocols and Autonomous Systems Border Gateway Protocol (BGP) Reference D. E. Comer, Internetworking.
Interdomain Routing and The Border Gateway Protocol (BGP) Courtesy of Timothy G. Griffin Intel Research, Cambridge UK
The Border Gateway Protocol (BGP) Sharad Jaiswal.
Computer Networking Lecture 10: Inter-Domain Routing
More on BGP Check out the links on politics: ICANN and net neutrality To read for next time Path selection big example Scaling of BGP.
15-744: Computer Networking L-5 Inter-Domain Routing.
Ion Stoica October 2, 2002 (* this presentation is based on Lakshmi Subramanian’s slides) EE 122: Inter-domain routing – Border Gateway Protocol (BGP)
Routing.
14 – Inter/Intra-AS Routing
© 2009 Cisco Systems, Inc. All rights reserved. ROUTE v1.0—6-1 Connecting an Enterprise Network to an ISP Network Considering the Advantages of Using BGP.
ROUTING PROTOCOLS PART IV ET4187/ET5187 Advanced Telecommunication Network.
Border Gateway Protocol(BGP) L.Subramanian 23 rd October, 2001.
Inter-domain Routing Outline Border Gateway Protocol.
14 – Inter/Intra-AS Routing Network Layer Hierarchical Routing scale: with > 200 million destinations: can’t store all dest’s in routing tables!
I-4 routing scalability Taekyoung Kwon Some slides are from Geoff Huston, Michalis Faloutsos, Paul Barford, Jim Kurose, Paul Francis, and Jennifer Rexford.
© 2009 Cisco Systems, Inc. All rights reserved. ROUTE v1.0—6-1 Connecting an Enterprise Network to an ISP Network BGP Attributes and Path Selection Process.
Introduction to BGP.
1 Interdomain Routing (BGP) By Behzad Akbari Fall 2008 These slides are based on the slides of Ion Stoica (UCB) and Shivkumar (RPI)
CS 3700 Networks and Distributed Systems Inter Domain Routing (It’s all about the Money) Revised 8/20/15.
Chapter 9. Implementing Scalability Features in Your Internetwork.
Border Gateway Protocol
Network Layer r Introduction r Datagram networks r IP: Internet Protocol m Datagram format m IPv4 addressing m ICMP r What’s inside a router r Routing.
BGP4 - Border Gateway Protocol. Autonomous Systems Routers under a single administrative control are grouped into autonomous systems Identified by a 16.
Border Gateway Protocol (BGP) W.lilakiatsakun. BGP Basics (1) BGP is the protocol which is used to make core routing decisions on the Internet It involves.
More on Internet Routing A large portion of this lecture material comes from BGP tutorial given by Philip Smith from Cisco (ftp://ftp- eng.cisco.com/pfs/seminars/APRICOT2004.
T. S. Eugene Ngeugeneng at cs.rice.edu Rice University1 COMP/ELEC 429/556 Introduction to Computer Networks Inter-domain routing Some slides used with.
Network Layer4-1 Intra-AS Routing r Also known as Interior Gateway Protocols (IGP) r Most common Intra-AS routing protocols: m RIP: Routing Information.
CSCI-1680 Network Layer: Inter-domain Routing Based partly on lecture notes by Rob Sherwood, David Mazières, Phil Levis, Rodrigo Fonseca John Jannotti.
An internet is a combination of networks connected by routers. When a datagram goes from a source to a destination, it will probably pass through many.
CS 640: Introduction to Computer Networks Aditya Akella Lecture 11 - Inter-Domain Routing - BGP (Border Gateway Protocol)
1 Agenda for Today’s Lecture The rationale for BGP’s design –What is interdomain routing and why do we need it? –Why does BGP look the way it does? How.
Text BGP Basics. Document Name CONFIDENTIAL Border Gateway Protocol (BGP) Introduction to BGP BGP Neighbor Establishment Process BGP Message Types BGP.
Michael Schapira, Princeton University Fall 2010 (TTh 1:30-2:50 in COS 302) COS 561: Advanced Computer Networks
Inter-domain Routing Outline Border Gateway Protocol.
CS 640: Introduction to Computer Networks Aditya Akella Lecture 11 - Inter-Domain Routing - BGP (Border Gateway Protocol)
Border Gateway Protocol BGP-4 BGP environment How BGP works BGP information BGP administration.
1 Internet Routing 11/11/2009. Admin. r Assignment 3 2.
1 CS716 Advanced Computer Networks By Dr. Amir Qayyum.
14 – Inter/Intra-AS Routing
CS 3700 Networks and Distributed Systems
Autonomous Systems An autonomous system is a region of the Internet that is administered by a single entity. Examples of autonomous regions are: UVA’s.
Boarder Gateway Protocol (BGP)
Border Gateway Protocol
BGP 1. BGP Overview 2. Multihoming 3. Configuring BGP.
CS 3700 Networks and Distributed Systems
BGP supplement Abhigyan Sharma.
Interdomain Traffic Engineering with BGP
Lixin Gao ECE Dept. UMASS, Amherst
Routing.
Autonomous Systems An autonomous system is a region of the Internet that is administered by a single entity. Examples of autonomous regions are: UVA’s.
BGP Overview BGP concepts and operation.
Cours BGP-MPLS-IPV6-QOS
Computer Networking TCP/IP Part 2
Department of Computer and IT Engineering University of Kurdistan
Dan LI CS Department, Tsinghua University
COMP/ELEC 429/556 Introduction to Computer Networks
BGP Instability Jennifer Rexford
Computer Networks Protocols
Routing.
Presentation transcript:

Border Gateway Protocol This lecture is largely based on a BGP tutorial by T. Griffin from AT&T Research.

Internet Infrastructure

Internet Infrastructure Location where a network (ISP, corporate network, or regional network) gets access to the Internet is called a Point-of-Presence (POP). Locations where Tier-1 or Tier-2 networks exchange traffic are called peering points. Public peering: Traffic is swapped in a specific location, called Internet exchange points (IXPs) Private peering: Two networks establish a direct link to each other.

IXP – Internet exchange point Outside: Inside:

Backbone Network of a Tier-1 Provider (USA)

Global Map of Tier-1 Provider

Review: Autonomous Systems An autonomous system (AS) is a region of the Internet that is administered by a single entity and that has a unified routing policy Each autonomous system is assigned an Autonomous System Number (ASN). UofT’s campus network (AS239) Rogers Cable Inc. (AS812) Sprint (AS1239, AS1240, AS 6211, …) Interdomain routing is concerned with determining paths between autonomous systems (interdomain routing) Routing protocols for interdomain routing are called exterior gateway protocols (EGP)

Review: Interdomain and Intradomain Routing Routing protocols for intradomain routing are called interior gateway protocols (IGP) Objective: shortest path Routing protocols for interdomain routing are called exterior gateway protocols (EGP) Objective: satisfy policy of the AS

Number of Autonomous Systems

EGP and IGP Interior Gateway Protocol Routing is done based on metrics Routing domain is one autonomous system Exterior Gateway Protocol Routing is done based on policies Routing domain is the entire Internet

EGP Interdomain routing is based on connectivity between autonomous systems Interdomain routing can ignore many details of router interconnection

AS Graphs AT&T North America From: T. Griffin, BGP Tutorial

Multiple Routing Protocols Multiple routing protocols can run on the same router Each routing protocol updates the routing table

Autonomous Systems Terminology local traffic = traffic with source or destination in AS transit traffic = traffic that passes through the AS Stub AS = has connection to only one AS, only carry local traffic Multihomed Stub AS = has connection to >1 AS, but does not carry transit traffic Transit AS = has connection to >1 AS and carries transit traffic

Stub and Transit Networks Settings: AS 1 is a multi-homed stub network AS 3 and AS 4 are transit networks AS 2 and AS 5 are is a stub networks

Selective Transit Example: AS 3 carries traffic between AS 1 and AS 4 and between AS 2 and AS 4 But AS 3 does not carry traffic between AS 1 and AS 2 The example shows a routing policy.

Customer/Provider and Peers A stub network typically obtains access to the Internet through a transit network. Transit network that is a provider may be a customer for another network Customer pays provider for service

Customer/Provider and Peers Transit networks can have a peer relationship Peers provide transit between their respective customers Peers do not provide transit between peers Peers normally do not pay each other for service

Shortcuts through peering Note that peering reduces upstream traffic Delays can be reduced through peering But: Peering may not generate revenue

Border Gate Protocol (BGP) Border Gateway Protocol is the interdomain routing protocol for the Internet for routing between autonomous systems Currently in version 4 (1995) Network administrators can specify routing policies BGP is a path vector protocol (Like distance vector, but routing messages in BGP contain complete routes) Uses TCP to transmit routing messages

Border Gate Protocol (BGP) An autonomous system uses BGP to advertise its network address(es) to other AS’s BGP helps an AS to: Learn about reachable networks from neighboring AS’s Distribute the information about reachable networks to routers inside the AS Select a route if there are multiple routes to reach the same network

BGP Message Types Open: Establishes a peering session Notification: Closes a peering session Keep Alive: Handshake at regular intervals to maintain peering session Update: Announces new routes or withdraws previously announced routes. Each announced route is specified as a network prefix with attribute values

BGP interactions The networks that are advertised are network IP addresses with a prefix, E.g., 128.100.0.0/16 Prefixes reachable from AS 1 Prefixes reachable from AS 3

BGP interactions BGP is executed between two routers BGP session BGP peers or BGP speakers Procedure: Establishes TCP connection (port 175) to BGP peer Exchange all BGP routes As long as connection is alive: Periodically send incremental updates Note: Not all autonomous systems need to run BGP. On many stub networks, the route to the provider can be statically configured

BGP interactions BGP peers advertise reachability of IP networks A advertises a path to a network (e.g., 10.0.0.0/8) to B only if it is willing to forward traffic going to that network Path-Vector: A advertises the complete path AS A, …., AS X  this avoids loops

BGP Sessions External BGP session (eBGP): Peers are in different AS’es Internal BGP session (iBGP) Peers are in the same AS Note that iBGP sessions use routes constructed by an intradomain routing protocol to exchange messages !

iBGP sessions All iBGP peers in the same autonomous system are fully meshed Peer announces routes received via eBGP to iBGP peers But: iBGP peers do not announce routes received via iBGP to other iBGP peers

Route Reflectors Full mesh of iBGP routers is difficult to maintain Router Reflectors (RR) present an alternative All iBGP routers peer with the RR RR acts as a server Other iBGP routers become clients

Content of Advertisements A BGP routers route advertisement is sent in a BGP UPDATE message A route is announced as a Network Prefix and Attributes Attributes specify details about a route: Mandatory attributes: ORIGIN AS_PATH NEXT_HOP many other attributes

ORIGIN attribute Originating domain sends a route with ORIGIN attribute 10.0.1.0/8, ORIGIN {1} 10.0.1.0/8, ORIGIN {1} 10.0.1.0/8, ORIGIN {1} 10.0.1.0/8, ORIGIN {1}

AS-PATH attributes Each AS that propagates a route prepends its own AS number AS-PATH collects a path to reach the network prefix Path information prevents routing loops from occuring Path information also provides information on the length of a path (By default, a shorter route is preferred) Note: BGP aggregates routes according to CIDR rules 10.0.1.0/8, AS-PATH {4,2,1} 10.0.1.0/8, AS-PATH {1} 10.0.1.0/8, AS-PATH {2,1} 10.0.1.0/8, AS-PATH {3,1}

NEXT-HOP attributes Each router that sends a route advertisement it includes its own IP address in a NEXT-HOP attribute The attribute provides information for the routing table of the receiving router. 10.0.1.0/8, NEXT-HOP {128.100.11.1} 10.0.1.0/8, NEXT-HOP {128.143.71.21}

Connecting NEXT-HOP with IGP information At R1: Routing table Routing table Dest. Next hop 128.100.11.0/24 192.0.1.2 Dest. Next hop 128.100.11.0/24 192.0.1.2 10.1.1.0/8 BGP info Dest. Next hop 10.1.1.0/8 128.100.11.1

Route Selection An AS may get more than one route to an address Needs to select a route Route Selection Criteria (in order of preference) Highest Local Preference Shortest AS-Path Lowest MED (multi-exit discriminator) ( called “metric” in BGP) Prefer iBGP over eBGP routes Lowest IGP cost to leave AS (“hot potato”) Lowest router ID ( used as tie breaker)

Local Preference Local pref = 100 Local pref = 10 Local pref = 80 Local pref = 50 If there are multiple exit points from the AS, the local preference attribute is used to select the exit point for a specific route Local Preference is used only for iBGP sessions Value is set locally

Hot Potato Routing Router R3 in autonomous system A receives two advertisements to AS A Which route should it pick? Hot Potato Rule: Select the iBGP peer that has the shortest IGP route Analogy: Get the packet out of one’s own AS as quickly as possible, i.e., on the shortest path

Hot Potato Routing Finding the cheapest IGP route: Compare the cost of the two paths R3 R1 R3 R2 according to the IGP protocol Here: R1 has the shortest path Add a routing table entry for destination X

Hot Potato Routing can backfire! AS1 would serve its customer (source) better by not picking the shortest route to AS 2 In fact, customer may have paid for a high-bandwidth service!

Processing in BGP Best entry is entered in IP routing table BGP updates arrive Filter routes and change attributes Filter routes and change attributes BGP updates arrive Based on attributes

Importing and Exporting Routes An AS may not accept all routes that are advertised An AS may not advertise certain routes Route policies determines which routes are filtered If an AS wants to have less inbound traffic it should adapt its export rules If an AS wants to control its outbound traffic, it adapts its import rules

Routing Policies Since AS 5 is a stub network it should not advertise routes to networks other than networks in AS 5 When AS 3 learns about the path {AS1, AS4}, it should not advertise the route {AS3, AS1, AS4} to AS 2.

Traffic Often Follows ASPATH In many cases, packets are routed according to the AS-PATH However, in some cases this is not true (Here: AS 2 filters routes with a long prefix)

Short AS-PATH does not mean that route is short From AS 6’s perspective Path {AS2, AS1} is short Path {AS5, AS4, AS3, AS1} is long But the number of traversed routers is larger when using the shorter AS-PATH

BGP Table Growth Source: Geoff Huston. http://www.telstra.net/ops/bgptable.html on August 8, 2001

BGP Table Growth Source: bgp.potaroo.net, 2010

BGP Issues BGP is a simple protocol but it is very difficult to configure BGP has severe stability issue due to policies  BGP is known to not converge As of July 2005, 39,000 AS numbers (of available 64,510) are consumed