Transit Traffic Engineering Nick Feamster CS 6250: Computer Networks Fall 2011.

Slides:



Advertisements
Similar presentations
Ch. 12 Routing in Switched Networks
Advertisements

Multihoming and Multi-path Routing
Computer Science Department (Dipartimento di Informatica e Sistemistica - DIS), University of Napoli Federico II – Comics Group Intra-domain Traffic Engineering.
Internet Routing (COS 598A) Today: Multi-Protocol Label Switching Jennifer Rexford Tuesdays/Thursdays.
1 Traffic Engineering (TE). 2 Network Congestion Causes of congestion –Lack of network resources –Uneven distribution of traffic caused by current dynamic.
Data and Computer Communications Ninth Edition by William Stallings Chapter 12 – Routing in Switched Data Networks Data and Computer Communications, Ninth.
1 EL736 Communications Networks II: Design and Algorithms Class3: Network Design Modeling Yong Liu 09/19/2007.
Part IV: BGP Routing Instability. March 8, BGP routing updates  Route updates at prefix level  No activity in “steady state”  Routing messages.
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.
1 EL736 Communications Networks II: Design and Algorithms Class8: Networks with Shortest-Path Routing Yong Liu 10/31/2007.
Dynamic routing – QoS routing Other approaches to QoS routing Traffic Engineering Practical Traffic Engineering.
Traffic Engineering With Traditional IP Routing Protocols
1 Adapting Routing to the Traffic COS 461: Computer Networks Spring 2006 (MW 1:30-2:50 in Friend 109) Jennifer Rexford Teaching Assistant: Mike Wawrzoniak.
Traffic Engineering Jennifer Rexford Advanced Computer Networks Tuesdays/Thursdays 1:30pm-2:50pm.
1 Traffic Engineering for ISP Networks Jennifer Rexford IP Network Management and Performance AT&T Labs - Research; Florham Park, NJ
Traffic Engineering in IP Networks Jennifer Rexford Computer Science Department Princeton University; Princeton, NJ
Traffic Engineering for ISP Networks Jennifer Rexford Computer Science Department Princeton University
Traffic Engineering for ISP Networks
Network Protocols Designed for Optimizability Jennifer Rexford Princeton University
Traffic Engineering for ISP Networks Jennifer Rexford Computer Science Department Princeton University
Spring Routing & Switching Umar Kalim Dept. of Communication Systems Engineering 17/04/2007.
Internet Routing (COS 598A) Today: Intradomain Traffic Engineering Jennifer Rexford Tuesdays/Thursdays.
Traffic Engineering for ISP Networks Jennifer Rexford Internet and Networking Systems AT&T Labs - Research; Florham Park, NJ
Internet Routing (COS 598A) Today: Interdomain Traffic Engineering Jennifer Rexford Tuesdays/Thursdays.
Traffic Engineering for ISP Networks Jennifer Rexford Computer Science Department Princeton University
1 K. Salah Module 5.0: Internetworking & Network Layer Basic concepts Congestion Control Routing Protocols –Flooding –Source routing –Distance vector routing.
Dynamic routing – QoS routing Load sensitive routing QoS routing.
Network Monitoring for Internet Traffic Engineering Jennifer Rexford AT&T Labs – Research Florham Park, NJ 07932
Routing.
Backbone Networks Jennifer Rexford COS 461: Computer Networks Lectures: MW 10-10:50am in Architecture N101
CMPE 150- Introduction to Computer Networks 1 CMPE 150 Fall 2005 Lecture 21 Introduction to Computer Networks.
Multipath Routing Jennifer Rexford Advanced Computer Networks Tuesdays/Thursdays 1:30pm-2:50pm.
A General approach to MPLS Path Protection using Segments Ashish Gupta Ashish Gupta.
Multipath Protocol for Delay-Sensitive Traffic Jennifer Rexford Princeton University Joint work with Umar Javed, Martin Suchara, and Jiayue He
Intradomain Routing Jennifer Rexford Advanced Computer Networks Tuesdays/Thursdays 1:30pm-2:50pm.
Intradomain routing Lecture 4 CS 653, Fall Routing as a shortest path problem u y x wv z Shortest path between u and z = uxyz.
Jennifer Rexford Princeton University MW 11:00am-12:20pm Wide-Area Traffic Management COS 597E: Software Defined Networking.
SMUCSE 8344 Constraint-Based Routing in MPLS. SMUCSE 8344 Constraint Based Routing (CBR) What is CBR –Each link a collection of attributes (performance,
ROUTING ON THE INTERNET COSC Aug-15. Routing Protocols  routers receive and forward packets  make decisions based on knowledge of topology.
Jennifer Rexford Fall 2010 (TTh 1:30-2:50 in COS 302) COS 561: Advanced Computer Networks Stub.
Data Communications & Computer Networks
1 Pertemuan 20 Teknik Routing Matakuliah: H0174/Jaringan Komputer Tahun: 2006 Versi: 1/0.
1 Computer Communication & Networks Lecture 22 Network Layer: Delivery, Forwarding, Routing (contd.)
Packet-Switching Networks Routing in Packet Networks.
Lecture 15. IGP and MPLS D. Moltchanov, TUT, Spring 2008 D. Moltchanov, TUT, Spring 2015.
1 Introducing Routing 1. Dynamic routing - information is learned from other routers, and routing protocols adjust routes automatically. 2. Static routing.
Jennifer Rexford Fall 2014 (TTh 3:00-4:20 in CS 105) COS 561: Advanced Computer Networks BGP.
Intradomain Routing What is Routing? A famous quotation from RFC 791 “A name indicates what we seek. An address indicates where it is. A route indicates.
Controlling the Impact of BGP Policy Changes on IP Traffic Jennifer Rexford IP Network Management and Performance AT&T Labs – Research; Florham Park, NJ.
Lecture 17 November 8Intra-domain routing November 13Internet routing 1 November 15Internet routing 2 November 20End-to-end protocols 1 November 22End-to-end.
Intradomain Traffic Engineering By Behzad Akbari These slides are based in part upon slides of J. Rexford (Princeton university)
Routing Networks and Protocols Prepared by: TGK First Prepared on: Last Modified on: Quality checked by: Copyright 2009 Asia Pacific Institute of Information.
Jennifer Rexford Fall 2010 (TTh 1:30-2:50 in COS 302) COS 561: Advanced Computer Networks Backbone.
IP Routing Principles. Network-Layer Protocol Operations Each router provides network layer (routing) services X Y A B C Application Presentation Session.
Mike Freedman Fall 2012 COS 561: Advanced Computer Networks Traffic Engineering.
Spring 2000CS 4611 Routing Outline Algorithms Scalability.
7/11/0666th IETF1 QoS Enhancements to BGP in Support of Multiple Classes of Service Andreas Terzis Computer Science Department Johns Hopkins University.
Distance Vector Routing
Internet Traffic Engineering Motivation: –The Fish problem, congested links. –Two properties of IP routing Destination based Local optimization TE: optimizing.
Routing Jennifer Rexford.
Controlling the Impact of BGP Policy Changes on IP Traffic
COS 561: Advanced Computer Networks
Dynamic Routing and OSPF
COS 561: Advanced Computer Networks
COS 561: Advanced Computer Networks
COS 561: Advanced Computer Networks
Backbone Traffic Engineering
BGP Interactions Jennifer Rexford
BGP Instability Jennifer Rexford
Presentation transcript:

Transit Traffic Engineering Nick Feamster CS 6250: Computer Networks Fall 2011

Do IP Networks Manage Themselves? In some sense, yes: –TCP senders send less traffic during congestion –Routing protocols adapt to topology changes But, does the network run efficiently? –Congested link when idle paths exist? –High-delay path when a low-delay path exists? How should routing adapt to the traffic? –Avoiding congested links in the network –Satisfying application requirements (e.g., delay) … essential questions of traffic engineering 2

Outline ARPAnet routing protocols –Three protocols, with complexity/stability trade-offs Tuning routing-protocol configuration –Tuning link weights in shortest-path routing –Tuning BGP policies on edge routers MPLS traffic engineering –Explicit signaling of paths with sufficient resources –Constrained shortest-path first routing Multipath load balancing –Preconfigure multiple (disjoint) paths –Dynamics adjust splitting of traffic over the path 3

ARPAnet Routing 4

Original ARPAnet Routing (1969) Routing –Shortest-path routing based on link metrics –Distance-vector algorithm (i.e., Bellman-Ford) Metrics –Instantaneous queue length plus a constant –Each node updates distance computation periodically congested link

Problems With the Algorithm Instantaneous queue length –Poor indicator of expected delay –Fluctuates widely, even at low traffic levels –Leading to routing oscillations Distance-vector routing –Transient loops during (slow) convergence –Triggered by link weight changes, not just failures Protocol overhead –Frequent dissemination of link metric changes –Leading to high overhead in larger topologies 6

New ARPAnet Routing (1979) Averaging of the link metric over time –Old: Instantaneous delay fluctuates a lot –New: Averaging reduces the fluctuations Link-state protocol –Old: Distance-vector path computation leads to loops –New: Link-state protocol where each router computes shortest paths based on the complete topology Reduce frequency of updates –Old: Sending updates on each change is too much –New: Send updates if change passes a threshold 7

Performance of New Algorithm Light load –Delay dominated by the constant part (transmission delay and propagation delay) Medium load –Queuing delay is no longer negligible on all links –Moderate traffic shifts to avoid congestion Heavy load –Very high metrics on congested links –Busy links look bad to all of the routers –All routers avoid the busy links –Routers may send packets on longer paths 8

Over-Reacting to Congestion Routers make decisions based on old information –Propagation delay in flooding link metrics –Thresholds applied to limit number of updates Old information leads to bad decisions –All routers avoid the congested links –… leading to congestion on other links –… and the whole things repeats 9 I-85 GA400 ATL Sandy Springs “Backup at I-85” on radio triggers congestion on GA400

Problem of Long Alternate Paths Picking alternate paths –Multi-hop paths look better than a congested link –Long path chosen by one router consumes resource that other packets could have used –Leads other routers to pick other alternate paths congested link

Revised ARPAnet Metric (1987) Limit path length –Bound the value of the link metric –“This link is busy enough to go two extra hops” Prevent over-reacting –Shed traffic from a congested link gradually –Starting with alternate paths that are just slightly longer –Through weighted average in computing the metric, and limits on the change from one period to the next New algorithm –New way of computing the link weights –No change to link-state routing or shortest-path algorithm 11

Tuning Routing-Protocol Configuration 12

Routing With “Static” Link Weights Routers flood information to learn topology –Determine “next hop” to reach other routers… –Compute shortest paths based on link weights Link weights configured by network operator

Setting the Link Weights How to set the weights –Inversely proportional to link capacity? –Proportional to propagation delay? –Network-wide optimization based on traffic?

Measure, Model, and Control 15 Topology/ Configuration Offered traffic Changes to the network Operational network Network-wide “what if” model measure control

Key Ingredients Measurement –Topology: monitoring of the routing protocols –Traffic matrix: passive traffic measurement Network-wide models –Representations of topology and traffic –“What-if” models of shortest-path routing Network optimization –Efficient algorithms to find good configurations –Operational experience to identify constraints 16

Optimization Problem Input: graph G(R,L) –R is the set of routers –L is the set of unidirectional links –c l is the capacity of link l Input: traffic matrix –M i,j is traffic load from router i to j Output: setting of the link weights –w l is weight on unidirectional link l –P i,j,l is fraction of traffic from i to j traversing link l 17

Equal-Cost Multipath (ECMP) Values of P i,j,l

Objective Function Computing the link utilization – Link load: u l =  i,j M i,j P i,j,l – Utilization: u l /c l Objective functions – min(max l (u l /c l )) – min(  l  f(u l /c l )) 19 f(x) x

Complexity of Optimization Problem NP-complete optimization problem –No efficient algorithm to find the link weights –Even for simple objective functions What are the implications? –Have to resort to searching through weight settings Clearly suboptimal, but effective in practice –Fast computation of the link weights –Good performance, compared to “optimal” solution 20

Incorporating Operational Realities Minimize number of changes to the network –Changing just 1 or 2 link weights is often enough Tolerate failure of network equipment –Weights settings usually remain good after failure –… or can be fixed by changing one or two weights Limit dependence on measurement accuracy –Good weights remain good, despite random noise Limit frequency of changes to the weights –Joint optimization for day & night traffic matrices 21

Apply to Interdomain Routing Limitations of intradomain traffic engineering –Alleviating congestion on edge links –Making use of new or upgraded edge links –Influencing choice of end-to-end path Extra flexibility by changing BGP policies –Direct traffic toward/from certain edge links –Change the set of egress links for a destination

BGP Model for Traffic Engineering Predict effects of changes to import policies –Inputs: routing, traffic, and configuration data –Outputs: flow of traffic through the network 23 Topology BGP policy configuration BGP routes Offered traffic BGP routing model Flow of traffic through the network

Reasons for Interdomain TE Congested Edge Link –Links between domains are common points of congestion in the Internet Upgraded Link Capacity –Operators frequently install higher-bandwidth links –Aim to exploit the additional capacity Violation of Peering Agreement 24

Example Peering Guidelines 25

Goals for Interdomain TE Predictable traffic flow changes Limiting the influence of neighboring domains –Check for consistent advertisements –Use BGP policies that limit the influence of neighbors Reduce the overhead of routing changes –Focus on small number of prefixes 26

Tools for Interdomain TE Essentially, adjusting local preference to affect egress point selection Prediction –Set of egress points per prefix –Figure out the path from each router to egress 27

Predictable Traffic Flow Changes Avoid globally visible changes –Don’t do things that would result in changes to routing decisions from a neighboring AS –For example, make adjustments for prefixes that are only advertised via one neighbor AS 28

Limit the Influence of Neighbors Limit the influence of AS path length –Consider treating paths that have “almost the same length” as a common group Try to enforce consistent advertisements from neighbors (note: difficult problem!) 29

Reduce the Overhead of Changes Group related prefixes –Don’t explore all combinations of prefixes –Simplify configuration changes –Routing choices: groups routes that have the same AS paths (lots of different granularities to choose from) Focus on the (small) fraction of prefixes that carry the majority of the traffic –E.g., top 10% of origin ASes are responsible for about 82% of outbound traffic 30

MPLS Traffic Engineering 31

Limitations of Shortest-Path Routing Sub-optimal traffic engineering –Restricted to paths expressible as link weights Limited use of multiple paths –Only equal-cost multi-path, with even splitting Disruptions when changing the link weights –Transient packet loss and delay, and out-of-order Slow adaptation to congestion –Network-wide re-optimization and configuration Overhead of the management system –Collecting measurements and performing optimization 32

Explicit End-to-End Paths Establish end-to-end path in advance –Learn the topology (as in link-state routing) –End host or router computes and signals a path Routers supports virtual circuits –Signaling: install entry for each circuit at each hop –Forwarding: look up the circuit id in the table : 7 2: 7 link 7 1: 14 2: 8 link 14 link 8 Used in MPLS with RSVP

Label Swapping 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 : 7: 20 2: 7: 53 link 7 20: 14: 78 53: 8: 42 link 14 link 8

Multi-Protocol Label Switching Multi-Protocol –Encapsulate a data packet Could be IP, or some other protocol (e.g., IPX) –Put an MPLS header in front of the packet Actually, can even build a stack of labels… Label Switching –MPLS header includes a label –Label switching between MPLS-capable routers 35 IP packet MPLS header

Pushing, Popping, and Swapping Pushing: add the initial “in” label Swapping: map “in” label to “out” label Popping: remove the “out” label 36 IP Pushing IP Popping IP Swapping A B C D IP edge R2 R1 R3 R4 MPLS core

Constrained Shortest Path First Run a link-state routing protocol –Configurable link weights –Plus other metrics like available bandwidth Constrained shortest-path computation –Prune unwanted links (e.g., not enough bandwidth) –Compute shortest path on the remaining graph Signal along the path –Source router sends a message to pin the path to destination –Revisit decisions periodically, in case better options exist 37 s d 5, bw=10 6, bw=60 5, bw=703, bw=80

Multipath Load Balancing 38

Multiple Paths Establish multiple paths in advance –To make good use of the bandwidth –To survive link and router failures 39

Measure Link Congestion Disseminate link-congestion information –Flood throughout the network –Piggyback on data packets –Direct through a central controller 40

Adjust Traffic Splitting Source router adjusts the traffic –Changing traffic rate or fraction on each path –… based on the level of congestion 41 35% 65%

Challenges Protocol dynamics –Stability: avoid over-reacting to congestion –Convergence time: avoid under-reacting to congestion –Analysis using control or optimization theory! Protocol overhead –State for maintaining enough (failure-disjoint) paths –Bandwidth overhead of disseminating link metrics –Computation overhead of recomputing traffic splits –Implementing non-equal traffic splitting –Hash-based splitting to prevent packet reordering Applying the approach in an interdomain setting 42

Conclusion: Main Issues How are the paths expressed? –Shortest-path routing with (changing) link weights –End-to-end path (or paths) through the network Timescale of routing decisions? –Packet, flow, larger aggregates, longer timescale, … Role of path diversity? –Single-path routing where the one path can be changed –Multi-path routing where splitting over paths can change Who adapts the routes? –Routers: through adaptive routing protocols –Management system: through central (re)optimization 43