enabling sdn in old school networks with software-controlled routing protocols

33

Upload: open-networking-summits

Post on 27-Jul-2015

62 views

Category:

Technology


0 download

TRANSCRIPT

Page 3: Enabling SDN in old school networks with Software-Controlled Routing Protocols

Enabling SDN in old school networks with Software-Controlled Routing Protocols

ONS research track

Laurent Vanbever

March, 4 2014

Princeton University

Joint work with

Stefano Vissicchio (University of Louvain)

Page 4: Enabling SDN in old school networks with Software-Controlled Routing Protocols

How do you go from a traditional network …a SDN-enabled one?

Traditional

Page 5: Enabling SDN in old school networks with Software-Controlled Routing Protocols

SDN-enabled

How do you go from a traditional network to a SDN-enabled one?

Traditional

Page 6: Enabling SDN in old school networks with Software-Controlled Routing Protocols

Well… not easily

Deploying SDN requires to upgrade network …

devices

management systems

operators

challenging, time-consuming and therefore costly

Page 7: Enabling SDN in old school networks with Software-Controlled Routing Protocols

Wouldn’t it be great to manage

an existing network “à la SDN”?

Page 8: Enabling SDN in old school networks with Software-Controlled Routing Protocols

Wouldn’t it be great to manage

an existing network “à la SDN”?

what does it mean?

Page 9: Enabling SDN in old school networks with Software-Controlled Routing Protocols

Cisco Juniper Alcatel

Control-Plane

Data-Plane

Control-Plane

Data-Plane

Control-Plane

Data-Plane

Cisco IOS Juniper JunOS Alcatel TimOS

Instead of configuring your existing network

using configuration “languages”…

Page 10: Enabling SDN in old school networks with Software-Controlled Routing Protocols

Cisco Juniper Alcatel

Control-Plane

Data-Plane

Control-Plane

Data-Plane

Control-Plane

Data-Plane

SDN Controller

Forwarding entries

(Floodlight, OpenDaylight,…)

… program it using your favorite SDN controller!

Page 11: Enabling SDN in old school networks with Software-Controlled Routing Protocols

Cisco Juniper Alcatel

Control-Plane

Data-Plane

Control-Plane

Data-Plane

Control-Plane

Data-Plane

SDN Controller

How can a SDN controller program

forwarding entries in a router?

? ? ?

Page 12: Enabling SDN in old school networks with Software-Controlled Routing Protocols

It uses an API that any router can understand (hint: not OpenFlow)

Cisco Juniper Alcatel

Control-Plane

Data-Plane

Control-Plane

Data-Plane

Control-Plane

Data-Plane

SDN Controller

? ? ?

Page 13: Enabling SDN in old school networks with Software-Controlled Routing Protocols

Routing protocols are good candidates for such an API

e.g., shortest-path routing

nearly all routers out there speak OSPF

all routers must speak the same language

Routing protocols…

messages are standardized

behaviors are well-defined and understood

implementations are widely available

Page 14: Enabling SDN in old school networks with Software-Controlled Routing Protocols

How does it work?

Page 15: Enabling SDN in old school networks with Software-Controlled Routing Protocols

Forwarding

Paths

RoutingMessages

MPLS

OSPF

BGP

A routing protocol takes routing messages as input

and computes forwarding paths as output

Page 16: Enabling SDN in old school networks with Software-Controlled Routing Protocols

h(x)

g(x)

f(x)Forwarding

Paths

RoutingMessages

A routing protocol is therefore a function

from routing messages to forwarding paths

Page 17: Enabling SDN in old school networks with Software-Controlled Routing Protocols

Forwarding

Paths

SDN controller output

h(x)

g(x)

f(x)RoutingMessages

Forwarding paths are produced

by the SDN controller

Known

Page 18: Enabling SDN in old school networks with Software-Controlled Routing Protocols

RoutingMessages

Forwarding

Paths

Known

(Dijkstra, BGP Decision Process…)

Functions are given by the routing protocol specification

h(x)

g(x)

f(x)

Page 19: Enabling SDN in old school networks with Software-Controlled Routing Protocols

Inverse functions

Forwarding

Paths

RoutingMessages

