traffic engineering jennifer rexford advanced computer networks tuesdays/thursdays 1:30pm-2:50pm

21
Traffic Engineering Traffic Engineering Jennifer Rexford Jennifer Rexford Advanced Computer Networks Advanced Computer Networks http://www.cs.princeton.edu/courses/archive/ http://www.cs.princeton.edu/courses/archive/ fall08/cos561/ fall08/cos561/ Tuesdays/Thursdays 1:30pm-2:50pm Tuesdays/Thursdays 1:30pm-2:50pm

Post on 20-Dec-2015

215 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Traffic Engineering Jennifer Rexford Advanced Computer Networks  Tuesdays/Thursdays 1:30pm-2:50pm

Traffic EngineeringTraffic Engineering

Jennifer RexfordJennifer Rexford

Advanced Computer NetworksAdvanced Computer Networkshttp://www.cs.princeton.edu/courses/archive/fall08/http://www.cs.princeton.edu/courses/archive/fall08/

cos561/cos561/Tuesdays/Thursdays 1:30pm-2:50pmTuesdays/Thursdays 1:30pm-2:50pm

Page 2: Traffic Engineering Jennifer Rexford Advanced Computer Networks  Tuesdays/Thursdays 1:30pm-2:50pm

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

Page 3: Traffic Engineering Jennifer Rexford Advanced Computer Networks  Tuesdays/Thursdays 1:30pm-2:50pm

Traffic Engineering

• What is traffic engineering?– Control and optimization of routing, to steer

traffic through the network in the most effective way

• Two main approaches to adaptation– Adaptive routing protocols

• Distribute traffic and performance measurements• Compute paths based on load, and requirements• At packet level or at circuit level

– Adaptive network-management system • Collect measurements of traffic and topology• Optimize the setting of the “static” parameters

• Big debates still today about the right answer

Page 4: Traffic Engineering Jennifer Rexford Advanced Computer Networks  Tuesdays/Thursdays 1:30pm-2:50pm

Load-Sensitive Routing in the Early ARPANET

Page 5: Traffic Engineering Jennifer Rexford Advanced Computer Networks  Tuesdays/Thursdays 1:30pm-2:50pm

Original ARPANET Algorithm (1969)

• Routing algorithm– Shortest-path routing based on link metrics– Instantaneous queue length plus a constant– Distributed shortest-path algorithm (Bellman-

Ford)

32

2

1

13

1

5

20congested link

Page 6: Traffic Engineering Jennifer Rexford Advanced Computer Networks  Tuesdays/Thursdays 1:30pm-2:50pm

Performance of Original ARPANET Algorithm

• Light load– Delay dominated by the constant part

(transmission delay and propagation delay)

• Medium load– Queuing delay is no longer negligible– 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

Page 7: Traffic Engineering Jennifer Rexford Advanced Computer Networks  Tuesdays/Thursdays 1:30pm-2:50pm

Second ARPANET Algorithm (1979)

• Averaging of the link metric over time– Old: Instantaneous delay fluctuates a lot– New: Averaging reduces the fluctuations

• Link-state protocol (more in future lecture)– Old: Distributed path computation leads to loops– New: Better to flood metrics and have each

router compute the shortest paths

• Reduce frequency of updates– Old: Sending updates on each change is too

much– New: Send updates if change passes a threshold

Page 8: Traffic Engineering Jennifer Rexford Advanced Computer Networks  Tuesdays/Thursdays 1:30pm-2:50pm

Problem of Long Alternate Paths

• Picking alternate paths– Long path chosen by one router consumes

resource that other packets could have used– Leads other routers to pick other alternate

paths

• Solution: limit path length– Bound the value of the link metric– “This link is busy enough to go two extra hops”

• Extreme case– Limit path selection to the shortest paths– Pick the least-loaded shortest path in the

network

Page 9: Traffic Engineering Jennifer Rexford Advanced Computer Networks  Tuesdays/Thursdays 1:30pm-2:50pm

Problem of Out-of-Date Information

• 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

Lincoln Tunnel

Holland TunnelNJ NYC

“Backup at Lincoln” on radio triggers congestion at Holland

Page 10: Traffic Engineering Jennifer Rexford Advanced Computer Networks  Tuesdays/Thursdays 1:30pm-2:50pm

Avoiding Oscillations From Out-of-Date Info

• Send link metrics more often– But, leads to higher overhead– But, propagation delay is a fundamental limit

• Make the traffic last longer– Circuit switching: phone network

• Average phone call last 3 minutes• Plenty of time for feedback on link loads

– Packet switching: Internet• Data packet is small (e.g., 1500 bytes or less)• But, feedback on link metrics also sent via packets• Better to make decisions on groups of packets?

Page 11: Traffic Engineering Jennifer Rexford Advanced Computer Networks  Tuesdays/Thursdays 1:30pm-2:50pm

Quality-of-Service Routing on Circuits

