On On l low-la latenc ency-ca capable to topologies, and their - - PowerPoint PPT Presentation

on on l low la latenc ency ca capable to topologies and
SMART_READER_LITE
LIVE PREVIEW

On On l low-la latenc ency-ca capable to topologies, and their - - PowerPoint PPT Presentation

On On l low-la latenc ency-ca capable to topologies, and their impact on the desi th sign of of intr tra-do domain ain ro routing Nikola Gvozdiev, Stefano Vissicchio, Brad Karp, Mark Handley University College London (UCL) We want


slide-1
SLIDE 1

On On l low-la latenc ency-ca capable to topologies, and their impact on th the desi sign of

  • f intr

tra-do domain ain ro routing

Nikola Gvozdiev, Stefano Vissicchio, Brad Karp, Mark Handley University College London (UCL)

slide-2
SLIDE 2

We want low latency!

slide-3
SLIDE 3

We want low latency! In the datacenter

slide-4
SLIDE 4

We want low latency! In the datacenter In the enterprise WAN [B4, BwE, SWAN …]

  • perator controls both WAN and sources
  • … so demands are predictable
slide-5
SLIDE 5

We want low latency! In the datacenter In the enterprise WAN [B4, BwE, SWAN …]

  • perator controls both WAN and sources
  • … so demands are predictable

In the ISP this talk

  • ISP operator does not control sources
slide-6
SLIDE 6

How do we get low latency in a loaded ISP network?

slide-7
SLIDE 7

How do we get low latency in a loaded ISP network?

The topology?

Topology must offer diverse low- latency paths…

slide-8
SLIDE 8

How do we get low latency in a loaded ISP network?

The topology? The routing?

…and routing system must make good use of those low-latency paths Topology must offer diverse low- latency paths…

slide-9
SLIDE 9

How do we get low latency in a loaded ISP network?

The topology? The routing?

…and routing system must make good use of those low-latency paths Topology must offer diverse low- latency paths…

slide-10
SLIDE 10

All possible topologies connecting a set of PoPs

Venn diagram

slide-11
SLIDE 11

Other topologies SP routing gives lowest possible latency

Shortest-path routing doesn’t yield lowest latency on all topologies

slide-12
SLIDE 12

Other topologies

SP routing gives lowest possible latency

Shortest-path routing doesn’t yield lowest latency on all topologies

slide-13
SLIDE 13

Other topologies

SP routing gives lowest possible latency

Shortest-path routing doesn’t yield lowest latency on all topologies

capacity: 1.5

slide-14
SLIDE 14

Other topologies

SP routing gives lowest possible latency

demands: 1 each

Shortest-path routing doesn’t yield lowest latency on all topologies

capacity: 1.5

slide-15
SLIDE 15

Other topologies

SP routing gives lowest possible latency

demands: 1 each

Shortest-path routing doesn’t yield lowest latency on all topologies

capacity: 1.5

slide-16
SLIDE 16

Other topologies

SP routing gives lowest possible latency

Can’t achieve lower latency on a tree!

demands: 1 each

Shortest-path routing doesn’t yield lowest latency on all topologies

capacity: 1.5

slide-17
SLIDE 17

Let’s improve the topology, let’s add redundancy!

demands: 1 each

Better Topologies May Need Better Routing

capacity: 1.5

slide-18
SLIDE 18

Congestion inflates latency if both aggregates don’t fit.

demands: 1 each

Better Topologies May Need Better Routing

capacity: 1.5

slide-19
SLIDE 19

Congestion control makes aggregates fit; hurts throughput

demands: 1 each

Better Topologies May Need Better Routing

capacity: 1.5

slide-20
SLIDE 20

Other topologies

SP routing gives lowest possible latency

demands: 1 each

Better Topologies May Need Better Routing

capacity: 1.5

slide-21
SLIDE 21

Other topologies

SP routing gives lowest possible latency

Better Topologies May Need Better Routing

slide-22
SLIDE 22

Other topologies

Better Topologies May Need Better Routing

Modern TE (B4, MPLS-TE) give lowest possible latency

slide-23
SLIDE 23

Other topologies

Modern TE (B4, MPLS-TE) give lowest possible latency

demands: 1 each

Better Topologies May Need Better Routing

capacity: 1.5

slide-24
SLIDE 24

Other topologies Route as much as possible on shortest paths

demands: 1 each

Better Topologies May Need Better Routing

