abstractions and open apis in networking - os3 · pdf fileabstractions and open apis in...
TRANSCRIPT
![Page 1: Abstractions and Open APIs in Networking - OS3 · PDF fileAbstractions and Open APIs in Networking Ronald van der Pol Outline Abstractions Open Hardware & Open Compute Project](https://reader031.vdocuments.site/reader031/viewer/2022030409/5a92f66f7f8b9adb5c8b97d9/html5/thumbnails/1.jpg)
SNE GUEST LECTURE 24 APRIL 2015
Abstractions and Open APIs in Networking
Ronald van der Pol <[email protected]>
![Page 2: Abstractions and Open APIs in Networking - OS3 · PDF fileAbstractions and Open APIs in Networking Ronald van der Pol Outline Abstractions Open Hardware & Open Compute Project](https://reader031.vdocuments.site/reader031/viewer/2022030409/5a92f66f7f8b9adb5c8b97d9/html5/thumbnails/2.jpg)
Outline
Abstractions Open Hardware & Open Compute Project Software Defined Networking & OpenFlow ONOS & OpenDaylight SDN Controller Frameworks Google & OpenFlow SURFnet OpenFlow project Open vSwitch & Network Functions Virtualisation (NFV) Summary
SNE SDN & OpenFlow Colloquium, Amsterdam, 24 April 2015 2/65
![Page 3: Abstractions and Open APIs in Networking - OS3 · PDF fileAbstractions and Open APIs in Networking Ronald van der Pol Outline Abstractions Open Hardware & Open Compute Project](https://reader031.vdocuments.site/reader031/viewer/2022030409/5a92f66f7f8b9adb5c8b97d9/html5/thumbnails/3.jpg)
Current Networking Practice
SNE SDN & OpenFlow Colloquium, Amsterdam, 24 April 2015 3/65
35 year years of thinking in layers (e.g. OSI model) Layer N+1 encapsulates packets/frames from layer N Each layer is just adding a header, hardly any abstractions Application programmers still need to deal with DNS and IP addresses
![Page 4: Abstractions and Open APIs in Networking - OS3 · PDF fileAbstractions and Open APIs in Networking Ronald van der Pol Outline Abstractions Open Hardware & Open Compute Project](https://reader031.vdocuments.site/reader031/viewer/2022030409/5a92f66f7f8b9adb5c8b97d9/html5/thumbnails/4.jpg)
Abstractions in Computing
SNE SDN & OpenFlow Colloquium, Amsterdam, 24 April 2015 4/65
CPUs à Assembly à higher languages à modules and classes very few are coding in assembly
Mechanical disk drive à Device driver à Filesystem
no user is sending commands to directly move the disk head LCD à video driver à graphical library à browser
no user is directly writing pixels to an LCD screen
![Page 5: Abstractions and Open APIs in Networking - OS3 · PDF fileAbstractions and Open APIs in Networking Ronald van der Pol Outline Abstractions Open Hardware & Open Compute Project](https://reader031.vdocuments.site/reader031/viewer/2022030409/5a92f66f7f8b9adb5c8b97d9/html5/thumbnails/5.jpg)
How do we manage networks?
SNE SDN & OpenFlow Colloquium, Amsterdam, 24 April 2015 5/65
Login on the CLI of a router/switch Type low level commands to router/switch Configure in detail what protocols must do (set parameters) This needs to be done for every OSI layer
set MTU, flow control, etc set IP addresses configure routing/switching protocol
And on each and every router/switch
![Page 6: Abstractions and Open APIs in Networking - OS3 · PDF fileAbstractions and Open APIs in Networking Ronald van der Pol Outline Abstractions Open Hardware & Open Compute Project](https://reader031.vdocuments.site/reader031/viewer/2022030409/5a92f66f7f8b9adb5c8b97d9/html5/thumbnails/6.jpg)
“Protocol Soup”
Current way to handle new functionality in networking is to define a new protocol. A protocol is just adding a header, it is NOT hiding complexity Exponential growth in network protocol standards. Standards seem to become larger and more complex. Vendors implement all standards, which increases costs and decreases stability. Do you need all those standards?
SNE SDN & OpenFlow Colloquium, Amsterdam, 24 April 2015 6/65
![Page 7: Abstractions and Open APIs in Networking - OS3 · PDF fileAbstractions and Open APIs in Networking Ronald van der Pol Outline Abstractions Open Hardware & Open Compute Project](https://reader031.vdocuments.site/reader031/viewer/2022030409/5a92f66f7f8b9adb5c8b97d9/html5/thumbnails/7.jpg)
Total Number of RFCs Published
0
1000
2000
3000
4000
5000
6000
1988 1991 1994 1997 2000 2003 2006 2009 2012
Tota
l num
ber o
f RFC
s
Year
Data by Jari Arkko
SNE SDN & OpenFlow Colloquium, Amsterdam, 24 April 2015 7/65
![Page 8: Abstractions and Open APIs in Networking - OS3 · PDF fileAbstractions and Open APIs in Networking Ronald van der Pol Outline Abstractions Open Hardware & Open Compute Project](https://reader031.vdocuments.site/reader031/viewer/2022030409/5a92f66f7f8b9adb5c8b97d9/html5/thumbnails/8.jpg)
IEEE 802.1Q
Simple VLAN standard? Not really, original version amended by at least 14 additional standards. 802.1Q-1998 had 211 pages. 802.1Q-2011 has 1365 pages, and includes: 802.1u, 802.1v, 802.1s (multiple spanning trees), 802.1ad (provider bridging), 802.1ak (MRP, MVRP, MMRP), 802.1ag (CFM), 802.1ah (PBB), 802.1ap (VLAN bridges MIB), 802.1Qaw, 802.1Qay (PBB-TE), 802.1aj, 802.1Qav, 802.1Qau (congestion management), 802.1Qat (SRP)
SNE SDN & OpenFlow Colloquium, Amsterdam, 24 April 2015 8/65
![Page 9: Abstractions and Open APIs in Networking - OS3 · PDF fileAbstractions and Open APIs in Networking Ronald van der Pol Outline Abstractions Open Hardware & Open Compute Project](https://reader031.vdocuments.site/reader031/viewer/2022030409/5a92f66f7f8b9adb5c8b97d9/html5/thumbnails/9.jpg)
Specs of a Modern Ethernet Switch (random example, but they are all the same)
SNE SDN & OpenFlow Colloquium, Amsterdam, 24 April 2015 9/65
![Page 10: Abstractions and Open APIs in Networking - OS3 · PDF fileAbstractions and Open APIs in Networking Ronald van der Pol Outline Abstractions Open Hardware & Open Compute Project](https://reader031.vdocuments.site/reader031/viewer/2022030409/5a92f66f7f8b9adb5c8b97d9/html5/thumbnails/10.jpg)
Vertically integrated Closed, proprietary
Slow innovation Small industry
Specialized Operating System
Specialized Hardware
App App App App App App App App App App App
Specialized Applications
Horizontal Open interfaces Rapid innovation
Huge industry
Microprocessor
Open Interface
Linux Mac OS
Windows (OS) or or
Open Interface
(slide by Nick
(slide by Nick McKeown, Stanford University)
![Page 11: Abstractions and Open APIs in Networking - OS3 · PDF fileAbstractions and Open APIs in Networking Ronald van der Pol Outline Abstractions Open Hardware & Open Compute Project](https://reader031.vdocuments.site/reader031/viewer/2022030409/5a92f66f7f8b9adb5c8b97d9/html5/thumbnails/11.jpg)
Vertically integrated Closed, proprietary
Slow innovation
App App App App App App App App App App App
Horizontal Open interfaces Rapid innovation
Control Plane
Control Plane
Control Plane or or
Open Interface
Specialized Control Plane
Specialized Hardware
Specialized Features
Merchant Switching Chips
Open Interface
(slide by Nick McKeown, Stanford University)
![Page 12: Abstractions and Open APIs in Networking - OS3 · PDF fileAbstractions and Open APIs in Networking Ronald van der Pol Outline Abstractions Open Hardware & Open Compute Project](https://reader031.vdocuments.site/reader031/viewer/2022030409/5a92f66f7f8b9adb5c8b97d9/html5/thumbnails/12.jpg)
Computing vs Networking
Closed Systems
Closed hardware Workstations + UNIX UNIX System Call API Start of Open Source Software Portable applications
Open Hardware Hypervisor API Portable VMs
1970 1980 1990 2000 2010
Closed Systems
Closed hardware OpenFlow API Open Source Applications Portable applications
clos
ed
open
![Page 13: Abstractions and Open APIs in Networking - OS3 · PDF fileAbstractions and Open APIs in Networking Ronald van der Pol Outline Abstractions Open Hardware & Open Compute Project](https://reader031.vdocuments.site/reader031/viewer/2022030409/5a92f66f7f8b9adb5c8b97d9/html5/thumbnails/13.jpg)
Open Compute Project
SNE SDN & OpenFlow Colloquium, Amsterdam, 24 April 2015
Started by Facebook in April 2011. Share design of servers, data centres, etc. and collectively improve them. Open Networking Project announced in May 2013. Open design for a network switch. Current Projects: • Specs for open hardware switches (Accton/Edge-core, Facebook, Alpha, Broadcom/Interface
Masters, Mellanox, Intel • Specs for Switch Abstraction Interface (Microsoft, Dell, Facebook, Broadcom, Intel, Mellanox) • Open Network Install Environment (Cumulus Networks) • Open Network Linux (Big Switch Networks)
13/65
![Page 14: Abstractions and Open APIs in Networking - OS3 · PDF fileAbstractions and Open APIs in Networking Ronald van der Pol Outline Abstractions Open Hardware & Open Compute Project](https://reader031.vdocuments.site/reader031/viewer/2022030409/5a92f66f7f8b9adb5c8b97d9/html5/thumbnails/14.jpg)
Emerging Open Switch Ecosystem
SNE SDN & OpenFlow Colloquium, Amsterdam, 24 April 2015 14
![Page 15: Abstractions and Open APIs in Networking - OS3 · PDF fileAbstractions and Open APIs in Networking Ronald van der Pol Outline Abstractions Open Hardware & Open Compute Project](https://reader031.vdocuments.site/reader031/viewer/2022030409/5a92f66f7f8b9adb5c8b97d9/html5/thumbnails/15.jpg)
http://www.onie.org/
SNE SDN & OpenFlow Colloquium, Amsterdam, 24 April 2015 15
![Page 16: Abstractions and Open APIs in Networking - OS3 · PDF fileAbstractions and Open APIs in Networking Ronald van der Pol Outline Abstractions Open Hardware & Open Compute Project](https://reader031.vdocuments.site/reader031/viewer/2022030409/5a92f66f7f8b9adb5c8b97d9/html5/thumbnails/16.jpg)
FaceBook Wedge 6-Pack
SNE SDN & OpenFlow Colloquium, Amsterdam, 24 April 2015 16
![Page 17: Abstractions and Open APIs in Networking - OS3 · PDF fileAbstractions and Open APIs in Networking Ronald van der Pol Outline Abstractions Open Hardware & Open Compute Project](https://reader031.vdocuments.site/reader031/viewer/2022030409/5a92f66f7f8b9adb5c8b97d9/html5/thumbnails/17.jpg)
Edge-Core White Label Switches
17 SNE SDN & OpenFlow Colloquium, Amsterdam, 24 April 2015
![Page 18: Abstractions and Open APIs in Networking - OS3 · PDF fileAbstractions and Open APIs in Networking Ronald van der Pol Outline Abstractions Open Hardware & Open Compute Project](https://reader031.vdocuments.site/reader031/viewer/2022030409/5a92f66f7f8b9adb5c8b97d9/html5/thumbnails/18.jpg)
Dell ONIE Switches
18 SNE SDN & OpenFlow Colloquium, Amsterdam, 24 April 2015
![Page 19: Abstractions and Open APIs in Networking - OS3 · PDF fileAbstractions and Open APIs in Networking Ronald van der Pol Outline Abstractions Open Hardware & Open Compute Project](https://reader031.vdocuments.site/reader031/viewer/2022030409/5a92f66f7f8b9adb5c8b97d9/html5/thumbnails/19.jpg)
OpenNSL
19 SNE SDN & OpenFlow Colloquium, Amsterdam, 24 April 2015
![Page 20: Abstractions and Open APIs in Networking - OS3 · PDF fileAbstractions and Open APIs in Networking Ronald van der Pol Outline Abstractions Open Hardware & Open Compute Project](https://reader031.vdocuments.site/reader031/viewer/2022030409/5a92f66f7f8b9adb5c8b97d9/html5/thumbnails/20.jpg)
OF-DPA
20 SNE SDN & OpenFlow Colloquium, Amsterdam, 24 April 2015
![Page 21: Abstractions and Open APIs in Networking - OS3 · PDF fileAbstractions and Open APIs in Networking Ronald van der Pol Outline Abstractions Open Hardware & Open Compute Project](https://reader031.vdocuments.site/reader031/viewer/2022030409/5a92f66f7f8b9adb5c8b97d9/html5/thumbnails/21.jpg)
http://www.opennetlinux.org/
SNE SDN & OpenFlow Colloquium, Amsterdam, 24 April 2015 21
![Page 22: Abstractions and Open APIs in Networking - OS3 · PDF fileAbstractions and Open APIs in Networking Ronald van der Pol Outline Abstractions Open Hardware & Open Compute Project](https://reader031.vdocuments.site/reader031/viewer/2022030409/5a92f66f7f8b9adb5c8b97d9/html5/thumbnails/22.jpg)
Software Defined Networking
Separation between Control Plane (policy) and Data Plane (packet forwarding). Logically centralised policy (control plane). Program (controller) that reads policy configurations, compiles it to forwarding rules and sends those to network elements à Software Defined Networking. “Dumb” switches (data plane). Firmware does packet frame forwarding only. Standardised protocol between switches and controllers (e.g. OpenFlow). Possibility of different vendors for switches and controllers. More competition. SNE SDN & OpenFlow Colloquium, Amsterdam, 24 April 2015 22/65
![Page 23: Abstractions and Open APIs in Networking - OS3 · PDF fileAbstractions and Open APIs in Networking Ronald van der Pol Outline Abstractions Open Hardware & Open Compute Project](https://reader031.vdocuments.site/reader031/viewer/2022030409/5a92f66f7f8b9adb5c8b97d9/html5/thumbnails/23.jpg)
Traditional Networking
SNE SDN & OpenFlow Colloquium, Amsterdam, 24 April 2015
Routing and Switching Protocols
23/65
![Page 24: Abstractions and Open APIs in Networking - OS3 · PDF fileAbstractions and Open APIs in Networking Ronald van der Pol Outline Abstractions Open Hardware & Open Compute Project](https://reader031.vdocuments.site/reader031/viewer/2022030409/5a92f66f7f8b9adb5c8b97d9/html5/thumbnails/24.jpg)
SDN Architecture
SNE SDN & OpenFlow Colloquium, Amsterdam, 24 April 2015
APP APP APP APP
-------- Open Northbound API(s) --------
-------------------- Open Southbound API(s) --------------------
Controller Framework(Network Operating System)
24/65
![Page 25: Abstractions and Open APIs in Networking - OS3 · PDF fileAbstractions and Open APIs in Networking Ronald van der Pol Outline Abstractions Open Hardware & Open Compute Project](https://reader031.vdocuments.site/reader031/viewer/2022030409/5a92f66f7f8b9adb5c8b97d9/html5/thumbnails/25.jpg)
OpenFlow
OpenFlow is low level language to manipulate switch forwarding table. OpenFlow is the protocol between controller and switch. Standardised protocol. Many commercial available OpenFlow switches available. Traditional Ethernet switches with an OpenFlow API. Dedicated OpenFlow switches. Many open source and proprietary OpenFlow controllers available.
SNE SDN & OpenFlow Colloquium, Amsterdam, 24 April 2015 25/65
![Page 26: Abstractions and Open APIs in Networking - OS3 · PDF fileAbstractions and Open APIs in Networking Ronald van der Pol Outline Abstractions Open Hardware & Open Compute Project](https://reader031.vdocuments.site/reader031/viewer/2022030409/5a92f66f7f8b9adb5c8b97d9/html5/thumbnails/26.jpg)
Data and Control Plane Separation
Control Plane
Data Plane
Control Plane
Data Plane
OpenFlowprotocol
EthernetSwitch
OpenFlowSwitch
SNE SDN & OpenFlow Colloquium, Amsterdam, 24 April 2015 26/65
![Page 27: Abstractions and Open APIs in Networking - OS3 · PDF fileAbstractions and Open APIs in Networking Ronald van der Pol Outline Abstractions Open Hardware & Open Compute Project](https://reader031.vdocuments.site/reader031/viewer/2022030409/5a92f66f7f8b9adb5c8b97d9/html5/thumbnails/27.jpg)
OpenFlow Controlled Network
OpenFlow Application
OpenFlow Protocol
OpenFlow Controller
SNE SDN & OpenFlow Colloquium, Amsterdam, 24 April 2015 27/65
![Page 28: Abstractions and Open APIs in Networking - OS3 · PDF fileAbstractions and Open APIs in Networking Ronald van der Pol Outline Abstractions Open Hardware & Open Compute Project](https://reader031.vdocuments.site/reader031/viewer/2022030409/5a92f66f7f8b9adb5c8b97d9/html5/thumbnails/28.jpg)
OpenFlow Standardisation
OpenFlow is standardised by the Open Networking Foundation (ONF). ONF is a non-profit consortium. Founded in March 2011 by Deutsche Telecom, Facebook, Google, Microsoft, Verizon and Yahoo! Most vendors in ICT and networking are members now. Mission: The Open Networking Foundation (ONF) is a user-driven organization dedicated to the promotion and adoption of Software Defined Networking (SDN) through open standards development.
SNE SDN & OpenFlow Colloquium, Amsterdam, 24 April 2015 28/65
![Page 29: Abstractions and Open APIs in Networking - OS3 · PDF fileAbstractions and Open APIs in Networking Ronald van der Pol Outline Abstractions Open Hardware & Open Compute Project](https://reader031.vdocuments.site/reader031/viewer/2022030409/5a92f66f7f8b9adb5c8b97d9/html5/thumbnails/29.jpg)
OpenFlow Protocol Standards
OpenFlow 1.0.0 (December 2009) Most widely used version OpenFlow 1.1.0 (February 2011) OpenFlow 1.2 (December 2011) IPv6 support, extensible matches OpenFlow 1.3.0 (June 2012) Flexible table miss, per flow meters, PBB support OpenFlow 1.4.0 (October 2013) OF-Config 1.0 (December 2011) OF-Config 1.1 (January 2012) OF-Config 1.2 (2014) OpenFlow Test Interoperability Event technical papers
SNE SDN & OpenFlow Colloquium, Amsterdam, 24 April 2015 29/65
![Page 30: Abstractions and Open APIs in Networking - OS3 · PDF fileAbstractions and Open APIs in Networking Ronald van der Pol Outline Abstractions Open Hardware & Open Compute Project](https://reader031.vdocuments.site/reader031/viewer/2022030409/5a92f66f7f8b9adb5c8b97d9/html5/thumbnails/30.jpg)
OpenFlow Protocol
Insert flow forwarding entries in switches. Send packets to OpenFlow switch data path. Receive packets from OpenFlow switch data path. Retrieve data path traffic statistics from OpenFlow switch. Retrieve flow tables from OpenFlow switch. Retrieve parameters from OpenFlow switch. E.g. number and properties of ports.
SNE SDN & OpenFlow Colloquium, Amsterdam, 24 April 2015 30/65
![Page 31: Abstractions and Open APIs in Networking - OS3 · PDF fileAbstractions and Open APIs in Networking Ronald van der Pol Outline Abstractions Open Hardware & Open Compute Project](https://reader031.vdocuments.site/reader031/viewer/2022030409/5a92f66f7f8b9adb5c8b97d9/html5/thumbnails/31.jpg)
OpenFlow Components
SNE SDN & OpenFlow Colloquium, Amsterdam, 24 April 2015
OpenFlow Switch
OpenFlow Controller
OpenFlowProtocol
TCPSSLTLS
OpenFlow Channel
FlowTable
FlowTablepipeline
Group Table
31/65
![Page 32: Abstractions and Open APIs in Networking - OS3 · PDF fileAbstractions and Open APIs in Networking Ronald van der Pol Outline Abstractions Open Hardware & Open Compute Project](https://reader031.vdocuments.site/reader031/viewer/2022030409/5a92f66f7f8b9adb5c8b97d9/html5/thumbnails/32.jpg)
Flow Table
SNE SDN & OpenFlow Colloquium, Amsterdam, 24 April 2015
Matching rule #1 Counter Action #1
Matching rule #2 Counter Action #2
Matching rule #3 Counter Action #3
Matching rule #4 Counter Action #4
Matching rule #5 Counter Action #5
Matching rule #6 Counter Action #6
Matching rule #7 Counter Action #7
32/65
![Page 33: Abstractions and Open APIs in Networking - OS3 · PDF fileAbstractions and Open APIs in Networking Ronald van der Pol Outline Abstractions Open Hardware & Open Compute Project](https://reader031.vdocuments.site/reader031/viewer/2022030409/5a92f66f7f8b9adb5c8b97d9/html5/thumbnails/33.jpg)
Table Pipeline
SNE SDN & OpenFlow Colloquium, Amsterdam, 24 April 2015
table0
table1
tablen
ExecuteAction
Set
packet in packet outIngressPort
ActionSet = {}
ActionSet
Packet +IngressPort +
metadata Packet
ActionSet
33/65
![Page 34: Abstractions and Open APIs in Networking - OS3 · PDF fileAbstractions and Open APIs in Networking Ronald van der Pol Outline Abstractions Open Hardware & Open Compute Project](https://reader031.vdocuments.site/reader031/viewer/2022030409/5a92f66f7f8b9adb5c8b97d9/html5/thumbnails/34.jpg)
Header Matching (OF 1.3)
Input port Metadata passed between tables Ethernet source/destination address Ethernet type VLAN ID VLAN priority IP DSCP (6 bits in ToS field) IP ECN (2 bits in ToS field) IP protocol IPv4/IPv6 source/destination address TCP/UDP/SCTP source/destination port ICMP/ICMPv6 type/code ARP opcode ARP src/tgt IPv4/hardware address IPv6 flow label, extension header ND target address ND src/tgt link layer address MPLS label, traffic class, bottom of stack bit PBB I-SID Logical port metadata
SNE SDN & OpenFlow Colloquium, Amsterdam, 24 April 2015 34/65
![Page 35: Abstractions and Open APIs in Networking - OS3 · PDF fileAbstractions and Open APIs in Networking Ronald van der Pol Outline Abstractions Open Hardware & Open Compute Project](https://reader031.vdocuments.site/reader031/viewer/2022030409/5a92f66f7f8b9adb5c8b97d9/html5/thumbnails/35.jpg)
Actions
Output port_nr Group group_id Drop Set-Queue queue_id Push-Tag/Pop-Tag ethertype Set-Field field_type value Change-TTL ttl
SNE SDN & OpenFlow Colloquium, Amsterdam, 24 April 2015 35/65
![Page 36: Abstractions and Open APIs in Networking - OS3 · PDF fileAbstractions and Open APIs in Networking Ronald van der Pol Outline Abstractions Open Hardware & Open Compute Project](https://reader031.vdocuments.site/reader031/viewer/2022030409/5a92f66f7f8b9adb5c8b97d9/html5/thumbnails/36.jpg)
Group Table
SNE SDN & OpenFlow Colloquium, Amsterdam, 24 April 2015
Identifier Group Type Counters Action Buckets
36/65
![Page 37: Abstractions and Open APIs in Networking - OS3 · PDF fileAbstractions and Open APIs in Networking Ronald van der Pol Outline Abstractions Open Hardware & Open Compute Project](https://reader031.vdocuments.site/reader031/viewer/2022030409/5a92f66f7f8b9adb5c8b97d9/html5/thumbnails/37.jpg)
Group Types
SNE SDN & OpenFlow Colloquium, Amsterdam, 24 April 2015
Indirect: Execute the single bucket in this group Usage: multiple flow entries can point to this group ID, bucket action can be IP routing next hop ALL: Execute all buckets Used for multicast and broadcast Select: Execute one bucket in the group Used for load balancing Fast Failover: Execute the first live bucket Each action bucket is associated with a port
37/65
![Page 38: Abstractions and Open APIs in Networking - OS3 · PDF fileAbstractions and Open APIs in Networking Ronald van der Pol Outline Abstractions Open Hardware & Open Compute Project](https://reader031.vdocuments.site/reader031/viewer/2022030409/5a92f66f7f8b9adb5c8b97d9/html5/thumbnails/38.jpg)
Flow Insertion
Proactive Flow entries are inserted in the OpenFlow switches before packets arrive Reactive Packets arriving at an OpenFlow switch without a matching flow entry are sent to OpenFlow controller. They examined by the controller after which flow entries are inserted in the switches
SNE SDN & OpenFlow Colloquium, Amsterdam, 24 April 2015 38/65
![Page 39: Abstractions and Open APIs in Networking - OS3 · PDF fileAbstractions and Open APIs in Networking Ronald van der Pol Outline Abstractions Open Hardware & Open Compute Project](https://reader031.vdocuments.site/reader031/viewer/2022030409/5a92f66f7f8b9adb5c8b97d9/html5/thumbnails/39.jpg)
Example of Proactive Flow Entries
Forward all packets between port 1 and 2 ovs-ofctl add-flow br0 in_port=1,actions=output:2 ovs-ofctl add-flow br0 in_port=2,actions=output:1 Forward all packets between access port 4 and trunk port 6 using VLAN ID 42 ovs-ofctl add-flow br0 in_port=4, actions=push_vlan:0x8100,set_field:42->vlan_vid,output:6 ovs-ofctl add-flow br0 in_port=6, actions=strip_vlan,output:4
SNE SDN & OpenFlow Colloquium, Amsterdam, 24 April 2015 39/65
![Page 40: Abstractions and Open APIs in Networking - OS3 · PDF fileAbstractions and Open APIs in Networking Ronald van der Pol Outline Abstractions Open Hardware & Open Compute Project](https://reader031.vdocuments.site/reader031/viewer/2022030409/5a92f66f7f8b9adb5c8b97d9/html5/thumbnails/40.jpg)
Open Networking Research Center
Located at Stanford University & UC Berkeley Sponsors: CableLabs, Cisco, Ericsson, Google, Hewlett Packard, Huawei, Intel, Juniper, NEC, NTT Docomo, Texas Instruments, Vmware People: Nick McKeown @ Stanford University Scott Shenker @ UC Berkeley http://onrc.stanford.edu/
SNE SDN & OpenFlow Colloquium, Amsterdam, 24 April 2015 40/65
![Page 41: Abstractions and Open APIs in Networking - OS3 · PDF fileAbstractions and Open APIs in Networking Ronald van der Pol Outline Abstractions Open Hardware & Open Compute Project](https://reader031.vdocuments.site/reader031/viewer/2022030409/5a92f66f7f8b9adb5c8b97d9/html5/thumbnails/41.jpg)
ON.LAB
Headed by Guru Parulkar Professor at Stanford University Build open source OpenFlow tools and platforms Beacon, NOX, FlowVisor, Mininet http://onlab.us/
SNE SDN & OpenFlow Colloquium, Amsterdam, 24 April 2015 41/65
![Page 42: Abstractions and Open APIs in Networking - OS3 · PDF fileAbstractions and Open APIs in Networking Ronald van der Pol Outline Abstractions Open Hardware & Open Compute Project](https://reader031.vdocuments.site/reader031/viewer/2022030409/5a92f66f7f8b9adb5c8b97d9/html5/thumbnails/42.jpg)
ONOS Members
SNE SDN & OpenFlow Colloquium, Amsterdam, 24 April 2015 42/65
![Page 43: Abstractions and Open APIs in Networking - OS3 · PDF fileAbstractions and Open APIs in Networking Ronald van der Pol Outline Abstractions Open Hardware & Open Compute Project](https://reader031.vdocuments.site/reader031/viewer/2022030409/5a92f66f7f8b9adb5c8b97d9/html5/thumbnails/43.jpg)
ONOS
SNE SDN & OpenFlow Colloquium, Amsterdam, 24 April 2015 43/65
![Page 44: Abstractions and Open APIs in Networking - OS3 · PDF fileAbstractions and Open APIs in Networking Ronald van der Pol Outline Abstractions Open Hardware & Open Compute Project](https://reader031.vdocuments.site/reader031/viewer/2022030409/5a92f66f7f8b9adb5c8b97d9/html5/thumbnails/44.jpg)
OpenDaylight Members
SNE SDN & OpenFlow Colloquium, Amsterdam, 24 April 2015 44/65
![Page 45: Abstractions and Open APIs in Networking - OS3 · PDF fileAbstractions and Open APIs in Networking Ronald van der Pol Outline Abstractions Open Hardware & Open Compute Project](https://reader031.vdocuments.site/reader031/viewer/2022030409/5a92f66f7f8b9adb5c8b97d9/html5/thumbnails/45.jpg)
OpenDaylight Architecture
SNE SDN & OpenFlow Colloquium, Amsterdam, 24 April 2015 45/65
![Page 46: Abstractions and Open APIs in Networking - OS3 · PDF fileAbstractions and Open APIs in Networking Ronald van der Pol Outline Abstractions Open Hardware & Open Compute Project](https://reader031.vdocuments.site/reader031/viewer/2022030409/5a92f66f7f8b9adb5c8b97d9/html5/thumbnails/46.jpg)
Google Data Network
Google has two networks: I-Scale: User facing services (search, YouTube, Gmail, etc), high SLA G-Scale: Data centre traffic (intra and inter), lower SLA, perfect for OpenFlow testing OpenFlow introduced in G-Scale network since mid 2010 Experience/benefits of introducing OpenFlow: Better Traffic Engineering (global view of network) Centralised Traffic Engineering much faster on a 32 core server (25-50 times as fast) than on slow CPUs inside switches Software development for a high performance server with modern software tools (debuggers, etc) much easier and faster and produces higher quality software than development for an embedded system (router/switch) with slow CPU and little memory
SNE SDN & OpenFlow Colloquium, Amsterdam, 24 April 2015 46/65
![Page 47: Abstractions and Open APIs in Networking - OS3 · PDF fileAbstractions and Open APIs in Networking Ronald van der Pol Outline Abstractions Open Hardware & Open Compute Project](https://reader031.vdocuments.site/reader031/viewer/2022030409/5a92f66f7f8b9adb5c8b97d9/html5/thumbnails/47.jpg)
Google Data Network
SNE SDN & OpenFlow Colloquium, Amsterdam, 24 April 2015 47/65
![Page 48: Abstractions and Open APIs in Networking - OS3 · PDF fileAbstractions and Open APIs in Networking Ronald van der Pol Outline Abstractions Open Hardware & Open Compute Project](https://reader031.vdocuments.site/reader031/viewer/2022030409/5a92f66f7f8b9adb5c8b97d9/html5/thumbnails/48.jpg)
Google OpenFlow Switch (source Google)
SNE SDN & OpenFlow Colloquium, Amsterdam, 24 April 2015 48/65
![Page 49: Abstractions and Open APIs in Networking - OS3 · PDF fileAbstractions and Open APIs in Networking Ronald van der Pol Outline Abstractions Open Hardware & Open Compute Project](https://reader031.vdocuments.site/reader031/viewer/2022030409/5a92f66f7f8b9adb5c8b97d9/html5/thumbnails/49.jpg)
Google’s OpenFlow Deployment
SNE SDN & OpenFlow Colloquium, Amsterdam, 24 April 2015 *RRJOH�&RQILGHQWLDO�DQG�3URSULHWDU\
*�6FDOH�:$1�8VDJH
([LW�WHVWLQJ��RSW�LQ��QHWZRUN
6'1�UROORXW
6'1�IXOO\�'HSOR\HG
&HQWUDO�7('HSOR\HG
49/65
![Page 50: Abstractions and Open APIs in Networking - OS3 · PDF fileAbstractions and Open APIs in Networking Ronald van der Pol Outline Abstractions Open Hardware & Open Compute Project](https://reader031.vdocuments.site/reader031/viewer/2022030409/5a92f66f7f8b9adb5c8b97d9/html5/thumbnails/50.jpg)
Google Data Network
Multiple controllers. 3, 5, 7 with Paxos election system. The whole network is emulated in a simulator. New software revisions can be tested in the simulator. Network events (e.g. link down) are sent to production servers + testbed. Testing in simulator but with real network events.
SNE SDN & OpenFlow Colloquium, Amsterdam, 24 April 2015 50/65
![Page 51: Abstractions and Open APIs in Networking - OS3 · PDF fileAbstractions and Open APIs in Networking Ronald van der Pol Outline Abstractions Open Hardware & Open Compute Project](https://reader031.vdocuments.site/reader031/viewer/2022030409/5a92f66f7f8b9adb5c8b97d9/html5/thumbnails/51.jpg)
Google OpenFlow Architecture
SNE SDN & OpenFlow Colloquium, Amsterdam, 24 April 2015
*RRJOH�&RQILGHQWLDO�DQG�3URSULHWDU\
0L[HG�6'1�'HSOR\PHQW
Ɣ 5HDG\�WR�LQWURGXFH�QHZ�IXQFWLRQDOLW\��H�J���7(
&OXVWHU�%RUGHU�5RXWHU
'DWD�&HQWHU�1HWZRUN
(%*3
,%*3�,6,6�WR�UHPRWH�VLWHV
4XDJJD 2)&
5&63D[RV
3D[RV3D[RV
2)$
2)$
2)$
2)$
2)$
2)$2)$
2)$
7(�6HUYHU
51/65
![Page 52: Abstractions and Open APIs in Networking - OS3 · PDF fileAbstractions and Open APIs in Networking Ronald van der Pol Outline Abstractions Open Hardware & Open Compute Project](https://reader031.vdocuments.site/reader031/viewer/2022030409/5a92f66f7f8b9adb5c8b97d9/html5/thumbnails/52.jpg)
Almost 100% Link Utilization
SNE SDN & OpenFlow Colloquium, Amsterdam, 24 April 2015 *RRJOH�&RQILGHQWLDO�DQG�3URSULHWDU\
6DPSOH�8WLOL]DWLRQ
52/65
![Page 53: Abstractions and Open APIs in Networking - OS3 · PDF fileAbstractions and Open APIs in Networking Ronald van der Pol Outline Abstractions Open Hardware & Open Compute Project](https://reader031.vdocuments.site/reader031/viewer/2022030409/5a92f66f7f8b9adb5c8b97d9/html5/thumbnails/53.jpg)
Google Data Network
Experience/benefits: Software development for a high performance server with modern software tools (debuggers, etc) much easier and faster and produces higher quality software than development for an embedded system (router/switch) with slow CPU and little memory. Centralised Traffic Engineering much faster on a 32 core server (25-50 times as fast).
SNE SDN & OpenFlow Colloquium, Amsterdam, 24 April 2015 53/65
![Page 54: Abstractions and Open APIs in Networking - OS3 · PDF fileAbstractions and Open APIs in Networking Ronald van der Pol Outline Abstractions Open Hardware & Open Compute Project](https://reader031.vdocuments.site/reader031/viewer/2022030409/5a92f66f7f8b9adb5c8b97d9/html5/thumbnails/54.jpg)
OpenFlow Network Service Prototype
SNE SDN & OpenFlow Colloquium, Amsterdam, 24 April 2015
GN3plus Open Call Project (CoCo). October 2013 – March 2015 (18 months). Budget Eur 216K. 16.4 person months. Partners: SURFnet (NL) & TNO (NL). Five work packages: WP1: use cases & market demand WP2: architecture, design & development WP3: experimental validation WP4: dissimination WP5: project management
54/65
![Page 55: Abstractions and Open APIs in Networking - OS3 · PDF fileAbstractions and Open APIs in Networking Ronald van der Pol Outline Abstractions Open Hardware & Open Compute Project](https://reader031.vdocuments.site/reader031/viewer/2022030409/5a92f66f7f8b9adb5c8b97d9/html5/thumbnails/55.jpg)
Community Connection (CoCo) Service
SNE SDN & OpenFlow Colloquium, Amsterdam, 24 April 2015
Goal of CoCo service: On-demand private multi-domain, multi-point networks. Connect laptops, VMs, storage, instruments, eScience resources. Each eScience community group can easily setup their own private CoCo instance via web portal. Based on OpenFlow programmable network infrastructure.
55/65
![Page 56: Abstractions and Open APIs in Networking - OS3 · PDF fileAbstractions and Open APIs in Networking Ronald van der Pol Outline Abstractions Open Hardware & Open Compute Project](https://reader031.vdocuments.site/reader031/viewer/2022030409/5a92f66f7f8b9adb5c8b97d9/html5/thumbnails/56.jpg)
Example CoCo Instance
SNE SDN & OpenFlow Colloquium, Amsterdam, 24 April 2015 56/65
![Page 57: Abstractions and Open APIs in Networking - OS3 · PDF fileAbstractions and Open APIs in Networking Ronald van der Pol Outline Abstractions Open Hardware & Open Compute Project](https://reader031.vdocuments.site/reader031/viewer/2022030409/5a92f66f7f8b9adb5c8b97d9/html5/thumbnails/57.jpg)
Forwarding in CoCo
SNE SDN & OpenFlow Colloquium, Amsterdam, 24 April 2015
CoCo OpenFlow application inserts flow forwarding entries. Forwarding based on MPLS label matching and forwarding. Label stack with two MPLS labels. Outer MPLS label used to identify egress PE switch. Inner MPLS label used to identify CoCo instance. Adding and removing MPLS labels done at edges (PE).
57/65
![Page 58: Abstractions and Open APIs in Networking - OS3 · PDF fileAbstractions and Open APIs in Networking Ronald van der Pol Outline Abstractions Open Hardware & Open Compute Project](https://reader031.vdocuments.site/reader031/viewer/2022030409/5a92f66f7f8b9adb5c8b97d9/html5/thumbnails/58.jpg)
CoCo Inter-Domain Architecture
SNE SDN & OpenFlow Colloquium, Amsterdam, 24 April 2015 58/65
customer c1 customer c2
customer c3
domain d4
domain d3domain d1
domain d2
data plane
control plane
CoCo agent a1
CoCo agent a2
CoCo agent a3CoCo agent a4
webportal
webportal
webportal
webportal
OpenFlow OpenFlowOpenFlow
OpenFlow
MPLSMPLS
BGP
MPLS
BGP
BGP
BGP
MPLS
![Page 59: Abstractions and Open APIs in Networking - OS3 · PDF fileAbstractions and Open APIs in Networking Ronald van der Pol Outline Abstractions Open Hardware & Open Compute Project](https://reader031.vdocuments.site/reader031/viewer/2022030409/5a92f66f7f8b9adb5c8b97d9/html5/thumbnails/59.jpg)
CoCo Inter-Domain Forwarding
SNE SDN & OpenFlow Colloquium, Amsterdam, 24 April 2015
CEPE P PE
PE P PE CE
VPN
customer c1 customer c2domain d1
domain d2
PE P PE
PEdomain d3
CE
customer c3
OF
OF
59/65
![Page 60: Abstractions and Open APIs in Networking - OS3 · PDF fileAbstractions and Open APIs in Networking Ronald van der Pol Outline Abstractions Open Hardware & Open Compute Project](https://reader031.vdocuments.site/reader031/viewer/2022030409/5a92f66f7f8b9adb5c8b97d9/html5/thumbnails/60.jpg)
• 5 sites • Co-located at SURFnet7 core
sites • 1GE overlay over SURFnet7 • Looped multi-stage • 4 redundant paths between
each pair of switches • Each site co-located with a
small OpenStack cloud • OpenDaylight controller • Initial OF application will offer
functionality for L3-VPN and L2 P2P
SURFnet OpenFlow Testbed
KIVI SDN Themabijeenkomst, 19 maart 2015
Zwolle
Nijmegen
Utrecht
Delft
Amsterdam
![Page 61: Abstractions and Open APIs in Networking - OS3 · PDF fileAbstractions and Open APIs in Networking Ronald van der Pol Outline Abstractions Open Hardware & Open Compute Project](https://reader031.vdocuments.site/reader031/viewer/2022030409/5a92f66f7f8b9adb5c8b97d9/html5/thumbnails/61.jpg)
Open vSwitch
SNE SDN & OpenFlow Colloquium, Amsterdam, 24 April 2015
Software switch that implements the OpenFlow protocol • Open Source project • Included in the Linux kernel, OpenStack, OpenNebula, … Developed by Nicira (startup founded in 2007) • Martin Casado (Stanford University) • Nick McKeown (Stanford University) • Scott Shenker (UC Berkeley)
Nicira was acquired by VMware in 2012 for USD 1.26 billion
61/65
![Page 62: Abstractions and Open APIs in Networking - OS3 · PDF fileAbstractions and Open APIs in Networking Ronald van der Pol Outline Abstractions Open Hardware & Open Compute Project](https://reader031.vdocuments.site/reader031/viewer/2022030409/5a92f66f7f8b9adb5c8b97d9/html5/thumbnails/62.jpg)
Open vSwitch in a Cloud Environment
SNE SDN & OpenFlow Colloquium, Amsterdam, 24 April 2015 62/65
![Page 63: Abstractions and Open APIs in Networking - OS3 · PDF fileAbstractions and Open APIs in Networking Ronald van der Pol Outline Abstractions Open Hardware & Open Compute Project](https://reader031.vdocuments.site/reader031/viewer/2022030409/5a92f66f7f8b9adb5c8b97d9/html5/thumbnails/63.jpg)
Network Functions Virtualisation (NFV)
SNE SDN & OpenFlow Colloquium, Amsterdam, 24 April 2015
ETSI Industry Specification Group. Goal: Provide Network Functions through virtualisation techniques using general purpose servers and storage devices. How: Replace proprietary hardware network appliances by consolidating the network functions as applications running on virtual machines.
63/65
![Page 64: Abstractions and Open APIs in Networking - OS3 · PDF fileAbstractions and Open APIs in Networking Ronald van der Pol Outline Abstractions Open Hardware & Open Compute Project](https://reader031.vdocuments.site/reader031/viewer/2022030409/5a92f66f7f8b9adb5c8b97d9/html5/thumbnails/64.jpg)
Summary
Networking moving to open hardware and open APIs Introduction of abstractions and hiding of complexity New companies focussing on one part of this new ecosystem Software is playing an increasingly important role in networking
SNE SDN & OpenFlow Colloquium, Amsterdam, 24 April 2015 64/65
![Page 65: Abstractions and Open APIs in Networking - OS3 · PDF fileAbstractions and Open APIs in Networking Ronald van der Pol Outline Abstractions Open Hardware & Open Compute Project](https://reader031.vdocuments.site/reader031/viewer/2022030409/5a92f66f7f8b9adb5c8b97d9/html5/thumbnails/65.jpg)
Ronal van der Pol [email protected]