OpenStack Networking
Mark McClain
OpenStack Networking Project Technical Lead
mark.mcclain@dreamhost.com
The Team
Challenges in the Cloud
• High-density multi-tenancy
–ButVLANs have trouble scaling
• On-demand provisioning
–But traditional network solutions
have interfaces designed for manual
configuration.
• Need to place / move
workloads were capacity
exists
–But network state (e.g., IP address)
is tied to a particular location
© Malcolm Leman | Dreamstime.com
Tackling these challenges
–Network virtualization
–Overlay tunneling:
VXLAN, NVGRE, STT
–Software-defined
Networking (SDN) /
OpenFlow
–L2 Fabric solutions:
FabricPath, Qfabric, etc.
–???
What is OpenStack
Networking?
Basic Abstractions
Net1
10.0.0.0/24
Nova
Quantum
L2 virtual network
virtual port
virtual server
virtual interface (VIF)
virtual subnet
VM1VM1
10.0.0.210.0.0.2
VM2VM2
10.0.0.210.0.0.2
Using the API...
VM1VM1
10.0.0.210.0.0.2
VM1VM1
10.0.0.210.0.0.2
VM2VM2
10.0.0.2/172.16.77.210.0.0.2/172.16.77.2
VM2VM2
10.0.0.2/172.16.77.210.0.0.2/172.16.77.2
VM3VM3
172.16.77.1172.16.77.1
VM3VM3
172.16.77.1172.16.77.1
Tenant Net1
192.168.0.0/24
Tenant Net2
172.16.77.0/24
Public Net
10.0.0.0/8
RouterRouterRouterRouter
Architecture
A generic tenant API to
create and configure
“virtual networks”
A “plugin” architecture with
different back-end “engines”
An eco-system of tools
that leverage the
Network API.
Tenant Tools
(GUI, CLI, API
code)
Compute APICompute APICompute APICompute API
Network APINetwork APINetwork APINetwork API
Storage APIStorage APIStorage APIStorage API
Generic OpenStack APIs Operator Selected Backends
KVMKVMKVMKVM
OVS pluginOVS pluginOVS pluginOVS plugin
CephCephCephCeph
Quantum Architecture
Tenant Scripts
Horizon GUI
Orchestration Code
Quantum API
Create-net
.
.
.
Create-port
Uniform API for all
clients
API Extensions
Plugin
X
Nova Compute
virtual switch
Physical Network
Quantum Server BackendsAPI Client
Grizzly
Metadata
• Simplified Configuration
• Supports Overlapping IPs
Non-routed networks
Security Groups
• Supports Overlapping IPs
• HandlesVMs with multiple
NICs
• Ingress / Egress rules
• IPv6 matching
• Plugins can offload
http://www.flickr.com/photos/mikebaird/2354116406/
Load Balancing
• Load Balancing API Model
• Pluggable Framework
• Reference Implementation with HAProxy
New Plugins
•Big Switch /Floodlight
•Brocade
•Hyper-V
•Midokura
•PlumGrid
Quantum Plugins
Open vSwitch / Linux Bridge
Ryu OpenFlow
Controller
Grizzly Horizon
•Manage Routers
•Graphical view of network
topology
•Specifying multiple NICs when
booting aVM
•Load Balancer Control
Grizzly Horizon
Grizzly Horizon
•Select NICs when booting
Other Features
• Multiple Network Node Support
• XML API
• Seamless Upgrade from Folsom to Grizzly
What will be in
Havana?
Services
•Firewall
•Load Balancing
•VPN
• Improved IPv6 support
• Improved Bare Metal Support
• Updated Client Library
• MoreVendor Plugins
Community Initiatives
• Modular L2 and L3
• Database profiling
• Improving Testing
• Exploring Nova-Net Migration Paths
More Information
• Installation and Admin Manual
•http://docs.openstack.org/trunk/openstack
-network/admin/content/
Questions?
Mark McClain
OpenStack Networking Core Developer and PTL
mark.mcclain@dreamhost.com

Mark McClain - OpenStack Quantum Networking