Modern TE (B4, MPLS-TE) give lowest possible latency

capacity: 1.5

slide-25
SLIDE 25

Other topologies Traffic is split, low-latency top path fully loaded

demands: 1 each

Better Topologies May Need Better Routing

Modern TE (B4, MPLS-TE) give lowest possible latency

capacity: 1.5

slide-26
SLIDE 26

Other topologies

  • Do any topologies fall in

this region?

Do Even Better Topologies Need Even Better Routing?

Modern TE (B4, MPLS-TE) give lowest possible latency

slide-27
SLIDE 27

Other topologies

  • Do any topologies fall in

this region?

  • If so, do any of them have

a greater potential to provide low latency?

Modern TE (B4, MPLS-TE) give lowest possible latency

Do Even Better Topologies Need Even Better Routing?

slide-28
SLIDE 28

Other topologies

  • Do any topologies fall in

this region?

  • If so, do any of them have

a greater potential to provide low latency?

  • Why does current routing

do poorly on those topologies?

Modern TE (B4, MPLS-TE) give lowest possible latency

Do Even Better Topologies Need Even Better Routing?

slide-29
SLIDE 29

Limitations of Today’s Routing

Central European network of GTS, 2010

Proof by example. Consider this real-world ISP topology…

slide-30
SLIDE 30

0.0 0.2 0.4 0.6 Fraction of flows that encounter congestion 0.0 0.2 0.4 0.6 0.8 1.0 CDF Shortest path

CDF over 100 runs of SP routing on synthetic traffic matrices on GTS’s topology

slide-31
SLIDE 31

0.0 0.2 0.4 0.6 Fraction of flows that encounter congestion 0.0 0.2 0.4 0.6 0.8 1.0 CDF Shortest path

Fraction of all flows in each traffic matrix that cross at least one congested link

slide-32
SLIDE 32

SP does poorly, as expected

0.0 0.2 0.4 0.6 Fraction of flows that encounter congestion 0.0 0.2 0.4 0.6 0.8 1.0 CDF Shortest path

Each point is a run of the routing system on a different traffic matrix

slide-33
SLIDE 33

0.0 0.2 0.4 0.6 Fraction of flows that encounter congestion 0.0 0.2 0.4 0.6 0.8 1.0 CDF Shortest path B4

B4 for the win … sort of

Jain, Sushant, et al. "B4: Experience with a globally-deployed software defined WAN." ACM SIGCOMM 2013

slide-34
SLIDE 34

Where does greedy routing such as B4 go wrong?

You are here!

slide-35
SLIDE 35

Let’s focus on a small part of the network

Where does greedy routing such as B4 go wrong?

slide-36
SLIDE 36

Limitations of greedy routing

slide-37
SLIDE 37

Limitations of greedy routing

1.Allocate as much as possible on shortest path

slide-38
SLIDE 38

Limitations of greedy routing

V G

1.Allocate as much as possible on shortest path

Local flows between Veszprem (V) and Gyor (G)

slide-39
SLIDE 39

Limitations of greedy routing

Local flows between Veszprem (V) and Gyor (G)

V G

Through flows

1.Allocate as much as possible on shortest path

slide-40
SLIDE 40

Limitations of greedy routing

First link on V->G aggregate’s shortest path fills eastbound

V G

1.Allocate as much as possible on shortest path

slide-41
SLIDE 41

Limitations of greedy routing

First link on V->G aggregate’s shortest path fills eastbound

V G

1.Allocate as much as possible on shortest path 2.Allocate to longer paths

slide-42
SLIDE 42

Limitations of greedy routing

First link on V->G aggregate’s shortest path fills eastbound

V G

?

1.Allocate as much as possible on shortest path 2.Allocate to longer paths

slide-43
SLIDE 43

Limitations of greedy routing

First link on V->G aggregate’s shortest path fills eastbound

V G

V->G’s second best path is already full, using it results in congestion!

?

1.Allocate as much as possible on shortest path 2.Allocate to longer paths

slide-44
SLIDE 44

Limitations of greedy routing

slide-45
SLIDE 45

Limitations of greedy routing

Rings embedded in a topology can trigger this problem with greedy routing

slide-46
SLIDE 46

0.0 0.2 0.4 0.6 Fraction of flows that encounter congestion 0.0 0.2 0.4 0.6 0.8 1.0 CDF Shortest path B4

B4 for the win … sort of

