software defined networking : primerpeeringforum.myix.my/sites/default/files/introduction to...
TRANSCRIPT
![Page 2: Software Defined Networking : Primerpeeringforum.myix.my/sites/default/files/Introduction to SDN.pdf · Software Defined Networking : Primer Muhammad Moinur Rahman m.moinur.rahman@dzcrd.com](https://reader030.vdocument.in/reader030/viewer/2022040222/5e40c2f540a3590da64b1354/html5/thumbnails/2.jpg)
History of Networking
• Blackbox networking equipments• Big name companies building switching/routing devices• Includes Proprietary/OEM Silicon Chip• Wrapped up with a closed source Operating System (e.g. A desktop
PC with MS Windows and MS Office)
![Page 3: Software Defined Networking : Primerpeeringforum.myix.my/sites/default/files/Introduction to SDN.pdf · Software Defined Networking : Primer Muhammad Moinur Rahman m.moinur.rahman@dzcrd.com](https://reader030.vdocument.in/reader030/viewer/2022040222/5e40c2f540a3590da64b1354/html5/thumbnails/3.jpg)
Disadvantages of Current Scenario
Technology was not designed keeping today in mind• Massive Scalability• Multi Tenant Networks• Virtualization• Cloud Computing• Mobility (Users/Devices/VM)
![Page 4: Software Defined Networking : Primerpeeringforum.myix.my/sites/default/files/Introduction to SDN.pdf · Software Defined Networking : Primer Muhammad Moinur Rahman m.moinur.rahman@dzcrd.com](https://reader030.vdocument.in/reader030/viewer/2022040222/5e40c2f540a3590da64b1354/html5/thumbnails/4.jpg)
Disadvantages of Current Scenario(Contd)
Protocols are Box Centric; Not Fabric Centric• Difficult to configure correctly(consistency)
• Difficult to add new features(upgrades)
• Difficult to debug(look at all devices)
![Page 5: Software Defined Networking : Primerpeeringforum.myix.my/sites/default/files/Introduction to SDN.pdf · Software Defined Networking : Primer Muhammad Moinur Rahman m.moinur.rahman@dzcrd.com](https://reader030.vdocument.in/reader030/viewer/2022040222/5e40c2f540a3590da64b1354/html5/thumbnails/5.jpg)
Disadvantages of Current Scenario(Contd)
Closed Systems (Vendor Hardware)• Stuck with given interfaces (CLI, SNMP, etc.)
• Hard to meaningfully collaborate
• Vendors hesitant to open up
• No way to add new features by yourself
ANSWER: Software Defined Networking
![Page 6: Software Defined Networking : Primerpeeringforum.myix.my/sites/default/files/Introduction to SDN.pdf · Software Defined Networking : Primer Muhammad Moinur Rahman m.moinur.rahman@dzcrd.com](https://reader030.vdocument.in/reader030/viewer/2022040222/5e40c2f540a3590da64b1354/html5/thumbnails/6.jpg)
What is SDN?
SDN is a framework to allow network administrators to automaticallyand dynamically manage and control a large number of networkdevices, services, topology, traffic paths, and packet handling (qualityof service) policies using high-level languages and APIs.Management includes provisioning, operating, monitoring, optimizing,and managing FCAPS (fault, configuration, accounting, performance,and security) in a multi-tenant environment.
![Page 7: Software Defined Networking : Primerpeeringforum.myix.my/sites/default/files/Introduction to SDN.pdf · Software Defined Networking : Primer Muhammad Moinur Rahman m.moinur.rahman@dzcrd.com](https://reader030.vdocument.in/reader030/viewer/2022040222/5e40c2f540a3590da64b1354/html5/thumbnails/7.jpg)
Networking Planes
• Data Plane• Carries Network User Traffic
• Control Panel• Carried Signalling Traffic
• Management Panel• Carries Administrative Traffic
![Page 8: Software Defined Networking : Primerpeeringforum.myix.my/sites/default/files/Introduction to SDN.pdf · Software Defined Networking : Primer Muhammad Moinur Rahman m.moinur.rahman@dzcrd.com](https://reader030.vdocument.in/reader030/viewer/2022040222/5e40c2f540a3590da64b1354/html5/thumbnails/8.jpg)
SDN Architecture
![Page 9: Software Defined Networking : Primerpeeringforum.myix.my/sites/default/files/Introduction to SDN.pdf · Software Defined Networking : Primer Muhammad Moinur Rahman m.moinur.rahman@dzcrd.com](https://reader030.vdocument.in/reader030/viewer/2022040222/5e40c2f540a3590da64b1354/html5/thumbnails/9.jpg)
Need for SDN
Virtualization• Use network resource
• without worrying about where it is physically located• how much it is• how it is organized
Orchestration• Should be able to control and manage thousands of devices with one command
Programmable• Should be able to change behavior on the fly
Dynamic Scaling• Should be able to change size, quantity, capacity
![Page 10: Software Defined Networking : Primerpeeringforum.myix.my/sites/default/files/Introduction to SDN.pdf · Software Defined Networking : Primer Muhammad Moinur Rahman m.moinur.rahman@dzcrd.com](https://reader030.vdocument.in/reader030/viewer/2022040222/5e40c2f540a3590da64b1354/html5/thumbnails/10.jpg)
Need for SDN - (Continued)
• Automation• To lower OpEx • Minimize manual involvement• Troubleshooting• Reduce downtime• Policy enforcement• Provisioning/Re-provisioning/Segmentation of resources• Add new workloads, sites, devices, and resources
• Visibility• Monitor resources, connectivity
![Page 11: Software Defined Networking : Primerpeeringforum.myix.my/sites/default/files/Introduction to SDN.pdf · Software Defined Networking : Primer Muhammad Moinur Rahman m.moinur.rahman@dzcrd.com](https://reader030.vdocument.in/reader030/viewer/2022040222/5e40c2f540a3590da64b1354/html5/thumbnails/11.jpg)
Need for SDN - (Continued)
• PerformanceOptimize network device utilization• Traffic engineering/Bandwidth management• Capacity optimization/Load balancing• High utilization• Fast failure handling
• Multi TenancyTenants need complete control over their • Addresses/Topology• Routing/Security
![Page 12: Software Defined Networking : Primerpeeringforum.myix.my/sites/default/files/Introduction to SDN.pdf · Software Defined Networking : Primer Muhammad Moinur Rahman m.moinur.rahman@dzcrd.com](https://reader030.vdocument.in/reader030/viewer/2022040222/5e40c2f540a3590da64b1354/html5/thumbnails/12.jpg)
Need for SDN (Continued)
Service IntegrationProvisioned on demand and placed appropriately on the traffic path• Load balancers• Firewalls• Intrusion Detection Systems (IDS)
![Page 13: Software Defined Networking : Primerpeeringforum.myix.my/sites/default/files/Introduction to SDN.pdf · Software Defined Networking : Primer Muhammad Moinur Rahman m.moinur.rahman@dzcrd.com](https://reader030.vdocument.in/reader030/viewer/2022040222/5e40c2f540a3590da64b1354/html5/thumbnails/13.jpg)
Alternative APIs
• Southbound APIs: XMPP (Juniper), OnePK (Cisco)• Northbound APIs: I2RS, I2AEX, ALTO• Overlay: VxLAN, TRILL, LISP, STT, NVO3, PWE3, L2VPN, L3VPN• Configuration API: NETCONF• Controller: PCE, ForCES
![Page 14: Software Defined Networking : Primerpeeringforum.myix.my/sites/default/files/Introduction to SDN.pdf · Software Defined Networking : Primer Muhammad Moinur Rahman m.moinur.rahman@dzcrd.com](https://reader030.vdocument.in/reader030/viewer/2022040222/5e40c2f540a3590da64b1354/html5/thumbnails/14.jpg)
History
Feb, 2011 - OpenFlow 1.1 ReleasedDec, 2011 - OpenFlow 1.2 ReleasedFeb, 2012 - “Floodlight” Project AnnouncedApr, 2012 - Google announces at ONFJul, 2012 - Vmware acquires NiciraApr, 2013 - “OpenDaylight” Released
![Page 15: Software Defined Networking : Primerpeeringforum.myix.my/sites/default/files/Introduction to SDN.pdf · Software Defined Networking : Primer Muhammad Moinur Rahman m.moinur.rahman@dzcrd.com](https://reader030.vdocument.in/reader030/viewer/2022040222/5e40c2f540a3590da64b1354/html5/thumbnails/15.jpg)
Hardware Internals
• Logical View of a Switch • Physical Architecture of a Switch
Switching
Fabric
Processor
ASIC AISC
Network O.S.
ASIC
ApplicationsApplications
![Page 16: Software Defined Networking : Primerpeeringforum.myix.my/sites/default/files/Introduction to SDN.pdf · Software Defined Networking : Primer Muhammad Moinur Rahman m.moinur.rahman@dzcrd.com](https://reader030.vdocument.in/reader030/viewer/2022040222/5e40c2f540a3590da64b1354/html5/thumbnails/16.jpg)
Internals of SDN
• Southbound API: decouples the switch hardware from control function– Data plane from control plane
• Switch Operating System: exposes switch hardware primitives
Network O.S.
ApplicationsApplicationsApplications
SouthboundAPI
SDN
Switch Operating System
Switch Hardware
Network O.S.
ASIC
ApplicationsApplications
Current SwitchVertical stack
SDN SwitchDecoupled
stack
![Page 17: Software Defined Networking : Primerpeeringforum.myix.my/sites/default/files/Introduction to SDN.pdf · Software Defined Networking : Primer Muhammad Moinur Rahman m.moinur.rahman@dzcrd.com](https://reader030.vdocument.in/reader030/viewer/2022040222/5e40c2f540a3590da64b1354/html5/thumbnails/17.jpg)
How SDN Works
Controller (N. O.S.)
ApplicationsApplicationsApplications
SouthboundAPI
Switch H.W
Switch O.S
Switch H.W
Switch O.S
![Page 18: Software Defined Networking : Primerpeeringforum.myix.my/sites/default/files/Introduction to SDN.pdf · Software Defined Networking : Primer Muhammad Moinur Rahman m.moinur.rahman@dzcrd.com](https://reader030.vdocument.in/reader030/viewer/2022040222/5e40c2f540a3590da64b1354/html5/thumbnails/18.jpg)
Implications of SDNCurrent Networking SDN Enabled Environment
Controller (N. O.S.)
ApplicationsApplicationsApplications
SouthboundAPI
Switch O.SSwitch HW
Switch O.SSwitch HW
Switch O.SSwitch HW
• Distributed protocols• Each switch has a brain• Hard to achieve optimal
solution• Network configured indirectly
• Configure protocols• Hope protocols converge
• Global view of the network• Applications can achieve optimal
• Southbound API gives fine grained control over switch
• Network configured directly• Allows automation• Allows definition of new interfaces
Network O.S.
ASIC
ApplicationsApplications
Network O.S.
ASIC
ApplicationsApplications
Network O.S.
ASIC
ApplicationsApplications
![Page 19: Software Defined Networking : Primerpeeringforum.myix.my/sites/default/files/Introduction to SDN.pdf · Software Defined Networking : Primer Muhammad Moinur Rahman m.moinur.rahman@dzcrd.com](https://reader030.vdocument.in/reader030/viewer/2022040222/5e40c2f540a3590da64b1354/html5/thumbnails/19.jpg)
19
The SDN Stack
ControllerNOX
SlicingSoftwareFlowVisor
FlowVisorConsole
19
ApplicationsLAVIENVI (GUI) …n-Casting
NetFPGASoftware
Ref. SwitchBroadcom Ref. Switch
OpenWRTPCEngine WiFi AP
Commercial Switches
OpenFlowSwitches
RyU
Monitoring/debugging tools
oflopsoftrace openseer
Open vSwitch
HP, IBM, NEC, Pronto, Juniper.. and many more
Beacon Trema FloodLight
Source: SDN Tutorial by B. HellerOpen Networking Summit, April 2012
![Page 20: Software Defined Networking : Primerpeeringforum.myix.my/sites/default/files/Introduction to SDN.pdf · Software Defined Networking : Primer Muhammad Moinur Rahman m.moinur.rahman@dzcrd.com](https://reader030.vdocument.in/reader030/viewer/2022040222/5e40c2f540a3590da64b1354/html5/thumbnails/20.jpg)
Dimensions of SDN Environments:Vendor Devices
Vertical Stacks
• Vendor bundles switch and switch OS
• Restricted to vendor OS and vendor interface
• Low operational overhead• One stop shop
Whitebox Networking
• Vendor provides hardware with no switch OS
• Switch OS provided by third party
• Flexibility in picking OS
• High operational overhead• Must deal with multiple vendors
![Page 21: Software Defined Networking : Primerpeeringforum.myix.my/sites/default/files/Introduction to SDN.pdf · Software Defined Networking : Primer Muhammad Moinur Rahman m.moinur.rahman@dzcrd.com](https://reader030.vdocument.in/reader030/viewer/2022040222/5e40c2f540a3590da64b1354/html5/thumbnails/21.jpg)
Dimensions of SDN Environments:Switch Hardware
Virtual: Overlay• Pure software implementation
• Assumes programmable virtual switches
• Run in Hypervisor or in the OS
• Larger Flow Table entries (more memory and CPU)
• Backward compatible• Physical switches run traditional protocols
• Traffic sent in tunnels• Lack of visibility into physical network
Physical: Underlay• Fine grained control and visibility into network
• Assumes specialized hardware
• Limited Flow Table entries
![Page 22: Software Defined Networking : Primerpeeringforum.myix.my/sites/default/files/Introduction to SDN.pdf · Software Defined Networking : Primer Muhammad Moinur Rahman m.moinur.rahman@dzcrd.com](https://reader030.vdocument.in/reader030/viewer/2022040222/5e40c2f540a3590da64b1354/html5/thumbnails/22.jpg)
Dimensions of SDN Environments: Southbound Interface
OpenFlow
• Flexible matching• L2, L3, VLAN, MPLS
• Flexible actions• Encapsulation: IP-in-IP• Address rewriting:
• IP address
• Mac address
BGP/XMPP/IS-IS/NetConf
• Limited matching• IS-IS: L3• BGP+MPLS: L3+MPLS
• Limited actions• L3/l2 forwarding• Encapsulation
![Page 23: Software Defined Networking : Primerpeeringforum.myix.my/sites/default/files/Introduction to SDN.pdf · Software Defined Networking : Primer Muhammad Moinur Rahman m.moinur.rahman@dzcrd.com](https://reader030.vdocument.in/reader030/viewer/2022040222/5e40c2f540a3590da64b1354/html5/thumbnails/23.jpg)
Dimensions of SDN Environments:Controller Types
Modular Controllers• Application code manipulates forwarding
rules• E.g. OpenDaylight, Floodlight
• Written in imperative languages• Java, C++, Python
• Dominant controller style
High Level Controllers• Application code specifies declarative policies
• E.g. Frenetic, McNettle
• Application code is verifiable• Amendable to formal verification
• Written in functional languages• Nettle, OCamal
![Page 24: Software Defined Networking : Primerpeeringforum.myix.my/sites/default/files/Introduction to SDN.pdf · Software Defined Networking : Primer Muhammad Moinur Rahman m.moinur.rahman@dzcrd.com](https://reader030.vdocument.in/reader030/viewer/2022040222/5e40c2f540a3590da64b1354/html5/thumbnails/24.jpg)
Ecosystem
Name Controller Type Southbound API SDN Device SDN Flavor
Bigswitch Modular/Floodlight Openflow 1.3 Whitebox(indigo) Underlay+Overlay
Juniper OpenContrail XMPP/NetCONF/BGP+MPLS
Vertical Stack(Proprietary JunOS) Overlay
Cisco Openflow+Proprietary Openflow 1.3 Vertical Stack(Proprietary IOS/NxOS/IOS-XR) Underlay+Overlay
Arista Openflow+Proprietary Openflow 1.3 Vertical Stack Underlay
Broadcom Openflow+Proprietary Openflow 1.3 Vertical Stack Underlay
HP Openflow Openflow 1.3-1.4 Vertical Stack Underlay
Dell Openflow Openflow 1.3 Vertical Stack Underlay
FloodLight Openflow Openflow 1.0-1.4 Whitebox Underlay+Overlay
Alcatel Modular BGP+MPLS Vertical Stack Overlay
![Page 25: Software Defined Networking : Primerpeeringforum.myix.my/sites/default/files/Introduction to SDN.pdf · Software Defined Networking : Primer Muhammad Moinur Rahman m.moinur.rahman@dzcrd.com](https://reader030.vdocument.in/reader030/viewer/2022040222/5e40c2f540a3590da64b1354/html5/thumbnails/25.jpg)
OpenFlow
• Developed in Stanford• Standardized by Open Networking Foundation (ONF)
• Current Version 1.4• Version implemented by switch vendors: 1.3
• Allows control of underlay + overlay• Overlay switches: OpenVSwitch/Indigo-light
PC
![Page 26: Software Defined Networking : Primerpeeringforum.myix.my/sites/default/files/Introduction to SDN.pdf · Software Defined Networking : Primer Muhammad Moinur Rahman m.moinur.rahman@dzcrd.com](https://reader030.vdocument.in/reader030/viewer/2022040222/5e40c2f540a3590da64b1354/html5/thumbnails/26.jpg)
SDN vs OpenFlow
• Leading SDN protocol
• Decouples control and data plane by giving a controller the ability to
install flow rules on switches(Bare Metal)
• Hardware or software switches can use OpenFlow
• Spec driven by ONF
![Page 27: Software Defined Networking : Primerpeeringforum.myix.my/sites/default/files/Introduction to SDN.pdf · Software Defined Networking : Primer Muhammad Moinur Rahman m.moinur.rahman@dzcrd.com](https://reader030.vdocument.in/reader030/viewer/2022040222/5e40c2f540a3590da64b1354/html5/thumbnails/27.jpg)
How SDN Works: OpenFlow
Controller (N. O.S.)
ApplicationsApplicationsApplications
SouthboundAPI
Switch H.W
Switch O.S
Switch H.W
Switch O.S
OpenFlowOpenFlow
![Page 28: Software Defined Networking : Primerpeeringforum.myix.my/sites/default/files/Introduction to SDN.pdf · Software Defined Networking : Primer Muhammad Moinur Rahman m.moinur.rahman@dzcrd.com](https://reader030.vdocument.in/reader030/viewer/2022040222/5e40c2f540a3590da64b1354/html5/thumbnails/28.jpg)
OpenFlow: Anatomy of a Flow Table Entry
SwitchPort
MACsrc
MACdst
Ethtype
VLANID
IPSrc
IPDst
IPProt
L4sport
L4dport
Match Action Counter
1. Forward packet to zero or more ports2. Encapsulate and forward to controller3. Send to normal processing pipeline4. Modify Fields
When to delete the entry
VLANpcp
IPToS
Priority Time-out
What order to process the rule
# of Packet/Bytes processed by the rule
![Page 29: Software Defined Networking : Primerpeeringforum.myix.my/sites/default/files/Introduction to SDN.pdf · Software Defined Networking : Primer Muhammad Moinur Rahman m.moinur.rahman@dzcrd.com](https://reader030.vdocument.in/reader030/viewer/2022040222/5e40c2f540a3590da64b1354/html5/thumbnails/29.jpg)
ExamplesSwitching
*
SwitchPort
MACsrc
MACdst
Ethtype
VLANID
IPSrc
IPDst
IPProt
TCPsport
TCPdport
Action
* 00:1f:.. * * * * * * * port6
Flow Switching
port3
SwitchPort
MACsrc
MACdst
Ethtype
VLANID
IPSrc
IPDst
IPProt
TCPsport
TCPdport
Action
00:20.. 00:1f.. 0800 vlan1 1.2.3.4 5.6.7.8 4 17264 80 port6
Firewall
*
SwitchPort
MACsrc
MACdst
Ethtype
VLANID
IPSrc
IPDst
IPProt
TCPsport
TCPdport
Action
* * * * * * * * 22 drop
29
![Page 30: Software Defined Networking : Primerpeeringforum.myix.my/sites/default/files/Introduction to SDN.pdf · Software Defined Networking : Primer Muhammad Moinur Rahman m.moinur.rahman@dzcrd.com](https://reader030.vdocument.in/reader030/viewer/2022040222/5e40c2f540a3590da64b1354/html5/thumbnails/30.jpg)
Data Path (Hardware)
Control Path OpenFlow
OpenFlow Controller
OpenFlow Protocol (SSL/TCP)
30
OpenFlow: How it works
![Page 31: Software Defined Networking : Primerpeeringforum.myix.my/sites/default/files/Introduction to SDN.pdf · Software Defined Networking : Primer Muhammad Moinur Rahman m.moinur.rahman@dzcrd.com](https://reader030.vdocument.in/reader030/viewer/2022040222/5e40c2f540a3590da64b1354/html5/thumbnails/31.jpg)
SDN Components : Hardwares
OpenFlow Compliant (1.0-1.4) Switch
• HP 8200 ZL, 6600, 6200ZL
• Brocade 5400ZL, 3500
• IBM NetIron
• Juniper OCX1100
• Baremetal Switch
• OpenVSwitch
![Page 32: Software Defined Networking : Primerpeeringforum.myix.my/sites/default/files/Introduction to SDN.pdf · Software Defined Networking : Primer Muhammad Moinur Rahman m.moinur.rahman@dzcrd.com](https://reader030.vdocument.in/reader030/viewer/2022040222/5e40c2f540a3590da64b1354/html5/thumbnails/32.jpg)
SDN Components : Controllers
OpenFlow Compliant (1.0-1.4) Controller
• POX: (Python) Pox as a general SDN controller that supports OpenFlow. It has a high-level SDN API including a queriable topology graph and support for virtualization.
• IRIS: (Java) a Resursive SDN Openflow Controller created by IRIS Research Team of ETRI.
• MUL: (C) MūL, is an openflow (SDN) controller.
• NOX: (C++/Python) NOX was the first OpenFlow controller.
• Jaxon: (Java) Jaxon is a NOX-dependent Java-based OpenFlow Controller.
• Trema: (C/Ruby) Trema is a full-stack framework for developing OpenFlow controllers in Ruby and C.
• Beacon: (Java) Beacon is a Java-based controller that supports both event-based and threaded operation.
• Floodlight: (Java) The Floodlight controller is Java-based OpenFlow Controller. It was forked from the Beacon controller, originally developed by David Erickson at Stanford.
• Maestro: (Java) Maestro is an OpenFlow "operating system" for orchestrating network control applications.
• NDDI - OESS: OESS is an application to configure and control OpenFlow Enabled switches through a very simple and user friendly User Interface.
• Ryu: (Python) Ryu is an open-sourced Network Operating System (NOS) that supports OpenFlow.
• NodeFlow (JavaScript) NodeFlow is an OpenFlow controller written in pure JavaScript for Node.JS.
• ovs-controller (C) Trivial reference controller packaged with Open vSwitch.
![Page 33: Software Defined Networking : Primerpeeringforum.myix.my/sites/default/files/Introduction to SDN.pdf · Software Defined Networking : Primer Muhammad Moinur Rahman m.moinur.rahman@dzcrd.com](https://reader030.vdocument.in/reader030/viewer/2022040222/5e40c2f540a3590da64b1354/html5/thumbnails/33.jpg)
Refereces
1. SDN – The Next Wave of Networking – Siva Valiappan
![Page 34: Software Defined Networking : Primerpeeringforum.myix.my/sites/default/files/Introduction to SDN.pdf · Software Defined Networking : Primer Muhammad Moinur Rahman m.moinur.rahman@dzcrd.com](https://reader030.vdocument.in/reader030/viewer/2022040222/5e40c2f540a3590da64b1354/html5/thumbnails/34.jpg)
Questions