SlideShare a Scribd company logo
1 of 18
Openstack Quantum:Virtual Networks for OpenStack Dan Wendlandt – dan@nicira.com
Outline What? Why? How?
What is Quantum? Astandalone Openstackservice Provides network connectivity between a set of network “interfaces” from other service (e.g., vNICs from compute service, interfaces on a load-balancer service). Exposes API of logical abstractions for describing network connectivity + policy between interfaces.  Uses a “plug-in” architecture, so multiple technologies can implement the logical abstractions. Provides a “building block” for sophisticated cloud network topologies.
What is Quantum NOT? Something that provides all network-related processing behavior.  Initial focus is on connectivity. Other advanced services like load-balancers, firewalls, etc can “plug” into a network offered by Quantum.  IP address management (see next talk on IPAM) Orchestration of multiple network-related building blocks to provide higher-level abstractions to tenants (see talk on Donabe)
Example Architecture: Single Service Openstack Dashboard Tenant API Tenant API Quantum Service Nova Service Admin API nova-api nova-scheduler Quantum Plugin Internal nova Communication XenServer #1 Hypervisor nova-compute vswitch Internal Plugin Communication
Example Architecture: Two Services Tenant API Quantum Service Network Edge: Point at which a service “plugs” into the network. Quantum Plugin Internal Plugin Communication vswitch vswitch physical switch VM VM VM VM FW FW FW Firewall Service Compute Service Tenant API Tenant API
Virtual Network Abstractions (1) Services (e.g., nova, atlas) expose interface-IDs via their own tenant APIs to represent any device from that service that can be “plugged” into a virtual network.   Example: nova.foo.com/<tenant-id>/server/<server-id>/eth0 Tenants use Quantum API to create networks, get back UUID:  Example: quantum.foo.com/<tenant-id>/network/<network-id> Tenants can create ports on a network, get a UUID, and associate config with those ports (APIs for advanced port config are TBD, initially ports give L2 connectivity): Example: quantum.foo.com/<tenant-id>/network/<network-id>/port/<port-id> Tenants can “plug” an interface into a port by setting the attachment of a port to be the appropriate interface-id.   Example: set quantum.foo.com/<tenant-id>/network/<network-id>/port/<port-id>/attach to value “nova.foo.com/<tenant-id>/server/<server-id>/eth0” .
Virtual Network Abstractions (2) Note:  At no time does the customer see details of how a network is implemented (e.g., VLANs). Association of interfaces with network is an explicit step. Plugins can expose API extensions to introduce more complex functionality (e.g., QoS).  Extension support is queriable, so a customer can “discover” capabilities.  API extensions that represent common functionality across many plug-ins can become part of the core API. Core API for diablo is simple, focused on connectivity. Core API will evolve.
Example Scenario:  Nova i-24 10.0.0.24 Nova i-26 10.0.0.26 Nova i-22 10.0.0.22 Nova i-23 10.0.0.23 GW Instance-1 10.0.0.1 Private Net #2 Private Net #1 Tenant View Provider View Nova i-24 10.0.0.24 Nova i-26 10.0.0.26 Nova i-26 10.0.0.26 Data Center Network GW Instance-1 10.0.0.1 Nova i-24 10.0.0.24 NAT Gateway Service Compute Service
Live Demo…
Why Quantum? API gives ability to create interesting network topologies. Example: create multi-tier applications Provide way to connect interconnect multiple Openstack services (*-aaS). Example: Nova VM + Atlas LB on same private network. Open the floodgates to let anyone build services (open or closed) that plug into Openstack networks.   Examples:  VPN-aaS, firewall-aaS, IDS-aaS. Allows innovation plugins that overcomes common cloud networking problems Example:  avoid VLAN limits, provide strong QoS
How? Quantum Design Goals Decoupled from nova and other services Communication between quantum and another service should happen via well-defined Rest API (not direct python calls, no nova RPC, not shared understanding of database schemas) Be able to run without nova.  Flexible enough to support plugins for many different “network edges”: Bridge / Open vSwitch on Linux Vmware DVS / Nexus 1000V  Physical switches  Physical switches with VEPA / VNtag
How? Inside Quantum Plugin interface maps to “core” tenant API + admin API. “Network agents” running on nova hypervisor fit within this model. Plugin might manage just the network edge (e.g., a vswitch), or all network devices. Tenant API Admin API Auth (talk to Keystone) API Limits Plugin Communicate with external devices in a plugin-specific way to implement logical abstractions from the tenant API.
Edge Bindings Services that expose interface-IDs must tell quantum where that interface is currently “plugged” into the network.   We call this an “edge binding” Impl still fuzzy: Quantum may support an admin API that allows other services to register <interface-id, interface-location> pairs with Quantum.  Many different “types” of interface-location data: XenServer: VIF-UUID Cisco 1000v: veth0 device Physical Hosting: physical switch ID + port number Openstackdeployers must make sure all services able to “speak” a interface-location type supported by the switch. There will be a “default” type supported by an open source plugin (VLAN based, like nova today?)
Simple Plug-in Example with VLANs Similar to what Nova does for private networks: One VLAN per “network”. Hypervisor NIC is VLAN trunk, all switches are trunked. When an interface-ID is associated is associated with a network, plugin uses the edge binding to find the interface-location (a port on a vswitch) and puts that port on the correct VLAN.
Plans for Diablo timeframe “experimental” Quantum plug-in  Plug-in Agnostic:  Create API, including way for plugin to register extensions. Store “ownership” + integrate with keystone for auth. Implement “edge bindings” database + API.   Plugins: At least one (hopefully more!) open-source plugin that anyone can use to experiment with Quantum. Services: Perform “edge bindings” integration with nova and at least one other service.
This is Just the Beginning…. Our goals within Diablo time frame are well scoped. Quantum is a building block, not the entire solution for all networking problems.  Goal is to make sure Quantum design for Diablo does not preclude doing things we will likely consider important in the future.
Many important questions remain: How should knowledge of the network topology and resources/capacity be used to influence workload placement decisions by the scheduler? What should be included in a broader set of core APIs (QoS, packet stats, ACLs, etc) in future iterations?   Is L2 VPN (e.g., to customer site) a part of this core API, ok something the “plugs” into a virtual network? How to expose attributes of the physical network (e.g., redundant NICs) via the logical model? <Insert your question here…>