Given a path and a function, our framework computes

corresponding routing messages by inverting the function

h(x)

g(x)

f(x)

Page 20: Enabling SDN in old school networks with Software-Controlled Routing Protocols

IGP

BGP

Input

Network topology

Received routes

Type

Dijkstra

Decision process

Algorithm

Link-State

Path-Vector

The type of input to be computed depends on

the routing protocol(s) running in the network

Page 21: Enabling SDN in old school networks with Software-Controlled Routing Protocols

IGP

BGP

Input

Network topology

Received routes

Type

Dijkstra

Decision process

Algorithm

Link-State

Path-Vector

The type of input to be computed depends on

the routing protocol(s) running in the network

Page 22: Enabling SDN in old school networks with Software-Controlled Routing Protocols

IGP

BGP

Input

Network topology

Received routes

Type

Dijkstra

Decision Process

Algorithm

Link-State

Path-Vector

Page 23: Enabling SDN in old school networks with Software-Controlled Routing Protocols

steer traffic on non-shortest paths

create ECMP paths (on a per-destination basis)

provision backup paths

SDN-controlled IGP enables to

in a centralized manner, on existing networks

SDN-controlled IGP enables advanced SDNish

TE functionalities, on top of a distributed protocol

Page 24: Enabling SDN in old school networks with Software-Controlled Routing Protocols

3

10

1

1

A B

C D

destinationsource

traffic flow

Consider this network where

a source sends traffic to 2 destinations

Page 25: Enabling SDN in old school networks with Software-Controlled Routing Protocols

3

10

1

1

A B

C D

desired

3

10

1

1

A B

C D

initial

As congestion appears on the (C,D) link, operatorsmight want to divert the orange flow to A

Page 26: Enabling SDN in old school networks with Software-Controlled Routing Protocols

3

10

1

1

A B

C D

impossible to achieve by reweighing the IGP links

desired

3

10

1

1

A B

C D

initial

Moving only the orange flow to A is impossible with an IGP as both destinations are connected to D

Page 27: Enabling SDN in old school networks with Software-Controlled Routing Protocols

3

1

1

A B

C D

virtual node

1

10

SDN-controlled IGP can move the orange flow by addinga virtual node announcing the orange destination

V1

Traffic sent to V1 by C is physically sent to A

Page 28: Enabling SDN in old school networks with Software-Controlled Routing Protocols

Theorem

A SDN-enabled IGP is powerful

A SDN-enabled IGP can make the routers use

any set of non-contradictory paths

Page 29: Enabling SDN in old school networks with Software-Controlled Routing Protocols

Theorem

A SDN-enabled IGP is powerful

A SDN-enabled IGP can make the routers use

any set of non-contradictory paths

Page 30: Enabling SDN in old school networks with Software-Controlled Routing Protocols

Theorem

A SDN-enabled IGP is powerful

any path is loop-free

paths are consistent

(e.g. [s1, a, b, d] and

[s2, b, a, d] are inconsistent)

(e.g., [s1, a, b, a, d] is not possible)

A SDN-enabled IGP can make the routers use

any set of non-contradictory paths

Page 31: Enabling SDN in old school networks with Software-Controlled Routing Protocols

Given a physical topology and a set of path requirements,

a linear program computes an optimized virtual topology

physical

topology

+

paths requirements Integer Linear Program

minimize topology size

[ RA, RB, RC, RD ]

ECMP( [ RX, RY, RZ ], [ RX, RW, RZ ])

[ RI, RJ, RK ], backup [ RI, RL, RK ]

Optimizer

virtual

topology

⇒⇒

Page 32: Enabling SDN in old school networks with Software-Controlled Routing Protocols

Simplify controller implementation

most of the heavy work is still done by the routers

Maintain operators’ mental model

good old protocols running, easier troubleshooting

Facilitate SDN deployment

SDN controller can program routers and SDN switches

SDN-controlled routing enables to realize parts

of the SDN promises today, on an existing network

Page 33: Enabling SDN in old school networks with Software-Controlled Routing Protocols

ONS research track

Laurent Vanbever

March, 4 2014

www.vanbever.eu

Enabling SDN in old school networks with Software-Controlled Routing Protocols