dynamic controller provisioning for software defined networksmfbari/files/c10s.pdf · overview of...

31
Dynamic Controller Provisioning in Software Defined Networks Presented By Md. Faizul Bari David R. Cheriton School of Computer science University of Waterloo with Arup Raton Roy, Shihabur Rahman Chowdhury, Qi Zhang, Mohamed Faten Zhani, Reaz Ahmed, and Raouf Boutaba,

Upload: others

Post on 11-Oct-2020

1 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Dynamic Controller Provisioning for Software Defined Networksmfbari/files/c10s.pdf · Overview of SDN • Motivation • Proposed management framework ... Networking Software Defined

Dynamic Controller Provisioning in Software Defined Networks Presented By Md. Faizul Bari David R. Cheriton School of Computer science University of Waterloo with Arup Raton Roy, Shihabur Rahman Chowdhury, Qi Zhang, Mohamed Faten Zhani, Reaz Ahmed, and Raouf Boutaba,

Page 2: Dynamic Controller Provisioning for Software Defined Networksmfbari/files/c10s.pdf · Overview of SDN • Motivation • Proposed management framework ... Networking Software Defined

Outline • Overview of SDN • Motivation • Proposed management framework • Problem formulation • Proposed heuristics • Simulation results • Conclusion & future work

09/27/2013 2/25

Page 3: Dynamic Controller Provisioning for Software Defined Networksmfbari/files/c10s.pdf · Overview of SDN • Motivation • Proposed management framework ... Networking Software Defined

Traditional vs. Software Define Networking

09/27/2013 3/25

Distributed Control

Data Plane

Control Plane

switch

Data Plane

Control Plane

switch

Data Plane

Control Plane

switch

Data Plane

Control Plane

switch

Data Plane

Control Plane

switch

Data Plane

switch

Data Plane

switch

Data Plane

switch

Data Plane

switch

Data Plane

switch

Control Plane (SDN Controller)

Centralized Control

Traditional Networking Software Defined Networking

OpenFlow

Page 4: Dynamic Controller Provisioning for Software Defined Networksmfbari/files/c10s.pdf · Overview of SDN • Motivation • Proposed management framework ... Networking Software Defined

SDN and OpenFlow

09/27/2013 4/25

OpenFlow Controller

Flow Table MAC src MAC dst IP Src IP Dst TCP

sport TCP dport Action

OpenFlow Firmware

OpenFlow Protocol (SSL/TCP)

Flow Table MAC src MAC dst IP Src IP Dst TCP

sport TCP dport Action

OpenFlow Firmware

Software Layer

Hardware Layer

port 3 port 2 port 1 port 3 port 2 port 1

x y

1 No matching rule

2 Flow setup request 3 Install flow rules

* * y * * * port 4

port 4

port 4

* * y * * * port 2

Flow setup time: time needed to set up the rules associated with a new flow in switches involved in the routing path.

Page 5: Dynamic Controller Provisioning for Software Defined Networksmfbari/files/c10s.pdf · Overview of SDN • Motivation • Proposed management framework ... Networking Software Defined

Outline • Overview of SDN • Motivation • Proposed management framework • Problem formulation • Proposed heuristics • Simulation results • Conclusion & future work

09/27/2013 5/25

Page 6: Dynamic Controller Provisioning for Software Defined Networksmfbari/files/c10s.pdf · Overview of SDN • Motivation • Proposed management framework ... Networking Software Defined

Traditional SDN with a Single Controller • A single controller controls all switches in the network • Advantages:

• Centralized control • Ease of management • Network-wide view

• Disadvantages: • High switch-to-controller latency • Limited processing capacity of controller Higher flow setup time

09/27/2013 6/25

Page 7: Dynamic Controller Provisioning for Software Defined Networksmfbari/files/c10s.pdf · Overview of SDN • Motivation • Proposed management framework ... Networking Software Defined

Multiple Controller • Each controller controls a subset of the switches • A switch communicates with just one controller • Advantages:

