OpenFlow and Software Defjned Networks
Outline o The history of OpenFlow o What is OpenFlow? o Slicing OpenFlow networks o Software Defjned Networks o Industry interest
Original Question How can researchers on college campuses test out new ideas in a real network, at scale?
Problem Many good research ideas Many good research ideas on college campuses… on college campuses… No way to test new ideas at No way to test new ideas at scale, on real networks, with scale, on real networks, with real user traffjc real user traffjc Consequence: Almost no Consequence: Almost no technology transfer technology transfer
Research problems Well known problems Well known problems Security, mobility, Security, mobility, availability availability Incremental ideas Incremental ideas Fixing BGP, multicast, access Fixing BGP, multicast, access control, Mobile IP, data center control, Mobile IP, data center networks. networks. More radical changes More radical changes Energy management, VM Energy management, VM mobility, … mobility, …
How to build a test network with suffjcient scale and realism?
Software Router + PC Multi-Port NIC Total capacity: Only ~5Gb/s
Custom Hardware • Diffjcult to develop, always behind industry • Diffjcult to program, constrained environment • T oo expensive
Modify Existing Equipment Routing, management, mobility management, access control, VPNs, … Featur Featu e re Million of 6,000 RFCs lines Operating of source System code Specialized Billions of Bloated Power Hungry Packet gates Forwarding Hardware Vertically integrated, complex, closed, proprietary Not suitable for experimental ideas
The only test network large enough to evaluate future Internet technologies at scale, is the Internet itself.
Ap Ap Ap Ap Ap Ap p p p p p p Controller Controller Controller Controller (Server Software) (Server Software) (Server Software) (Server Software) OpenFlow Protocol Control Path OpenFlow Data Path (Hardware)
Slicing traffjc All network traffic Experiment #1 Research Experiment #2 traffic … Experiment N
OpenFlow Basics
Step 1: Separate Control from Datapath Research Experiments
Step 2: Cache fmow 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 Flow T able T able
OpenFlow OpenFlow Controller Controller OpenFlow Protocol (SSL/TCP) Control Control OpenFlow OpenFlow Path Path Data Path (Hardware) Data Path (Hardware) 16
OpenFlow usage Controller Alice’s Alice’s Alice’s Alice’s OpenFlow code Rule code Rule Switch PC Decision?OpenFlow Protocol Alice’s Alice’s Alice’s Alice’s OpenFlow OpenFlow Rule Rule Rule Rule Switch Switch OpenFlow offloads control intelligence to a remote software
OpenFlow Basics Flow T able Entries Rule Action Stats Packet + byte counters 1. Forward packet to zero or more ports 2. Encapsulate and forward to controller 3. Send to normal processing pipeline 4. Modify Fields 5. Any extensions you add! Switc Eth IP IP IP IP L4 L4 VLAN VLAN MAC MAC h type Src Dst T oS Prot sport dport ID pcp src dst Port + mask what fjelds to match 18
Examples Switching Switc MAC MAC Eth VLAN IP IP IP TCP TCP dport Action h src dst type ID Src Dst Prot sport Port 00:1f:.. * * * * * * * * * port6 Flow Switching Switc MAC MAC Eth VLAN IP IP IP TCP TCP dport Action h src dst type ID Src Dst Prot sport Port 00:20 0800 vlan1 1.2.3. 5.6.7. 1726 port3 00:1f.. 4 80 port6 .. 4 8 4 Firewall Switc MAC MAC Eth VLAN IP IP IP TCP TCP dport Action h src dst type ID Src Dst Prot sport Port * * * * * * * * * 22 drop 19
Examples Routing Switc MAC MAC Eth VLAN IP IP IP TCP TCP dport Action h src dst type ID Src Dst Prot sport Port 5.6.7. * * * * * * * * * port6 8 VLAN Switching Switc MAC MAC Eth VLAN IP IP IP TCP TCP dport Action h src dst type ID Src Dst Prot sport Port port6, port7, vlan1 * 00:1f.. * * * * * * * port9 20
Flow Routing vs. Aggregation Both models are possible with OpenFlow Aggregated Flow-Based • One fmow entry covers • Every fmow is large groups of fmows individually set up by • Wildcard fmow entries controller • Flow table contains one • Exact-match fmow entry per category of entries • Flow table contains fmows • Good for large number one entry per fmow • Good for fjne grain of fmows, e.g. backbone control, e.g. campus networks 21
Centralized vs Distributed Control Both models are possible with OpenFlow Centralized Control Distributed Control Controller Controller OpenFlow OpenFlow Switch Switch Controller OpenFlow OpenFlow Controller Switch Switch OpenFlow OpenFlow Switch Switch 22
OpenFlow building blocks Monitoring/ oftrace ofmops oftrace ofmops openseer openseer debugging tools Stanford Provided ENVI ENVI Applications LAVI Expedient LAVI n-Casting Expedient n-Casting (GUI) (GUI) Helio Maestr Helio Maestr Controller NOX Beacon SNAC NOX Beacon SNAC s o s o FlowVis Slicing or FlowVisor FlowVisor Software Console Stanford Provided Commercial Switches Software Broadcom Software Broadcom HP, NEC, HP, NEC, Ref. NetFPGA Ref. Ref. NetFPGA Ref. OpenFlow Pronto, Pronto, Switch Switch Switch Switch PCEngine PCEngine Switches Juniper.. and Juniper.. and OpenVSwit OpenVSwit OpenWRT OpenWRT many more many more ch ch WiFi AP WiFi AP 23
General Forwarding Abstraction Small set of primitives Small set of primitives “Forwarding instruction “Forwarding instruction set” set” Protocol independent Protocol independent Backward compatible Backward compatible Switches, routers, WiFi Switches, routers, WiFi APs, basestations, APs, basestations, TDM/WDM TDM/WDM
Research Examples (See http://archive.openfmow.org /videos/ for demo videos)
Broader interest in an evolvable Internet
Restructured Network Featur Featur e e Network OS Featur Featur e e Operating System Specialized Featur Featur e e Packet Forwarding Operating Hardware System Specialized Featur Featur Packet e e Forwarding Operating Hardware System Featur Featur Specialized e e Packet Forwarding Operating Hardware System Specialized Packet Forwarding Featur Featur e e Hardware Operating System Specialized Packet Forwarding Hardware
Software-Defjned Network 2. At least one Network OS 3. Well-defjned open API probably many. Open- and closed-source Featur Feature e Network OS 1. Open interface to packet forwarding Packet Packet Forwarding Forwarding Packet Packet Forwarding Forwarding Packet Packet Forwarding Forwarding Packet Packet Forwarding Forwarding Packet Packet Forwarding Forwarding
Network OS Research – NOX (C++/Python) http://noxrepo.org – Maestro (Rice University) – Helios (NEC) – Beacon (Java) coming soon. – Others in development Commercial – ONIX [OSDI 2010, Google, Nicira, NEC] – Expect others
Cellular industry • Recently made transition to IP • Billions of mobile users • Need to securely extract payments and hold users accountable • IP sucks at both, yet hard to change OpenFlow provides a way for the cellular industry to solve real problem plaguing their networks.
T elco Operators • Global IP traffjc growing 40-50% per year • End-customer monthly bill remains unchanged • Therefore, CAPEX and OPEX need to reduce 40-50% per Gb/s per year • But in practice, reduces by ~20% per year OpenFlow allows telcos to reduce CAPEX, OPEX and to • And based on the same equipment as add new differentiating features to their networks. competitors
Example: New Data Center Cost Control 200,000 servers Fanout of 20 10,000 More fmexible control switches T ailor network for services $5k vendor switch = $50M Quickly improve and innovate $1k commodity switch = $10M Data center companies have been the first to Savings in 10 data centers = deploy OpenFlow in their networks. $400M
Next Steps
OpenFlow Standardization Version 1.0: Most widely used version Version 1.1: Released in February 2011. Currently, running OpenFlow Version 1.4, supports group-table, meter band and pipelining. OpenFlow transferred to ONF in March 2011.
Thank you!
Recommend
More recommend