slide-47
SLIDE 47

Can we do better?

0.0 0.2 0.4 0.6 Fraction of flows that encounter congestion 0.0 0.2 0.4 0.6 0.8 1.0 CDF Shortest path B4 Latency-optimal

Yes, a placement which both avoids congestion and minimizes propagation delay does exist!

slide-48
SLIDE 48

Can we do better?

0.0 0.2 0.4 0.6 Fraction of flows that encounter congestion 0.0 0.2 0.4 0.6 0.8 1.0 CDF Shortest path B4 Latency-optimal

Yes, a placement which both avoids congestion and minimizes propagation delay does exist! So GTS is amenable to low latency. Are other topologies?

slide-49
SLIDE 49

How might we quantify a topology’s potential for low latency under load?

  • Want a metric to capture a topology’s inherent potential

for low latency

  • Should be:
  • traffic matrix-agnostic
  • routing algorithm-agnostic
slide-50
SLIDE 50

How might we quantify a topology’s potential for low latency under load?

  • Want a metric to capture a topology’s inherent potential

for low latency

  • Should be:
  • traffic matrix-agnostic
  • routing algorithm-agnostic
  • Want to capture two things:
  • topology’s potential for routing around congestion hot spots
  • …without incurring long propagation delay
slide-51
SLIDE 51

How might we quantify a topology’s potential for low latency under load?

  • Want a metric to capture a topology’s inherent potential

for low latency

  • Should be:
  • traffic matrix-agnostic
  • routing algorithm-agnostic
  • Want to capture two things:
  • topology’s potential for routing around congestion hot spots
  • …without incurring long propagation delay

We want a metric that rewards alternate paths with short propagation delay

slide-52
SLIDE 52

Alternate Path Availability (APA)

Y Gbps

slide-53
SLIDE 53

Alternate Path Availability (APA)

Y Gbps

Shortest path: T ms total propagation delay Y Gbps SP capacity

slide-54
SLIDE 54

Alternate Path Availability (APA)

Y Gbps

Shortest path: T ms total propagation delay Y Gbps SP capacity Exclude each link on the shortest path; can we route Y Gbps over

  • ne or more alternative paths with delay < 1.4 T?
slide-55
SLIDE 55

Alternate Path Availability (APA)

Y Gbps

Shortest path: T ms total propagation delay Y Gbps SP capacity Exclude each link on the shortest path; can we route Y Gbps over

  • ne or more alternative paths with delay < 1.4 T?
slide-56
SLIDE 56

Alternate Path Availability (APA)

Y Gbps

Shortest path: T ms total propagation delay Y Gbps SP capacity Exclude each link on the shortest path; can we route Y Gbps over

  • ne or more alternative paths with delay < 1.4 T?

Links with viable alternative paths Links on shortest path

1 5

slide-57
SLIDE 57

Alternate Path Availability (APA)

Y Gbps

Shortest path: T ms total propagation delay Y Gbps SP capacity Exclude each link on the shortest path; can we route Y Gbps over

  • ne or more alternative paths with delay < 1.4 T?

1 5

slide-58
SLIDE 58

Alternate Path Availability (APA)

Y Gbps

Shortest path: T ms total propagation delay Y Gbps SP capacity Exclude each link on the shortest path; can we route Y Gbps over

  • ne or more alternative paths with delay < 1.4 T?

2 5

slide-59
SLIDE 59

Alternate Path Availability (APA)

Y Gbps

Shortest path: T ms total propagation delay Y Gbps SP capacity Exclude each link on the shortest path; can we route Y Gbps over

  • ne or more alternative paths with delay < 1.4 T?

3 5

slide-60
SLIDE 60

Alternate Path Availability (APA)

Y Gbps

Shortest path: T ms total propagation delay Y Gbps SP capacity Exclude each link on the shortest path; can we route Y Gbps over

  • ne or more alternative paths with delay < 1.4 T?

3 5

Path too long or not enough capacity

slide-61
SLIDE 61

Alternate Path Availability (APA)

Y Gbps

Shortest path: T ms total propagation delay Y Gbps SP capacity Exclude each link on the shortest path; can we route Y Gbps over

  • ne or more alternative paths with delay < 1.4 T?

4 5

slide-62
SLIDE 62

Alternate Path Availability (APA)

Y Gbps

Shortest path: T ms total propagation delay Y Gbps SP capacity Exclude each link on the shortest path; can we route Y Gbps over

  • ne or more alternative paths with delay < 1.4 T?

