ecse-6660 traffic engineering

35
Shivkumar Kalyanaraman Rensselaer Polytechnic Institute 1 ECSE-6660 Traffic Engineering http://www.pde.rpi.edu/ Or http://www.ecse.rpi.edu/Homepages/shivkuma/ Shivkumar Kalyanaraman Rensselaer Polytechnic Institute [email protected]

Upload: umberto-potter

Post on 04-Jan-2016

42 views

Category:

Documents


0 download

DESCRIPTION

ECSE-6660 Traffic Engineering. http://www.pde.rpi.edu/ Or http://www.ecse.rpi.edu/Homepages/shivkuma/ Shivkumar Kalyanaraman Rensselaer Polytechnic Institute [email protected]. Introductions:course description & calendar Answers to frequently asked questions Prerequisites - PowerPoint PPT Presentation

TRANSCRIPT

Page 1: ECSE-6660 Traffic Engineering

Shivkumar KalyanaramanRensselaer Polytechnic Institute

1

ECSE-6660Traffic Engineering

http://www.pde.rpi.edu/

Or

http://www.ecse.rpi.edu/Homepages/shivkuma/

Shivkumar Kalyanaraman

Rensselaer Polytechnic Institute

[email protected]

Page 2: ECSE-6660 Traffic Engineering

Shivkumar KalyanaramanRensselaer Polytechnic Institute

2

Introductions:course description & calendar

Answers to frequently asked questions

Prerequisites

Informal Quiz

Overview

Page 3: ECSE-6660 Traffic Engineering

Shivkumar KalyanaramanRensselaer Polytechnic Institute

3

Without Traffic Engineering

Cars:

SFO-LAX

LAX-SFO

SAN-SMF

SMF-SAN

No Traffic Engineering

analogy

to Human Drivers

Page 4: ECSE-6660 Traffic Engineering

Shivkumar KalyanaramanRensselaer Polytechnic Institute

4

Traffic Engineering: Analogy

Cars:

SFO-LAX

LAX-SFO

SAN-SMF

SMF-SAN

Traffic Engineering

analogy

Page 5: ECSE-6660 Traffic Engineering

Shivkumar KalyanaramanRensselaer Polytechnic Institute

5

Motivation TE: “…that aspect of Internet network engineering

dealing with the issue of performance evaluation and performance optimization of operational IP networks …’’

90’s approach to TE was by changing link weights in IGP (OSPF, IS-IS) or EGP (BGP-4) Performance limited by the shortest/policy path nature Assumptions: Quasi-static traffic, knowledge of

demand matrix

A

B

C

D

1

1 2

1

E

2

Can not do this with OSPFA

B

C

D

1

1 2

1

E

2

Links AB and BD are overloaded

A

B

C

D

1

1 2

4

E

2

Links AC and CD are overloaded

Page 6: ECSE-6660 Traffic Engineering

Shivkumar KalyanaramanRensselaer Polytechnic Institute

6

Fundamental Requirements Need the ability to:

Map traffic to an LSP Monitor and measure traffic Specify explicit path of an LSP

Partial explicit routeFull explicit route

Characterize an LSPBandwidthPriority/ PreemptionAffinity (Link Colors)

Reroute or select an alternate LSP

Page 7: ECSE-6660 Traffic Engineering

Shivkumar KalyanaramanRensselaer Polytechnic Institute

7

Traffic Engineering Steps

First, determine how to lay out traffic on the physical topologyMeasure traffic (e.g., city-pair-wise)Crunch numbers

Second, do something to convince the packets to follow your plan

Page 8: ECSE-6660 Traffic Engineering

Shivkumar KalyanaramanRensselaer Polytechnic Institute

8

Traffic Engineering Options

BGP – play with communities, filtering IGP – play with metrics

Linear programming can help Source routing

ATMMPLS

Page 9: ECSE-6660 Traffic Engineering

Shivkumar KalyanaramanRensselaer Polytechnic Institute

9

Routing Solution to Traffic Engineering

Construct routes for traffic streams within a service provider in such a way, as to avoid causing some parts of the provider’s network to be over-utilized, while others parts remain under-utilized (I.e. load-balance)

