On Controller Performance in Software-Defined Networks Author: Amin Tootoonchian, Sergey Gorbunov,...

Post on 12-Jan-2016

216 views 0 download

Tags:

Transcript of On Controller Performance in Software-Defined Networks Author: Amin Tootoonchian, Sergey Gorbunov,...

On Controller Performance in Software-Defined NetworksAuthor: Amin Tootoonchian, Sergey Gorbunov, Yashar Ganjali, Martin Casado and Rob Sherwood

Publisher:

Presenter: Yu Hao, Tseng

Date: 2013/05/29

Outline

• Introduction• NOX-MT• Experiment Setup• Controller Throughput• Controller Response Time• Cbench

Introduction

• How fast can the controller respond to data path requests?• How many data path requests can it handle per second?• For example : • NOX handles around 30k flow initiation events per second while

maintaining a sub-10ms flow install time [14].• Kandula et al. [9] found that a 1500-server cluster has a median

flow arrival rate of 100k flows per second.• Benson et al. [2] show that a network with 100 switches can have

spikes of 10M flows arrivals per second in the worst case.

• We present NOX-MT a publicly-available multithreaded successor of NOX.

3

NOX-MT

• NOX is not optimized for performance and is single-threaded.• The techniques to optimize NOX are including : • I/O batching to minimize the overhead of I/O• Port the I/O handling harness to Boost Asynchronous I/O (ASIO)

library• Use a fast multiprocessor-aware malloc implementation

• NOX-MT is far from perfect.• Heavy use of dynamic memory allocation and redundant memory

copies on a per-request basis• Using locking were robust wait-free alternatives exist

Experiment Setup

• Cbench emulates a configurable number of OpenFlow switches that all communicate with a single OpenFlow controller.

• Each emulated switch sends a configurable number of new flow messages to the OpenFlow controller, waits for the appropriate flow setup responses, and records the difference in time between request and response.

• Cbench supports two modes of operation : • Latency• Throughput

Controller Throughput

• Maximum throughput

Controller Throughput (Cont.)

• Relation with the number of active switches

Controller Throughput (Cont.)

• Relation with the load level

Controller Throughput (Cont.)

• Effect of write-intensive workload

Controller Response Time

• Minimum response time• Average response times of all controllers are between 100 and 150

microseconds.

• Maximum response time

Controller Response Time (Cont.)• Relation with the load level

Controller Response Time (Cont.)• Relation with the number of active switches

Cbench

Cbench (Cont.)

Cbench (Cont.)

• http://www.openflow.org/wk/index.php/Controller_Performance_Comparisons

Cbench (Cont.)responses/s min max avg stdev

NOX 42620.00 232301.74 203830.60 57337.18

POX 7764.75 7939.25 7875.25 54.54