CS 356: Computer Network Architectures Lecture 13: Dynamic Routing Protocols: Border Gateway Protocol [PD] chapter 4.1.2 Xiaowei Yang

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

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.
© 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.
INTERDOMAIN ROUTING POLICY COS 461: Computer Networks Spring 2010 (MW 3:00-4:20 in COS 105) Mike Freedman
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.
CPS-356 Network Layer: Inter-domain Routing Based partly on lecture notes by Xiaowei Yang, Rodrigo Foncesa, Rob Sherwood, David Mazières, Phil Levis, John.
Routing Jinyang Li. Administravia Hand in PS1 to Hui Zhang before you leave! me project teamlist by Oct-1.
1 Network Architecture and Design Routing: Exterior Gateway Protocols and Autonomous Systems Border Gateway Protocol (BGP) Reference D. E. Comer, Internetworking.
Practical and Configuration issues of BGP and Policy routing Cameron Harvey Simon Fraser University.
CS 164: Global Internet Slide Set In this set... More about subnets Classless Inter Domain Routing (CIDR) Border Gateway Protocol (BGP) Areas with.
Mini Introduction to BGP Michalis Faloutsos. What Is BGP?  Border Gateway Protocol BGP-4  The de-facto interdomain routing protocol  BGP enables policy.
Slide -1- February, 2006 Interdomain Routing Gordon Wilfong Distinguished Member of Technical Staff Algorithms Research Department Mathematical and Algorithmic.
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.
Shivkumar Kalyanaraman Rensselaer Polytechnic Institute 1 Exterior Gateway Protocols: EGP, BGP-4, CIDR Shivkumar Kalyanaraman Rensselaer Polytechnic Institute.
Ion Stoica October 2, 2002 (* this presentation is based on Lakshmi Subramanian’s slides) EE 122: Inter-domain routing – Border Gateway Protocol (BGP)
CSEE W4140 Networking Laboratory Lecture 5: IP Routing (OSPF and BGP) Jong Yul Kim
© 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.
Interdomain Routing Policy COS 461: Computer Networks Spring 2011 Mike Freedman 1.
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.
Interdomain Routing David Andersen Spring 2007 Carnegie Mellon University.
© 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.
Lecture 4: Dynamic routing protocols
1 Interdomain Routing (BGP) By Behzad Akbari Fall 2008 These slides are based on the slides of Ion Stoica (UCB) and Shivkumar (RPI)
1 Chapter 27 Internetwork Routing (Static and automatic routing; route propagation; BGP, RIP, OSPF; multicast routing)
CS 3700 Networks and Distributed Systems Inter Domain Routing (It’s all about the Money) Revised 8/20/15.
Routing protocols Basic Routing Routing Information Protocol (RIP) Open Shortest Path First (OSPF)
Lecture 4: BGP Presentations Lab information H/W update.
Chapter 9. Implementing Scalability Features in Your Internetwork.
Border Gateway Protocol
Computer Networking Inter-Domain Routing BGP (Border Gateway Protocol)
Xuan Zheng (modified by M. Veeraraghavan) 1 BGP overview BGP operations BGP messages BGP decision algorithm BGP states.
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.
Shivkumar Kalyanaraman Rensselaer Polytechnic Institute 1 ECSE-6600: Internet Protocols Informal Quiz #08: SOLUTIONS Shivkumar Kalyanaraman: GOOGLE: “Shiv.
Routing protocols. Static Routing Routes to destinations are set up manually Route may be up or down but static routes will remain in the routing tables.
Dynamic Routing Protocols II OSPF
Routing protocols. 1.Introduction A routing protocol is the communication used between routers. A routing protocol allows routers to share information.
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.
1 Chapter 4: Internetworking (IP Routing) Dr. Rocky K. C. Chang 16 March 2004.
BGP Basics BGP uses TCP (port 179) BGP Established unicast-based connection to each of its BGP- speaking peers. BGP allowing the TCP layer to handle such.
Text BGP Basics. Document Name CONFIDENTIAL Border Gateway Protocol (BGP) Introduction to BGP BGP Neighbor Establishment Process BGP Message Types BGP.
Border Gateway Protocol (BGP) (Bruce Maggs and Nick Feamster)
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.
ROUTING ON THE INTERNET COSC Jun-16. Routing Protocols  routers receive and forward packets  make decisions based on knowledge of topology.
1 Internet Routing 11/11/2009. Admin. r Assignment 3 2.
1 CS716 Advanced Computer Networks By Dr. Amir Qayyum.
CS 3700 Networks and Distributed Systems
Border Gateway Protocol
BGP 1. BGP Overview 2. Multihoming 3. Configuring BGP.
CS 3700 Networks and Distributed Systems
Border Gateway Protocol
BGP supplement Abhigyan Sharma.
Interdomain Traffic Engineering with BGP
Lixin Gao ECE Dept. UMASS, Amherst
Cours BGP-MPLS-IPV6-QOS
Computer Networks Protocols
Network Layer: Internet Inter-Domain Routing
Presentation transcript:

CS 356: Computer Network Architectures Lecture 13: Dynamic Routing Protocols: Border Gateway Protocol [PD] chapter Xiaowei Yang

Today An OSPF example Border Gateway Protocol (BGP) Midterm

3 Link state routing: graphical illustration a b cd a 3 6 b c a b c 3 1 a b cd 1 6 cd 2 a’s view (adjacent edges) b’s view c’s view d’s view Collecting all pieces yield a complete view of the network!

4 Operation of a Link State Routing protocol Received Link State Packets (LSPs) IP Routing Table Dijkstra’s Algorithm Link State Database LSPs are flooded to other interfaces

Example Network Router IDs can be selected independent of interface addresses, but usually chosen to be the smallest interface address Link costs are called Metric Metric is in the range [0, 2 16 ] Metric can be asymmetric / / / / / / / /

Link State Advertisement (LSA) The LSA of router is as follows: Link State ID: = Router ID Advertising Router: = Router ID Number of links: 3 = 2 links plus router itself Description of Link 1: Link ID = , Metric = 4 Description of Link 2: Link ID = , Metric = 3 Description of Link 3: Link ID = , Metric = / / / / / / / /

Network and Link State Database Each router has a database which contains the LSAs from all other routers LS TypeLinkStateIDAdv. RouterChecksumLSSeqNoLS Age Router-LSA x9b470x Router-LSA x219e0x Router-LSA x6b530x Router-LSA xe39a0x a20 Router-LSA xd2a60x Router-LSA x05c30x / / / / / / / /

Today An OSPF example Border Gateway Protocol (BGP) Midterm

The Internet

The Internet: Zooming In 2x Duke Comcast Abilene AT&T Cogent BGP All ASes are not equal

AS relationships Very complex economic landscape Simplifying a bit: – Transit: “I pay you to carry my packets to everywhere” (provider-customer) – Peering: “For free, I carry your packets to my customers only.” (peer-peer) Technical definition of tier-1 ISP: In the “default- free” zone. No transit. – Note that other “tiers” are marketing, but convenient. “Tier 3” may connect to tier-1.

Zooming in 4x Tier 1 ISP Tier 2 Regional Tier 2 Regional Tier 2 Tier 1 ISP Tier 2 Tier 3 (local ) Tier 2: Regional/National Tier 3: Local $$ Default free, Has information on every prefix Default: provider

Who pays whom? Transit: Customer pays the provider – Who is who? Usually, the one who can “live without” the other. AT&T does not need Duke, but Duke needs some ISP. What if both need each other? Free Peering. – Instead of sending packets over $$ transit, set up a direct connection and exchange traffic for free! – policy-analysis/

Tier 1s must all peer with each other by definition – Tier 1s form a full mesh Internet core Peering can give: – Better performance – Lower cost – More “efficient” routing (keeps packets local) But negotiating can be very tricky!

Business and peering Cooperative competition (coopetition) Much more desirable to have your peer’s customers – Much nicer to get paid for transit Peering “tiffs” are relatively common 31 Jul 2005: Level 3 Notifies Cogent of intent to disconnect. 16 Aug 2005: Cogent begins massive sales effort and mentions a 15 Sept. expected depeering date. 31 Aug 2005: Level 3 Notifies Cogent again of intent to disconnect (according to Level 3) 5 Oct :50 UTC: Level 3 disconnects Cogent. Mass hysteria ensues up to, and including policymakers in Washington, D.C. 7 Oct 2005: Level 3 reconnects Cogent During the “outage”, Level 3 and Cogent’s singly homed customers could not reach each other. (~ 4% of the Internet’s prefixes were isolated from each other)

Terms Route: a network prefix plus path attributes Customer/provider/peer routes: route advertisements heard from customers/providers/peers Transit service: If A advertises a route to B, it implies that A will forward packets coming from B to any destination in the advertised prefix Duke NC RegNet UNC 152.3/

BGP Route Advertisement Autonomous Systems (ASes) Session (over TCP) Traffic BGP peers

Enforcing relationships Two mechanisms – Route export filters Control what routes you send to neighbors – Route import ranking Controls which route you prefer of those you hear. “LOCALPREF” – Local Preference. More later.

Export Policies Provider  Customer – All routes so as to provide transit service Customer  Provider – Only customer routes – Why? – Only transit for those that pay Peer  Peer – Only customer routes

Import policies Same routes heard from providers, customers, and peers, whom to choose? – customer > peer > provider – Why? – Choose the most economic routes! Customer route: charge $$ Peer route: free Provider route: pay $$ 

Now the nitty-gritty details!

BGP BGP = Border Gateway Protocol – Currently in version 4, specified in RFC (~ 60 pages) Inter-domain routing protocol for routing between autonomous systems Uses TCP to establish a BGP session and to send routing messages over the BGP session BGP is a path vector protocol – Similar to distance vector routing, but routing messages in BGP contain complete paths Network administrators can specify routing policies

