Battle of Titans or Cupid and Psyche Neutron and OpenDaylight
Transcript of Battle of Titans or Cupid and Psyche Neutron and OpenDaylight
![Page 1: Battle of Titans or Cupid and Psyche Neutron and OpenDaylight](https://reader030.fdocuments.us/reader030/viewer/2022013012/61cf588b30ea9019495ba8f9/html5/thumbnails/1.jpg)
Neutron and OpenDaylight:Battle of Titans or Cupid and Psyche
Flavio Fernandes - RedHat
Armando Migliaccio - HP
#ODLSummit
![Page 2: Battle of Titans or Cupid and Psyche Neutron and OpenDaylight](https://reader030.fdocuments.us/reader030/viewer/2022013012/61cf588b30ea9019495ba8f9/html5/thumbnails/2.jpg)
Agenda
• Background
• Architecture
• Development and Testing
• Demo time!
• Q&A
#ODLSummit
![Page 3: Battle of Titans or Cupid and Psyche Neutron and OpenDaylight](https://reader030.fdocuments.us/reader030/viewer/2022013012/61cf588b30ea9019495ba8f9/html5/thumbnails/3.jpg)
Background
![Page 4: Battle of Titans or Cupid and Psyche Neutron and OpenDaylight](https://reader030.fdocuments.us/reader030/viewer/2022013012/61cf588b30ea9019495ba8f9/html5/thumbnails/4.jpg)
2010 2011 2012 2013 2014 2015
OpenStack is born
DiabloNeutron is born
EssexNeutron is incubated
FolsomNeutron is core
L4/L7 are experimental
GrizzlyML2 is born
HavanaML2 is default
OpenDaylight is born
IcehouseML2 ODL driver
HydrogenHelium
Kilo30+ drivers:
core decomposition effort started
Lithium
OpenStack Releases
![Page 5: Battle of Titans or Cupid and Psyche Neutron and OpenDaylight](https://reader030.fdocuments.us/reader030/viewer/2022013012/61cf588b30ea9019495ba8f9/html5/thumbnails/5.jpg)
What is Neutron anyway?
• Neutron– API exposing logical abstractions for consuming the service– One or more backend implementations of that API
• Why?– Networking constructs baked into Nova– No tenant control over network topology and service insertion– Multi-tenancy and scalability
![Page 6: Battle of Titans or Cupid and Psyche Neutron and OpenDaylight](https://reader030.fdocuments.us/reader030/viewer/2022013012/61cf588b30ea9019495ba8f9/html5/thumbnails/6.jpg)
Neutron != SDN
Reference (kudos to @taturiello):http://www.slideshare.net/salv_orlando/quantum-virtual-networks-for-openstack
• Backend options?– Pox– Ryu– Floodlight– OVS
![Page 7: Battle of Titans or Cupid and Psyche Neutron and OpenDaylight](https://reader030.fdocuments.us/reader030/viewer/2022013012/61cf588b30ea9019495ba8f9/html5/thumbnails/7.jpg)
Mission Statements• Neutron mission
– To implement services and associated libraries to provide on-demand, scalable, and technology-agnostic network abstraction
• OpenDaylight mission
– Facilitate a community-led, industry-supported open source framework, including code and architecture, to accelerate and advance a common, robust Software Defined Networking platform
• So…Neutron and OpenDaylight: antagonists or lovers?– Let’s go ahead…we’ll get back to this question at the of the
slide deck
![Page 8: Battle of Titans or Cupid and Psyche Neutron and OpenDaylight](https://reader030.fdocuments.us/reader030/viewer/2022013012/61cf588b30ea9019495ba8f9/html5/thumbnails/8.jpg)
Architecture
![Page 9: Battle of Titans or Cupid and Psyche Neutron and OpenDaylight](https://reader030.fdocuments.us/reader030/viewer/2022013012/61cf588b30ea9019495ba8f9/html5/thumbnails/9.jpg)
Neutron Architecture
Neutron Server
ML2 Plugin
Type Manager Mechanism Manager
VX
LAN
TypeD
river
VLA
NTyp
eDriver
… OV
S
API Extensions
Linu
x Brid
ge
Op
enD
aylight
…
L3 Plugin
OV
S/DV
R+H
A
Op
en D
aylight
…
LBaaS
HA
Pro
xy
Op
en D
aylight
…
FWaaS
IPTab
les
Op
en D
aylight
…
…
…
![Page 10: Battle of Titans or Cupid and Psyche Neutron and OpenDaylight](https://reader030.fdocuments.us/reader030/viewer/2022013012/61cf588b30ea9019495ba8f9/html5/thumbnails/10.jpg)
Neutron Architecture
Neutron Server
ML2 Plugin
Type Manager Mechanism Manager
VX
LAN
TypeD
river
VLA
NTyp
eDriver
… OV
S
API Extensions
Linu
x Brid
ge
OD
L
…
L3 Plugin
OV
S/DV
R+H
A
Op
en D
aylight
…
LBaaS
HA
Pro
xy
Op
en D
aylight
…
FWaaS
IPTab
les
Op
en D
aylight
…
…
…
![Page 11: Battle of Titans or Cupid and Psyche Neutron and OpenDaylight](https://reader030.fdocuments.us/reader030/viewer/2022013012/61cf588b30ea9019495ba8f9/html5/thumbnails/11.jpg)
Neutron Architecture
• Workloads– Virtual (multi-hypervisor) and bare metal
• L2 connectivity– vlan, vxlan, gre
• L3 connectivity– DVR, HA, external gateways, floating IPs
• IPAM– DHCP/DNS
• Load Balancing• Firewall• Site-to-site VPN• L2 Gateway• ...
![Page 12: Battle of Titans or Cupid and Psyche Neutron and OpenDaylight](https://reader030.fdocuments.us/reader030/viewer/2022013012/61cf588b30ea9019495ba8f9/html5/thumbnails/12.jpg)
Neutron Platform
![Page 13: Battle of Titans or Cupid and Psyche Neutron and OpenDaylight](https://reader030.fdocuments.us/reader030/viewer/2022013012/61cf588b30ea9019495ba8f9/html5/thumbnails/13.jpg)
![Page 14: Battle of Titans or Cupid and Psyche Neutron and OpenDaylight](https://reader030.fdocuments.us/reader030/viewer/2022013012/61cf588b30ea9019495ba8f9/html5/thumbnails/14.jpg)
OpenDaylight Architecture (Helium)
![Page 15: Battle of Titans or Cupid and Psyche Neutron and OpenDaylight](https://reader030.fdocuments.us/reader030/viewer/2022013012/61cf588b30ea9019495ba8f9/html5/thumbnails/15.jpg)
![Page 16: Battle of Titans or Cupid and Psyche Neutron and OpenDaylight](https://reader030.fdocuments.us/reader030/viewer/2022013012/61cf588b30ea9019495ba8f9/html5/thumbnails/16.jpg)
An OpenStack view of OpenDaylight
•OpenDaylight has a common Neutron “northbound” provider
• 3 implementations in Helium• OVSDB, OpenContrail, VTN
• 5+ implementations in Lithium• OVSDB, VTN, LISP, Group-based
Policy, VPN service
•Supports ML2 and some advanced services
![Page 17: Battle of Titans or Cupid and Psyche Neutron and OpenDaylight](https://reader030.fdocuments.us/reader030/viewer/2022013012/61cf588b30ea9019495ba8f9/html5/thumbnails/17.jpg)
OpenStack Neutron
Neutron -- networking-odl
Lithium adds YANG and more providers
OpenDaylight
VTNProvider
OVSDB Provider
Neutron Service
OpenContrail Provider
OpenDaylight APIs (REST)OpenDaylight
VTNProviderVTN Provider
Neutron Service
OpenStack Neutron
Group Policy Provider
Neutron -- networking-odl
Neutron REST API
OpenDaylight YANG-modeled RESTCONF
VPN Service Provider
LISPProvider
LithiumHelium
![Page 18: Battle of Titans or Cupid and Psyche Neutron and OpenDaylight](https://reader030.fdocuments.us/reader030/viewer/2022013012/61cf588b30ea9019495ba8f9/html5/thumbnails/18.jpg)
End-to-End Deployment
![Page 19: Battle of Titans or Cupid and Psyche Neutron and OpenDaylight](https://reader030.fdocuments.us/reader030/viewer/2022013012/61cf588b30ea9019495ba8f9/html5/thumbnails/19.jpg)
![Page 20: Battle of Titans or Cupid and Psyche Neutron and OpenDaylight](https://reader030.fdocuments.us/reader030/viewer/2022013012/61cf588b30ea9019495ba8f9/html5/thumbnails/20.jpg)
![Page 21: Battle of Titans or Cupid and Psyche Neutron and OpenDaylight](https://reader030.fdocuments.us/reader030/viewer/2022013012/61cf588b30ea9019495ba8f9/html5/thumbnails/21.jpg)
Development and Testing
![Page 22: Battle of Titans or Cupid and Psyche Neutron and OpenDaylight](https://reader030.fdocuments.us/reader030/viewer/2022013012/61cf588b30ea9019495ba8f9/html5/thumbnails/22.jpg)
The meat on the bone
• Neutron OpenDaylight drivers/plugins• https://github.com/openstack/networking-odl
• OpenDaylight Neutron Northbound• https://github.com/opendaylight/neutron
![Page 23: Battle of Titans or Cupid and Psyche Neutron and OpenDaylight](https://reader030.fdocuments.us/reader030/viewer/2022013012/61cf588b30ea9019495ba8f9/html5/thumbnails/23.jpg)
When You Submit Code...
![Page 24: Battle of Titans or Cupid and Psyche Neutron and OpenDaylight](https://reader030.fdocuments.us/reader030/viewer/2022013012/61cf588b30ea9019495ba8f9/html5/thumbnails/24.jpg)
One change generates
![Page 25: Battle of Titans or Cupid and Psyche Neutron and OpenDaylight](https://reader030.fdocuments.us/reader030/viewer/2022013012/61cf588b30ea9019495ba8f9/html5/thumbnails/25.jpg)
Life is good, if not rinse and repeat
![Page 26: Battle of Titans or Cupid and Psyche Neutron and OpenDaylight](https://reader030.fdocuments.us/reader030/viewer/2022013012/61cf588b30ea9019495ba8f9/html5/thumbnails/26.jpg)
Demo time!
![Page 27: Battle of Titans or Cupid and Psyche Neutron and OpenDaylight](https://reader030.fdocuments.us/reader030/viewer/2022013012/61cf588b30ea9019495ba8f9/html5/thumbnails/27.jpg)
![Page 28: Battle of Titans or Cupid and Psyche Neutron and OpenDaylight](https://reader030.fdocuments.us/reader030/viewer/2022013012/61cf588b30ea9019495ba8f9/html5/thumbnails/28.jpg)
![Page 30: Battle of Titans or Cupid and Psyche Neutron and OpenDaylight](https://reader030.fdocuments.us/reader030/viewer/2022013012/61cf588b30ea9019495ba8f9/html5/thumbnails/30.jpg)
[Quoted] Growing Pains with OpenStack Neutron
• Neutron is a tenant facing cloud networking API, but a poor SDN controller implementation
• Complex architecture with neutron agents and custom protocols to communicate network needs to OVS network devices
• The result has had fundamental scaling and robustness issues• Neutron as an API service is focused on tenants
• It does not provide any APIs or functionality for managing your network• This would show up most when debugging a network issue and needing to
use two separate tools (Neutron, plus host tools, plus fabric tools).
![Page 31: Battle of Titans or Cupid and Psyche Neutron and OpenDaylight](https://reader030.fdocuments.us/reader030/viewer/2022013012/61cf588b30ea9019495ba8f9/html5/thumbnails/31.jpg)
Q&A
• Symbiotic relationship or antagonism?
– It is not necessarily either…or
– It depends on your data center strategy
– They can complement each other, but…– They can live on their own
– They are both ready to use, and more importantly…– They are both in need of love
![Page 32: Battle of Titans or Cupid and Psyche Neutron and OpenDaylight](https://reader030.fdocuments.us/reader030/viewer/2022013012/61cf588b30ea9019495ba8f9/html5/thumbnails/32.jpg)