Interdomain routing V. Arun

Slides:



Advertisements
Similar presentations
Chapter 4: Network Layer
Advertisements

Network Layer4-1 Hierarchical Routing scale: with 200 million destinations: r can’t store all dest’s in routing tables! r routing table exchange would.
Lecture 9 Overview. Hierarchical Routing scale – with 200 million destinations – can’t store all dests in routing tables! – routing table exchange would.
Path Vector Routing NETE0514 Presented by Dr.Apichan Kanjanavapastit.
© 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.
Data Communications and Computer Networks Chapter 4 CS 3830 Lecture 22 Omar Meqdadi Department of Computer Science and Software 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.
Chapter 4: Network Layer r 4. 1 Introduction r 4.2 Virtual circuit and datagram networks r 4.3 What’s inside a router r 4.4 IP: Internet Protocol m Datagram.
Spring Routing & Switching Umar Kalim Dept. of Communication Systems Engineering 04/05/2007.
14 – Inter/Intra-AS Routing
Feb 12, 2008CS573: Network Protocols and Standards1 Border Gateway Protocol (BGP) Network Protocols and Standards Winter
Computer Networks Layering and Routing Dina Katabi
Lecture 10 Overview. Border Gateway Protocol(BGP) De facto standard for Internet inter-AS routing allows subnet to advertise its existence to rest of.
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.
1 Computer Communication & Networks Lecture 22 Network Layer: Delivery, Forwarding, Routing (contd.)
Introduction 1 Lecture 21 Network Layer (Routing Activity) slides are modified from J. Kurose & K. Ross University of Nevada – Reno Computer Science &
CS 3700 Networks and Distributed Systems Inter Domain Routing (It’s all about the Money) Revised 8/20/15.
RSC Part II: Network Layer 6. Routing in the Internet (2 nd Part) Redes y Servicios de Comunicaciones Universidad Carlos III de Madrid These slides are,
Introduction 1 Lecture 19 Network Layer (Routing Protocols) slides are modified from J. Kurose & K. Ross University of Nevada – Reno Computer Science &
CS 3830 Day 29 Introduction 1-1. Announcements r Quiz 4 this Friday r Signup to demo prog4 (all group members must be present) r Written homework on chapter.
10-1 Last time □ Transitioning to IPv6 ♦ Tunneling ♦ Gateways □ Routing ♦ Graph abstraction ♦ Link-state routing Dijkstra's Algorithm ♦ Distance-vector.
Jennifer Rexford Fall 2014 (TTh 3:00-4:20 in CS 105) COS 561: Advanced Computer Networks BGP.
Network Layer4-1 Chapter 4: Network Layer r 4. 1 Introduction r 4.2 Virtual circuit and datagram networks r 4.3 What’s inside a router r 4.4 IP: Internet.
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.
Network Layer4-1 Distance Vector Algorithm Bellman-Ford Equation (dynamic programming) Define d x (y) := cost of least-cost path from x to y Then d x (y)
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.
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.
CS 4396 Computer Networks Lab BGP. Inter-AS routing in the Internet: (BGP)
Transport Layer3-1 Network Layer Every man dies. Not every man really lives.
Network Layer4-1 Routing Algorithm Classification Global or decentralized information? Global: r all routers have complete topology, link cost info r “link.
Network Layer4-1 Chapter 4: Network Layer r 4. 1 Introduction r 4.2 Virtual circuit and datagram networks r 4.3 What’s inside a router r 4.4 IP: Internet.
Network Layer4-1 Chapter 4: Network Layer r 4. 1 Introduction r 4.2 Virtual circuit and datagram networks r 4.3 What’s inside a router r 4.4 IP: Internet.
CSci5221: BGP Policies1 Inter-Domain Routing: BGP, Routing Policies, etc. BGP Path Selection and Policy Routing Stable Path Problem and Policy Conflicts.
Border Gateway Protocol. Intra-AS v.s. Inter-AS Intra-AS Inter-AS.
Routing in the Internet
14 – Inter/Intra-AS Routing
Chapter 4: Network Layer
CS 3700 Networks and Distributed Systems
CS 5565 Network Architecture and Protocols
2017 session 1 TELE3118: Network Technologies Week 6: Network Layer Control Plane Inter-Domain Routing Protocols Some slides have been adapted from:
CS 3700 Networks and Distributed Systems
Homework 4 Out: Fri 2/26/2016 In: Fri 3/11/2016.
Border Gateway Protocol
ICMP ICMP – Internet Control Message Protocol
Chapter 4: Network Layer
Chapter 4 Network Layer A note on the use of these ppt slides:
CS4470 Computer Networking Protocols
COS 561: Advanced Computer Networks
BGP supplement Abhigyan Sharma.
Routing: Distance Vector Algorithm
Department of Computer and IT Engineering University of Kurdistan
COS 561: Advanced Computer Networks
Routers Routing algorithms
CS 3700 Networks and Distributed Systems
COS 561: Advanced Computer Networks
Part 4: Network Layer Part B: The Internet Routing Protocols
Chapter 4: Network Layer
CS 3700 Networks and Distributed Systems
Chapter 4: Network Layer
COS 561: Advanced Computer Networks
Chapter 4: Network Layer
BGP Policies Jennifer Rexford
COS 461: Computer Networks
COS 561: Advanced Computer Networks
BGP Instability Jennifer Rexford
Computer Networks Protocols
Network Layer: Internet Inter-Domain Routing
Chapter 4 Network Layer A note on the use of these ppt slides:
Presentation transcript:

Interdomain routing V. Arun College of Information and Computer Sciences University of Massachusetts Amherst

Roadmap Hierarchical routing and BGP overview Causes of delayed convergence in BGP Stable Paths Problem and Simple Path Vector Protocol Gao-Rexford conditions Causes of inconsistency in BGP

Hierarchical routing aggregate routers into regions, “autonomous systems” (AS) routers in same AS run same routing protocol “intra-AS” routing protocol routers in different AS can run different intra-AS routing protocol gateway router: at “edge” of its own AS has link to router in another AS Network Layer

Interconnected ASes 3c 3a 2c 3b 2a AS3 2b 1c 1a 1b AS1 1d AS2 Intra-AS Routing algorithm Inter-AS Forwarding table 3c Network Layer

Inter-AS tasks suppose router in AS1 receives datagram destined outside of AS1: router should forward packet to gateway router, but which one? AS1 must: learn which dests are reachable through AS2, which through AS3 propagate this reachability info to all routers in AS1 job of inter-AS routing! 3c 3a 3b 2c AS3 other networks AS1 1c 1a 1d 1b 2a 2b other networks AS2 Network Layer

Example: setting forwarding table in router 1d suppose AS1 learns (via inter-AS protocol) that subnet x reachable via AS3 (gateway 1c), but not via AS2 inter-AS protocol propagates reachability info to all internal routers router 1d determines from intra-AS routing info that its interface I is on the least cost path to 1c installs forwarding table entry (x,I) … x 3c 3a 3b 2c AS3 other networks AS1 1c 1a 1d 1b 2a 2b other networks AS2 Network Layer

Example: choosing among multiple ASes now suppose AS1 learns from inter-AS protocol that subnet x is reachable from AS3 and from AS2. to configure forwarding table, router 1d must determine which gateway it should forward packets towards for dest x this is also job of inter-AS routing protocol! … x 3c …… 3a 3b 2c AS3 other networks AS1 1c 1a 1d 1b 2a 2b other networks AS2 ? Network Layer

Internet inter-AS routing: BGP BGP (Border Gateway Protocol): the de facto inter-domain routing protocol “glue that holds the Internet together” BGP provides each AS a means to: eBGP: obtain subnet reachability information from neighboring ASs. iBGP: propagate reachability information to all AS-internal routers. determine “good” routes to other networks based on reachability information and policy. allows subnet to advertise its existence to rest of Internet: “I am here” Network Layer

BGP basics BGP session: two BGP routers (“peers”) exchange BGP messages: advertises paths to destination network prefixes (“path vector” protocol) exchanged over semi-permanent TCP connections when AS3 advertises a prefix to AS1: AS3 promises it will forward datagrams towards that prefix AS3 can aggregate prefixes in its advertisement 3c 3a BGP message 3b 2c AS3 other networks AS1 1c 1a 1d 1b 2a 2b other networks AS2 Network Layer

BGP basics: distributing path information using eBGP session between 3a and 1c, AS3 sends prefix reachability info to AS1. 1c can then use iBGP to distribute prefix info to all routers in AS1 1b can then re-advertise reachability info to AS2 over 1b-to-2a eBGP session when router learns of new prefix, it creates entry for prefix in its forwarding table. route propagation eBGP session 3a 3b iBGP session 2c AS3 other networks 1c 2a 2b other networks 1a 1b AS2 1d AS1 Network Layer

Path attributes and BGP routes advertised prefix includes BGP attributes prefix + attributes = “route” two important attributes: AS-PATH: contains ASs through which prefix advertisement has passed: e.g., [AS 67, AS 17, AS 24] NEXT-HOP: indicates specific internal-AS router to next-hop AS. (multiple links may exist from self to next-hop-AS) policy-based routing: gateway router receiving route advertisement uses import policy to select/reject route and export policy to re-advertise route e.g., select cheaper route; or never route through AS x; or never advertise routes to AS y. Network Layer

BGP route selection (import policy) router may learn about more than 1 route to destination AS, selects route based on: local preference value attribute: policy decision shortest AS-PATH Multi-exit discriminator (MED) eBGP > iBGP closest NEXT-HOP router: hot potato routing router ID Network Layer

BGP re-announce (export policy) Routers commonly use “valley-free” routing export policy Never advertise peer or provider routes to another peer or provider. Network Layer

BGP routing policy A,B,C are provider networks X Y legend: customer network: provider network A,B,C are provider networks X,W,Y are customer (of provider networks) X is dual-homed: attached to two networks X does not want to route from B via X to C .. so X will not advertise to B a route to C Network Layer