R2

R3

R1

Page 10: ECSE-6660 Traffic Engineering

Shivkumar KalyanaramanRensselaer Polytechnic Institute

10

Linear Programming

TE among N cities: N² city pairs Set up N² by N² matrix for LP Matrix multiplication/inversion is O(M³) for M x M

matrix; simplex is O(M³) matrix operations So, LP problem is O(N12) Also can’t deal with “looped routes”

Page 11: ECSE-6660 Traffic Engineering

Shivkumar KalyanaramanRensselaer Polytechnic Institute

11

The “Overlay” Solution

Routing at layer 2 (ATM or FR) is used for traffic engineering Analogy to direct highways between SFO-LAX & SAN-SMF.

Nobody enters the highway in between.

L3L3

L3L3

L3L3

L3L3

L3L3

L3L3

L3L3

L2L2

L2L2

L2L2

L2L2

L2L2

L2L2

L3L3

L3L3

L3L3

L3L3 L3L3

Physical Logical

Page 12: ECSE-6660 Traffic Engineering

Shivkumar KalyanaramanRensselaer Polytechnic Institute

12

Traffic engineering with overlay

R2

R3

R1

PVC for R2 to R3 trafficPVC for R2 to R3 traffic

PVC for R1 to R3 trafficPVC for R1 to R3 traffic

Page 13: ECSE-6660 Traffic Engineering

Shivkumar KalyanaramanRensselaer Polytechnic Institute

13

Connectionless Routing Today Internet connectionless routing protocols

originally designed to find one route Eg: shortest route or policy route)

Connectionless routing relies upon a global consistency criterion (GCC) The GCC is constructed using globally known

identifiers (Eg: ASNs, link weights)

Page 14: ECSE-6660 Traffic Engineering

Shivkumar KalyanaramanRensselaer Polytechnic Institute

14

DV: Global Consistency Criterion The subset of a shortest path is also the shortest path between the two intermediate nodes. If the shortest path from node i to node j, with distance D(i,j) passes through neighbor k, with link

cost c(i,k), then: D(i,j) = c(i,k) + D(k,j)

D(i,*) is a distance vector at node i.

i

k

jc(i,k)

D(k,j)

Page 15: ECSE-6660 Traffic Engineering

Shivkumar KalyanaramanRensselaer Polytechnic Institute

15

Link State (LS): Global Consistency Criterion

The link state (Dijkstra) approach is iterative, but it pivots around destinations j, and their predecessors k = p(j) Alternative version of the consistency condition:

D(i,j) = D(i,k) + c(k,j)

Each node i collects all link states c(*,*) first and runs the complete Dijkstra algorithm locally.

i

k

jc(k

,j)

D(i,k)

Page 16: ECSE-6660 Traffic Engineering

Shivkumar KalyanaramanRensselaer Polytechnic Institute

16

Path-Vector: BGP’s Consistency Criterion

AS 4AS 3AS 2AS 1135.207.0.0/16

135.207.0.0/16ASPATH = 3 2 1

IP Packet Dest =135.207.44.66

Policy-based routing:

Arbitrary preference among a menu of available routes (based upon routes’ attributes)

Acknowledgement: Based upon Dr. Tim Griffin’s SIGCOMM Tutorial Slides

Consistency: If AS2 announces a route, it is actively using

the route, and will honor forwarding requests on that route

Page 17: ECSE-6660 Traffic Engineering

Shivkumar KalyanaramanRensselaer Polytechnic Institute

17

Limitations of Today’s Connectionless TE

Traffic mapping coupled with route availabilityChanging parameters changes routes AND

changes the traffic mapped to the routes

Priority rules only: LOCAL-PREF, MED, longest-prefix match Cannot split traffic to same destination among

two paths

Page 18: ECSE-6660 Traffic Engineering

Shivkumar KalyanaramanRensselaer Polytechnic Institute

18

Signaled Approach (eg: MPLS) Nice features:

In MPLS, choice of a route (and its setup) is orthogonal to the problem of traffic mapping onto the route