More Related Content

What's hot

Cloud Application Blueprints with Apache Brooklyn by Alex Henevald
Cloud Application Blueprints with Apache Brooklyn by Alex HenevaldCloud Application Blueprints with Apache Brooklyn by Alex Henevald
Cloud Application Blueprints with Apache Brooklyn by Alex Henevald
buildacloud
 

What's hot (20)

VMworld 2015: Containers without Compromise - Persistent Storage for Docker C...
VMworld 2015: Containers without Compromise - Persistent Storage for Docker C...VMworld 2015: Containers without Compromise - Persistent Storage for Docker C...
VMworld 2015: Containers without Compromise - Persistent Storage for Docker C...
 
Accelerating Public Cloud Migration with Multi-Cloud Load Balancing
Accelerating Public Cloud Migration with Multi-Cloud Load BalancingAccelerating Public Cloud Migration with Multi-Cloud Load Balancing
Accelerating Public Cloud Migration with Multi-Cloud Load Balancing
 
Tanzu Standard
Tanzu StandardTanzu Standard
Tanzu Standard
 
Industry's Best Multi Cloud Application Services from Avi Networks, Now part ...
Industry's Best Multi Cloud Application Services from Avi Networks, Now part ...Industry's Best Multi Cloud Application Services from Avi Networks, Now part ...
Industry's Best Multi Cloud Application Services from Avi Networks, Now part ...
 
L4-L7 Application Services with Avi Networks
L4-L7 Application Services with Avi NetworksL4-L7 Application Services with Avi Networks
L4-L7 Application Services with Avi Networks
 
Run Stateful Apps on Kubernetes with VMware PKS - Highlight WebLogic Server
Run Stateful Apps on Kubernetes with VMware PKS - Highlight WebLogic Server Run Stateful Apps on Kubernetes with VMware PKS - Highlight WebLogic Server
Run Stateful Apps on Kubernetes with VMware PKS - Highlight WebLogic Server
 
Hybrid cloud overview and VCF on VxRAIL
Hybrid cloud overview and VCF on VxRAILHybrid cloud overview and VCF on VxRAIL
Hybrid cloud overview and VCF on VxRAIL
 
Kubernetes on vSphere Presentation- July 23, 2020
Kubernetes on vSphere Presentation- July 23, 2020Kubernetes on vSphere Presentation- July 23, 2020
Kubernetes on vSphere Presentation- July 23, 2020
 
VMware Tanzu Introduction
VMware Tanzu IntroductionVMware Tanzu Introduction
VMware Tanzu Introduction
 
Pivotal Container Service Overview
Pivotal Container Service Overview Pivotal Container Service Overview
Pivotal Container Service Overview
 
Designing CloudStack Clouds
Designing CloudStack CloudsDesigning CloudStack Clouds
Designing CloudStack Clouds
 
