Internet Routing (COS 598A) Today: Router Software Jennifer Rexford Tuesdays/Thursdays 11:00am-12:20pm.

Slides:



Advertisements
Similar presentations
Multihoming and Multi-path Routing
Advertisements

Internet Routing (COS 598A) Today: Topology Size Jennifer Rexford Tuesdays/Thursdays 11:00am-12:20pm.
Internet Routing (COS 598A) Today: Interdomain Routing Convergence Jennifer Rexford Tuesdays/Thursdays.
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)
CS Summer 2003 CS672: MPLS Architecture, Applications and Fault-Tolerance.
Border Gateway Protocol Ankit Agarwal Dashang Trivedi Kirti Tiwari.
Network Layer: Internet-Wide Routing & BGP Dina Katabi & Sam Madden.
Lecture 9 Overview. Hierarchical Routing scale – with 200 million destinations – can’t store all dests in routing tables! – routing table exchange would.
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.
TIE Breaking: Tunable Interdomain Egress Selection Renata Teixeira Laboratoire d’Informatique de Paris 6 Université Pierre et Marie Curie with Tim Griffin.
1 Route Control Platform Making the Network Act Like One Big Router Jennifer Rexford Princeton University
A Routing Control Platform for Managing IP Networks Jennifer Rexford Computer Science Department Princeton University
New Routing Architectures Jennifer Rexford Advanced Computer Networks Tuesdays/Thursdays 1:30pm-2:50pm.
Slide -1- February, 2006 Interdomain Routing Gordon Wilfong Distinguished Member of Technical Staff Algorithms Research Department Mathematical and Algorithmic.
Incrementally Deployable Security for Interdomain Routing (TTA-4, Type-I) Jennifer Rexford, Princeton University Joan Feigenbaum, Yale University July.
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.
Internet Routing (COS 598A) Today: Interdomain Traffic Engineering Jennifer Rexford Tuesdays/Thursdays.
1 Design and implementation of a Routing Control Platform Matthew Caesar, Donald Caldwell, Nick Feamster, Jennifer Rexford, Aman Shaikh, Jacobus van der.
A Routing Control Platform for Managing IP Networks Jennifer Rexford Princeton University
Internet Routing (COS 598A) Today: Telling Routers What to Do Jennifer Rexford Tuesdays/Thursdays.
Internet Routing (COS 598A) Today: Multi-Homing Jennifer Rexford Tuesdays/Thursdays 11:00am-12:20pm.
Network Monitoring for Internet Traffic Engineering Jennifer Rexford AT&T Labs – Research Florham Park, NJ 07932
14 – Inter/Intra-AS Routing
1 Interdomain Routing Policy Reading: Sections plus optional reading COS 461: Computer Networks Spring 2008 (MW 1:30-2:50 in COS 105) Jennifer Rexford.
New Interdomain Routing Architectures Jennifer Rexford.
A Routing Control Platform for Managing IP Networks Jennifer Rexford Princeton University
Backbone Networks Jennifer Rexford COS 461: Computer Networks Lectures: MW 10-10:50am in Architecture N101
© 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.
Multipath Routing Jennifer Rexford Advanced Computer Networks Tuesdays/Thursdays 1:30pm-2:50pm.
A Routing Control Platform for Managing IP Networks Jennifer Rexford Princeton University
Hot Potatoes Heat Up BGP Routing Jennifer Rexford AT&T Labs—Research Joint work with Renata Teixeira, Aman Shaikh, and.
Dynamics of Hot-Potato Routing in IP Networks Jennifer Rexford AT&T Labs—Research Joint work with Renata Teixeira, Aman.
Computer Networks Layering and Routing Dina Katabi
Authors Renata Teixeira, Aman Shaikh and Jennifer Rexford(AT&T), Tim Griffin(Intel) Presenter : Farrukh Shahzad.
I-4 routing scalability Taekyoung Kwon Some slides are from Geoff Huston, Michalis Faloutsos, Paul Barford, Jim Kurose, Paul Francis, and Jennifer Rexford.
CS 3700 Networks and Distributed Systems Inter Domain Routing (It’s all about the Money) Revised 8/20/15.
Using Measurement Data to Construct a Network-Wide View Jennifer Rexford AT&T Labs—Research Florham Park, NJ
Jennifer Rexford Fall 2014 (TTh 3:00-4:20 in CS 105) COS 561: Advanced Computer Networks BGP.
Chapter 9. Implementing Scalability Features in Your Internetwork.
Dynamics of Hot-Potato Routing in IP Networks Jennifer Rexford AT&T Labs—Research Joint work with Renata Teixeira (UCSD),
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.
Interdomain Routing Security. How Secure are BGP Security Protocols? Some strange assumptions? – Focused on attracting traffic from as many Ases as possible.
A Firewall for Routers: Protecting Against Routing Misbehavior1 June 26, A Firewall for Routers: Protecting Against Routing Misbehavior Jia Wang.
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.
1 Evolution Towards Global Routing Scalability draft-zhang-evolution-01 Varun Khare Beichuan Zhang
Evolving Toward a Self-Managing Network Jennifer Rexford Princeton University
Evolving Toward a Self-Managing Network Jennifer Rexford Princeton University
© 2005 Cisco Systems, Inc. All rights reserved. BGP v3.2—6-1 Scaling Service Provider Networks Scaling IGP and BGP in Service Provider Networks.
Route Selection Using Policy Controls
© 2005 Cisco Systems, Inc. All rights reserved. BGP v3.2—2-1 BGP Transit Autonomous Systems Forwarding Packets in a Transit AS.
1 Border Gateway Protocol (BGP) and BGP Security Jeff Gribschaw Sai Thwin ECE 4112 Final Project April 28, 2005.
Michael Schapira, Princeton University Fall 2010 (TTh 1:30-2:50 in COS 302) COS 561: Advanced Computer Networks
Separating Routing From Routers Jennifer Rexford Princeton University
Separating Routing From Routers Jennifer Rexford Princeton University
1 Internet Routing: BGP Routing Convergence Jennifer Rexford Princeton University
1 Internet Routing 11/11/2009. Admin. r Assignment 3 2.
BGP 1. BGP Overview 2. Multihoming 3. Configuring BGP.
COS 561: Advanced Computer Networks
BGP supplement Abhigyan Sharma.
Cours BGP-MPLS-IPV6-QOS
Internet Routing (COS 598A) Today: Topology Size
COS 561: Advanced Computer Networks
COS 561: Advanced Computer Networks
COS 561: Advanced Computer Networks
COS 461: Computer Networks
BGP Instability Jennifer Rexford
Computer Networks Protocols
Presentation transcript:

Internet Routing (COS 598A) Today: Router Software Jennifer Rexford Tuesdays/Thursdays 11:00am-12:20pm

Outline Continuing discussion from last class –Proposals for removing routing from routers –Feasibility, collecting data, computing paths, etc. BGP implementation –Storage overhead –CPU overhead Recent proposals –Graceful restart to limit effects of resets –Tunneling to limit hot-potato changes –Computing routes for groups of routers

Proposal #1: Routing As a Service Goal: third parties pick end-to-end paths for clients to satisfy diverse user objectives Forwarding infrastructure –Basic routing (e.g., default routing) –Primitives for inserting routes Route selector –Aggregates network information –Selects routes on behalf of clients –Competes with other selectors for customers End host –Queries route selector to set up paths

Proposal #2: Routing Control Platform Goal: Move beyond today’s artifacts, while remaining compatible with the legacy routers Incentive compatibility: phased evolution –Intelligent route reflector in a single AS –Learning eBGP routes directly from neighbor ASes –Interdomain routing between RCPs Backwards compatibility: internal BGP –Using iBGP to “push” answers to the routers –No need to change the legacy routers at all –Keep message format and change decision rules iBGP eBGP RCP iBGP eBGP RCP AS 3 AS 2 AS 1 iBGP Physical peering Inter-AS Protocol RCP

Proposal #3: Wafer-Thin Control Plane Goal: Refactor the data, control, and management planes from scratch Management plane  Decision plane –Operates on network-wide view and objectives –Directly controls the data plane in real time Control plane  Discovery plane –Responsible for providing the network-wide view –Topology discovery, traffic measurement, etc. Data plane –Queues, filters, and forwards data packets –Accepts direct instruction from the decision plane Simple routers that have no control-plane configuration

How Does These Differ From Overlays Overlays: circumventing the underlay –Host nodes throughout the network –Logical links between the host nodes –Active probes to observe the performance –Direct packets through good intermediate nodes Routing services: controlling the underlay –Servers collect data directly from the routers –Servers compute forwarding tables for the routers –Data packets do not go through the servers –Like an overlay for managing the underlay Maybe some combination of the two makes sense?

Practical Issues: Feasibility Fast reaction to failures –Routers are closer to the failures –Can a service react quickly enough? Scalability with network size –State and computation grow with the topology –Can a service manage a large network? Reliability? –Service is now a point of failure –Is simple replication enough? Security? –Service is now a natural point of attack –Easier (or harder) to protect than the routers?

Practical Issues: Collecting Measurement Data All three proposals make measurement a first- order part of running the network Routers have only two jobs –Forward packets –Collect measurement data What measurements? –Topology discovery –Traffic demands –Performance statistics –…?

Practical Issues: Path-Computation Algorithms Selecting routes should be easier –Complete view of network topology and traffic –Possibility of using centralized algorithms –Direct control over forwarding tables …but what algorithms to use? –Still need a separation of timescale, but how? Fast reaction to topological changes Semi-offline optimization of routing … and how to compute end-to-end paths? –Policy-based path vector protocol? –Publish/subscribe system? –Something else?

Practical Issues: Solving Real Problems? Customer load-balancing –Trading off load, performance, and cost –Controlling inbound and outbound traffic –Avoiding small subnets and BGP tweaks Preventing overloading router resources –Minimum-sized forwarding table per router –Minimum stretch while obeying memory limits Flexible end-to-end path selection –Satisfy the goals of end users and providers –Handle pricing/economics in the right way