4 5 = 0.8

For this PoP pair 80% of the links on the SP have an alternate path with acceptable low latency

slide-63
SLIDE 63

Low-latency path diversity (LLPD)

  • 1. Compute APA for all PoP pairs
slide-64
SLIDE 64

Low-latency path diversity (LLPD)

  • 2. Compute LLPD =
  • 1. Compute APA for all PoP pairs

Fraction of PoP pairs with “good” path availability

slide-65
SLIDE 65

Low-latency path diversity (LLPD)

number of PoP pairs with APA ≥ 0.7 total number of PoP pairs

  • 2. Compute LLPD =
  • 1. Compute APA for all PoP pairs

Fraction of PoP pairs with “good” path availability =

slide-66
SLIDE 66

Low-latency path diversity (LLPD)

number of PoP pairs with APA ≥ 0.7 total number of PoP pairs

  • 2. Compute LLPD =
  • 1. Compute APA for all PoP pairs

Fraction of PoP pairs with “good” path availability = Empirically derived; metric not sensitive to picking different values

slide-67
SLIDE 67

0.0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 LLPD 0.0 0.5 fraction of pairs congested GTS 90th percentile Median

100+ real-world ISP topologies, ranked by low-latency path diversity (LLPD)

slide-68
SLIDE 68

0.0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 LLPD 0.0 0.5 fraction of pairs congested GTS 90th percentile Median

Generate TMs for each topology; plot fraction of (Src,Dst) PoP pairs in each TM that crosses at least one congested link

slide-69
SLIDE 69

0.0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 LLPD 0.0 0.5 fraction of pairs congested GTS 90th percentile Median

Shortest path routing congests links

Two points per topology: median TM and 90th percentile TM; line shows spread of distribution

slide-70
SLIDE 70

0.0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 LLPD 0.0 0.5 fraction of pairs congested GTS 90th percentile Median

Networks with high LLPD offer lots of alternative paths à shortest path routing experiences congestion

Shortest path routing congests links

slide-71
SLIDE 71

0.0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 LLPD 0.0 0.5 fraction of pairs congested GTS 90th percentile Median

Networks with high LLPD offer lots of alternative paths à shortest path routing experiences congestion

Shortest path routing congests links

No surprises here. What about B4?

slide-72
SLIDE 72

0.0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 LLPD 0.0 0.5 fraction of pairs congested GTS 90th percentile Median

  • Better at using

alternative paths

B4 congests networks with high potential for low latency

slide-73
SLIDE 73

0.0 0.5 fraction of pairs congested GTS 0.0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 LLPD 1.0 1.2 1.4 latency stretch GTS 90th percentile Median

  • Better at using

alternative paths

total prop delay of all flows total prop delay if all flows routed on SP

B4 congests networks with high potential for low latency

slide-74
SLIDE 74

0.0 0.5 fraction of pairs congested GTS 0.0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 LLPD 1.0 1.2 1.4 latency stretch GTS 90th percentile Median

Congestion

B4 congests networks with high potential for low latency

Better Better Propagation delay

slide-75
SLIDE 75

0.0 0.5 fraction of pairs congested GTS 0.0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 LLPD 1.0 1.2 1.4 latency stretch GTS 90th percentile Median

  • Better at using

alternative paths

  • Some flows routed
  • n non-shortest paths

B4 congests networks with high potential for low latency

slide-76
SLIDE 76

0.0 0.5 fraction of pairs congested GTS 0.0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 LLPD 1.0 1.2 1.4 latency stretch GTS 90th percentile Median

  • Better at using

alternative paths

  • Some flows routed
  • n non-shortest paths
  • Still incurs

congestion, and precisely on high-LLPD networks!

B4 congests networks with high potential for low latency

slide-77
SLIDE 77

0.0 0.5 fraction of pairs congested GTS 0.0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 LLPD 1.0 1.2 1.4 latency stretch GTS 90th percentile Median

  • Better at using

alternative paths

  • Some flows routed
  • n non-shortest paths
  • Still incurs

congestion, and precisely on high-LLPD networks!

B4 congests networks with high potential for low latency

Need a different routing scheme. How about one that prioritizes avoiding congestion above all else?

slide-78
SLIDE 78

Minimizing utilization avoids congestion

slide-79
SLIDE 79

Minimizing utilization avoids congestion

