Lecture 13: Traffic Engineering

Similar documents
Lecture 18: Border Gateway Protocol

Lecture 16: Interdomain Routing. CSE 123: Computer Networks Stefan Savage

Lecture 17: Border Gateway Protocol

Lecture 4: Intradomain Routing. CS 598: Advanced Internetworking Matthew Caesar February 1, 2011

From Routing to Traffic Engineering

Lecture 13: Traffic Engineering

Computer Network Architectures and Multimedia. Guy Leduc. Chapter 2 MPLS networks. Chapter 2: MPLS

Lecture 16: Border Gateway Protocol

Routing Unicast routing protocols

Lecture 17: Router Design

Routing. Jens A Andersson Communication Systems

EECS 122, Lecture 16. Link Costs and Metrics. Traffic-Sensitive Metrics. Traffic-Sensitive Metrics. Static Cost Metrics.

Connecting to a Service Provider Using External BGP

Network Layer: Routing

BGP. Autonomous system (AS) BGP version 4

Routing. Routing. Overview. Overview. Routing vs. Forwarding. Why Routing

Routing Metric. ARPANET Routing Algorithms. Problem with D-SPF. Advanced Computer Networks

Communication Networks

BGP. Autonomous system (AS) BGP version 4

Routing on the Internet. Routing on the Internet. Hierarchical Routing. Computer Networks. Lecture 17: Inter-domain Routing and BGP

BGP. Autonomous system (AS) BGP version 4. Definition (AS Autonomous System)

CS 5114 Network Programming Languages Control Plane. Nate Foster Cornell University Spring 2013

BGP. Autonomous system (AS) BGP version 4

Internet Routing. Shortest-Path Routing. Intra-Domain Routing and Traffic Engineering. Two-Tiered Internet Routing System

Border Gateway Protocol (an introduction) Karst Koymans. Monday, March 10, 2014

BGP. Autonomous system (AS) BGP version 4. Definition (AS Autonomous System)

Connecting to a Service Provider Using External BGP

A Connectionless Approach to Intra- and Inter-Domain Traffic Engineering

Backbone Networks. Networking Case Studies. Backbone Networks. Backbone Topology. Mike Freedman COS 461: Computer Networks.

Inter-AS routing. Computer Networking: A Top Down Approach 6 th edition Jim Kurose, Keith Ross Addison-Wesley

IP Addressing & Interdomain Routing. Next Topic

Lecture 12: Link-state Routing. Lecture 12 Overview. Router Tasks. CSE 123: Computer Networks Chris Kanich. Routing overview

CS BGP v4. Fall 2014

Introduction to IP Routing. Geoff Huston

Inter-domain Routing. Outline. Border Gateway Protocol

TELE 301 Network Management

Lecture 3: Packet Forwarding

Shim6: Network Operator Concerns. Jason Schiller Senior Internet Network Engineer IP Core Infrastructure Engineering UUNET / MCI

PART III. Implementing Inter-Network Relationships with BGP

Overview 4.2: Routing

CS 43: Computer Networks. 24: Internet Routing November 19, 2018

Why dynamic route? (1)

Computer Networks II IPv4 routing

Inter-Domain Routing: BGP

Improving Network Agility with Seamless BGP Reconfigurations

Overview. Problem: Find lowest cost path between two nodes Factors static: topology dynamic: load

Some Foundational Problems in Interdomain Routing

Routing Basics ISP/IXP Workshops

Routing Concepts. IPv4 Routing Forwarding Some definitions Policy options Routing Protocols

Review problems (for no credit): Transport and Network Layer

Routing on the Internet! Hierarchical Routing! The NSFNet 1989! Aggregate routers into regions of autonomous systems (AS)!

CS 640: Introduction to Computer Networks. Intra-domain routing. Inter-domain Routing: Hierarchy. Aditya Akella

Internet Routing Protocols Lecture 01 & 02

CS 43: Computer Networks Internet Routing. Kevin Webb Swarthmore College November 16, 2017

Inter-Domain Routing: BGP

BGP. Autonomous system (AS) BGP version 4. Definition (AS Autonomous System)

