Transcript - 高速通訊與計算實驗室
A Hot Topic in Computer Networks Today: Software Defined Networking
Prof. Jang-ping Sheu High-Speed Communication & Computing Laboratory National Tsing Hua University 國立清華大學高速通訊與計算實驗室 NTHU High-Speed Communication & Computing Laboratory
Outline
Background and motivation What is SDN ?
An open standard- OpenFlow The applications of SDN Challenges Research resources 2
Outline
Background and motivation What is SDN ?
An open standard - OpenFlow The applications of SDN Challenges Research resources 3
Internet in Recent Decade
Data increasing continuously: Data Center, Cloud Computing, and Big Data E-business, Video on demand, MOOCs (Massive Open Online Courses) More protocols created with Heterogeneity networks developing VANET (Vehicular Ad-hoc NETwork), WSN (Wireless Sensor Network), CRN (Cognitive Radio Network) 4
Source: Intel 2012 March 5
Traditional Networks Features
Closed equipment Software bundled with hardware Vendor-specific interface Only vendors can develop for its constrained environments Over specified Various and complex protocols: OSPF, BGP, DiffServ, NAT, MPLS, and so on.
No uniform standardization Buggy software in the equipment Routers are with million of lines of source code Cascading failures, vulnerabilities is popular 6
Traditional Networks inconvenience
Operating a network is too complex and expensive To add or move any device, network must be reconfigured, such as router, switch and firewall Too expensive to change the topology of network Not easy to control the communications User cannot write the control code except equipment vendors Long delays to introduce new features Difficult to customize: Even vendors and third parties are not able to provide customized cost effective solutions to address their customers’ problems 7
We Need Modify Existing Equipment
Routing, management, mobility management, access control, VPNs, … Switch
Feature Feature Operating System
Specialized Packet Forwarding Hardware Million of lines of source code 6,000 RFCs
(
Request For Comments
)
Billions of gates, Bloated, Power Hungry
Vertically integrated, complex, closed, proprietary Not suitable for experimental ideas 8
Specialized Applications Specialized Operating System Specialized Hardware Vertically integrated Closed, proprietary Slow innovation Small industry App App App App App App App App App App App Open Interface Windows (OS) or Linux or Mac OS Open Interface Microprocessor Horizontal Open interfaces Rapid innovation Huge industry 9
Specialized Features Specialized Control Plane Specialized Hardware Vertically integrated Closed, proprietary Slow innovation App App App App App App App App App App App Open Interface Control Plane or Control Plane or Control Plane Open Interface Merchant Switching Chips Horizontal Open interfaces Rapid innovation 10
Outline
Background and motivation What is SDN ?
An open standard- OpenFlow The applications of SDN Challenges Research resources 11
Software-Defined Networking (SDN)
SDN is an approach to networking in which control is decoupled from hardware and given to a software application called a controller Allows network engineers to support a switching fabric across multi-vendor hardware and application specific integrated circuit Allows a stronger intellectual foundation to networking Allows us to define the right abstractions in different layers Allows us to transfer technology much faster, in both directions (academic and Industry) Closing the gap with industry 12
SDN from Traditional Network Device
Ethernet Switch
13
SDN from Traditional Network Device
Controller (Software) Data Path (Hardware)
14
SDN from Traditional Network Device
Controller
OpenFlow Protocol (SSL)
Control Path OpenFlow Data Path (Hardware)
15
SDN from Traditional Network Device
Controller
OpenFlow Protocol (SSL)
Ethernet Switch
16
More Detail in SDN
Control Programs Network Operating System App App Operating
Specialized Packet Forwarding Hardware
App App App Operating
Specialized Packet Forwarding Hardware
App App App Operating
Specialized Packet Forwarding Hardware
App App App Operating
Specialized Packet Forwarding Hardware
App App App Operating
Specialized Packet Forwarding Hardware
App 17
More Detail in SDN
Control Programs Network Operating System
Simple Packet Forwarding Hardware Simple Packet Forwarding Hardware Simple Packet Forwarding Hardware Simple Packet Forwarding Hardware Simple Packet Forwarding Hardware
18
Packets Delivering in SDN
User’s code Controller PC Decision?
OpenFlow Protocol 19
Potential Application Model in SDN
Data Centers Public and private clouds WANs Google WAN Eventually, public WANs Enterprise networks Greater control, fewer middle boxes Home networks Outsourced management Cellular Networks Separation of service from physical infrastructure Research and Education Networks National backbones College campus networks 20
Outline
Background and motivation What is SDN ?
An open standard- OpenFlow The applications of SDN Challenges Research resource 21
OpenFlow -
What is it ?
An open standard for that enables researchers to run experimental protocols in the campus networks we use every day Network administrators control forwarding tables by it can remotely Currently being implemented by major vendors Enabled switches now commercially available 22
OpenFlow
OpenFlow Switch SW Secure Channel HW Flow Table Controller PC 23
OpenFlow -
Controller
A controller adds and removes flow entries from the Flow Table on behalf of experiments • A static controller might be a generalization of VLANs.
• More sophisticated controllers that dynamically add/remove flows as an experiment progresses Researchers might control the complete network of OpenFlow Switches and be free to decide how all flows are processed 24
OpenFlow -
Switch
Flow Table, with an action associated with each flow entry, to tell the switch how to process the flow Secure Channel that connects the switch to controller, allowing commands and packets to be sent between a controller and the switch OpenFlow Protocol, which provides an open and standard way for a controller to communicate with a switch 25
OpenFlow -
Flow Table Entry
Rule Action Stats Packet + byte counters 1. Forward packet to port(s) 2. Encapsulate and forward to controller 3. Drop packet 4. Send to normal processing pipeline Switch Port MAC src MAC dst Eth type VLAN ID IP Src IP Dst IP Prot TCP sport TCP dport 26
OpenFlow -
Cache flow decisions in datapath
“If header =
x
, send to port 4” “If header =
y
, overwrite header with
z
, send to ports 5,6” “If header =
?
, send to me” Flow Table 27
Deployment Modes
In-network: OpenFlow-enabled (upgraded or green-field) network infrastructure Overlay: Legacy network infrastructure with smart edge devices New boxes, such as gateways Enhanced kernel bridge (e.g., OpenVSwitch in x86 hypervisors) Examples: In-network: Google uses OpenFlow-enabled controllers switches to interconnect their data centers Overlay: AT&T, NTT, eBay, Fidelity Investments, and Rackspace use OpenStack Quantum and Nicira NVP controller to manage the virtual networks in their clouds Hybrid: Genesis hosting uses NEC controller in intra-data-center scenario 28
Outline
Background and motivation What is SDN ?
An open standard - OpenFlow The applications of SDN Challenges Research resource 29
Benefits from SDN
Network Virtualization Switch based Firewall Multipath Forwarding Congestion Control Identify bugs 30
Network Virtualization in SDN
The process of combining hardware and software network resources to be some virtual networks 31
Virtualization in Traditional Network
L2 virtualization: VLAN Networks can only support a finite number of VLANS 32
SDN-based Network Virtualization
Each tenant can run his virtual network with controller in SDN.
OpenFlow network removes limitations, allowing administrators to create a flow-based virtual network abstraction.
Computer virtualization Network Virtualization
33
SDN-based Network Virtualization
34
Switch based Firewall in SDN
OpenFlow switches can emulate Firewall by assigning rules to switches.
Flow Classifer H1 Controller This packet needs to block Cloud H2 H3 Block this flow 35
Traditional Switch Path Forwarding
In traditional switches, forwarding packets use spanning tree algorithm to solve looping problem 36
Multipath Forwarding in SDN
Forwarding by rule and central controller’s decision.
Controller
37
Congestion Control by SDN
Controller can get SDN switches information to know if congestion happened.
Controller Controller gets switches status to decide flow rate
38
Identify Bugs by SDN
Identify bugs with systematically tracking down their root cause When an operational network misbehaves, it is very hard to find the root cause Allows users to define a Network Breakpoint Capture and reconstruct the sequence of events leading to the breakpoint 39
Outline
Background and motivation What is SDN ?
An open standard - OpenFlow The applications of SDN Challenges Research resource 40
Countries in Trial of SDN
68 Trials in 13 Countries 41
SDN in University of U.S.A
Severing as GENI (Global Environment for Network Innovations) Networking Substrate 42
Challenges
Complex designing solutions Limited TCAM size Controller delay and overhead Multi-controller working together Migrating from legacy to SDN 43
SDN -
Data-Plane Challenges
State of Specification Maturity Concerns OF 1.0 single flow table, … OF 1.1 leverages multiple tables Silicon Concerns Spec is much ahead of silicon development… OF Spec is a moving target for merchant silicon Merchant silicon is not optimized for OF… supports of current networking features is a higher priority Specific issues Scalability of Flow-Matches (limited by TCAM size) Cost concerns 44
SDN –
Control-Plane Challenges
Control Plane scalability Centralized vs. distributed controllers...
Single view of the state of the network, forwarding tables,… is this a distributed database problem?
Interoperability SDN/NON-SDN Inter-Controller Between different controllers Orchestrating SDNs managed by different controllers … 45
SDN -
Application-Environments Challenges
Network Resource Abstraction & Conflict Resolution Resource abstraction Conflict resolution among different application actions Development tools and New Application Paradigm Computing system style application… New class of Network Programming Languages… New tools New development skills… New talents... New education curriculum… 46
Outline
Background and motivation What is SDN ?
An open standard - OpenFlow The applications of SDN Challenges Research resources 47
Research Platform for SDN
Mininet Network emulator Designed for emulating SDN networks Easy to use High performance (100 nodes on a laptop) Network OS for Research NOX (C++/Python) http://noxrepo.org
Maestro (Rice University) Helios (NEC) Beacon (Java) coming soon, … Network OS Commerce ONIX [OSDI 2010, Google, Nicira, NEC] Expect others 48
OpenFlow Testbed
Candidate controllers: Nicira’s Nox: C++ and python prototyping NTT’s Ryu : python more production level Candidate switches: Standalone switches Pica8 (3290): OpenFlow v1.1, a spin-off of Quanta HP (5400zl): either OpenFlow mode or legacy mode.
NEC(IP8800): either OpenFlow mode or legacy mode.
Pronto: legacy routing stack and OpenFlow enabled features can not be support in the same VLAN Brocade (CES/CER/MLX/XMR/MLXe): fully support hybrid mode PC-based switches (decreasing programmability) OVS (OpenVSwitch): pure software based OpenFlow enabled data path Netronome: network processor PCI card NetFPGA (Stanford): research oriented cards 49
2011I International Conference on Computer Science an d Network Technology
Thank you !
50