BGP routing policy (2) A advertises path AW to B X Y legend: customer network: provider network A advertises path AW to B B advertises path BAW to X Should B advertise path BAW to C? No way! B gets no “revenue” for routing CBAW since neither W nor C are B’s customers B wants to force C to route to w via A B wants to route only to/from its customers! Network Layer

BGP re-announce (export policy) Routers commonly use “valley-free” routing export policy Never advertise peer or provider routes to another peer or provider. Examples (arrows indicate $ flow or customer  provider relationship, else peering): Q: Which of the above routes are permitted by “valley free” export policy? Network Layer

Why different Intra-, Inter-AS routing ? policy: inter-AS: admin wants control over how its traffic routed, who routes through its net. intra-AS: single admin, so no policy decisions needed scale: hierarchical routing saves table size, reduced update traffic performance: intra-AS: can focus on performance inter-AS: policy may dominate over performance Network Layer

Min Route Advertisement Interval (MRAI) Delayed BGP convergence Min Route Advertisement Interval (MRAI)

Delayed BGP convergence (1) Labovitz et al. fault injection measurement study: Tlong and Tdown take longer to converge, i.e., bad news propagates slower

Delayed BGP convergence (2) Tdown events across 5 ISPs from Labovitz et al. study: minutes of convergence delay

BGP convergence delay: Why? Q: What explains such high convergence delays on the order of several minutes in BGP? Count-to-infinity problems? No because BGP is a path vector, not distance vector, protocol, so loops easy to detect Policy routing? What is special about policy routing compared to shortest path routing?

BGP bouncing problem Assumptions: shorter paths preferred over longer paths. No particular preference between equal length paths.

Key problem: path exploration In an n-node clique with no export policy restrictions, there exist Omega((n-1)!) possible paths (n-1)! paths of length n-1 + C(n-1,n-2).(n-2)! paths of length n-2 + … + C(n-1,2).2! paths of length 2 + (n-1) paths of length 1 Message ordering matters Not every sequence of events results in exploring all or most of the Omega((n-1)!) paths Need a way to limit spurious path propagation

Min Route Advertisement Interval timer Key idea: wait long enough to see the effect of a change from all neighbors before reacting again Clique example Forces nodes to explore strictly increasing length paths Convergence in O(n) rounds Message complexity?

BGP bouncing with MRAI timers

Route Flap Damping (RFD) Delayed BGP convergence Route Flap Damping (RFD)

Route flap damping MRAI timers can limit spurious path exploration in response to a common root cause, but are not designed to limit the number of root cause events Route flap damping (RFD) intended to suppress persistent route flux due to say flaky routers Key idea: Limit the frequency of route changes to a prefix, no matter the reason

RFD penalty function example

RFD: Things get murkier! RFD can worsen convergence delay. Suppose node 1 in this 5-node clique flaps its route to d just twice, once withdrawing and then re-advertising.

RFD: Things get murkier!

Selective RFD scheme Key idea: Do not apply RFD to secondary flaps, i.e., when announced routes are increasingly more preferred or increasingly less preferred but apply RFD when the preference direction changes, e.g., a node announces a more preferred route compared to the previous route followed by a less preferred route. Secondary flaps are generally monotonically changing (increasing or decreasing) in preference

Stable Paths Problem & Simple Path Vector Protocol Formal model of BGP Stable Paths Problem & Simple Path Vector Protocol

Stable Paths Problem A simple formal model specifying Single-node AS graph and single prefix Strict path ranking functions at nodes Adoption of highest-ranked peer route Stability: when no node node wishes to change route Can we determine if a stable configuration exists? Do all ranking functions (or import policies) result in a stable configuration?

Examples: stable, shortest path

Examples: stable, non-shortest path

Examples: unsafe unstable non-shortest path Unsafe: can persistently oscillate Unstable: will persistently oscillate

Examples: stable, non-unique solution

Theoretical results Solvability: The problem of determining whether an instance of SPP has a solution is NP-complete. Sufficient condition: If an SPP instance has no dispute wheel, it is solvable and has a unique solution Converse is not true, i.e., dispute wheel does not preclude stability, safety, or uniqueness of solution

Dispute wheel Key idea: a cyclic in route preferences amongst a set of nodes, e.g., A prefers to route through B, B prefers to route through C, and C prefers to route through A Each ui prefers the counter-clockwise neighbor route RiQi+1 over the direct route Qi Subscripts are mod k, so uk-1 prefers Rk-1Q0

Simple Path Vector Protocol (SPVP) A simple model of BGP that receives into RIB most recent route announced by a neighbor if FIB entry is not the best route available in RIB Apply import policy to adopt best RIB route in FIB Re-advertise adopted route to all neighbors Fair activation sequence: any sent and queued message will be eventually processed by intended recipient Convergence result: If an instance of SPP has no dispute wheel, then SPVP is guaranteed to converge.

Gao-Rexford Conditions

Causes of inconsistency in BGP