Network Layer Chapter 5

LARGE SCALE IP ROUTING LECTURE BY SEBASTIAN GRAF

Routing Basics. Routing Concepts. IPv4. IPv4 address format. A day in a life of a router. What does a router do? IPv4 Routing

MPLS etc.. MPLS is not alone TEST. 26 April 2016 AN. Multi-Protocol Label Switching MPLS-TP FEC PBB-TE VPLS ISIS-TE MPƛS GMPLS SR RSVP-TE OSPF-TE PCEP

Dynamics of Hot-Potato Routing in IP Networks

Lecture 3: Packet Forwarding

Internet inter-as routing: BGP

Border Gateway Protocol (an introduction) Karst Koymans. Tuesday, March 8, 2016

ECE 428 Internet Protocols (Network Layer: Layer 3)

Review for Chapter 4 R1,R2,R3,R7,R10,R11,R16,R17,R19,R22,R24, R26,R30 P1,P2,P4,P7,P10,P11,P12,P14,P15,P16,P17,P22,P24,P29,P30

Fairness Example: high priority for nearby stations Optimality Efficiency overhead

Implementing Cisco IP Routing

Chapter 6. The Network Layer

Routing in a network

Chapter 7 Routing Protocols

ETSF05/ETSF10 Internet Protocols Routing on the Internet

Routing Overview for Firepower Threat Defense

Multihoming Complex Cases & Caveats

Course 6. Internetworking Routing 1/33

ETSF05/ETSF10 Internet Protocols. Routing on the Internet

Master Course Computer Networks IN2097

Lecture 13: Link-state Routing. CSE 123: Computer Networks Alex C. Snoeren

CSE 473 Introduction to Computer Networks. Final Exam. Your Name: 12/17/2014 PLEASE WRITE LEGIBLY NO POINTS FOR ILLEGIBLE ANSWERS

CSc 450/550 Computer Networks Internet Routing

Routing in Internet. Problem. Given set of nodes, how do routers acquire info about neighbors to construct the routing tables?

Toward Internet-Wide Multipath Routing

Ahmed Benallegue RMDCN workshop on the migration to IP/VPN 1/54

L11 : Inter-domain Routing with BGP Lecture14 Michaelmas, 2016

CS 138: Communication I. CS 138 V 1 Copyright 2012 Thomas W. Doeppner. All rights reserved.

Basic Idea. Routing. Example. Routing by the Network

Planning for Information Network

4.2 Multicast IP supports multicast to support one-to-many (radio, news, IP multicast was originally a many-to-many (any source MC or

Routing by the Network

Interdomain Routing Design for MobilityFirst

Service Provider Multihoming

Configuring BGP. Cisco s BGP Implementation

BTEC Level 3 Extended Diploma

Tag Switching. Background. Tag-Switching Architecture. Forwarding Component CHAPTER

CS644 Advanced Networks

COMP/ELEC 429 Introduction to Computer Networks

Routing Basics. ISP Workshops. Last updated 10 th December 2015

BGP Multihoming ISP/IXP Workshops

CS519: Computer Networks. Lecture 4, Part 5: Mar 1, 2004 Internet Routing:

Introduction to Segment Routing

Transcription:

Lecture 13: Traffic Engineering CSE 222A: Computer Communication Networks Alex C. Snoeren Thanks: Mike Freedman, Nick Feamster

Lecture 13 Overview Evolution of routing in the ARPAnet Today s TE: Adjusting edge weights Dealing with multiple paths Multihoming 2

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 3

ARPAnet Routing (1969) Routing Metrics Shortest-path routing based on link metrics; distance vector Instantaneous queue length plus a constant Each node updates distance computation periodically 3 2 1 1 2 5 3 1 20 congested link 4

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 5

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 6

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 7

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 I-5 UCSD Swami s US-101 SigAlert on the 5 on radio triggers back-up in Del Mar All routers avoid the congested links leading to congestion on other links and the whole things repeats 8

Newer ARPAnet Metric (1987) 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 Limit path length Bound the value of the link metric This link is busy enough to go two extra hops New algorithm New way of computing the link weights No change to link-state routing or shortest-path algorithm 9

Today: 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 3 2 1 1 2 5 3 1 4 3 10

Setting the Link Weights How to set the weights Inversely proportional to link capacity? Proportional to propagation delay? Network-wide optimization based on traffic? 3 2 31 1 2 5 3 1 4 3 11

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

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 13

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 14

Equal-Cost Multipath (ECMP) 0.25 0.25 1.0 0.5 0.25 0.25 1.0 0.5 0.5 0.5 Values of P i,j,l 15

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 )) F(x) min( Σ F(u l /c l )) x 16

