evaluation of sdn controller and its impact on
play

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.


  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

  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

  3. Introduction

  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

  5. General Overview of SDN Architecture 3 Application Layer (Management Plane) Network Mobility Network Monitoring Virtualization Management Security Traffic Load Application Control Balancing Northbound API (REST, JSON, Franetic, etc.) Control Layer (Control Plane) POX POX Floodlight Floodlight RYU RYU East West bound API (AMQP, Raft, Zookeeper, etc.) OpenDaylight OpenDaylight ONOS ONOS Southbound API (OpenFlow, POF, PCEP, ForCES, etc.) Infrastructure Layer (Data Plane) Physical Devices Virtual Devices Access Points

  6. Visual Representation of an SDN Controller www.slideshare.net/PetervanderVoort1/sdn-beyond-the-obvious-29656744 4

  7. Communication Flows between Controller and Switch Topology discovery in Software Defined Network” IEEE Communication Survey and Tutorial 2017 Vol 19 5 Start Generate Packet_In message Host request to the OF switch Send Packet_In to the controller OF switch check for the match field Controller check the packet header No Create rules for Packet_In message Match Send the flow rules to the OF switch Yes Generate Packet_Out message Apply the flow rules to the packet . The eastbound and westbound API’s manage the distributed API’s

  8. Programming Languages

  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

  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

  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

  12. Components and Use Cases of SDN Controllers

  13. Core Components of an SDN Controller 9 SDN APPLICATION PLANE DASHBOARD FORWARDING FIREWALL VIRTUALIZATION LOAD BALANCE NORTHBOUND INTERFACE SDN CONTROL PLANE (CONTROLLER) PEERING WITH OTHER CONTROLLER EAST-WEST BOUND INTERFACE SYNC WITH THIRD-PARTY APPS EAST-WEST BOUND INTERFACE CORE MODULES LINK TOPOLOGY DECISION DISCOVERY MANAGER MAKING FLOW STORAGE MANAGER MANAGER ADDITIONAL MODULES RECEIVED PROCESSED SENT QUEUE QUEUE QUEUE SOUTHBOUND INTERFACE PHYSICAL WIRELESS OPTICAL VIRTUAL SWITCH SWITCH SWITCH SWITCH SDN DATA PLANE

  14. NOX Architecture 10

  15. OpenDaylight Components 11

  16. ONOS System Components 12

  17. Feature comparison of Difgerent Controllers 13

  18. Application comparison of Difgerent Controllers 14

  19. SDN Controllers in Difgerent Sectors 15

  20. SDN Controller in Optical and Wide Area Network 16 Application Plane Application Plane End-to-end Network Load balancing Abstraction and Provisioning Slicing and Forwarding Virtualization Network Domain Load balancing End-to-end Slicing Orchestration and Forwarding PCE Northbound API Northbound API Control Plane Control Plane East West API East West API East West API East West API Topology Database Flow-Table PCE Metrics Management Maintenence Management Management Collection Topology Database Flow-Table Flow Metrics Management Maintenence Management Mapping Collection Southbound API Southbound API LTE / 5G Broadband MPLS Extended OpenFlow and PCEP Interface Data Plane IP Domain Optical Domain GMPLS Domain IP Controller Campus Optical Switch OF Agent Branches Remote Sites Data Centers Data Plane Layer 2 Switch GMPLS Switch Optical Controller

  21. Performance Evaluation of SDN Controller

  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

  23. Metrics to be Considered Evaluating Controllers • Throughput • Latency • CPU and Memory Utilization • Round Trip Time • And Many More 18

  24. Taxonomy of Evaluating a Controller 19 Taxonomy of Evaluating SDN Controller Operating Network Compatibility Traffic Profile Others Environment Topology Version Link Layer Types Observation Controller Standalone Single Point ARP and PING Measurement Switch Centralized Point Linear Transport Layer Controllers Types OpenFlow Protocol Connectivity UDP Clustered Tree Repeatability TCP Distributed Controllers Leaf-Spine Application Layer Types DNS, NFS, WEB FTP, TELNET

  25. Lists of Performance Testing Tool • CBench • PktBlaster • OFNet • Others: WCbench, OFCBenchmark, OFCProbe, HCProbe. 20

  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

  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

  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

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

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

  31. Performance Comparison using CBench 26

  32. Performance Comparison using PktBlaster 27

  33. Performance Comparison using OFNet 28

  34. SDN Controller in an ICN Scenario

  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

  36. Types of SDN-ICN Architecture • Centralized Architecture • Distributed Architecture • Clean-State Architecture • Overlay and Underlay Architecture 30

Recommend


More recommend