Classical network architecture Distributed control plane Distributed routing


Classical network architecture Distributed control plane Distributed routing protocols: OSPF, IS-IS, BGP, etc. Feature Operating System Feature Specialized Packet Forwarding Hardware Feature Operating System Specialized Packet Forwarding Hardware

From Vertically Integrated to … Feature Network OS Feature Operating System Feature Specialized Packet Forwarding Hardware Feature Operating System Specialized Packet Forwarding Hardware

Software Defined Network Well-defined open API Feature Constructs a logical map of the network Network OS Open vendor agnostic protocol Open. Flow Simple Packet Forwarding Hardware Simple Packet Forwarding Hardware

Network OS: distributed system that creates a consistent, up-to-date network view Runs on servers (controllers) in the network Uses an open protocol to: Get state information from forwarding elements Give control directives to forwarding elements

Open. Flow is a protocol for remotely controlling the forwarding table of a switch or router is one element of SDN

The SDN Stack oftrace oflops ENVI (GUI) NOX LAVI Beacon Flow. Visor Console Commercial Switches HP, NEC, Pronto, Juniper. . and many more Monitoring/ debugging tools openseer Trema Applications … n-Casting Maestro … Controller Slicing Software Flow. Visor Software Ref. Switch Net. FPGA Broadcom Ref. Switch Open. WRT PCEngine Wi. Fi AP Open v. Switch Open. Flow Switches 7

8

Current SDN hardware (as of ~2010) Juniper MX-series NEC IP 8800 Wi. Max (NEC) HP Procurve 5400 Netgear 7324 PC Engines Pronto 3240/3290 Ciena Coredirector 9

Commercial Switches Vendor Models Virtualize? Notes HP Pro. Curve 5400 zl, 1 OF instance 6600, + per VLAN -LACP, VLAN and STP processing before Open. Flow -Wildcard rules or non-IP pkts processed in s/w -Header rewriting in s/w -CPU protects mgmt during loop NEC IP 8800, 1 OF instance + per VLAN -Open. Flow takes precedence -Most actions processed in hardware -MAC header rewriting in h/w Pronto/Pic a 8 3290, 3780, 3920, + -No legacy protocols (like VLAN and STP) -Most actions processed in hardware -MAC header rewriting in h/w 1 OF instance per switch Pic 10

11

Open Controllers Name Lang Platform(s) License Original Author Notes Open. Flow Reference C Linux Open. Flow License Stanford/Nici ra 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 Route. Flow ? Linux Apache CPq. D (Brazil) virtual IP routing as a service 12

Open Controllers (2) Name Lang Platform(s) License Original Author Open. Faucet Python Notes Library Mirage OCaml POX Python Any Floodlight Java Any Big. Switch, based on Beacon Too many to easily list of keep track of… 13

http: //www. openflow. org/wk/index. php/Open. Flow_Tutorial 14

Tutorial. Flow Today’s Hands-On Session Part 5 of Open. Flow Tutorial: http: //www. openflow. org/wk/index. php/Open. Flow_Tutorial 15

Tutorial Setup c 0 Controller port 6633 loopback (127. 0. 0. 1: 6633) Open. Flow Tutorial 3 hosts-1 switch topology s 1 Open. Flow Switch s 1 -eth 0 h 1 10. 0. 0. 2 s 1 -eth 1 h 3 -eth 0 h 2 10. 0. 0. 3 virtual hosts loopback (127. 0. 0. 1: 6634) dpctl (user space process) s 1 -eth 2 h 4 -eth 0 h 3 10. 0. 0. 4 16

This talk wouldn’t be possible without: Past slides from: Brandon Heller Nick Mc. Keown
- Slides: 17