• Less processing capacity is required for each controller • Lower switch-to-controller latency

• Disadvantages: • Require state synchronization between controllers Large control traffic overhead • Static switch-to-controller assignment Overloaded controllers

09/27/2013 7/25

Zone 1 Zone 2 Zone 3

Ctrl 1 Ctrl 2 Ctrl 3

Page 8: Dynamic Controller Provisioning for Software Defined Networksmfbari/files/c10s.pdf · Overview of SDN • Motivation • Proposed management framework ... Networking Software Defined

Dynamic Controller Provisioning Problem (DCPP)

• Dynamically provision controllers based on • Changing network conditions (traffic dynamics) • Switch-to-controller latency requirement

• Goals • Dynamically decide the number of controllers and their locations • Minimize flow setup time and control traffic • Minimize switch-to-controller reassignments

09/27/2013 8/25

Page 9: Dynamic Controller Provisioning for Software Defined Networksmfbari/files/c10s.pdf · Overview of SDN • Motivation • Proposed management framework ... Networking Software Defined

Outline • Overview of SDN • Motivation • Proposed management framework • Problem formulation • Proposed heuristics • Simulation results • Conclusion & future work

09/27/2013 9/25

Page 10: Dynamic Controller Provisioning for Software Defined Networksmfbari/files/c10s.pdf · Overview of SDN • Motivation • Proposed management framework ... Networking Software Defined

Management Framework

09/27/2013 10/25

• Monitoring Module • Monitors controllers and collects

statistics about the traffic

• Reassignment Module • Decides the number of

controllers, their locations and the switch-to-controller assignment based on network conditions

• Provisioning Module • Provisions controllers and

assigns switches to them

Page 11: Dynamic Controller Provisioning for Software Defined Networksmfbari/files/c10s.pdf · Overview of SDN • Motivation • Proposed management framework ... Networking Software Defined

Outline • Overview of SDN • Motivation • Proposed management framework • Problem formulation • Proposed heuristics • Simulation results • Conclusion & future work

09/27/2013 11/25

Page 12: Dynamic Controller Provisioning for Software Defined Networksmfbari/files/c10s.pdf · Overview of SDN • Motivation • Proposed management framework ... Networking Software Defined

Minimize 𝜶𝜶𝑪𝑪𝒍𝒍 + 𝜷𝜷𝑪𝑪𝒑𝒑 + 𝜸𝜸𝑪𝑪𝒔𝒔 + 𝝀𝝀𝑪𝑪𝒓𝒓

Problem Formulation • DCPP can be formulated as an ILP • Objective function

• Where

• 𝑪𝑪𝒍𝒍 = Statistics collection cost • 𝑪𝑪𝒑𝒑 = Flow setup cost • 𝑪𝑪𝒔𝒔 = Synchronization cost • 𝑪𝑪𝒓𝒓 = Switch reassignment cost

• Constraints • Controller capacity constraint • Switch-to-controller delay constraint

09/27/2013 12/25

DCPP is NP-hard.

Page 13: Dynamic Controller Provisioning for Software Defined Networksmfbari/files/c10s.pdf · Overview of SDN • Motivation • Proposed management framework ... Networking Software Defined

Outline • Overview of SDN • Motivation • Proposed management framework • Problem formulation • Proposed heuristics • Simulation results • Conclusion & future work

09/27/2013 13/25

Page 14: Dynamic Controller Provisioning for Software Defined Networksmfbari/files/c10s.pdf · Overview of SDN • Motivation • Proposed management framework ... Networking Software Defined

Proposed Heuristics • We propose two heuristics to solve DCPP

• Greedy Knapsack based (DCP-GK) • Simulated Annealing based (DCP-SA)

• DCP-GK provides quick but inferior solutions • DCP-SA provides good solutions, but requires longer time

to find solutions

09/27/2013 14/25

Page 15: Dynamic Controller Provisioning for Software Defined Networksmfbari/files/c10s.pdf · Overview of SDN • Motivation • Proposed management framework ... Networking Software Defined

