an architectural evaluation of sdn controllers syed abdullah shah, jannet faiz, maham farooq, aamir...

17
An Architectural Evaluation of SDN Controllers Syed Abdullah Shah, Jannet Faiz, Maham Farooq, Aamir Shafi , Syed Akbar Mehdi National University of Sciences and Technology (NUST), Pakistan 1

Upload: deirdre-bridges

Post on 12-Jan-2016

216 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: An Architectural Evaluation of SDN Controllers Syed Abdullah Shah, Jannet Faiz, Maham Farooq, Aamir Shafi, Syed Akbar Mehdi National University of Sciences

1

An Architectural Evaluation of SDN Controllers

Syed Abdullah Shah, Jannet Faiz, Maham Farooq, Aamir Shafi, Syed Akbar Mehdi

National University of Sciences and Technology (NUST), Pakistan

Page 2: An Architectural Evaluation of SDN Controllers Syed Abdullah Shah, Jannet Faiz, Maham Farooq, Aamir Shafi, Syed Akbar Mehdi National University of Sciences

Introduction Several free and commercial SDN controllers are available

in the market today: – Free and open source:

• Floodlight, Beacon, Maestro, NOX, POX etc.– Commercial:

• Big Switch, NEC, Cisco etc.

Contributions of this paper: – Study software architectures of existing SDN controllers with

the aim to identify best practices– Conduct vendor-independent performance study through

several micro-benchmarks

2

Page 3: An Architectural Evaluation of SDN Controllers Syed Abdullah Shah, Jannet Faiz, Maham Farooq, Aamir Shafi, Syed Akbar Mehdi National University of Sciences

3

SDN Controllers Free and open source SDN controllers used in this

study:– NOX– Beacon– Maestro– Floodlight

Page 4: An Architectural Evaluation of SDN Controllers Syed Abdullah Shah, Jannet Faiz, Maham Farooq, Aamir Shafi, Syed Akbar Mehdi National University of Sciences

4

Key Design Features in Controllers Multicore Support:

– The controller uses parallelism to exploit all available cores/processors in the system

Switch Partitioning: – Distribution mechanism of connecting OF switches to controller

threads Packet Batching:

– Input: Amount of data read from the network (OF switch)– Output: Amount of data written to the network (OF switch)

Task Batching: – Distribution mechanism of incoming packets to controller threads

Our study reveals two design options for SDN controllers …

Page 5: An Architectural Evaluation of SDN Controllers Syed Abdullah Shah, Jannet Faiz, Maham Farooq, Aamir Shafi, Syed Akbar Mehdi National University of Sciences

Design Option # 1 (Push Design)

5

Used by:o NOXo Beacono Floodlight

Page 6: An Architectural Evaluation of SDN Controllers Syed Abdullah Shah, Jannet Faiz, Maham Farooq, Aamir Shafi, Syed Akbar Mehdi National University of Sciences

6

Design Option # 2 (Pull Design)

Used by:o Maestro

Page 7: An Architectural Evaluation of SDN Controllers Syed Abdullah Shah, Jannet Faiz, Maham Farooq, Aamir Shafi, Syed Akbar Mehdi National University of Sciences

7

Design Features in SDN ControllersDesign Option

Multicore Support

Switch Partitioning

Static I/O Batching

Task Batching

NOXOpt # 1 (push design)

Yes Static (round robin)