Complexity of Optimization NP-complete optimization problem No efficient algorithm to find the link weights Even for simple objective functions 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 17

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 18

Need for Inter-domain TE Avoid congested edge links Links between domains are common points of congestion in the Internet Exploit upgraded link capacity Operators frequently install higher-bandwidth links Aim to exploit the additional capacity Comply with terms of peering agreement For example, enforce ratio of in/out traffic on peering link 19

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

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 21 21

Predictable Traffic 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 22

Reduce 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 23

Multiple Paths Establish multiple paths in advance Good use of bandwidth, withstand failures Disseminate link-congestion information Flood thru network, piggyback on data, direct to controller 24

Adjust Traffic Splitting Source router adjusts the traffic Changing traffic fraction, e.g. based on congestion Often use hash-based splitting to prevent packet reordering within a flow 35% 65% 25

Multi-Homing Reliability Reduced fate sharing Survive ISP failure Performance Multiple paths Select the best Financial Leverage through competition Game 95 th -percentile billing model Provider 1 Provider 2 Stub: an Autonomous System that does not provide transit 26

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 (1, 3, 4) (2, 7, 8, 4) 27

Inbound Traffic: Influencing Others Harder to control than outbound traffic Sender determines where the packets go Control only by influencing others decisions Static configuration of the providers BGP route attributes sent by the stub Selective advertising of destination prefixes Provider 1 Provider 2 28

Inbound Traffic: Multiple Addresses Multiple external addresses for a service One IP address for each entry point Use DNS to adjust mapping of name to address Give different answers to different clients Adjust over time to performance, cost, traffic, etc. Provider 1 Provider 2 12.34.1.0/24 5.6.7.0/24 12.34.1.2 5.6.7.8 29

For Next Class Read and review XCP paper Project checkpoint due Thursday Email 1-2 page summary to Bhanu 30

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 31

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 1 2 1: 7 2: 7 link 7 1: 14 2: 8 link 14 link 8 Used in MPLS with RSVP 32 32

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

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 MPLS header IP packet 34 34

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

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, 3, bw=80 in case better options exist s 5, bw=10 d 5, bw=70 6, bw=60 36

Choosing Outbound Traffic Primary and Backup Single policy for all prefixes» High local-pref for session to primary provider» Low local-pref for session to backup provider Outcome of BGP decision process» Choose the primary provider whenever possible» Use the backup provider when necessary Load Balancing: Selectively use each provider Assign local-pref across destination prefixes Change the local-pref assignments over time 37

Inbound Traffic: Primary and Backup Ask your provider to be a backup Provider violates prefer customer policy by assigning lower local-pref to customer Backup link is only used if the primary link fails local-pref=100 Provider 1 Provider 2 local-pref=90 traffic 12.34.158.0/24 38

Inbound Traffic: AS Prepending Make one path look longer Advertise short path one way and longer path another In the hope of influencing choices But, how much prepending to do? Provider 1 Provider 2 12.34.158.024: (3) 12.34.158.024: (3, 3, 3) 39

Inbound Traffic: Selective Advertising When you don t have enough prefixes Advertise one subnet to each provider Advertise the supernet to both providers Traffic splits due to the longest-prefix match Supernet ensures backup connectivity after failure Provider 1 Provider 2 12.34.0.0/16 12.34.0.0/17 12.34.0.0/16 12.34.128.0/17 CSE 222A Causes Lecture 13: unwanted Traffic Engineering increase in global routing tables 40