Greedy Knapsack Based (DCP-GK) • Each controller is modeled as a knapsack

• Capacity of the knapsack = number of flow-setups/sec

• Each switch is an object to be included in a knapsack • Weight = number of flow setup requests/sec • Profit = Inverse of switch to current controller’s distance

• Procedure 1. Repeat the following steps until either all switches are assigned

to a controller or the controller set is exhausts • Step 1: Pick the controller with minimum total distance from all

switches • Step 2: Use Greedy Knapsack approach to assign unassigned

switches to the controller (subject to delay constraint) 2. Randomly assign the remaining switches

09/27/2013 15/25

Page 16: Dynamic Controller Provisioning for Software Defined Networksmfbari/files/c10s.pdf · Overview of SDN • Motivation • Proposed management framework ... Networking Software Defined

Simulated Annealing Based (DCP-SA) • DCPP is solved in two phases:

• Phase 1: find a feasible assignment from the current one • For each overloaded controller

• Select the switch sending maximum requests to it • Assign the switch to the most underused controller if the delay and capacity

constraint are satisfied • Otherwise provision a new controller

• Repeat until capacity and delay constraints are satisfied for all controllers

• Phase 2: optimize the assignment by local search moves • Relocate switch • Swap switches • Activate a new controller • Merge controllers

09/27/2013 16/25

Page 17: Dynamic Controller Provisioning for Software Defined Networksmfbari/files/c10s.pdf · Overview of SDN • Motivation • Proposed management framework ... Networking Software Defined

Outline • Overview of SDN • Motivation • Proposed management framework • Problem formulation • Proposed heuristics • Simulation results • Conclusion & future work

09/27/2013 17/25

Page 18: Dynamic Controller Provisioning for Software Defined Networksmfbari/files/c10s.pdf · Overview of SDN • Motivation • Proposed management framework ... Networking Software Defined

Simulation Results • We consider 3 scenarios

• 1-CTRL: A single controller for all switches • N-CTRL: One controller for each switch • DCP: Dynamic controller provisioning

• Topology • 108 nodes, 306 links (from RocketFuel [1])

• Traffic • Based on a realistic traffic trace [2] • End-to-end TCP flows

09/27/2013 18/25

[1] N. Spring, R. Mahajan, and D. Wetherall. Measuring ISP topologies with rocketfuel. In SIGCOMM 2002, pages 133–145. [2] S. Gebert, R. Pries, D. Schlosser, and K. Heck. Internet access traffic measurement and analysis. In Traffic Monitoring and Analysis, volume 7189 of LNCS, pages 29–42. 2012.

1-C

TRL

N-C

TRL

DC

P

Page 19: Dynamic Controller Provisioning for Software Defined Networksmfbari/files/c10s.pdf · Overview of SDN • Motivation • Proposed management framework ... Networking Software Defined

Flow-setup Time CDF

09/27/2013 19/25

• N-CTRL provides minimal flow-setup time • DCP-GK and DCP-SA both are better than 1-CTRL • DCP-SA performs better than DCP-GK

Page 20: Dynamic Controller Provisioning for Software Defined Networksmfbari/files/c10s.pdf · Overview of SDN • Motivation • Proposed management framework ... Networking Software Defined

Number of Controllers and Flow-setup Time

09/27/2013 20/25

• DCP-SA required less controllers than DCP-GK • In case of 1-CTRL flow-setup time varies with traffic • DCP-GK and DCP-SA adapt to traffic changes

Page 21: Dynamic Controller Provisioning for Software Defined Networksmfbari/files/c10s.pdf · Overview of SDN • Motivation • Proposed management framework ... Networking Software Defined

Summary of Overhead and Flow Setup Time

09/27/2013 21/25

• N-CTRL has lowest flow-setup time, but largest overhead • 1-CTRL has lowest overhead, but highest flow-setup time • DCP-SA performs much better than DCP-GK

Page 22: Dynamic Controller Provisioning for Software Defined Networksmfbari/files/c10s.pdf · Overview of SDN • Motivation • Proposed management framework ... Networking Software Defined