Silicon Valley CloudStack User Group - Introduction to Apache CloudStack
Silicon Valley CloudStack User Group - Introduction to Apache CloudStackSilicon Valley CloudStack User Group - Introduction to Apache CloudStack
Silicon Valley CloudStack User Group - Introduction to Apache CloudStack
 
Enabling Remote Employees with Horizon VDI and Avi Networks
Enabling Remote Employees with Horizon VDI and Avi NetworksEnabling Remote Employees with Horizon VDI and Avi Networks
Enabling Remote Employees with Horizon VDI and Avi Networks
 
VMworld 2015: Build and Run Cloud Native Apps in your Software Defined Data C...
VMworld 2015: Build and Run Cloud Native Apps in your Software Defined Data C...VMworld 2015: Build and Run Cloud Native Apps in your Software Defined Data C...
VMworld 2015: Build and Run Cloud Native Apps in your Software Defined Data C...
 
Nested CloudStack with VMware
Nested CloudStack with VMwareNested CloudStack with VMware
Nested CloudStack with VMware
 
OpenStack vs VMware vCloud
OpenStack vs VMware vCloudOpenStack vs VMware vCloud
OpenStack vs VMware vCloud
 
Cloud Application Blueprints with Apache Brooklyn by Alex Henevald
Cloud Application Blueprints with Apache Brooklyn by Alex HenevaldCloud Application Blueprints with Apache Brooklyn by Alex Henevald
Cloud Application Blueprints with Apache Brooklyn by Alex Henevald
 
Enterprise-Grade Load Balancing for VMware Cloud on AWS (VMC)
Enterprise-Grade Load Balancing for VMware Cloud on AWS (VMC)Enterprise-Grade Load Balancing for VMware Cloud on AWS (VMC)
Enterprise-Grade Load Balancing for VMware Cloud on AWS (VMC)
 
Azure Spring Cloud Workshop - June 17, 2020
Azure Spring Cloud Workshop - June 17, 2020Azure Spring Cloud Workshop - June 17, 2020
Azure Spring Cloud Workshop - June 17, 2020
 
VMware vCloud Director 1.5 - What's New
VMware vCloud Director 1.5  - What's NewVMware vCloud Director 1.5  - What's New
VMware vCloud Director 1.5 - What's New
 

Similar to Quantum diablo summary

Similar to Quantum diablo summary (20)

Quantum grizzly summit
Quantum   grizzly summitQuantum   grizzly summit
Quantum grizzly summit
 
Quantum PTL Update - Grizzly Summit.pptx
Quantum PTL Update - Grizzly Summit.pptxQuantum PTL Update - Grizzly Summit.pptx
Quantum PTL Update - Grizzly Summit.pptx
 
Quantum essex summary
Quantum essex summaryQuantum essex summary
Quantum essex summary
 
OpenStack Quantum Intro (OS Meetup 3-26-12)
OpenStack Quantum Intro (OS Meetup 3-26-12)OpenStack Quantum Intro (OS Meetup 3-26-12)
OpenStack Quantum Intro (OS Meetup 3-26-12)
 
Donabe-essex-conference-readout
Donabe-essex-conference-readoutDonabe-essex-conference-readout
Donabe-essex-conference-readout
 
Quantum Folsom Summit Developer Overview
Quantum Folsom Summit Developer OverviewQuantum Folsom Summit Developer Overview
Quantum Folsom Summit Developer Overview
 
Quantum - Virtual networks for Openstack
Quantum - Virtual networks for OpenstackQuantum - Virtual networks for Openstack
Quantum - Virtual networks for Openstack
 
Quantum (OpenStack Meetup Feb 9th, 2012)
Quantum (OpenStack Meetup Feb 9th, 2012)Quantum (OpenStack Meetup Feb 9th, 2012)
Quantum (OpenStack Meetup Feb 9th, 2012)
 
Simplify Networking for Containers
Simplify Networking for ContainersSimplify Networking for Containers
Simplify Networking for Containers
 
OpenStack Networking
OpenStack NetworkingOpenStack Networking
OpenStack Networking
 
OpenStack Quantum: Cloud Carrier Summit 2012
OpenStack Quantum: Cloud Carrier Summit 2012OpenStack Quantum: Cloud Carrier Summit 2012
OpenStack Quantum: Cloud Carrier Summit 2012
 
Quantum for Cloud Operators - Folsom Conference
Quantum for Cloud Operators  - Folsom Conference Quantum for Cloud Operators  - Folsom Conference
Quantum for Cloud Operators - Folsom Conference
 
Neutron behind the scenes
Neutron   behind the scenesNeutron   behind the scenes
Neutron behind the scenes
 
