Evaluation of SDN Controller and Its Impact on Information-Centric - - PowerPoint PPT Presentation

evaluation of sdn controller and its impact on
SMART_READER_LITE
LIVE PREVIEW

Evaluation of SDN Controller and Its Impact on Information-Centric - - PowerPoint PPT Presentation

Evaluation of SDN Controller and Its Impact on Information-Centric Networking (ICN) Overview, Use Cases and Performance Evaluation Karim Md Monjurul 27-12-2018 School of Computer Science, Beijing Institute of Technology Table of contents 1.


slide-1
SLIDE 1

Evaluation of SDN Controller and Its Impact on Information-Centric Networking (ICN)

Overview, Use Cases and Performance Evaluation

Karim Md Monjurul 27-12-2018

School of Computer Science, Beijing Institute of Technology

slide-2
SLIDE 2

Table of contents

  • 1. Introduction
  • 2. Programming Languages
  • 3. Components and Use Cases of SDN Controllers
  • 4. Performance Evaluation of SDN Controller
  • 5. SDN Controller in an ICN Scenario
  • 6. Conclusion

1

slide-3
SLIDE 3

Introduction

slide-4
SLIDE 4

What is an SDN Controller

An SDN controller

  • is known to be the ”brain” of the network in a software-defined

networking environment

  • relays information to the switches/routers through Southbound

API (SBI) and the applications logic through Northbound API (NBI)

  • can be a single application that manages network/traffjc/packet

flows to enable intelligent and automated networking

  • also known as Network Operating System (NOS) that go beyond

managing flow control and does multiple operations of the existing network

2

slide-5
SLIDE 5

General Overview of SDN Architecture

POX Floodlight RYU OpenDaylight ONOS

Physical Devices

Network Monitoring Security Application Network Virtualization Traffic Control Mobility Management Load Balancing

POX Floodlight RYU OpenDaylight ONOS

East West bound API (AMQP, Raft, Zookeeper, etc.) Southbound API (OpenFlow, POF, PCEP, ForCES, etc.) Northbound API (REST, JSON, Franetic, etc.) Control Layer (Control Plane) Virtual Devices Infrastructure Layer (Data Plane) Application Layer (Management Plane) Access Points

3

slide-6
SLIDE 6

Visual Representation of an SDN Controller

www.slideshare.net/PetervanderVoort1/sdn-beyond-the-obvious-29656744 4

slide-7
SLIDE 7

Communication Flows between Controller and Switch

Start Host request to the OF switch OF switch check for the match field Apply the flow rules to the packet Generate Packet_In message Send Packet_In to the controller Controller check the packet header Create rules for Packet_In message Send the flow rules to the OF switch Generate Packet_Out message Match No Yes

. The eastbound and westbound API’s manage the distributed API’s

Topology discovery in Software Defined Network” IEEE Communication Survey and Tutorial 2017 Vol 19 5

slide-8
SLIDE 8

Programming Languages

slide-9
SLIDE 9

Programming Languages of SDN Controller (C and C++)

  • NOX was written using almost 32,000 lines of C++ codes
  • C++ based controllers performs better in the low-level

environment

  • Better synchronization with Faster Packet Processing Data Planes

like DPDK (Data Plane Development Kit) and Netmap (framework for fast packet I/O)

  • C++ was used to build the core module of a number of

controllers like Ethane, NOX, Rosemary, OpenMUL, DCFabric, Onix

6

slide-10
SLIDE 10

Programming Languages of SDN Controller (Java)

  • Java-based controllers are ahead of the competition when it

comes to Multithreading and Parallelism

  • Automatic Memory Management and Platform Independency

are two primary factors behind the selection of Java-based industrial-ready controllers

  • Two of the most widely adopted controllers developed in Java.

ONOS has been widely utilized in Wide Area Networks whereas OpenDaylight is more suitable for Data Centers and Optical Network

7

slide-11
SLIDE 11

Programming Languages of SDN Controller (Python and Others)

  • Python-based Controller offers faster Compilation and

Debugging

  • Offers Simplified Scripting and Stitching together other pieces of

code

  • Extensive range of other programming languages used to

develop SDN Controllers. Example: JavaScript, Ruby, Haskell, Go and Erlang

8

slide-12
SLIDE 12

Components and Use Cases of SDN Controllers

slide-13
SLIDE 13

Core Components of an SDN Controller

SDN APPLICATION PLANE

NORTHBOUND INTERFACE SYNC WITH THIRD-PARTY APPS SOUTHBOUND INTERFACE EAST-WEST BOUND INTERFACE