Outline • Overview of SDN • Motivation • Proposed management framework • Problem formulation • Proposed heuristics • Simulation results • Conclusion & future work

09/27/2013 22/25

Page 23: Dynamic Controller Provisioning for Software Defined Networksmfbari/files/c10s.pdf · Overview of SDN • Motivation • Proposed management framework ... Networking Software Defined

Conclusion • We identified the Dynamic Controller Provisioning

Problem (DCPP) • Proposed a management framework for dynamically

deploying multiple controllers • Provided a mathematical formulation of DCPP as an ILP • Proposed two heuristic algorithms to solve DCPP • Identified the trade-off between flow-setup time and

communication overhead

09/27/2013 23/25

Page 24: Dynamic Controller Provisioning for Software Defined Networksmfbari/files/c10s.pdf · Overview of SDN • Motivation • Proposed management framework ... Networking Software Defined

Future Work • Improve the convergence time of DCP-SA

• Generate quick solutions using DCP-GK and then optimizing them using DCP-SA.

• Explore other heuristic algorithms • Perform experiments on a real testbed

• Distributed OpenFlow Testbed (DOT) [dothub.org]

09/27/2013 24/25

Page 25: Dynamic Controller Provisioning for Software Defined Networksmfbari/files/c10s.pdf · Overview of SDN • Motivation • Proposed management framework ... Networking Software Defined

Questions?

09/27/2013

Page 26: Dynamic Controller Provisioning for Software Defined Networksmfbari/files/c10s.pdf · Overview of SDN • Motivation • Proposed management framework ... Networking Software Defined

Background Slides

09/27/2013

Page 27: Dynamic Controller Provisioning for Software Defined Networksmfbari/files/c10s.pdf · Overview of SDN • Motivation • Proposed management framework ... Networking Software Defined

Path Setup Model

09/27/2013

Page 28: Dynamic Controller Provisioning for Software Defined Networksmfbari/files/c10s.pdf · Overview of SDN • Motivation • Proposed management framework ... Networking Software Defined

• Directed graph G(V,E) • Capacity on edges c : E → R+

4.1

2.3

1.6 2.9

2.6 1.7

1.0 1.5

2.2

2.1

2.6 8.5

3.4

3.2

Single-source Unsplittable Flow Problem

Page 29: Dynamic Controller Provisioning for Software Defined Networksmfbari/files/c10s.pdf · Overview of SDN • Motivation • Proposed management framework ... Networking Software Defined

4.1

2.3

1.6 2.9

2.6 1.7

1.0 1.5

2.2

2.1

2.6 8.5

3.4

3.2

• A single source s and k terminals ti with demands di ∈ R+ • A vertex may contain an arbitrary number of terminals

s

t 1

1.2

t 2

t 3 0.9

3.1

t 4

3.1 t 5

1.5

t 6 2.1

Single-source Unsplittable Flow Problem

Page 30: Dynamic Controller Provisioning for Software Defined Networksmfbari/files/c10s.pdf · Overview of SDN • Motivation • Proposed management framework ... Networking Software Defined

4.1

2.3

1.6 2.9

2.6 1.7

1.0 1.5

2.2

2.1

2.6 8.5

3.4

3.2

s

t 1

1.2

t 2

t 3 0.9

3.1

t 4

3.1 t 5

1.5

t 6 2.1

• Each commodity flows along a single path from s to ti (unsplittable) • Must satisfy edge capacity • There are many variabltions of this problem • In our case, we minimize the sum of edge weights

Single-source Unsplittable Flow Problem

Page 31: Dynamic Controller Provisioning for Software Defined Networksmfbari/files/c10s.pdf · Overview of SDN • Motivation • Proposed management framework ... Networking Software Defined

DCPP SSUFP

09/27/2013

S

Switches

Controllers

Terminals

Controller capacity used as edge capacity

Flow-setup & stat. collection costs are used as edge weights

Edges are allowed only when they satisfy latency constraint