Motivation Software Defined Networking (SDN) Network Virtualization Use Cases Deployment on University Campuses Cloud IaaS Platform
Software Defined Networking and Network
Virtualization
Aryan TaheriMonfared
aryan.taherimonfared@uis.no
October 02, 2013
Agenda
1
Motivation
2
Software Defined Networking (SDN)
Definition
What is OpenFlow?
Advantages
Disdvantages
3
Network Virtualization
Definition
4
Use Cases
5
Deployment on University Campuses
Challenges
Stakeholders
How?
Examples
6
Cloud IaaS Platform
Bird View
Data Centre View
Networking inside a Rack
Tenant Network Logical View
Challenges
Examples
Motivation Software Defined Networking (SDN) Network Virtualization Use Cases Deployment on University Campuses Cloud IaaS Platform
Outline
1
Motivation
2
Software Defined Networking (SDN)
Definition
What is OpenFlow?
Advantages
Disdvantages
3
Network Virtualization
Definition
4
Use Cases
5
Deployment on University Campuses
Challenges
Stakeholders
How?
Examples
6
Cloud IaaS Platform
Bird View
Data Centre View
Networking inside a Rack
Tenant Network Logical View
Challenges
Examples
Traditional Data Network
Functionality implemented in dedicated appliance or ASIC
Proprietary appliances/APIs
Individual configuration
Time consuming/error prone configuration
Automating tasks by (home-grown) scripts
Lack of communication between application & network
Slow & costly service innovation
Motivation Software Defined Networking (SDN) Network Virtualization Use Cases Deployment on University Campuses Cloud IaaS Platform
Definition What is OpenFlow? Advantages Disdvantages
Outline
1
Motivation
2
Software Defined Networking (SDN)
Definition
What is OpenFlow?
Advantages
Disdvantages
3
Network Virtualization
Definition
4
Use Cases
5
Deployment on University Campuses
Challenges
Stakeholders
How?
Examples
6
Cloud IaaS Platform
Bird View
Data Centre View
Networking inside a Rack
Tenant Network Logical View
Challenges
Examples
Problem?
Nick McKeown See references.
Motivation Software Defined Networking (SDN) Network Virtualization Use Cases Deployment on University Campuses Cloud IaaS Platform
Definition
What is OpenFlow? Advantages Disdvantages
What is Software Defined Networking?
Separating the control plane from the forwarding plane physically.
Controlling several forwarding devices with single control plane.
Making clear the distributed systems problem.
(⇒ Solve the problem once!)
Configuring flows from global view.
What is Software Defined Networking?
SDN is a mechanism not a solution
Provides: more control, better guarantees, NOT necessarily
simplicity
Can be combined with backup path/other decision-making process
Implementations: SANE, Ethane, OpenFlow
Motivation Software Defined Networking (SDN) Network Virtualization Use Cases Deployment on University Campuses Cloud IaaS Platform
Definition What is OpenFlow? Advantages Disdvantages
SDN is based on Abstraction
Forwarding Abstraction:
OpenFlow API ∼ x86 instruction set
State Distribution Abstraction:
Single state distribution mechanism, well-known convergence
properties, re-usable
(new protocol 9 new state distribution mech.)
Specification Abstraction:
Interacting with network as a single device
What is OpenFlow?
Network Operating Systems convey configuration of global network
view to actual physical devices
One possible definition of how to model the configuration of a
physical device
Motivation Software Defined Networking (SDN) Network Virtualization Use Cases Deployment on University Campuses Cloud IaaS Platform
Definition
What is OpenFlow?
Advantages Disdvantages
Traditional Switch
OpenFlow Capable Switch
Motivation Software Defined Networking (SDN) Network Virtualization Use Cases Deployment on University Campuses Cloud IaaS Platform
Definition
What is OpenFlow?
Advantages Disdvantages
OpenFlow Capable Switches
Distributed OpenFlow Controller
Motivation Software Defined Networking (SDN) Network Virtualization Use Cases Deployment on University Campuses Cloud IaaS Platform
Definition What is OpenFlow?
Advantages
Disdvantages
Pros:
Global view of network demands and fabric resource
Makes it easier to control diverse switches
Deterministic and dynamic flow placement
Efficient provisioning/releasing resources
⇒ Faster convergence
⇒ Higher utilization
⇒ More fault-tolerant
Cons:
OpenFlow is in early stages
Controllers are not mature yet
Upgrading HW/SW is required
Flow programming is not simple/fast
Northbound APIs in controllers are not standard (Adapting the same
application to different controllers)
Motivation Software Defined Networking (SDN) Network Virtualization Use Cases Deployment on University Campuses Cloud IaaS Platform
Definition
Outline
1
Motivation
2
Software Defined Networking (SDN)
Definition
What is OpenFlow?
Advantages
Disdvantages
3
Network Virtualization
Definition
4
Use Cases
5
Deployment on University Campuses
Challenges
Stakeholders
How?
Examples
6
Cloud IaaS Platform
Bird View
Data Centre View
Networking inside a Rack
Tenant Network Logical View
Challenges
Examples
What is Network Virtualization?
Faithful logical reproduction of physical network services.
Decoupling the (virtual) network services from the physical network.
Coexistence of multiple virtual networks on the same physical
substrate.
Simplifies administration.
It’s a solution.
SDN can be used for building Virtualized Networks.
Motivation Software Defined Networking (SDN) Network Virtualization Use Cases Deployment on University Campuses Cloud IaaS Platform
Outline
1
Motivation
2
Software Defined Networking (SDN)
Definition
What is OpenFlow?
Advantages
Disdvantages
3
Network Virtualization
Definition
4
Use Cases
5
Deployment on University Campuses
Challenges
Stakeholders
How?
Examples
6
Cloud IaaS Platform
Bird View
Data Centre View
Networking inside a Rack
Tenant Network Logical View
Challenges
Examples
SDN/VN Use-cases
Deployment on university campuses
WAN optimization
Flexible virtualization platform
Security services
Bandwidth on demand applications
Multipath networking for higher utilization and efficiency
Network administration
Mobility
Motivation Software Defined Networking (SDN) Network Virtualization Use Cases Deployment on University Campuses Cloud IaaS Platform
Challenges Stakeholders How? Examples
Outline
1
Motivation
2
Software Defined Networking (SDN)
Definition
What is OpenFlow?
Advantages
Disdvantages
3
Network Virtualization
Definition
4
Use Cases
5
Deployment on University Campuses
Challenges
Stakeholders
How?
Examples
6
Cloud IaaS Platform
Bird View
Data Centre View
Networking inside a Rack
Tenant Network Logical View
Challenges
Examples
Challenges in University Campus Network
Diverse use-cases: vending and training machines, fire alarms,
monitoring systems, BYOD, mission critical systems, innovation
infra. etc.
Diverse requirements: secure communication, openness,
virtualization, etc.
Vertical integration: Network HW, OS, and applications are tightly
integrated in a single product
Lack of open standard APIs: Inflexible home-grown scripts
High costs: WiFi, Videos, Big Data-Large Bandwidth
Mismatch between innovation pace in computing and networking
Motivation Software Defined Networking (SDN) Network Virtualization Use Cases Deployment on University Campuses Cloud IaaS Platform
Challenges
Stakeholders
How? Examples
Who will benefit from?
Campus Central IT: Operation efficiency
Networking Research Community: Using slices of production
network
Research Community (with huge datasets): High energy physics,
Bioinformatics, etc.
How can you benefit from?
Virtualization: Virtual networks independent of underlying
L1/L2/L3
Advanced Forwarding
Programmability: Developing other applications on top
Motivation Software Defined Networking (SDN) Network Virtualization Use Cases Deployment on University Campuses Cloud IaaS Platform
Challenges Stakeholders How? Examples
Examples:
Disaster recovery
On-demand provisioning/de-provisioning of network slices
Multipath TCP (e.g. Large volume data transfer)
Compliant virtualized networks (e.g. Payment Card Industry Data
Security Standard (PCI DSS) for POS)
Outline
1
Motivation
2
Software Defined Networking (SDN)
Definition
What is OpenFlow?
Advantages
Disdvantages
3
Network Virtualization
Definition
4
Use Cases
5
Deployment on University Campuses
Challenges
Stakeholders
How?
Examples
6
Cloud IaaS Platform
Bird View
Data Centre View
Networking inside a Rack
Tenant Network Logical View
Challenges
Examples
Motivation Software Defined Networking (SDN) Network Virtualization Use Cases Deployment on University Campuses Cloud IaaS Platform
Bird View
Data Centre View Networking inside a Rack Tenant Network Logical View Challenges
Examples
Multiple Cells
Single Cell
Motivation Software Defined Networking (SDN) Network Virtualization Use Cases Deployment on University Campuses Cloud IaaS Platform
Bird View Data Centre View
Networking inside a Rack
Tenant Network Logical View Challenges
Examples
Inside a Rack
Inside a Compute Node
Motivation Software Defined Networking (SDN) Network Virtualization Use Cases Deployment on University Campuses Cloud IaaS Platform
Bird View Data Centre View Networking inside a Rack
Tenant Network Logical View
Challenges Examples
Network Logical View
Any Networking Challenges?
Motivation Software Defined Networking (SDN) Network Virtualization Use Cases Deployment on University Campuses Cloud IaaS Platform
Bird View Data Centre View Networking inside a Rack Tenant Network Logical View
Challenges
Examples
Any Networking Challenges?
Yes, lots of them :)
Deployment complexity
Maintenance cost
Tenant’s network isolation and end-to-end connectivity
Tenant’s traffic monitoring
Security enforcement
Any Networking Challenges?
Yes, lots of them :)
Deployment complexity
Maintenance cost
Tenant’s network isolation and end-to-end connectivity
Tenant’s traffic monitoring
Security enforcement
Motivation Software Defined Networking (SDN) Network Virtualization Use Cases Deployment on University Campuses Cloud IaaS Platform
Bird View Data Centre View Networking inside a Rack Tenant Network Logical View Challenges
Examples
OpenFlow Enabled Cloud Infrastructure
Cloud Infrastructure Monitoring 1
Motivation Software Defined Networking (SDN) Network Virtualization Use Cases Deployment on University Campuses Cloud IaaS Platform
Bird View Data Centre View Networking inside a Rack Tenant Network Logical View Challenges
Examples
Cloud Infrastructure Monitoring 2
Cloud Infrastructure Quarantine Zone
Motivation Software Defined Networking (SDN) Network Virtualization Use Cases Deployment on University Campuses Cloud IaaS Platform
Bird View Data Centre View Networking inside a Rack Tenant Network Logical View Challenges
Examples
Take home!
SDN is about abstraction (Building GUI using assembly is hard)
You can think of any application (All use-cases of a programming
language?)
Watch open-source projects
(OpenVSwitch, OpenDayLight, Mininet, RouteFlow, ...)Simulate network, Control with OFC, Move to physical lab, Move to
production
References
http://www.sciencedirect.com/science/article/pii/S1389128609003387
http://yuba.stanford.edu/foswiki/pub/OpenFlow/Deployment/CampusMeeting06152011/Stanford_OpenFlow.pdf http://www.sdncentral.com/sdn- use- cases/
http://www.youtube.com/user/stanfordopenflow www.stanford.edu/~nikhilh/pubs/handigol-acld10.pdf http://www.openflow.org/wk/index.php/OpenFlow_Wireless https://github.com/OPENNETWORKINGLAB/flowvisor/wiki http://www.openflow.org/downloads/technicalreports/openflow- tr- 2009- 1- flowvisor.pdf https://storage.cloud.google.com/networking/SDN/GoogleSDN.pdf
http://www.sdncentral.com/sdn- use- cases/
http://www.openflowhub.org/blog/blog/2012/12/03/sdn- use- case- multipath- tcp- at- caltech- and- cern/ http://www.opennetsummit.org/pdf/2013/market_opps/sdn_valuechain.pdf
http://www.opennetsummit.org/pdf/2013/presentations/nick_mckeown.pdf An attempt to motivate and clarify Software-Defined Networking (SDN) A Case for Expanding OpenFlow/SDN DeploymentsOn University Campuses
Motivation Software Defined Networking (SDN) Network Virtualization Use Cases Deployment on University Campuses Cloud IaaS Platform
Bird View Data Centre View Networking inside a Rack Tenant Network Logical View Challenges
Examples
Q?A!
Thank you!
Deployment complexity and Maintenance cost
Increased number of networking devices by the factor of cluster size
Virtualized networking devices
Motivation Software Defined Networking (SDN) Network Virtualization Use Cases Deployment on University Campuses Cloud IaaS Platform
Bird View Data Centre View Networking inside a Rack Tenant Network Logical View Challenges
Examples
Tenant’s traffic isolation and end-to-end connectivity
VLAN tagging
GRE tunnels, EoIP tunnels
Namespaces in Linux networking stack
Tenant’s network monitoring
How to distinguish between tenants’ traffic?
VLAN IDs? GRE addresses? Namespaces?
How to get the information in real-time?
Querying: network management service? platform controller? each
compute node?
Motivation Software Defined Networking (SDN) Network Virtualization Use Cases Deployment on University Campuses Cloud IaaS Platform
Bird View Data Centre View Networking inside a Rack Tenant Network Logical View Challenges
Examples
Tenant’s network monitoring
How to distinguish between tenants’ traffic?
VLAN IDs? GRE addresses? Namespaces?
How to get the information in real-time?
Querying: network management service? platform controller? each
compute node?
Tenant’s network monitoring
How to distinguish between tenants’ traffic?
VLAN IDs? GRE addresses? Namespaces?
How to get the information in real-time?
Querying: network management service? platform controller? each
compute node?
Motivation Software Defined Networking (SDN) Network Virtualization Use Cases Deployment on University Campuses Cloud IaaS Platform
Bird View Data Centre View Networking inside a Rack Tenant Network Logical View Challenges
Examples