BGP policy routing BGP’s goal is to find any path (not an optimal one) – Since the internals of the AS are never revealed, finding an optimal path is not feasible Network administrator sets BGP’s policies to determine the best path to reach a destination network

BGP messages – OPEN – UPDATE Announcements – Dest Next-hop AS Path … other attributes … – / Withdrawals – KEEPALIVE Keepalive timer / hold timer Key thing: The Next Hop attribute

Path Vector ASPATH Attribute – Records what ASes a route goes through – Loop avoidance: Immediately discard – Shortest path heuristics Like distance vector, but fixes the count-to- infinity problem

AB C D d I can reach d via B,D I can reach d Via A,B,D I can reach d Via C,A,B,D

Two types of BGP sessions eBGP session is a BGP session between two routers in different ASes iBGP session is a BGP session between internal routers of an AS. eBGP iBGP AT&T Sprint

Route propagation via eBGP and iBGP iBGP is organized into a full mesh topology, or iBGP sessions are relayed using a route reflector /16 0 nhop / nhop AS 0 AS 1 AS 2 AS / nhop R1 R2 R3 R4 R5 R6 R7 R

Common BGP path attributes Origin: indicates how BGP learned about a particular route – IGP (internal gateway protocol) – EGP (external gateway protocol) – Incomplete AS path : – When a route advertisement passes through an autonomous system, the AS number is added to an ordered list of AS numbers that the route advertisement has traversed Next hop Multi_Exit_Disc (MED, multiple exit discriminator): - used as a suggestion to an external AS regarding the preferred route into the AS Local_pref: is used to prefer an exit point from the local autonomous system Community: apply routing decisions to a group of destinations

BGP route selection process Input/output engine may filter routes or manipulate their attributes Input Policy Engine Decision process Best routes Out Policy Engine Routes recved from peers Routes sent to peers

Best path selection algorithm 1.If next hop is inaccessible, ignore routes 2.Prefer the route with the largest local preference value. 3.If local prefs are the same, prefer route with the shortest AS path 4.If AS_path is the same, prefer route with lowest origin (IGP < EGP < incomplete) 5.If origin is the same, prefer the route with lowest MED 6.IF MEDs are the same, prefer eBGP paths to iBGP paths 7.If all the above are the same, prefer the route that can be reached via the closest IGP neighbor. 8.If the IGP costs are the same, prefer the router with lowest router id.

Forwarding Table Joining BGP with IGP Information AS 7018 AS / BGP /16 destinationnext hop /30 destinationnext hop /16 Next Hop = /16 destinationnext hop /

Load balancing Same route from two providers Outbound is “easy” (you have control) – Set localpref according to goals Inbound is tough (nobody has to listen) – AS path prepending – MEDs Hot and Cold Potato Routing (picture) Often ignored unless contracts involved Practical use: tier-1 peering with a content provider

Hot-Potato Routing (early exit) NYC SF NYC AT&T Sprint 12/8 12// /8 Bar Foo

Cold-Potato Routing (MED) NYC SF NYC Med=100 Med=200 Akamai Sprint

BGP Scalability

Routing table scalability with Classful IP Addresses Fast growing routing table size Classless inter-domain routing aims to address this issue

CIDR hierarchical address allocation IP addresses are hierarchically allocated. An ISP obtains an address block from a Regional Internet Registry An ISP allocates a subdivision of the address block to an organization An organization recursively allocates subdivision of its address block to its networks A host in a network obtains an address within the address block assigned to the network ISP / /16 Foo.com /16 Library CS / / /24 University Bar.com

Hierarchical address allocation ISP obtains an address block /8  [ , ] ISP allocates /16 ([ , ]) to the university. University allocates /24 ([ , ]) to the CS department’s network A host on the CS department’s network gets one IP address

CIDR allows route aggregation ISP1 announces one address prefix /8 to ISP2 ISP2 can use one routing entry to reach all networks connected to ISP1 ISP / /16 Foo.com /16 Library CS /16 University Bar.com I ISP3 You can reach /8 via ISP /8 ISP1

Multi-homing increases routing table size Mutil-home.com / / /16 ISP2 ISP1 You can reach /8 And /16 via ISP1 ISP /16 ISP / /8 ISP /16 ISP /8 ISP2

Global routing tables continue to grow (1994-now)

BGP Summary BGP uses path vector algorithm Its path selection algorithm is complicated Policy is mostly determined by economic considerations

Midterm Policy Up to Feb 25’s lecture Closed book/notes One page of your own note (letter-size) No Internet Calculator is allowed 75 mins

What we’ve learned Network architectures – Basic concepts, Internet architecture, Physical layer – Delay, bandwidth, and throughput Link layer – Coding/encoding, framing, error detection, reliable transmission – Multi-access links – Switching, bridges, ATM

What we’ve learned (cont.) Internetworking – Challenges, solutions – Classful vs classless IP addressing – IP forwarding, longest prefix lookup, ARP – DHCP – Dynamic routing protocols Distance vector (RIP) Link state (OSPF)