33%

  • Spread traffic out to leave

spare capacity in case traffic levels increase

  • A well-known technique

called MinMax

  • Does not care about

propagation delay

slide-80
SLIDE 80

Minimizing utilization avoids congestion

33%

  • Spread traffic out to leave

spare capacity in case traffic levels increase

  • A well-known technique

called MinMax

  • Does not care about

propagation delay How does MinMax do?

slide-81
SLIDE 81

MinMax inflates propagation delay

0.0 0.5 fraction of pairs congested 0.0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 LLPD 1.0 1.2 1.4 latency stretch GTS 90th percentile Median

  • Minimizes utilization,

designed to avoid congestion

slide-82
SLIDE 82

0.0 0.5 fraction of pairs congested 0.0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 LLPD 1.0 1.2 1.4 latency stretch GTS 90th percentile Median

  • Minimizes utilization,

designed to avoid congestion

  • Routes some flows on

paths with high propagation delay

MinMax inflates propagation delay

slide-83
SLIDE 83

0.0 0.5 fraction of pairs congested 0.0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 LLPD 1.0 1.2 1.4 latency stretch GTS 90th percentile Median

  • Minimizes utilization,

designed to avoid congestion

  • Routes some flows on

paths with high propagation delay One extreme of the design

  • space. The other one?

MinMax inflates propagation delay

slide-84
SLIDE 84

Latency-optimal placement

0.0 0.5 fraction of pairs congested 0.0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 LLPD 1.0 1.2 1.4 latency stretch GTS 90th percentile Median

  • Minimizes prop delay

and avoids congestion

  • Maximizes utilization
  • f links on low-delay

paths

slide-85
SLIDE 85

Latency-optimal placement

0.0 0.5 fraction of pairs congested 0.0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 LLPD 1.0 1.2 1.4 latency stretch GTS 90th percentile Median

  • Minimizes prop delay

and avoids congestion

  • Maximizes utilization
  • f links on low-delay

paths Assume it is possible to compute this at scale, more about that later…

slide-86
SLIDE 86

0.0 0.5 fraction of pairs congested 0.0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 LLPD 1.0 1.2 1.4 latency stretch GTS 90th percentile Median

Two extremes of congestion-free routing

0.0 0.5 fraction of pairs congested 0.0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 LLPD 1.0 1.2 1.4 latency stretch GTS 90th percentile Median

Minimize utilization (MinMax) Minimize propagation delay and avoid congestion

slide-87
SLIDE 87

0.0 0.5 fraction of pairs congested 0.0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 LLPD 1.0 1.2 1.4 latency stretch GTS 90th percentile Median

Two extremes of congestion-free routing

0.0 0.5 fraction of pairs congested 0.0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 LLPD 1.0 1.2 1.4 latency stretch GTS 90th percentile Median

Minimize utilization (MinMax) Minimize propagation delay and avoid congestion

slide-88
SLIDE 88

0.0 0.5 fraction of pairs congested 0.0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 LLPD 1.0 1.2 1.4 latency stretch GTS 90th percentile Median

Two extremes of congestion-free routing

0.0 0.5 fraction of pairs congested 0.0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 LLPD 1.0 1.2 1.4 latency stretch GTS 90th percentile Median

Minimize utilization (MinMax) Minimize propagation delay and avoid congestion

GTS

GTS

slide-89
SLIDE 89

0.0 0.5 fraction of pairs congested 0.0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 LLPD 1.0 1.2 1.4 latency stretch GTS 90th percentile Median

Two extremes of congestion-free routing

0.0 0.5 fraction of pairs congested 0.0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 LLPD 1.0 1.2 1.4 latency stretch GTS 90th percentile Median

Minimize utilization (MinMax) Minimize propagation delay and avoid congestion

GTS

GTS

GTS sees 5x difference in propagation delay!

slide-90
SLIDE 90

0.0 0.5 fraction of pairs congested 0.0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 LLPD 1.0 1.2 1.4 latency stretch GTS 90th percentile Median

Two extremes of congestion-free routing

0.0 0.5 fraction of pairs congested 0.0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 LLPD 1.0 1.2 1.4 latency stretch GTS 90th percentile Median

Minimize utilization (MinMax) Minimize propagation delay and avoid congestion

GTS

GTS

GTS sees 5x difference in propagation delay! Let’s focus on a single traffic matrix

slide-91
SLIDE 91