Page 12: Traffic Engineering Jennifer Rexford Advanced Computer Networks  Tuesdays/Thursdays 1:30pm-2:50pm

Quality-of-Service Routing With Circuit Switching

• Traffic performance requirement– Guaranteed bandwidth b per connection

• Link resource reservation– Reserved bandwidth ri on link I

– Capacity ci on link i

• Signaling: admission control on path P– Reserve bandwidth b on each link i on path P

– Block: if (ri+b>ci) then reject (or try again)

– Accept: else ri = ri + b

• Routing: ingress router selects the path

Page 13: Traffic Engineering Jennifer Rexford Advanced Computer Networks  Tuesdays/Thursdays 1:30pm-2:50pm

Source-Directed QoS Routing

• New connection with b =3– Routing: select path with available resources– Signaling: reserve bandwidth along the path (r = r +3)– Forward data packets along the selected path– Teardown: free the link bandwidth (r =r -3)

r=8, c=10 r=6, c=7b=3

r=1, c=5r=15, c=

20

Page 14: Traffic Engineering Jennifer Rexford Advanced Computer Networks  Tuesdays/Thursdays 1:30pm-2:50pm

QoS Routing: Path Selection

• Link-state advertisements– Advertise available bandwidth (ci – ri ) on

link i• E.g., every T seconds, independent of changes• E.g., when metric changes beyond threshold

– Each router constructs view of topology• Path computation at each router

– E.g., Shortest widest path• Consider paths with largest value of mini(ci-ri) • Tie-break on smallest number of hops

– E.g., Widest shortest path• Consider only paths with minimum hops• Tie-break on largest value of mini(ci-ri) over paths

Page 15: Traffic Engineering Jennifer Rexford Advanced Computer Networks  Tuesdays/Thursdays 1:30pm-2:50pm

Reducing Overhead and Avoiding Oscillation

• Link state updates– High update rate leads to high overhead– Low update rate leads to oscillation

• Connections are too short– Average Web transfer is just 10 packets– Requires high update rates to ensure stability– … and results in large number of connections

• Instead, connections for traffic aggregates– E.g., all traffic between two address blocks– E.g., all traffic between two edge routers

Page 16: Traffic Engineering Jennifer Rexford Advanced Computer Networks  Tuesdays/Thursdays 1:30pm-2:50pm

Traffic Engineering as a Network-Management Problem

Page 17: Traffic Engineering Jennifer Rexford Advanced Computer Networks  Tuesdays/Thursdays 1:30pm-2:50pm

Measure, Model, and Control

Topology/Configuratio

n

Offeredtraffic

Changes tothe network

Operational network

Network-wideoptimization

measure

control

Page 18: Traffic Engineering Jennifer Rexford Advanced Computer Networks  Tuesdays/Thursdays 1:30pm-2:50pm

Traffic Engineering in an ISP Backbone

• Topology– Connectivity and capacity of routers and links

• Traffic matrix– Offered load between points in the network

• Performance objective– Balanced load, low latency, service level

agreements …

• Question: which routing configuration to use? – Setting link weights (in OSPF), or – Configuring label-switched paths (in MPLS)

Page 19: Traffic Engineering Jennifer Rexford Advanced Computer Networks  Tuesdays/Thursdays 1:30pm-2:50pm

Example Optimization Problem for OSPF

• Input: graph G(R,L)– R is set of routers– L is set of unidirectional links

– cl is capacity of link l

• Input: traffic matrix– Mi,j is traffic load from router i to j

• Output: setting of the link weights– wl is weight on unidirectional link l

– Pi,j,l is fraction of traffic from i to j traversing link l

• Problem: minimize aggregate congestion– Utilization ul on link l: sum (Mi,j * Pi,j,l)/cl over all (i,j)

pairs

– Aggregate congestion: sum f(ul) over all links l

32

2

11 3

1

45

3

ul

f(ul

)

1

Page 20: Traffic Engineering Jennifer Rexford Advanced Computer Networks  Tuesdays/Thursdays 1:30pm-2:50pm

Network Management Solutions

• Side-steps the problem of oscillation– Network-wide view of traffic and topology– Network-wide decisions

• System can incorporate additional information– Avoid load on certain links (e.g., carrying VoIP)– New TE goals (e.g., bound delay, save energy, …)– Account for shared risks (e.g., optical equipment)

• Additional complexity of management system– Collecting the measurement data– Solving the optimization problem– Reconfiguring the network

Page 21: Traffic Engineering Jennifer Rexford Advanced Computer Networks  Tuesdays/Thursdays 1:30pm-2:50pm

Discussion

• Should traffic engineering be done by the network or by the management systems?– Or some hybrid of the two?

• TeXCP paper– Select multiple paths between each pair of nodes– Collect feedback about utilization of the paths– Adapt the fraction of traffic on each path

• What about the interdomain setting?– Scalability challenges?– Deployment challenges?– Trust issues?

• Interaction with congestion control?– Division of labor between end hosts and routers?