Static (fixed # of bytes)

No

FloodlightOpt # 1 (push design)

Yes (over-subscription)

Static Static No

BeaconOpt # 1 (push design)

Yes (over-subscription)

Static Static (also supports immediate mode)

No

MaestroOpt # 2 (pull design)

Yes Adaptive (shared queue)

Workload adaptive

Yes

Page 8: An Architectural Evaluation of SDN Controllers Syed Abdullah Shah, Jannet Faiz, Maham Farooq, Aamir Shafi, Syed Akbar Mehdi National University of Sciences

Performance Evaluation Testbed Throughput performance:

– How many OF requests a controller can handle per seconds?

– Metric for studying performance under heavy load

– Thread scalability– Switch scalability

Latency performance– How fast can a controller process a

single OF request?– Metric for studying performance of

single OF request

8

Afrit Cluster

OS GNU/Linux

# of Nodes 32

Brand HP DL 160 SE

Cores per Node

16

# of Cores 512

Memory 768 GB

# of GPUs 128 (Nvidia Tesla S1070)

Interconnect 10 GigE

Page 9: An Architectural Evaluation of SDN Controllers Syed Abdullah Shah, Jannet Faiz, Maham Farooq, Aamir Shafi, Syed Akbar Mehdi National University of Sciences

9

cbench – a tool to simulate OF switchesLearning Switch Application

packet-in packet-out or flow-mod

Page 10: An Architectural Evaluation of SDN Controllers Syed Abdullah Shah, Jannet Faiz, Maham Farooq, Aamir Shafi, Syed Akbar Mehdi National University of Sciences

10

Throughput Performance – Thread Scalability

Page 11: An Architectural Evaluation of SDN Controllers Syed Abdullah Shah, Jannet Faiz, Maham Farooq, Aamir Shafi, Syed Akbar Mehdi National University of Sciences

11

Throughput Performance – Switches Scalability

Page 12: An Architectural Evaluation of SDN Controllers Syed Abdullah Shah, Jannet Faiz, Maham Farooq, Aamir Shafi, Syed Akbar Mehdi National University of Sciences

12

Latency Performance

Page 13: An Architectural Evaluation of SDN Controllers Syed Abdullah Shah, Jannet Faiz, Maham Farooq, Aamir Shafi, Syed Akbar Mehdi National University of Sciences

13

Key Findings Controllers designed for high throughput (i.e. large

volumes of control traffic and heavy load) perform best with static switch partitioning and packet batching

Controllers designed for delay-sensitive control plane applications should use workload adaptive packet batching and task batching to reduce per-packet latencies: – Immediate mode (sending outgoing packets individually) helps

with the latency performance

Page 14: An Architectural Evaluation of SDN Controllers Syed Abdullah Shah, Jannet Faiz, Maham Farooq, Aamir Shafi, Syed Akbar Mehdi National University of Sciences

14

Proposed SDN Controller

To verify our key findings, we implemented these best-practices in a custom SDN controller called JAM

JAM has the following features: – Multi-threaded and scalable– Performance focused– Embedded (Developed for Cavium intelligent NICs)– OpenFlow v1.0 Compliant Controller– Developed in system independent C

Page 15: An Architectural Evaluation of SDN Controllers Syed Abdullah Shah, Jannet Faiz, Maham Farooq, Aamir Shafi, Syed Akbar Mehdi National University of Sciences

15

1 2 40

0.5

1

1.5

2

2.5

3

3.5

4

4.5

5

NOX-MT

Beacon

Maestro

Floodlight

JAM

App : Learning Switch32 switches , MACs= 100k

Flow

s (m

illio

n/se

c)

Number of threads

Throughput Mode – Thread Scalability

Page 16: An Architectural Evaluation of SDN Controllers Syed Abdullah Shah, Jannet Faiz, Maham Farooq, Aamir Shafi, Syed Akbar Mehdi National University of Sciences

16

JAM won Cavium’s 2012 Global Multicore Challenge …

Page 17: An Architectural Evaluation of SDN Controllers Syed Abdullah Shah, Jannet Faiz, Maham Farooq, Aamir Shafi, Syed Akbar Mehdi National University of Sciences

17

Summary This paper conducted a performance study of existing

SDN controller on the basis of: – Multicore Support– Switch Partitioning – Packet Batching– Task Batching

Findings: – Controllers designed for high throughput perform best with

static switch partitioning and packet batching– Controllers sensitive to latency should use workload adaptive

packet batching and task batching Thanks for your time and patience!