0.0 0.2 0.4 0.6 0.8 1.0 link utilization 0.0 0.5 1.0 CDF Latency-optimal (mean 0.32) MinMax (mean 0.30)

Two extremes of congestion-free routing

Significant delta in prop delay, but mean utilization the same

slide-92
SLIDE 92

0.0 0.2 0.4 0.6 0.8 1.0 link utilization 0.0 0.5 1.0 CDF Latency-optimal (mean 0.32) MinMax (mean 0.30)

Links on short prop-delay paths “in demand” in latency-optimal placement

Two extremes of congestion-free routing

slide-93
SLIDE 93

0.6 0.7 0.8 0.9 1.0 link utilization 0.80 0.85 0.90 0.95 1.00 CDF Latency-optimal (mean 0.32) MinMax (mean 0.30)

Two extremes of congestion-free routing

slide-94
SLIDE 94

0.6 0.7 0.8 0.9 1.0 link utilization 0.80 0.85 0.90 0.95 1.00 CDF Latency-optimal (mean 0.32) MinMax (mean 0.30)

Two extremes of congestion-free routing

All possible congestion-free routing solutions lie in this range

slide-95
SLIDE 95

0.6 0.7 0.8 0.9 1.0 link utilization 0.80 0.85 0.90 0.95 1.00 CDF Latency-optimal (mean 0.32) MinMax (mean 0.30)

Two extremes of congestion-free routing

100% utilization? On an ISP?

slide-96
SLIDE 96

10 20 30 40 50 60 time (s) +3.2e3 1 2 3 4 Gbps

A minute from a core link

Source: CAIDA

slide-97
SLIDE 97

10 20 30 40 50 60 time (s) +3.2e3 1 2 3 4 Gbps

Mean rate. Could run traffic through a path with this capacity, but long queuing delay.

A minute from a core link

slide-98
SLIDE 98

10 20 30 40 50 60 time (s) +3.2e3 1 2 3 4 Gbps

Need to allocate headroom to allow for variability

A minute from a core link

slide-99
SLIDE 99

0.6 0.7 0.8 0.9 1.0 link utilization 0.80 0.85 0.90 0.95 1.00 CDF Latency-optimal (mean 0.32) MinMax (mean 0.30)

The headroom dial

Not feasible because of variability

slide-100
SLIDE 100

0.6 0.7 0.8 0.9 1.0 link utilization 0.80 0.85 0.90 0.95 1.00 CDF Latency-optimal (mean 0.32) MinMax (mean 0.30)

The headroom dial

MinMax is one extreme of the headroom dial

slide-101
SLIDE 101

0.6 0.7 0.8 0.9 1.0 link utilization 0.80 0.85 0.90 0.95 1.00 CDF Latency-optimal (mean 0.32) MinMax (mean 0.30) 7% headroom

The headroom dial

0.6 0.7 0.8 0.9 1.0 link utilization 0.80 0.85 0.90 0.95 1.00 CDF Latency-optimal (mean 0.32) MinMax (mean 0.30) 27% headroom

slide-102
SLIDE 102

0.6 0.7 0.8 0.9 1.0 link utilization 0.80 0.85 0.90 0.95 1.00 CDF Latency-optimal (mean 0.32) MinMax (mean 0.30) 7% headroom

The headroom dial

0.6 0.7 0.8 0.9 1.0 link utilization 0.80 0.85 0.90 0.95 1.00 CDF Latency-optimal (mean 0.32) MinMax (mean 0.30) 22% headroom

slide-103
SLIDE 103

0.6 0.7 0.8 0.9 1.0 link utilization 0.80 0.85 0.90 0.95 1.00 CDF Latency-optimal (mean 0.32) MinMax (mean 0.30) 7% headroom

The headroom dial

0.6 0.7 0.8 0.9 1.0 link utilization 0.80 0.85 0.90 0.95 1.00 CDF Latency-optimal (mean 0.32) MinMax (mean 0.30) 15% headroom

slide-104
SLIDE 104

0.6 0.7 0.8 0.9 1.0 link utilization 0.80 0.85 0.90 0.95 1.00 CDF Latency-optimal (mean 0.32) MinMax (mean 0.30) 7% headroom

The headroom dial

0.6 0.7 0.8 0.9 1.0 link utilization 0.80 0.85 0.90 0.95 1.00 CDF Latency-optimal (mean 0.32) MinMax (mean 0.30) 7% headroom