Harmonia open iris_basic_v0.1
Harmonia open iris_basic_v0.1Harmonia open iris_basic_v0.1
Harmonia open iris_basic_v0.1
 
Openstack Workshop (Networking/Storage)
Openstack Workshop (Networking/Storage)Openstack Workshop (Networking/Storage)
Openstack Workshop (Networking/Storage)
 
Neutron Advanced Services - Akanda - Astara 201 presentation
Neutron Advanced Services - Akanda - Astara 201 presentationNeutron Advanced Services - Akanda - Astara 201 presentation
Neutron Advanced Services - Akanda - Astara 201 presentation
 
Load Balancing in the Cloud using Nginx & Kubernetes
Load Balancing in the Cloud using Nginx & KubernetesLoad Balancing in the Cloud using Nginx & Kubernetes
Load Balancing in the Cloud using Nginx & Kubernetes
 
Network virtualization with open stack quantum
Network virtualization with open stack quantumNetwork virtualization with open stack quantum
Network virtualization with open stack quantum
 
OpenStack Identity - Keystone (kilo) by Lorenzo Carnevale and Silvio Tavilla
OpenStack Identity - Keystone (kilo) by Lorenzo Carnevale and Silvio TavillaOpenStack Identity - Keystone (kilo) by Lorenzo Carnevale and Silvio Tavilla
OpenStack Identity - Keystone (kilo) by Lorenzo Carnevale and Silvio Tavilla
 
OpenStack Networking and Automation
OpenStack Networking and AutomationOpenStack Networking and Automation
OpenStack Networking and Automation
 

Recently uploaded

Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slide
vu2urc
 
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptxEIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
Earley Information Science
 
IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsIAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI Solutions
Enterprise Knowledge
 

Recently uploaded (20)

GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day Presentation
 
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
 
Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdf
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
GenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdfGenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdf
 
What Are The Drone Anti-jamming Systems Technology?
What Are The Drone Anti-jamming Systems Technology?What Are The Drone Anti-jamming Systems Technology?
What Are The Drone Anti-jamming Systems Technology?
 
Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slide
 
Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024
 
The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024
 
How to convert PDF to text with Nanonets
How to convert PDF to text with NanonetsHow to convert PDF to text with Nanonets
How to convert PDF to text with Nanonets
 
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptxEIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
 
Tech Trends Report 2024 Future Today Institute.pdf
Tech Trends Report 2024 Future Today Institute.pdfTech Trends Report 2024 Future Today Institute.pdf
Tech Trends Report 2024 Future Today Institute.pdf
 
Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024
 
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
 
IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsIAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI Solutions
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)
 
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
 
Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)
 
presentation ICT roal in 21st century education
presentation ICT roal in 21st century educationpresentation ICT roal in 21st century education
presentation ICT roal in 21st century education
 

