- 高速通訊與計算實驗室

Download Report

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