slide-105
SLIDE 105

0.6 0.7 0.8 0.9 1.0 link utilization 0.80 0.85 0.90 0.95 1.00 CDF Latency-optimal (mean 0.32) MinMax (mean 0.30) 2% headroom

The headroom dial

Need to allow the minimal amount

  • f headroom to cope with variability
slide-106
SLIDE 106

Towards a low-latency routing system

slide-107
SLIDE 107

Towards a low-latency routing system

Compute latency-optimal routing solution, sans headroom

  • expressed the problem as one big linear program

(largely straightforward)

  • efficient iterative solution: add paths, solve, repeat …
  • 400+ nodes, less than one second (vs. tens of minutes…)
slide-108
SLIDE 108

Towards a low-latency routing system

Compute latency-optimal routing solution, sans headroom

  • expressed the problem as one big linear program

(largely straightforward)

  • efficient iterative solution: add paths, solve, repeat …
  • 400+ nodes, less than one second (vs. tens of minutes…)

Tune headroom dial to drive routing as close as possible to optimal solution while avoiding congestion

  • predict how aggregates will statistically multiplex on a path

by convolving their past demands

slide-109
SLIDE 109

Towards a low-latency routing system

Compute latency-optimal routing solution, sans headroom

  • expressed the problem as one big linear program

(largely straightforward)

  • efficient iterative solution: add paths, solve, repeat …
  • 400+ nodes, less than one second (vs. tens of minutes…)

Tune headroom dial to drive routing as close as possible to optimal solution while avoiding congestion

  • predict how aggregates will statistically multiplex on a path

by convolving their past demands

More details in the paper!

slide-110
SLIDE 110

Are high-LLPD networks viable?

  • A routing system may not be able to unlock the low-

latency potential of a topology

  • LLPD indicates that a topology has good potential for

low latency

slide-111
SLIDE 111

Are high-LLPD networks viable?

  • A routing system may not be able to unlock the low-

latency potential of a topology

  • LLPD indicates that a topology has good potential for

low latency

  • But will anyone ever really build a modern WAN with

high LLPD?

slide-112
SLIDE 112

Are high-LLPD networks viable?

0.0 0.2 0.4 0.6 0.8 LLPD 0.0 0.5 fraction of pairs congested Google 90th percentile Median

  • Repeated SP experiment, but added Google’s network
slide-113
SLIDE 113

Are high-LLPD networks viable?

0.0 0.2 0.4 0.6 0.8 LLPD 0.0 0.5 fraction of pairs congested Google 90th percentile Median

  • Repeated SP experiment, but added Google’s network

Modern high-LLPD network!

slide-114
SLIDE 114

Are high-LLPD networks viable?

0.0 0.2 0.4 0.6 0.8 LLPD 0.0 0.5 fraction of pairs congested Google 90th percentile Median

  • Repeated SP experiment, but added Google’s network

Modern high-LLPD network! B4 however, does great on that network! Could it be because the routing and the topology co-evolved?

slide-115
SLIDE 115

What topologies would people build if they knew the routing system would always extract the best from it?

slide-116
SLIDE 116

Conclusions

  • To achieve low latency:
  • topology must provide low-latency paths
  • the routing system must use them effectively
  • State-of-the-art routing falters on high-LLPD topologies—

precisely those with best potential for low latency

  • Practical routing approach for high-LLPD topologies:
  • Efficient LP solution for optimal traffic placement
  • Tune headroom dial to avoid congestion (but as little

toward MinMax as possible)

slide-117
SLIDE 117

System Design

  • Simple, centralized design
slide-118
SLIDE 118

System Design

  • Simple, centralized design

But measure what?

slide-119
SLIDE 119

Measurements

  • Only need measurements per aggregate, not per flow!
  • Need to know enough to figure out both long and

short-term variability for each aggregate

  • Sampling traffic level 10 times per second is enough

to capture short-term variability due to TCP’s congestion control…

  • …since RTTs in the ISP are long (order of 100ms)
  • Sampling 10 times per second well within reach of

recent hardware [DevoFlow SIGCOMM 2011]

slide-120
SLIDE 120

What about prioritization?

  • If you can you should definitely prioritize delay-

sensitive traffic

  • but identifying this traffic in the ISP setting may not

be trivial, since no single operator controls all sources

  • also, what about bandwidth-hungry low-latency

traffic (e.g., VR)