Quantum diablo summary

  • 1. Openstack Quantum:Virtual Networks for OpenStack Dan Wendlandt – dan@nicira.com
  • 3. What is Quantum? Astandalone Openstackservice Provides network connectivity between a set of network “interfaces” from other service (e.g., vNICs from compute service, interfaces on a load-balancer service). Exposes API of logical abstractions for describing network connectivity + policy between interfaces. Uses a “plug-in” architecture, so multiple technologies can implement the logical abstractions. Provides a “building block” for sophisticated cloud network topologies.
  • 4. What is Quantum NOT? Something that provides all network-related processing behavior. Initial focus is on connectivity. Other advanced services like load-balancers, firewalls, etc can “plug” into a network offered by Quantum. IP address management (see next talk on IPAM) Orchestration of multiple network-related building blocks to provide higher-level abstractions to tenants (see talk on Donabe)
  • 5. Example Architecture: Single Service Openstack Dashboard Tenant API Tenant API Quantum Service Nova Service Admin API nova-api nova-scheduler Quantum Plugin Internal nova Communication XenServer #1 Hypervisor nova-compute vswitch Internal Plugin Communication
  • 6. Example Architecture: Two Services Tenant API Quantum Service Network Edge: Point at which a service “plugs” into the network. Quantum Plugin Internal Plugin Communication vswitch vswitch physical switch VM VM VM VM FW FW FW Firewall Service Compute Service Tenant API Tenant API
  • 7. Virtual Network Abstractions (1) Services (e.g., nova, atlas) expose interface-IDs via their own tenant APIs to represent any device from that service that can be “plugged” into a virtual network. Example: nova.foo.com/<tenant-id>/server/<server-id>/eth0 Tenants use Quantum API to create networks, get back UUID: Example: quantum.foo.com/<tenant-id>/network/<network-id> Tenants can create ports on a network, get a UUID, and associate config with those ports (APIs for advanced port config are TBD, initially ports give L2 connectivity): Example: quantum.foo.com/<tenant-id>/network/<network-id>/port/<port-id> Tenants can “plug” an interface into a port by setting the attachment of a port to be the appropriate interface-id. Example: set quantum.foo.com/<tenant-id>/network/<network-id>/port/<port-id>/attach to value “nova.foo.com/<tenant-id>/server/<server-id>/eth0” .
  • 8. Virtual Network Abstractions (2) Note: At no time does the customer see details of how a network is implemented (e.g., VLANs). Association of interfaces with network is an explicit step. Plugins can expose API extensions to introduce more complex functionality (e.g., QoS). Extension support is queriable, so a customer can “discover” capabilities. API extensions that represent common functionality across many plug-ins can become part of the core API. Core API for diablo is simple, focused on connectivity. Core API will evolve.
  • 9. Example Scenario: Nova i-24 10.0.0.24 Nova i-26 10.0.0.26 Nova i-22 10.0.0.22 Nova i-23 10.0.0.23 GW Instance-1 10.0.0.1 Private Net #2 Private Net #1 Tenant View Provider View Nova i-24 10.0.0.24 Nova i-26 10.0.0.26 Nova i-26 10.0.0.26 Data Center Network GW Instance-1 10.0.0.1 Nova i-24 10.0.0.24 NAT Gateway Service Compute Service
  • 11. Why Quantum? API gives ability to create interesting network topologies. Example: create multi-tier applications Provide way to connect interconnect multiple Openstack services (*-aaS). Example: Nova VM + Atlas LB on same private network. Open the floodgates to let anyone build services (open or closed) that plug into Openstack networks. Examples: VPN-aaS, firewall-aaS, IDS-aaS. Allows innovation plugins that overcomes common cloud networking problems Example: avoid VLAN limits, provide strong QoS
  • 12. How? Quantum Design Goals Decoupled from nova and other services Communication between quantum and another service should happen via well-defined Rest API (not direct python calls, no nova RPC, not shared understanding of database schemas) Be able to run without nova. Flexible enough to support plugins for many different “network edges”: Bridge / Open vSwitch on Linux Vmware DVS / Nexus 1000V Physical switches Physical switches with VEPA / VNtag
  • 13. How? Inside Quantum Plugin interface maps to “core” tenant API + admin API. “Network agents” running on nova hypervisor fit within this model. Plugin might manage just the network edge (e.g., a vswitch), or all network devices. Tenant API Admin API Auth (talk to Keystone) API Limits Plugin Communicate with external devices in a plugin-specific way to implement logical abstractions from the tenant API.
  • 14. Edge Bindings Services that expose interface-IDs must tell quantum where that interface is currently “plugged” into the network. We call this an “edge binding” Impl still fuzzy: Quantum may support an admin API that allows other services to register <interface-id, interface-location> pairs with Quantum. Many different “types” of interface-location data: XenServer: VIF-UUID Cisco 1000v: veth0 device Physical Hosting: physical switch ID + port number Openstackdeployers must make sure all services able to “speak” a interface-location type supported by the switch. There will be a “default” type supported by an open source plugin (VLAN based, like nova today?)
  • 15. Simple Plug-in Example with VLANs Similar to what Nova does for private networks: One VLAN per “network”. Hypervisor NIC is VLAN trunk, all switches are trunked. When an interface-ID is associated is associated with a network, plugin uses the edge binding to find the interface-location (a port on a vswitch) and puts that port on the correct VLAN.
  • 16. Plans for Diablo timeframe “experimental” Quantum plug-in Plug-in Agnostic: Create API, including way for plugin to register extensions. Store “ownership” + integrate with keystone for auth. Implement “edge bindings” database + API. Plugins: At least one (hopefully more!) open-source plugin that anyone can use to experiment with Quantum. Services: Perform “edge bindings” integration with nova and at least one other service.
  • 17. This is Just the Beginning…. Our goals within Diablo time frame are well scoped. Quantum is a building block, not the entire solution for all networking problems. Goal is to make sure Quantum design for Diablo does not preclude doing things we will likely consider important in the future.
  • 18. Many important questions remain: How should knowledge of the network topology and resources/capacity be used to influence workload placement decisions by the scheduler? What should be included in a broader set of core APIs (QoS, packet stats, ACLs, etc) in future iterations? Is L2 VPN (e.g., to customer site) a part of this core API, ok something the “plugs” into a virtual network? How to expose attributes of the physical network (e.g., redundant NICs) via the logical model? <Insert your question here…>