Signaling maps global IDs (addresses, path-specification) to local IDs (labels)

Nice label stacking, tunneling features

Page 19: ECSE-6660 Traffic Engineering

Shivkumar KalyanaramanRensselaer Polytechnic Institute

19

Label-Switched Forwarding

Miami

Seattle

SanFrancisco(Ingress)

New York(Egress)

San Francisco prepends MPLS header to the IP packet MPLS label is swapped at each hop along the LSP Forwarding is done based on a label table

1321

5

120

IP 1321

IP 120

IP 0

IPLabe

l

Page 20: ECSE-6660 Traffic Engineering

Shivkumar KalyanaramanRensselaer Polytechnic Institute

20

What Does MPLS Offer?

TunnelsDrop a packet in, and out it comes at the other

end without being IP routed Explicit (source) routing (circuits) Label stack

2-label stack: “outer” label defines the tunnel; “inner” label de-multiplexes

Layer 2 independence

Page 21: ECSE-6660 Traffic Engineering

Shivkumar KalyanaramanRensselaer Polytechnic Institute

21

Why Tunnels?

Can’t IP routeNon-IP packets IP packets with private addresses

Don’t want to IP route “BGP-free” core Don’t like IP multicast model

Page 22: ECSE-6660 Traffic Engineering

Shivkumar KalyanaramanRensselaer Polytechnic Institute

22

Tunnel Comparison

MPLS (LDP) tunnels Small header Label stacking Signaling for demux Automagic tunnels Tracks IP routing Harder to spoof No data security

IP tunnels Big header No stacking (*) No signaling (yet) Configured tunnels Duh! Spoofable IPSec

Page 23: ECSE-6660 Traffic Engineering

Shivkumar KalyanaramanRensselaer Polytechnic Institute

23

Bottom Line on Tunnels

Don’t need MPLS for tunnels But MPLS tunnels have some nice properties Decision (should be) based on cost of deploying

new protocol vs. benefits

Page 24: ECSE-6660 Traffic Engineering

Shivkumar KalyanaramanRensselaer Polytechnic Institute

24

MPLS Signaling and Forwarding Model

Miami

Seattle

SanFrancisco(Ingress)

New York(Egress)

MPLS label is swapped at each hop along the LSP

Labels = LOCAL IDENTIFIERS … Signaling maps global identifiers (addresses,

path spec) to local identifiers

1321

5

120

IP 1321

IP 120

IP 0

IPLabe

l

Page 25: ECSE-6660 Traffic Engineering

Shivkumar KalyanaramanRensselaer Polytechnic Institute

25

Limitations of Signaled TE Approach

Requires extensive upgrades in the network Hard to inter-network beyond area boundaries Very hard to go beyond AS boundaries

Even within the same organization/ISP !Note: large ISPs (eg: ATT) have several AS’es

Impossible for inter-domain routing across multiple organizations Inter-domain TE has to be connectionless

Page 26: ECSE-6660 Traffic Engineering

Shivkumar KalyanaramanRensselaer Polytechnic Institute

26

Traffic Engineering w/o Signaling?

Fine-grained Traffic Engineering needs some form of source routing

Specific incremental changes much easier with source routing Change a single city-pair flowReacting to a link failure

Can we do source-routing efficiently in connectionless protocols?

Page 27: ECSE-6660 Traffic Engineering

Shivkumar KalyanaramanRensselaer Polytechnic Institute

27

Idea!

Instead of using local path identifiers (Labels in MPLS), use global path identifiers

10

Miami

Seattle

9

27

SanFrancisco(Ingress)

New York(Egress)

18

1

5

4

3

5

IP

IP PathId

4

IP 36

IP 27

IP 0

Routers have capability to compute multiple paths using map from IGP (OSPF/IS-IS)

Page 28: ECSE-6660 Traffic Engineering

Shivkumar KalyanaramanRensselaer Polytechnic Institute

28

Global Path Identifiers Instead of using local path identifiers (Labels in

MPLS), we propose the use of global path identifiers

10

Miami

Seattle

9

27

SanFrancisco(Ingress)

New York(Egress)