Other Thoughts?

Router Software

Basic BGP Implementation RIB-in-1 RIB-in-2 RIB-in-n RIB-out-1 RIB-out-2 RIB-out-n RIB Import Export Decision process

Storage Overhead: RIB-In Storing routes learned from each neighbor –Before applying the import policy Advantages of keeping a RIB-In –Verify receipt of routes that have been filtered –Use as input to simulate import-policy changes –Apply new policies directly on local RIB-In Alternatives for keeping a RIB-In –Reset the session after any policy change Undesirable, unless policy changes are infrequent –Route-refresh option to signal neighbor to resend Relatively new feature, so not universally supported

Storage Overhead: Main RIB Storing all candidate routes –All routes after import processing –Keep track of the best route for each prefix Advantages –Necessary to store at least one copy of each route –… since BGP is an incremental protocol Alternatives –Store only the RIB-In for each neighbor Require rerunning import policies per decision

Storage Overhead: RIB-Out Storing routes sent to each neighbor –After applying the export policy Advantages of keeping a RIB-Out –Verify sending of route to the neighbor –Compare routes to suppress unnecessary updates No update message if all attributes are the same No withdrawal message if there was no advertisement Alternative to keeping a RIB-Out –Reapply export policy to recompute the route … or send some unnecessary update messages –Single RIB-Out per export policy (peer groups)

BGP Peer Groups Group of BGP neighbors with same policies –Avoid repetitive configuration –Avoid reapplying the same policy –Avoid duplicating the storage Example iBGP peer groups –Route-reflector clients –Route-reflector peers Example eBGP peer groups –Customers –Peers

CPU Overhead: New BGP Update Message When receiving a new BGP update –Apply import policy and update the RIB –Re-run the BGP decision process for this prefix –If best route changes, apply export policies and send update message to affected neighbors Running decision process –Ideally, just compare with the best route Withdraw non-best route: no change Update non-best route: compare to current best –But, BGP does not always form a total ordering MED attribute compared only for same next-hop AS Re-run decision process for deterministic outcome

CPU Overhead: Events that Amplify Work BGP session failure –Must discard all routes learned from this neighbor –… and run decision process for affected prefixes Policy change –Must apply the new routing policy to all routes learned from (or sent to) this neighbor –… and run decision process for affected prefixes Intradomain change –Must revisit BGP decision for affected prefixes Exclude routes with unreachable next-hop Prefer the route with the closest egress point

CPU Overhead: Deferring Heavy Jobs Event-driven approach –Process most events as they occur –Defer heavy-load items to background task –Make sure these tasks can run soon –Example: XORP handling session failures Timer-driven approach –Periodic timer driving the operation –Scan the data structures when the timer expires –… and identify and perform any needed work –Example: Cisco scan timer for IGP changes

Reducing Overhead: Operational Practices Avoiding RIB-In storage –Configuring router not to store RIB-In –Convincing neighbors to support route-refresh Configuring peer groups –Limiting the number of unique export policies … or limiting the number of these per router –Putting all possible sessions in same peer group Selecting good timer settings –Allow grouping of update messages –Avoid false detection of session failures

Reducing the Effects of Session Failures Separating control from data –Suppose a router’s BGP process fails –… but the data plane is just fine When the neighbor’s BGP process fails –Do not delete routes learned from neighbor –Continue to forward data packets When the neighbor’s process restarts –Refresh the neighbor by re-sending BGP routes –Neighbor re-builds its RIB and goes back to normal BGP “Graceful Restart” mechanism –New BGP capability for neighbors to negotiate –Mark routes from the neighbor as “stale” –Refresh by resending RIB-Out with End-of-RIB marker FIB RIB data

Reducing the Effects of IGP Changes Circumvent hot-potato routing –Avoid small IGP changes leading to BGP changes –… and avoid the software overhead on BGP Tunneling between edge routers –Create tunnel from ingress to egress router –Assign a weight to the tunnel (e.g., air miles) –Tunnel weight does not depend on IGP path A B C D G E F A B dst

Reducing Overhead for Groups of Routers Additional overhead in RCP-like approaches –Computing routes on behalf of many routers –Could lead to a linear increase in overhead Store a single copy of each BGP route –One big global RIB for the network –Plus, avoid repeating some of decision process Compute for groups of routers (e.g., PoP) –One shared RIB-out for each group of routers –Plus, avoid repeating the decision process Reduce the overhead of IGP changes –E.g., by use of tunnel, as on previous slide

Conclusion Router software –Very challenging systems problem –New open-source software (Quagga, OpenBGPd) Improving scalability –Scaling with # of routers, sessions, and prefixes –Trading off memory and CPU resources –Avoiding events that create excessive work Newly active research area –Importance of control plane in network performance, reliability, and security –Creation of new platforms for router software

Next Time: BGP Security Two papers –“Beware of BGP Attacks” –“Secure Border Gateway Protocol (Secure-BGP)” Review just of second paper –Summary –Why accept –Why reject –Future work Optional NANOG video –See the Web site later today…