EAST-WEST BOUND INTERFACE

PEERING WITH OTHER CONTROLLER SDN CONTROL PLANE (CONTROLLER) ADDITIONAL MODULES

RECEIVED QUEUE PROCESSED QUEUE SENT QUEUE

CORE MODULES

LINK DISCOVERY TOPOLOGY MANAGER DECISION MAKING STORAGE MANAGER FLOW MANAGER DASHBOARD

SDN DATA PLANE

PHYSICAL SWITCH OPTICAL SWITCH WIRELESS SWITCH VIRTUAL SWITCH FIREWALL VIRTUALIZATION LOAD BALANCE FORWARDING

9

slide-14
SLIDE 14

NOX Architecture

10

slide-15
SLIDE 15

OpenDaylight Components

11

slide-16
SLIDE 16

ONOS System Components

12

slide-17
SLIDE 17

Feature comparison of Difgerent Controllers

13

slide-18
SLIDE 18

Application comparison of Difgerent Controllers

14

slide-19
SLIDE 19

SDN Controllers in Difgerent Sectors

15

slide-20
SLIDE 20

SDN Controller in Optical and Wide Area Network

East West API East West API

Database Maintenence Flow Mapping

Northbound API IP Domain GMPLS Domain Optical Domain

Load balancing and Forwarding Network Slicing Domain Orchestration End-to-end PCE

Application Plane Control Plane Data Plane

Metrics Collection Layer 2 Switch OF Agent Optical Switch GMPLS Switch Optical Controller IP Controller

Extended OpenFlow and PCEP Interface

Flow-Table Management Topology Management

Southbound API

Data Centers Campus Branches Remote Sites

Data Plane

East West API East West API

Database Maintenence PCE Management Load balancing and Forwarding End-to-end Provisioning Network Slicing Abstraction and Virtualization

Application Plane Northbound API Control Plane

Flow-Table Management Metrics Collection Topology Management

LTE / 5G Broadband MPLS

Southbound API

16

slide-21
SLIDE 21

Performance Evaluation of SDN Controller

slide-22
SLIDE 22

Why Evaluating the Performance of a Controller

  • To Maximize the Performance with Available Physical Resources
  • To Evaluate Controller-Switch Communication Efficiency
  • To Understand the Impact of Topology
  • To Measure the Reliability of Trustability of Controller

17

slide-23
SLIDE 23

Metrics to be Considered Evaluating Controllers

  • Throughput
  • Latency
  • CPU and Memory Utilization
  • Round Trip Time
  • And Many More

18

slide-24
SLIDE 24

Taxonomy of Evaluating a Controller

Taxonomy of Evaluating SDN Controller Operating Environment Network Topology Traffic Profile Compatibility Version Others Standalone Clustered Centralized Controllers Distributed Controllers Single Linear Tree Leaf-Spine Link Layer Types Transport Layer Types Application Layer Types

ARP and PING UDP TCP DNS, NFS, WEB FTP, TELNET

Controller Switch OpenFlow Protocol Observation Point Measurement Point Connectivity Repeatability

19

slide-25
SLIDE 25

Lists of Performance Testing Tool

  • CBench
  • PktBlaster
  • OFNet
  • Others: WCbench, OFCBenchmark, OFCProbe, HCProbe.

20

slide-26
SLIDE 26

What is CBench

  • 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 Controllers

  • Waits for the appropriate flow setup responses and records the

difference in time between request and response

  • It supports two modes of operation: Latency and Throughput

21

slide-27
SLIDE 27

Key Features of PktBlaster

  • Real world Network Emulation for SDN
  • Flow-mod and Packet-out based Performance Benchmarking
  • Supports both OpenFlow 1.0 and 1.3
  • User-friendly GUI
  • Comprehensive Test Results, Analysis and Comparison

22

slide-28
SLIDE 28

Key Features of OFNet

  • Function as a Network Emulator, Debugging Framework and

Controller Testing Tool

  • Tests can be done through Customized Topology
  • Features In-built Traffjc Generator
  • Have Additional Metrics other than Latency and Throughput. For

Example: Flow Generations Rate, Flow Failure Rate, vSwitch CPU utilization and Average RTT

23

slide-29
SLIDE 29

Architecture of Benchmarking Tool