18

1

5

4

3

5

IP

IP PathId

4

IP 36

IP 27

IP 0

Page 29: ECSE-6660 Traffic Engineering

Shivkumar KalyanaramanRensselaer Polytechnic Institute

29

Global Path Identifier

ik j

m-11

2w1

w2

wm

IP PathId(i,j)

IP PathId(1,j)

Central idea: Swap global pathids instead of local labels!

Page 30: ECSE-6660 Traffic Engineering

Shivkumar KalyanaramanRensselaer Polytechnic Institute

30

Global Path Identifier (contd)

Path = {i, w1, 1, w2, 2, …, wk, k, wk+1, … , wm, j} Sequence of globally known node IDs & Link weights Global Path ID is a hash of this sequence => locally computable without the need for signaling!

Potential hash functions: [j, { h(1) + h(2) + …+h(k)+ … +h(m-1) } mod 2b ]: node ID sum MD5 one-way hash, XOR, 32-bit CRC etc… We propose the use of MD5 hashing of the subsequence of nodeIDs followed by a CRC-32 to get a 32-bit hash value

Very low collision (I.e. non-uniqueness) probability

i

k

j

m-11

2w1

w2

wm

Path su

ffix

Page 31: ECSE-6660 Traffic Engineering

Shivkumar KalyanaramanRensselaer Polytechnic Institute

31

Abstract Forwarding Paradigm Forwarding table (Eg; at Node k):

[Destination Prefix, ] [Next-Hop, ] [j, ] [k+1, ]

i

k

j

m-1

1

2w1

w2

wm

Path su

ffix

Incoming Packet Hdr: Destination address (j) & PathID = H{k, k+1, … , m-1} Outgoing Packet Hdr: [j, PathID = H{k+1, … , m-1} ]

Longest prefix match + exact label match + label swap!PathID mismatch => map to shortest (default) path, and set PathID = 0No signaling because of globally meaningful pathIDs!

PathID SuffixPathID

H{k, k+1, … , m-1} H{k+1, … , m-1}

Page 32: ECSE-6660 Traffic Engineering

Shivkumar KalyanaramanRensselaer Polytechnic Institute

32

BANANAS TE: Explicit, Multi-Path Forwarding…

Explicit Source-Directed Routing: Not limited by the shortest path nature of IGP Different PathIds => different next-hops (multi-paths) No signaling required to set-up the paths

Traffic splitting is decoupled from route computation

10

Miami

Seattle

9

27

SanFrancisco(Ingress)

New York(Egress)

18

1

5

4

3

5

IP

IP PathId

4IP 5

IP 0

IP 36IP 27

IP 0

Page 33: ECSE-6660 Traffic Engineering

Shivkumar KalyanaramanRensselaer Polytechnic Institute

33

BANANAS TE: Partial Deployment Only “red” routers are upgraded

Link State Advertisements (LSAs) may indicate (with 1 bit) which routers are upgraded

Non-upgraded routers forward everything on the shortest path (default path): forming a “virtual hop”

10

Miami

Seattle

9SanFrancisco(Ingress)

New York(Egress)

28

1

5

4

30

1

IP

4IP 5

IP 0

IP 27

IP 0

27

1

3

2

IP 27

IP 27

X

Page 34: ECSE-6660 Traffic Engineering

Shivkumar KalyanaramanRensselaer Polytechnic Institute

34

Multiplicity Paradigm Unlike telephony, data networking can get statistical multiplexing

gains from simultaneously using: Multiple transmission modes (802.11a/b, 3G etc) Multiple exits (USB, Firewire, Ethernet, modem) Multiple paths (routes)

Lightweight distributed QoS on each path Can then quickly meet the performance thresholds of high-quality

multimedia apps!

EthernetWiFi802.11a

USB/802.11a/b

Firewire/802.11a/b

Phone modem

Page 35: ECSE-6660 Traffic Engineering

Shivkumar KalyanaramanRensselaer Polytechnic Institute

35

Eg: Multipath MPEG using Multi-band 802.11a/b Community Wireless Networks

“Fast” path

I

“Slow” path

P