Multipath Routing Jennifer Rexford Advanced Computer Networks Tuesdays/Thursdays 1:30pm-2:50pm.

Slides:



Advertisements
Similar presentations
Using Network Virtualization Techniques for Scalable Routing Nick Feamster, Georgia Tech Lixin Gao, UMass Amherst Jennifer Rexford, Princeton University.
Advertisements

Multihoming and Multi-path Routing
Path Splicing with Network Slicing Nick Feamster Murtaza Motiwala Santosh Vempala.
Multihoming and Multi-path Routing
Multihoming and Multi-path Routing CS 7260 Nick Feamster January
Internetworking II: MPLS, Security, and Traffic Engineering
Internet Routing (COS 598A) Today: Multi-Protocol Label Switching 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)
1 EL736 Communications Networks II: Design and Algorithms Class3: Network Design Modeling Yong Liu 09/19/2007.
Fundamentals of Computer Networks ECE 478/578 Lecture #18: Policy-Based Routing Instructor: Loukas Lazos Dept of Electrical and Computer Engineering University.
Lecture 6 Overlay Networks CPE 401/601 Computer Network Systems slides are modified from Jennifer Rexford.
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.
Introduction to MPLS and Traffic Engineering Zartash Afzal Uzmi.
Traffic Engineering With Traditional IP Routing Protocols
Traffic Engineering Jennifer Rexford Advanced Computer Networks Tuesdays/Thursdays 1:30pm-2:50pm.
1 Overlay Networks Reading: 9.4 COS 461: Computer Networks Spring 2007 (MW 1:30-2:50 in Friend 004) Jennifer Rexford Teaching Assistant: Ioannis Avramopoulos.
MPLS and Traffic Engineering
New Routing Architectures Jennifer Rexford Advanced Computer Networks Tuesdays/Thursdays 1:30pm-2:50pm.
CS335 Networking & Network Administration Tuesday, May 18, 2010.
Internet Routing (COS 598A) Today: Interdomain Traffic Engineering Jennifer Rexford Tuesdays/Thursdays.
Introduction to MPLS and Traffic Engineering
1 K. Salah Module 5.0: Internetworking & Network Layer Basic concepts Congestion Control Routing Protocols –Flooding –Source routing –Distance vector routing.
Internet Routing (COS 598A) Today: Multi-Homing Jennifer Rexford Tuesdays/Thursdays 11:00am-12:20pm.
1 Network Layer: Host-to-Host Communication. 2 Network Layer: Motivation Can we built a global network such as Internet by extending LAN segments using.
Routing Jennifer Rexford Advanced Computer Networks Tuesdays/Thursdays 1:30pm-2:50pm.
Network Monitoring for Internet Traffic Engineering Jennifer Rexford AT&T Labs – Research Florham Park, NJ 07932
1 Announcements Review session next Friday 03/11 Homework 5 due on Friday 03/04 Project 3 due Wednesday 03/16.
Routing.
CS335 Networking & Network Administration Tuesday, April 20, 2010.
Backbone Networks Jennifer Rexford COS 461: Computer Networks Lectures: MW 10-10:50am in Architecture N101
Wen Xu and Jennifer Rexford Princeton University MIRO : Multi-path Interdomain ROuting.
Jennifer Rexford Princeton University MW 11:00am-12:20pm Wide-Area Traffic Management COS 597E: Software Defined Networking.
Jennifer Rexford Fall 2010 (TTh 1:30-2:50 in COS 302) COS 561: Advanced Computer Networks Stub.
Computer Networks Layering and Routing Dina Katabi
Transit Traffic Engineering Nick Feamster CS 6250: Computer Networks Fall 2011.
1 Internet Protocol: Forwarding IP Datagrams Chapter 7.
Chapter 22 Network Layer: Delivery, Forwarding, and Routing
1 Pertemuan 20 Teknik Routing Matakuliah: H0174/Jaringan Komputer Tahun: 2006 Versi: 1/0.
Introduction to MPLS and Traffic Engineering Zartash Afzal Uzmi.
9/15/2015CS622 - MIRO Presentation1 Wen Xu and Jennifer Rexford Department of Computer Science Princeton University Chuck Short CS622 Dr. C. Edward Chow.
Introduction to Network Layer. Network Layer: Motivation Can we built a global network such as Internet by extending LAN segments using bridges? –No!
Jennifer Rexford Fall 2014 (TTh 3:00-4:20 in CS 105) COS 561: Advanced Computer Networks BGP.
EEC-484/584 Computer Networks Lecture 9 Wenbing Zhao (Part of the slides are based on Drs. Kurose & Ross ’ s slides for their Computer.
OVERVIEW Lecture 6 Overlay Networks. 2 Focus at the application level.
The Network Layer Introduction  functionality and service models Theory  link state and distance vector algorithms  broadcast algorithms  hierarchical.
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.
Netprog: Routing and the Network Layer1 Routing and the Network Layer (ref: Interconnections by Perlman)
IP1 The Underlying Technologies. What is inside the Internet? Or What are the key underlying technologies that make it work so successfully? –Packet Switching.
Intradomain Traffic Engineering By Behzad Akbari These slides are based in part upon slides of J. Rexford (Princeton university)
1 Computer Communication & Networks Lecture 21 Network Layer: Delivery, Forwarding, Routing Waleed.
Jennifer Rexford Fall 2010 (TTh 1:30-2:50 in COS 302) COS 561: Advanced Computer Networks Backbone.
Mike Freedman Fall 2012 COS 561: Advanced Computer Networks Traffic Engineering.
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.
Univ. of TehranComputer Network1 Advanced topics in Computer Networks University of Tehran Dept. of EE and Computer Engineering By: Dr. Nasser Yazdani.
Michael Schapira, Princeton University Fall 2010 (TTh 1:30-2:50 in COS 302) COS 561: Advanced Computer Networks
1 Internet Routing: BGP Routing Convergence Jennifer Rexford Princeton University
Multi Node Label Routing – A layer 2.5 routing protocol
Routing Jennifer Rexford.
BGP supplement Abhigyan Sharma.
Interdomain Traffic Engineering with BGP
Routing.
COS 561: Advanced Computer Networks
COS 561: Advanced Computer Networks
COS 561: Advanced Computer Networks
BGP Policies Jennifer Rexford
COMP/ELEC 429/556 Introduction to Computer Networks
BGP Interactions Jennifer Rexford
COS 561: Advanced Computer Networks
BGP Instability Jennifer Rexford
Routing.
Presentation transcript:

Multipath Routing Jennifer Rexford Advanced Computer Networks Tuesdays/Thursdays 1:30pm-2:50pm

Outline Mostly single-path routing today –BGP and IGPs Multipath intradomain –Equal-cost multipath –MultiProtocol Label Switching Multipath interdomain –Intelligent route control by stub ASes –Overlay routing through intermediate node –Multipath extensions to BGP Preventing out-of-order packets

Conventional IP Routing Protocols

BGP is a Single-Path Protocol Each router picks a single best route –From the routes learned from its neighbors And announces that route to its neighbors ClientWeb server

Intradomain Routing is (Mostly) Single Path Shortest-path routing as sum of link weights –Equal splitting over multiple shortest paths No traffic sent along the non-shortest paths

Why Single Path? Simple routing protocol –Low computational overhead –Limited control-plane messages Simple packet forwarding –One, or at most a few, forwarding-table entries –Easy to do hop-by-hop forwarding –Packets generally delivered in-order More control over the flow of traffic –Little control relinquished to upstream neighbors –Use the announced path, or not…

Motivations for Multipath Better efficiency –Splitting load over multiple paths Better performance –Selecting the low-delay (or high-throughput) path Better reliability –Faster failover from one path to another Better security –Prevent on-path adversary from seeing all packets More control –Providing greater flexibility to upstream ASes

Intradomain Multipath

Relatively Easy in Equal-Cost Multipath Routers compute shortest paths –Identify next-hops along shortest paths –Put multiple entries in the forwarding table –Split traffic evenly over the paths Still, no global information for smarter splitting

Multi-Topology Routing Extension to existing intradomain routing –Multiple weights on each link –Compute shortest paths with each set of weights Separate paths for different traffic classes –Minimize delay for VoIP and gaming –Maximize throughput for Web downloads Forward packets selectively on the paths –E.g., based on type-of-service bits in IP header

Flexible Multipath With Virtual Circuits Establish one or more paths within an AS –Explicit signaling of the path in advance –Control over which packets use each path Virtual Circuit Identifier (VC ID) –Source set-up: establish path for the VC –Switch: mapping VC ID to an outgoing link –Packet: fixed length label in the header 1 2 1: 7 2: 7 link 7 1: 14 2: 8 link 14 link 8

Multi-Protocol Label Switching Problem: using VC ID along the whole path –Each virtual circuit consumes a unique ID –Starts to use up all of the ID space in the network Label swapping –Map the VC ID to a new value at each hop Table has old ID, next link, and new ID –Allows reuse of the IDs at different links 1 2 1: 7: 20 2: 7: 53 link 7 20: 14: 78 53: 8: 42 link 14 link 8

Multipath Routing With MPLS Establish multiple paths –Signaling message to explicitly set-up the paths Flexible splitting over the paths –Configurable splitting ratios Flexible control over which traffic uses paths –Configurable “forwarding equivalence classes” Fast recovery from failures –Pre-configuration of backup paths –To protect primary paths, or even individual links

Interdomain Multipath: Multihoming

Outbound Traffic: Pick a BGP Route Easier to control than inbound traffic –IP routing is destination based –Sender determines where the packets go Control only by selecting the next hop –Border router can pick the next-hop AS –Cannot control selection of the entire path Provider 1 Provider 2 “(2, 7, 8, 4)” “(1, 3, 4)”

Outbound Traffic: Primary and Backup Single policy for all prefixes –High local-pref for session to primary provider –Low load-pref for session to backup provider Outcome of BGP decision process –Choose the primary provider whenever possible –Use the backup provider when necessary But… –What if you want to balance traffic load? –What if you want to select better paths?

Outbound Traffic: Load Balancing Selectively use each provider –Assign local-pref across destination prefixes –Change the local-pref assignments over time Useful inputs to load balancing –End-to-end path performance data E.g., active measurements along each path –Outbound traffic statistics per destination prefix E.g., packet monitors or router-level support –Link capacity to each provider –Billing model of each provider

Splitting Over Multiple Paths Use multiple outbound paths at the same time –Completely under the control of the edge router –No announcements sent to any neighbors –No need to encapsulate or mark the packets Still can only pick among the next-hop ASes Provider 1 Provider 2 “(2, 7, 8, 4)” “(1, 3, 4)”

Inbound Traffic: Influencing What Others Do Harder to control than outbound traffic –IP routing is destination based –Sender determines where the packets go Control only by influencing others’ decisions –Explicitly tell the providers what to do –Indirectly try to influence their decisions Provider 1 Provider 2

Research Challenges How to monitor performance efficiently? –Ping? TCP transfers? HTTP downloads? –Per prefix? Per popular prefix? How to optimize the load balancing? –Considering load, performance, and cost Impact on the upstream providers? –Uncertainty about the offered load How to ensure global stability? –What if everyone starts doing it? How to balance goals of sender and receiver? –Joint control over path selection?

More Flexible Interdomain Multipath

Source Routing Source routing –Propagate topology information –Let end hosts or edge routers pick paths –Carry the path information in the packets Scalability challenges –Large topology and frequent churn –Can operate at (say) the AS level Tussles over control –End-hosts/edge-routers wanting more control –ISPs not wanting to relinquish control

Multipath Through Overlays Premise: by building application overlay network, can increase performance and reliability of routing Two-hop (application-level) Berkeley-to-Princeton route application-layer router Princeton Yale Berkeley

How Does RON Work? Exchange the results of the probes –Each host shares results with every other host –Essentially running a link-state protocol! –So, every host knows the performance properties Forward through intermediate host when needed A C B B

Extensions to BGP to Propagate Extra Routes BGP sessions over multiple hops –E.g., AS 7 tells AS 6 about “(7, 3, 2, 1)” BGP sessions announcing multiple paths –E.g., AS 4 also announces “(4, 7, 3, 2, 1)” to ClientWeb server

Discussion Why can overlay routing perform well? –Even better than the “underlay” it runs on? Should the overlay run directly on the routers? –Avoid load (and delay) through intermediate hosts –Have access to additional network-level info What kind of business relationships needed? –To make the additional path diversity available How to get accurate path information? –Propagate in the routing messages? (Trust?) –Measure end-to-end? Is that good enough?

Out-of-Order Packets Multipath can lead to out-of-order delivery –Packets on different paths may get out of order No problem for packets from different flows –E.g., different TCP connections Can direct related packets onto the same path –Hash-based splitting of traffic Can direct bursts of packets onto same path –“Flow-let” switching, change paths only after gap Maybe transport shouldn’t be so sensitive –Being less sensitive to out-of-order delivery

Conclusions Multipath routing is useful –Load balancing, reliability, security, performance Multipath routing is challenging –Scalability, control over data plane, tussle over control over the flow of traffic Variety of techniques –Flexible splitting, multi-homing, MPLS, deflection through an intermediate node, … Many open research questions –Scalability, stability,