sdn controller 發展趨勢 · framework, regression test framework maestro java win, mac, linux...
TRANSCRIPT
Copyright 2013 ITRI 工業技術研究院
SDN Controller 發展趨勢
寬頻網路與系統整合技術組
工研院資通所
1
Copyright 2013 ITRI 工業技術研究院
Outline
What is SDN Controller ?
SDN Controllers
Trema
Floodlight
OpenDaylight
ITRI’s SDN Plan
Summary
2
Copyright 2013 ITRI 工業技術研究院
SDN Architecture
Southbound API
Northbound API
3
Copyright 2013 ITRI 工業技術研究院
SDN Brain - Controller
Rule Action Statistics
Application Server
Control Plane
Data Plane
…..
4
Controller
Copyright 2013 ITRI 工業技術研究院
Open Controllers @ 2012.4
Source: ONF OpenFlowTutorial_ONS_Heller April, 2012
Name Lang Platform(s) License Original
Author
Notes
OpenFlow
Reference
C Linux OpenFlow
License
Stanford/Nicira not designed for extensibility
NOX Python,
C++
Linux GPL Nicira actively developed
Beacon Java Win, Mac,
Linux,
Android
GPL (core),
FOSS Licenses
for your code
David Erickson
(Stanford)
runtime modular, web UI
framework, regression test
framework
Maestro Java Win, Mac,
Linux
LGPL Zheng Cai
(Rice)
Trema Ruby,
C
Linux GPL NEC includes emulator, regression
test framework
RouteFlow ? Linux Apache CPqD (Brazil) virtual IP routing as a service
Floodlight Java Any BigSwitch,
based on
Beacon
5
Copyright 2013 ITRI 工業技術研究院
Controller Evaluation
Controller Application Support
Northbound API
Controller Architecture & Module
Network Virtualization Support
Commercial Product
6
Copyright 2013 ITRI 工業技術研究院 7
Copyright 2013 ITRI 工業技術研究院
Trema Controller Architecture
Source: Trema Tutorial - Ofelia
Module View
8
Copyright 2013 ITRI 工業技術研究院
NEC ProgrammableFlow
OpenFlow 1.0.0
Linux appliance
First commercially-available
OpenFlow controller
NEC ProgrammableFlow Controller
Benefits
• Dramatically reduces network operation costs
through simplified network management
• Increases service agility by providing network
control through a single pain of glass
• Improves return on investment by Increasing
network and server utilization
• Reduces power and space requirements
verses chassis deployments
• Achieves greater resiliency to network
equipment failures
• Foundation for multi-vendor network hardware
environment OpenFlow Control (Trema)
Physical Topology Manager
Path Control
L2L3 Stack
• Topology Discovery,
Self Repair
• Multitenant
Networks
• Flow Table Entry
Management
• Flow allocation
based on Policy
• Policy
Management
VTN VTN VTN
API
VTN: Virtual Tenant Network
9
Copyright 2013 ITRI 工業技術研究院
Trema Application
User Module
Sliceable Routing Switch
Source: Trema Tutorial - Ofelia
10
Copyright 2013 ITRI 工業技術研究院
Trema Test Environment
Source: Trema Tutorial - Ofelia
Trema provides a system that supports to
Manage / Monitor
Network emulator
Diagnose tool chain
- Tremashark
- Wireshark Plungin
11
Copyright 2013 ITRI 工業技術研究院
- Floodlight is an Open SDN Controller
- Big Switch Networks sponsored community project
12
Copyright 2013 ITRI 工業技術研究院
Project Floodlight
Floodlight Applications
Floodlight
Indigo
OFTest
13
http://www.projectfloodlight.org/floodlight/ http://www.projectfloodlight.org/indigo/
Copyright 2013 ITRI 工業技術研究院
Floodlight Applications
OpenStack Quantum Plug-In
Quantum exposes an networking-as-a-service model via a
REST API
Virtual Switch
Network virtualization
ACL (stateless FW)
Enforce ACL rules on OF switch
Circuit Pusher
Bidirectional circuit
14
•REST API •Unicast Isolation only •OpenStack Quantum Version 2 support
• Access Control List • Using flows by monitoring packet-in •OpenStack Quantum Version 2 support
Copyright 2013 ITRI 工業技術研究院
Floodlight Controller Architecture
http://docs.projectfloodlight.org/display/floodlightcontroller/The+Controller 15
Copyright 2013 ITRI 工業技術研究院
Floodlight Supported Topology
Loop Loop
http://docs.projectfloodlight.org/display/floodlightcontroller/Supported+Topologies
16
Copyright 2013 ITRI 工業技術研究院
Floodlight Northbound APIs
Ref: http://docs.projectfloodlight.org/display/floodlightcontroller/Floodlight+REST+API
Category Description Example
Topology the inter-switch links formed as
the topology
/wm/topology/links/json
Device devices tracked by the controller /wm/device/
Switch switch info connected to the
controller
/wm/core/controller/switches/json
Counter traffic counters per switch or all
switches
/wm/core/counter/<switchId>/<counte
rName>/json
Flow Entry List/Add/Delete static flows for a
switch or all switches
/wm/staticflowentrypusher/ json
Firewall Firewall rule operation /wm/firewall/rules/json
Tenant virtual network operation /networkService/v1.1/tenants/<tenant
>/networks/<network>
17
Copyright 2013 ITRI 工業技術研究院
Big Network Controller Solution
http://www.bigswitch.com/products/SDN-Controller
18
Copyright 2013 ITRI 工業技術研究院
OpenDaylight Members
Gold
Platinum
Silver
20
Copyright 2013 ITRI 工業技術研究院
OpenDaylight Structure
- FTEs: Full Time Engineers
Membership Level
Annual Fee FTEs IP contribution Technical Steering Committee
Board / Voting position
Platinum $500K 10 Desired significant, in addition to
FTEs
One seat per member not otherwise represented
Includes board position
Gold $50K-250K
($50/employee)
3 Not required May be on TSC if Project Lead
One Board seat per every three, subject to
Board size limit
Silver $10K-20K
($10/employee)
0 Not required May be on TSC if Project Lead
One Board seat elected by all Silver members
Individual $0 0 May be on TSC if Project Lead
May be elected to community board seat
Organized as a separate project within The Linux Foundation with separate Board and Technical
Steering Committee components.
Goal to ramp to 140 developers and $2-3M/year within 12 months of launch and eventually 200-300
developers
Includes tiered membership of Platinum, Gold, Silver, and individual memberships
21
Copyright 2013 ITRI 工業技術研究院
OpenDaylight (ODL) Briefing
Three Bootstrap Projects
OpenDaylight Controller (Cisco) – April 2013
OpenDaylight Network Virtualization Platform (Big Switch
Network) – April 2013
- OpenDaylight SDN Controller Platform (OSCP)
OpenDaylight Virtual Tenant Network (NEC) – July 2013
22
OpenDaylight is a collaborative project under
The Linux Foundation to foster innovation and create an open and transparent approach to
Software-Defined Networking
https://wiki.opendaylight.org/view/OpenDaylight_SDN_Controller_Platform_%28OSCP%29:Main
Copyright 2013 ITRI 工業技術研究院
What is “OpenDaylight” ?
Controller + Southbound + Northbound + Apps
http://www.opendaylight.org/project/technical-overview
23
Copyright 2013 ITRI 工業技術研究院
OpenDaylight Controller Overview
A highly available, modular, extensible, scalable,
and multi-protocol Controller infrastructure
The model driven Service Abstraction Layer for
abstractions to support multiple Southbound
protocols via Plugins.
A rich set of Northbound APIs via
RESTful web services for loosely coupled applications
OSGi services for co-located applications
The OSGi framework is used for the Modular and
extensible nature of the controller
Java-based Solution
24
Copyright 2013 ITRI 工業技術研究院
OSGi & OpenDaylight
OSGi : Open Service Gateway Initiative
OSGi Alliance : IBM, Sun Microsystems, Errison … March 1999
OSGi Service Platform
OpenDayLight support OSGi framework and
bidirectional REST for the northbound API
The OSGi framework is running in the same address space for
applications
REST (web based) API do not run in the same address space
for applications
25
Copyright 2013 ITRI 工業技術研究院
OSGi Architecture
Bundles – Extend OSGi components
Services – Connecting dynamic bundles to offer a publish-find-bind
model for plain old Java objects.
26
Life-Cycle - Install, start,
stop, update, uninstall bundles.
Modules - Bundle import and
export code
Security
Execution Environment
- methods and classes platform
http://www.osgi.org/Technology/WhatIsOSGi
Copyright 2013 ITRI 工業技術研究院
OpenDaylight Architectural Framework
The Open Daylight Controller is a pure software and as a JVM.
ONV
https://wiki.opendaylight.org/view/File:Architectural_Framework.jpg 27
SDN Controller Platform
Copyright 2013 ITRI 工業技術研究院
Daylight vs. Floodlight (Module Architecture)
OSGi Framework HTTP
REST Applications OSGi Applications
OSGi Framework
Floodlight Module Application
Floodlight Core Module
28
Copyright 2013 ITRI 工業技術研究院
Open Daylight NB APIs
Category Description Example
Topology the inter-switch links formed
as the topology
/topology/{containerName}
Host Tracker hosts tracked by the controller /host/{containerName}
Switch
Manager
switch info connected to the
controller
/{containerName}/nodes
Statistics traffic counters per switch or
all switches
/statistics/{containerName}/flowsta
ts/{nodeType}/{nodeId}
Flow
Programmer
push/read flow table entry to
the specified switch
/flow/{containerName}/{nodeType}
/{nodeId}/{name}
Static
Routing
add static routing rule to
controller
/staticroute/{containerName}/{nam
e}
Subnets list/add/delete subnet to/from
the controller
/subnet/{containerName}/{subnet
Name}
29
Copyright 2013 ITRI 工業技術研究院
OpenDaylight SDN Controller
Platform (OSCP)
30
Copyright 2013 ITRI 工業技術研究院
OpenDaylight Network Virtualization
Platform Overview Named as OpenDaylight SDN Controller Platform
(OSCP)
A network application platform providing
Unified network intelligence
Enterprise-class scalability and high availability
Deploy a wide range of network applications, including data
center network virtualization.
OpenStack Quantum Plugin is provided via NB API
Java-based Solution
31
Copyright 2013 ITRI 工業技術研究院
OpenDaylight Network Virtualization
Platform
1. SDN Controller Platform
2. OSCP Network Virtualization (ONV) application provides the tenant function
3. OSCP OpenStack Quantum Plugin programs the virtual network via ONV NB APIs
4. Enable the quantum feature from the CLI
5. Consistent Clustering
https://wiki.opendaylight.org/view/OpenDaylight_SDN_Controller_Platform_(OSCP):Proposal
32
Copyright 2013 ITRI 工業技術研究院
Network Virtualization Support
OpenDaylight SDN Controller Platform provides a plugin and
a corresponding agent to enable integration with Quantum.
Install the agent for restproxy plugin support
Enable the quantum feature from the CLI
OpenDaylight Network Virtualization (ONV) application is a
Network as a Service (network virtualization) application
currently runs on the OpenDaylight SDN Controller Platform.
https://wiki.opendaylight.org/view/OpenDaylight_Network_Virtualization_(ONV):Main
33
Copyright 2013 ITRI 工業技術研究院
ITRI’s SDN Plan
34
Copyright 2013 ITRI 工業技術研究院
SDN產業聯盟規劃
SDN產業聯盟
進行相關標準
規格制定
掌握國際脈動尋求合作機會
蒐集及分析
產業發展狀況
召開各類交流
活動與論壇
建置SDN共通平台
訂定共通平台標準介面
建立SDN Services 驗證場域
協助政府政策工具應用
加強產業及市場資訊服務
整合運用相關資源
促進產業鏈整合
建立台灣在全球SDN產業的關鍵地位
35
Copyright 2013 ITRI 工業技術研究院
SDN產業聯盟組織架構 (draft)
會長
測試驗證 SDN共通平台 應用服務 國際合作
秘書處
運用 SDN Open Source, 建立SDN共通平台
研擬 SDN 共通平台 Northbound 及Southbound介面
發展SDN設備與應用測試環境
訂定設備測試及互通測試案例
研究Data Center、企業網路、電信網路需求,發展SDN應用服務方案
促進國內產業與國際標準組織及國際大廠交流
36
Copyright 2013 ITRI 工業技術研究院
ITRI SDN Testbed Plan
Conformance
Interoperability
Application
Layer
- 提供應用服務PoC及Service Trial 測試驗證場域
- 提供網路設備驗證、應用展示場域
Controller
Layer
Infrastructure
Layer
Innovation,
PoC,
Service Trial
Topology Manager
Wireless Network
Virtualization
Slicing Manager
Network Policy Control &
Enforcement
Load balancer Function
Virtualization
Security Function
Virtualization extensions
Inter-Controller
Control
common Host
Tracker Switch
Manager Fwdg.
Manager Statistic Manager
Multi-Controller
Interoperability
Northbound API
Southbound API Stress
Performance
Copyright 2013 ITRI 工業技術研究院
ITRI SDN Common Platform
Enterprise Services
South Bound API
OpenFlow Other Standard Vendor Specific
Topology Manager
Slicing Manager
extensions
common Host Tracker
Switch Manager
Fwdg. Manager
Statistic Manager
North Bound API
Femto Switch Wi-Fi
Enterprise Services
Enterprise Services
Contribute
Open Source
SDN Controller
38
Wireless Network
Virtualization
Network Policy Control &
Enforcement
Load balancer Function
Virtualization
Security Function Virtualization
Inter-Controller Control
Copyright 2013 ITRI 工業技術研究院
Summary
Controller OF版本
程式語言
Routing
機制
功能模組 CP開發介面
NB API Quantum
Plugin
軟體授權
商用產品支援
NOX/
POX
1.0 C++ /
Python
Loop(?) Basic NOX API Module
API
NA GPL NA
Trema 1.0 /
1.3
C /
Ruby
OK Debugger
Emulator
Security
C / Ruby
API
Module
API
NEC
OpenFlow
plugin
GPL NEC PFC
Floodlight
(OSCP)
1.0 /
1.3
Java OK NVF
Firewall
Perform.
QoS
LB
Java API REST Floodlight
Quantum
plugin
Apache Big
Network
Open
Daylight
1.0
Java OK Statistic
Load-
Balancer
HA
Java API REST/OS
Gi
OpenDL
OpenStack
Quantum
Plugin
EPL Cisco One
(?)
* OSCP – OpenDaylight SDN Controller Platform 39
Copyright 2013 ITRI 工業技術研究院
Thanks!
40