OpenFlow-based Session through TCP or UDP or ARP Packet-Out Flows Packet-In Flows Controller's Modules TOPOLOGY STORAGE DECISION MAKING LINK DISCOVERY DATA CONTROL FLOW TABLE RECEIVED QUEUE PROCESSED QUEUE SENT QUEUE Emulated Hosts Terminal-based Control Emulated vSwitches CBench Framework OFNet Framework Monitoring Window Emulated Topology Traffic Generator PktBlaster Framework Gui-based Control Flow, Meter and Group Table Emulated vSwitches

24

slide-30
SLIDE 30

Benchmark Parameters

Tool Parameter Values CBench Number of Switch 2, 4, 8, 16 Number of Test Loops 20 Test Duration 300 sec MAC Addresses per Switch (Hosts) 64 Delay between Test Intervals 2 sec PktBlaster Number of Switch 2, 4, 8, 16 Test Duration 300 sec Number of Iterations 5 Traffic Profile TCP Ports per Switch (Hosts) 64 Flow Counts per Table 65536 (Default) Packet Length 64 bytes OFNet Number of Hosts 20 Number of Switchs 7 Desired Traffic Rate 100 flow/sec Flow measured by Packet-out & Flow-Mod Total Test Duration 300 sec

25

slide-31
SLIDE 31

Performance Comparison using CBench

26

slide-32
SLIDE 32

Performance Comparison using PktBlaster

27

slide-33
SLIDE 33

Performance Comparison using OFNet

28

slide-34
SLIDE 34

SDN Controller in an ICN Scenario

slide-35
SLIDE 35

Why We Need to Combine SDN and ICN

  • Automated and Intelligent Content Delivery
  • Content-based Mobility Support in 5G and Vehicular Network
  • In-network Caching based on Content Popularity
  • Content-based Traffjc Engineering

29

slide-36
SLIDE 36

Types of SDN-ICN Architecture

  • Centralized Architecture
  • Distributed Architecture
  • Clean-State Architecture
  • Overlay and Underlay Architecture

30

slide-37
SLIDE 37

SDN-ICN Architecture

Consumer 1 Consumer 3 Consumer 2 Producer 2 Producer 1 Producer 3 Controller NDN Node 1 NDN Node 2 NDN Node 3 automatic topology detection named-data forwarding cache management Controller Modules

SDN-ICN Architecture with Centralized Controller SDN-ICN Architecture with Distributed Controllers

Domain 2

DC1D1 SnD1 CnD1 S1D1 C1D1 C2D1 C3D1 S2D1 C4D1 C5D1 C6D1

Domain 1

DC2D2 SnD2 CnD2 S2D2 C4D2 C5D2 C6D2 S1D2 C1D2 C2D2 C3D2 DC3D3 P1D3 P2D3 P3D3 P4D3 P5D3 P6D3 PnD3 SnD3 S2D3 S1D3

Domain 3

31

slide-38
SLIDE 38

Controllers’ Role in SDN-ICN Architecture

  • Topology Discovery and Statistics Collection
  • Name-based Content Forwarding
  • Content Discovery and Caching

32

slide-39
SLIDE 39

Intended Research Findings from SDN-ICN Implementation

  • Improve Caching Scheme
  • Controller-to-Controller Communication through Contents
  • Improved Content Security

33

slide-40
SLIDE 40

Tools We Intend to Use

  • Testbed using ndnSIM
  • Controller App
  • ICN Node App

34

slide-41
SLIDE 41

Conclusion

slide-42
SLIDE 42

Final Words-1

Google had big problems Regarding High financial cost Managing their Data Centers

  • Hardware and software upgrade
  • Over provisioning (fault tolerant)
  • Manage large backup traffic
  • Time to manage individual switch
  • A lot of men power to manage the infrastructure

35

slide-43
SLIDE 43

Final Words-2

What are the Problems They were having

  • Delay caused by rebuilding connections after Link Failure
  • Slow to rebuild the routing tables after Link Failure
  • Difficult to Predict what the New Network may perform

36

slide-44
SLIDE 44

Final Words-3

How They Solve these Problems

  • Built their hardware and wrote their own software for their

internal data centers

  • Surprised the industries when Google announced SDN was

possible in production How did they do it?

B4: Experience with a Globally-Deployed Software Defined WAN

Sushant Jain, Alok Kumar, Subhasree Mandal, Joon Ong, Leon Poutievski, Arjun Singh, Subbaiah Venkata, Jim Wanderer, Junlan Zhou, Min Zhu, Jonathan Zolla, Urs Hölzle, Stephen Stuart and Amin Vahdat

Google, Inc. b4-sigcomm@google.com

37

slide-45
SLIDE 45

Questions?

37