ecse-6660 traffic engineering traffic engineering ... based upon dr. tim griffin’s sigcomm...

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: phungngoc

Post on 24-May-2018

220 views

Category:

Documents


1 download

TRANSCRIPT

Shivkumar KalyanaramanRensselaer Polytechnic Institute

1

ECSE-6660Traffic Engineering

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

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

Shivkumar KalyanaramanRensselaer Polytechnic Institute

[email protected]

Shivkumar KalyanaramanRensselaer Polytechnic Institute

2

Overview

Introductions:course description & calendar

Answers to frequently asked questions

Prerequisites

Informal Quiz

Shivkumar KalyanaramanRensselaer Polytechnic Institute

3

Without Traffic Engineering

Cars:SFO-LAX

LAX-SFO

SAN-SMF

SMF-SAN

No Traffic Engineering

analogyto Human

Drivers

Shivkumar KalyanaramanRensselaer Polytechnic Institute

4

Traffic Engineering: Analogy

Cars:SFO-LAX

LAX-SFO

SAN-SMF

SMF-SAN

Traffic Engineering

analogy

Shivkumar KalyanaramanRensselaer Polytechnic Institute

5

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 natureAssumptions: 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

Motivation

Shivkumar KalyanaramanRensselaer Polytechnic Institute

6

Fundamental RequirementsNeed the ability to:

Map traffic to an LSPMonitor and measure trafficSpecify explicit path of an LSP

Partial explicit routeFull explicit route

Characterize an LSPBandwidthPriority/ PreemptionAffinity (Link Colors)

Reroute or select an alternate LSP

Shivkumar KalyanaramanRensselaer Polytechnic Institute

7

Traffic Engineering StepsFirst, determine how to lay out traffic on the physical topology

Measure traffic (e.g., city-pair-wise)Crunch numbers

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

Shivkumar KalyanaramanRensselaer Polytechnic Institute

8

Traffic Engineering OptionsBGP – play with communities, filteringIGP – play with metrics

Linear programming can helpSource routing

ATMMPLS

Shivkumar KalyanaramanRensselaer Polytechnic Institute

9

Routing Solution to Traffic Engineering

R2

R3

R1

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)

Shivkumar KalyanaramanRensselaer Polytechnic Institute

10

Linear ProgrammingTE among N cities: N² city pairsSet up N² by N² matrix for LPMatrix multiplication/inversion is O(M³) for M x M matrix; simplex is O(M³) matrix operationsSo, LP problem is O(N12)Also can’t deal with “looped routes”

Shivkumar KalyanaramanRensselaer Polytechnic Institute

11

The “Overlay” Solution

L3L3

L3L3

L3L3

L3L3

L3L3

L3L3

L3L3

L2L2

L2L2

L2L2

L2L2

L2L2

L2L2

L3L3

L3L3

L3L3

L3L3 L3L3Physical Logical

Routing at layer 2 (ATM or FR) is used for traffic engineeringAnalogy to direct highways between SFO-LAX & SAN-SMF. Nobody enters the highway in between.

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

Shivkumar KalyanaramanRensselaer Polytechnic Institute

13

Connectionless Routing TodayInternet 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)

Shivkumar KalyanaramanRensselaer Polytechnic Institute

14

DV: Global Consistency CriterionThe 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.

ik

jc(i,k) D(k,j)

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.

ik

jc(k

,j)D(i,k)

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

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

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 routeSignaling maps global IDs (addresses, path-specification) to local IDs (labels)Nice label stacking, tunneling features

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 LSPForwarding is done based on a label table

13215

120

IP 1321

IP 120

IP 0

IP Label

Shivkumar KalyanaramanRensselaer Polytechnic Institute

20

What Does MPLS Offer?Tunnels

Drop 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

Shivkumar KalyanaramanRensselaer Polytechnic Institute

21

Why Tunnels?Can’t IP route

Non-IP packetsIP packets with private addresses

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

Shivkumar KalyanaramanRensselaer Polytechnic Institute

22

Tunnel ComparisonMPLS (LDP) tunnels

Small headerLabel stackingSignaling for demuxAutomagic tunnelsTracks IP routingHarder to spoofNo data security

IP tunnelsBig headerNo stacking (*)No signaling (yet)Configured tunnelsDuh!SpoofableIPSec

Shivkumar KalyanaramanRensselaer Polytechnic Institute

23

Bottom Line on TunnelsDon’t need MPLS for tunnelsBut MPLS tunnels have some nice propertiesDecision (should be) based on cost of deploying new protocol vs. benefits

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 LSPLabels = LOCAL IDENTIFIERS …

Signaling maps global identifiers (addresses, path spec) to local identifiers

13215

120

IP 1321

IP 120

IP 0

IP Label

Shivkumar KalyanaramanRensselaer Polytechnic Institute

25

Limitations of Signaled TE ApproachRequires extensive upgrades in the networkHard to inter-network beyond area boundariesVery 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

Shivkumar KalyanaramanRensselaer Polytechnic Institute

26

Traffic Engineering w/o Signaling?Fine-grained Traffic Engineering needs some form of source routingSpecific 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?

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)

Shivkumar KalyanaramanRensselaer Polytechnic Institute

28

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

Global Path Identifiers

Shivkumar KalyanaramanRensselaer Polytechnic Institute

29

Global Path Identifier

ik j

m-11

2w1

w2wm

IP PathId(i,j)

IP PathId(1,j)

Central idea: Swap global pathids instead of local labels!

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 weightsGlobal 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 sumMD5 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 valueVery low collision (I.e. non-uniqueness) probability

i

k

jm-1

1

2w1

w2wm

Path suffix

Shivkumar KalyanaramanRensselaer Polytechnic Institute

31

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

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

i

k

j

m-11

2w1

w2wm

Path suffix

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 SuffixPathIDH{k, k+1, … , m-1} H{k+1, … , m-1}

Shivkumar KalyanaramanRensselaer Polytechnic Institute

32

BANANAS TE: Explicit, Multi-Path Forwarding…

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

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

Shivkumar KalyanaramanRensselaer Polytechnic Institute

33

BANANAS TE: Partial DeploymentOnly “red” routers are upgraded

Link State Advertisements (LSAs) may indicate (with 1 bit) which routers are upgradedNon-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

32

IP 27

IP 27

X

Shivkumar KalyanaramanRensselaer Polytechnic Institute

34

Multiplicity Paradigm

EthernetWiFi802.11a

USB/802.11a/b

Firewire/802.11a/b

Phone modem

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 pathCan then quickly meet the performance thresholds of high-quality multimedia apps!

Shivkumar KalyanaramanRensselaer Polytechnic Institute

35

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

“Fast” path

I

“Slow” path

P