Accelerating Neutron with Intel DPDK

Alexander Shalimov
Alexander ShalimovLead Programmer-Researcher at Applied Research Center for Computer Networks
Accelerating OpenStack Neutron
with Intel DPDK based Open vSwitch
Alexander Shalimov
http://arccn.ru/
ashalimov@arccn.ru
@alex_shali
@arccnnews
OpenStack
• Open source software for building private and
public cloud.
– Create VMs, attach storage to them, and connect
them into virtual topology
2
OpenStack Neutron
• Neutron = OpenStack networking
• Main responsibility is to provide virtual network
to the tenant:
– Setup L2 network
– Setup L3 network (DHCP, gateway, ACL)
• Plugin architecture
– Linux Bridge
– Open vSwitch
– Ryu OpenFlow controller
– Nicira NVP
3
• Based on Open vSwitch, virtual software switch
• The plugin supports three operational modes:
– FLAT: virtual networks share on L2 domain
– VLAN: each virtual network has its own VLAN tag
– GRE: traffic goes through NVGRE tunnels and separated by
XID.
OVS/GRE setup:
+: Very popular, any Ethernet fabric, 2^32 networks
-: Bad performance and scalability (between VMs
located on different compute nodes)
4
Open vSwitch plugin
OVS/GRE plugin architecture
5
VM VM VM VM
br-int
br-ex
Compute Node
VMs
OVS bridgespatch port
GRE port
NIC
physical layer
??? SLOW
http://www.openstack.org/summit/openstack-summit-hong-kong-2013/session-videos/presentation/open-vswitch-and-its-usage-in-neutron
OVS/GRE plugin bottlenecks
6
br-ex
patch port
GRE port
NIC
Linux Networking
Stack
Standard networking stack is
slow, yes. It’s well know fact. But
the traffic speed is even slower.
• Heavily layered
• Allocation
• ….
GRE port in OVS
• OVS lays finishing of GRE packet encapsulation on
networking stack.
7
MACs IPs Payload
VM
OVS GRE port
MACs IPs PayloadGRE
Linux Networking Stack
MACs IPs PayloadGREMACs IPs
Require more work for route and arp lookups. Thus, slower!
Accelerating Neutron
• Don’t use Linux Networking Stack - use special
fast paths instead:
– Intel DPDK,
– Netmap.
• Open vSwitch should be integrated with such
fast paths.
• Our choose to start was Intel DPDK vSwitch.
8
Intel DPDK vSwitch
• Basically it is OVS daemon connected to DPDK-based
datapath
– https://github.com/01org/dpdk-ovs
• But it required some work for OpenStack:
– patch ports,
– multiple datapaths/bridges,
– GRE stack
• Still need route and arp lookups.
9
Our GRE port architecture
• GRE port should fully be responsible for packet
encapsulation.
• Tasks of GRE port:
– Determine local IP.
• Must specify both local and remote IPs;
– Determine MAC addresses
• Maintain our own ARP table;
– What NIC to send
• Route table is encoded into main flow table and
encapsulated packets are returned back to the datapath and
matched again against the flow table.
• Still suit OpenStack Neutron plugin
10
Our GRE port architecture
11
VM VM
GREGRE NIC
NIC
Original Our
Flow table Flow table
Linux
networking
stack
DPDK
OVS DPDK OVS
Experimental evaluation
12
Accelerated OVS Original OVS
VLAN
physical-to-physical 5 Mpps 1.1 Mpps
physical-to-vm 3.3 Mpps 0.44 Mpps
GRE
physical-to-physical 1.6 Mpps 0.22 Mpps
physical-to-vm 1.12 Mpps 0.11 Mpps
* 10 Gb channel
** 64 bytes UDP packets
*** theoretical max is 15Mpps
**** Intel Xeon E3-1240 2.4GHz/6
***** IVSHMEM VM connection (~0.6Mpps without)
It is 5 times performance improving!
Questions?
• The code is available in ARCCN github:
– arccn.github.io
13
http://arccn.ru/ ashalimov@arccn.ru
@alex_shali
@arccnnews
1 of 13

Recommended

Accelerate Service Function Chaining Vertical Solution with DPDK by
Accelerate Service Function Chaining Vertical Solution with DPDKAccelerate Service Function Chaining Vertical Solution with DPDK
Accelerate Service Function Chaining Vertical Solution with DPDKOPNFV
1.5K views10 slides
DPDK Summit 2015 - HP - Al Sanders by
DPDK Summit 2015 - HP - Al SandersDPDK Summit 2015 - HP - Al Sanders
DPDK Summit 2015 - HP - Al SandersJim St. Leger
3.6K views28 slides
The n00bs guide to ovs dpdk by
The n00bs guide to ovs dpdkThe n00bs guide to ovs dpdk
The n00bs guide to ovs dpdkmarkdgray
1.8K views88 slides
Ovs perf by
Ovs perfOvs perf
Ovs perfMadhu c
2.6K views13 slides
High Performance Networking Leveraging the DPDK and Growing Community by
High Performance Networking Leveraging the DPDK and Growing CommunityHigh Performance Networking Leveraging the DPDK and Growing Community
High Performance Networking Leveraging the DPDK and Growing Community6WIND
12.6K views38 slides
DPDK in Containers Hands-on Lab by
DPDK in Containers Hands-on LabDPDK in Containers Hands-on Lab
DPDK in Containers Hands-on LabMichelle Holley
10.3K views35 slides

More Related Content

What's hot

DPACC Acceleration Progress and Demonstration by
DPACC Acceleration Progress and DemonstrationDPACC Acceleration Progress and Demonstration
DPACC Acceleration Progress and DemonstrationOPNFV
867 views10 slides
LF_OVS_17_Enabling hardware acceleration in OVS-DPDK using DPDK Framework. by
LF_OVS_17_Enabling hardware acceleration in OVS-DPDK using DPDK Framework.LF_OVS_17_Enabling hardware acceleration in OVS-DPDK using DPDK Framework.
LF_OVS_17_Enabling hardware acceleration in OVS-DPDK using DPDK Framework.LF_OpenvSwitch
1.2K views31 slides
OVS v OVS-DPDK by
OVS v OVS-DPDKOVS v OVS-DPDK
OVS v OVS-DPDKMd Safiyat Reza
1.5K views20 slides
DPDK summit 2015: It's kind of fun to do the impossible with DPDK by
DPDK summit 2015: It's kind of fun  to do the impossible with DPDKDPDK summit 2015: It's kind of fun  to do the impossible with DPDK
DPDK summit 2015: It's kind of fun to do the impossible with DPDKLagopus SDN/OpenFlow switch
4.7K views33 slides
Intel DPDK Step by Step instructions by
Intel DPDK Step by Step instructionsIntel DPDK Step by Step instructions
Intel DPDK Step by Step instructionsHisaki Ohara
56.9K views12 slides
DPDK Summit 2015 - RIFT.io - Tim Mortsolf by
DPDK Summit 2015 - RIFT.io - Tim MortsolfDPDK Summit 2015 - RIFT.io - Tim Mortsolf
DPDK Summit 2015 - RIFT.io - Tim MortsolfJim St. Leger
2.9K views13 slides

What's hot(20)

DPACC Acceleration Progress and Demonstration by OPNFV
DPACC Acceleration Progress and DemonstrationDPACC Acceleration Progress and Demonstration
DPACC Acceleration Progress and Demonstration
OPNFV867 views
LF_OVS_17_Enabling hardware acceleration in OVS-DPDK using DPDK Framework. by LF_OpenvSwitch
LF_OVS_17_Enabling hardware acceleration in OVS-DPDK using DPDK Framework.LF_OVS_17_Enabling hardware acceleration in OVS-DPDK using DPDK Framework.
LF_OVS_17_Enabling hardware acceleration in OVS-DPDK using DPDK Framework.
LF_OpenvSwitch1.2K views
Intel DPDK Step by Step instructions by Hisaki Ohara
Intel DPDK Step by Step instructionsIntel DPDK Step by Step instructions
Intel DPDK Step by Step instructions
Hisaki Ohara56.9K views
DPDK Summit 2015 - RIFT.io - Tim Mortsolf by Jim St. Leger
DPDK Summit 2015 - RIFT.io - Tim MortsolfDPDK Summit 2015 - RIFT.io - Tim Mortsolf
DPDK Summit 2015 - RIFT.io - Tim Mortsolf
Jim St. Leger2.9K views
Enable DPDK and SR-IOV for containerized virtual network functions with zun by heut2008
Enable DPDK and SR-IOV for containerized virtual network functions with zunEnable DPDK and SR-IOV for containerized virtual network functions with zun
Enable DPDK and SR-IOV for containerized virtual network functions with zun
heut20082.5K views
OpenvSwitch Deep Dive by rajdeep
OpenvSwitch Deep DiveOpenvSwitch Deep Dive
OpenvSwitch Deep Dive
rajdeep63.9K views
OpenStack networking juno l3 h-a, dvr by Sim Janghoon
OpenStack networking   juno l3 h-a, dvrOpenStack networking   juno l3 h-a, dvr
OpenStack networking juno l3 h-a, dvr
Sim Janghoon8.5K views
Control Your Network ASICs, What Benefits switchdev Can Bring Us by HungWei Chiu
Control Your Network ASICs, What Benefits switchdev Can Bring UsControl Your Network ASICs, What Benefits switchdev Can Bring Us
Control Your Network ASICs, What Benefits switchdev Can Bring Us
HungWei Chiu1.1K views
Performance challenges in software networking by Stephen Hemminger
Performance challenges in software networkingPerformance challenges in software networking
Performance challenges in software networking
Stephen Hemminger1.5K views
Disruptive IP Networking with Intel DPDK on Linux by Naoto MATSUMOTO
Disruptive IP Networking with Intel DPDK on LinuxDisruptive IP Networking with Intel DPDK on Linux
Disruptive IP Networking with Intel DPDK on Linux
Naoto MATSUMOTO15.8K views
Docker Networking with New Ipvlan and Macvlan Drivers by Brent Salisbury
Docker Networking with New Ipvlan and Macvlan DriversDocker Networking with New Ipvlan and Macvlan Drivers
Docker Networking with New Ipvlan and Macvlan Drivers
Brent Salisbury52.7K views
OVS and DPDK - T.F. Herbert, K. Traynor, M. Gray by harryvanhaaren
OVS and DPDK - T.F. Herbert, K. Traynor, M. GrayOVS and DPDK - T.F. Herbert, K. Traynor, M. Gray
OVS and DPDK - T.F. Herbert, K. Traynor, M. Gray
harryvanhaaren4.4K views
VLANs in the Linux Kernel by Kernel TLV
VLANs in the Linux KernelVLANs in the Linux Kernel
VLANs in the Linux Kernel
Kernel TLV11.5K views
Virtualized network with openvswitch by Sim Janghoon
Virtualized network with openvswitchVirtualized network with openvswitch
Virtualized network with openvswitch
Sim Janghoon19.4K views
How to Speak Intel DPDK KNI for Web Services. by Naoto MATSUMOTO
How to Speak Intel DPDK KNI for Web Services.How to Speak Intel DPDK KNI for Web Services.
How to Speak Intel DPDK KNI for Web Services.
Naoto MATSUMOTO9.4K views
LF_OVS_17_OvS manipulation with Go at DigitalOcean by LF_OpenvSwitch
LF_OVS_17_OvS manipulation with Go at DigitalOceanLF_OVS_17_OvS manipulation with Go at DigitalOcean
LF_OVS_17_OvS manipulation with Go at DigitalOcean
LF_OpenvSwitch1K views
LF_OVS_17_OVS-DPDK Installation and Gotchas by LF_OpenvSwitch
LF_OVS_17_OVS-DPDK Installation and GotchasLF_OVS_17_OVS-DPDK Installation and Gotchas
LF_OVS_17_OVS-DPDK Installation and Gotchas
LF_OpenvSwitch703 views

Viewers also liked

OVS VXLAN Network Accelaration on OpenStack (VXLAN offload and DPDK) - OpenSt... by
OVS VXLAN Network Accelaration on OpenStack (VXLAN offload and DPDK) - OpenSt...OVS VXLAN Network Accelaration on OpenStack (VXLAN offload and DPDK) - OpenSt...
OVS VXLAN Network Accelaration on OpenStack (VXLAN offload and DPDK) - OpenSt...VirtualTech Japan Inc.
7.2K views23 slides
OpenStack Kilo with 6Wind VA High-Performance Networking Using DPDK - OpenSta... by
OpenStack Kilo with 6Wind VA High-Performance Networking Using DPDK - OpenSta...OpenStack Kilo with 6Wind VA High-Performance Networking Using DPDK - OpenSta...
OpenStack Kilo with 6Wind VA High-Performance Networking Using DPDK - OpenSta...VirtualTech Japan Inc.
5.9K views46 slides
Understanding DPDK by
Understanding DPDKUnderstanding DPDK
Understanding DPDKDenys Haryachyy
102.5K views42 slides
The Basic Introduction of Open vSwitch by
The Basic Introduction of Open vSwitchThe Basic Introduction of Open vSwitch
The Basic Introduction of Open vSwitchTe-Yen Liu
67.6K views27 slides
Understanding Open vSwitch by
Understanding Open vSwitch Understanding Open vSwitch
Understanding Open vSwitch YongKi Kim
3.5K views27 slides
Weird things we've seen with OpenStack Neutron by
Weird things we've seen with OpenStack NeutronWeird things we've seen with OpenStack Neutron
Weird things we've seen with OpenStack NeutronNick Jones
718 views23 slides

Viewers also liked(20)

OVS VXLAN Network Accelaration on OpenStack (VXLAN offload and DPDK) - OpenSt... by VirtualTech Japan Inc.
OVS VXLAN Network Accelaration on OpenStack (VXLAN offload and DPDK) - OpenSt...OVS VXLAN Network Accelaration on OpenStack (VXLAN offload and DPDK) - OpenSt...
OVS VXLAN Network Accelaration on OpenStack (VXLAN offload and DPDK) - OpenSt...
OpenStack Kilo with 6Wind VA High-Performance Networking Using DPDK - OpenSta... by VirtualTech Japan Inc.
OpenStack Kilo with 6Wind VA High-Performance Networking Using DPDK - OpenSta...OpenStack Kilo with 6Wind VA High-Performance Networking Using DPDK - OpenSta...
OpenStack Kilo with 6Wind VA High-Performance Networking Using DPDK - OpenSta...
The Basic Introduction of Open vSwitch by Te-Yen Liu
The Basic Introduction of Open vSwitchThe Basic Introduction of Open vSwitch
The Basic Introduction of Open vSwitch
Te-Yen Liu67.6K views
Understanding Open vSwitch by YongKi Kim
Understanding Open vSwitch Understanding Open vSwitch
Understanding Open vSwitch
YongKi Kim3.5K views
Weird things we've seen with OpenStack Neutron by Nick Jones
Weird things we've seen with OpenStack NeutronWeird things we've seen with OpenStack Neutron
Weird things we've seen with OpenStack Neutron
Nick Jones718 views
Building Docker images with Puppet by Nick Jones
Building Docker images with PuppetBuilding Docker images with Puppet
Building Docker images with Puppet
Nick Jones1.3K views
debugging openstack neutron /w openvswitch by 어형 이
debugging openstack neutron /w openvswitchdebugging openstack neutron /w openvswitch
debugging openstack neutron /w openvswitch
어형 이5.6K views
OpenStack Neutron 201 1hr by David Lenwell
OpenStack Neutron 201 1hr OpenStack Neutron 201 1hr
OpenStack Neutron 201 1hr
David Lenwell1.1K views
OpenStack Neutron Reverse Engineered by openstackindia
OpenStack Neutron Reverse EngineeredOpenStack Neutron Reverse Engineered
OpenStack Neutron Reverse Engineered
openstackindia891 views
1 intro to_dpdk_and_hw by videos
1 intro to_dpdk_and_hw1 intro to_dpdk_and_hw
1 intro to_dpdk_and_hw
videos4.3K views
Accelerate SDN/NFV Network ~ネットワーク高速化のアレコレ~ - OpenStack最新情報セミナー 2016年3月 by VirtualTech Japan Inc.
Accelerate SDN/NFV Network ~ネットワーク高速化のアレコレ~ - OpenStack最新情報セミナー 2016年3月 Accelerate SDN/NFV Network ~ネットワーク高速化のアレコレ~ - OpenStack最新情報セミナー 2016年3月
Accelerate SDN/NFV Network ~ネットワーク高速化のアレコレ~ - OpenStack最新情報セミナー 2016年3月
OpenStack Atlanta User Survey by ryan-lane
OpenStack Atlanta User SurveyOpenStack Atlanta User Survey
OpenStack Atlanta User Survey
ryan-lane37.7K views
Introduction to Opendaylight by Beny Raja
Introduction to OpendaylightIntroduction to Opendaylight
Introduction to Opendaylight
Beny Raja804 views
OpenStack networking - Neutron deep dive with PLUMgrid by Kamesh Pemmaraju
OpenStack networking - Neutron deep dive with PLUMgridOpenStack networking - Neutron deep dive with PLUMgrid
OpenStack networking - Neutron deep dive with PLUMgrid
Kamesh Pemmaraju2.6K views
Opendaylight beryllium by Cheolmin Lee
Opendaylight berylliumOpendaylight beryllium
Opendaylight beryllium
Cheolmin Lee1.1K views

Similar to Accelerating Neutron with Intel DPDK

FD.IO Vector Packet Processing by
FD.IO Vector Packet ProcessingFD.IO Vector Packet Processing
FD.IO Vector Packet ProcessingKernel TLV
4.4K views35 slides
FD.io Vector Packet Processing (VPP) by
FD.io Vector Packet Processing (VPP)FD.io Vector Packet Processing (VPP)
FD.io Vector Packet Processing (VPP)Kirill Tsym
8.2K views35 slides
SCALE/SWITCHengines Update - Current and Possible SDN Applications by
SCALE/SWITCHengines Update - Current and Possible SDN ApplicationsSCALE/SWITCHengines Update - Current and Possible SDN Applications
SCALE/SWITCHengines Update - Current and Possible SDN ApplicationsSimon Leinen
1.1K views18 slides
OpenStack Networking and Automation by
OpenStack Networking and AutomationOpenStack Networking and Automation
OpenStack Networking and AutomationAdam Johnson
2.9K views29 slides
Ovn vancouver by
Ovn vancouverOvn vancouver
Ovn vancouverMason Mei
520 views33 slides
Open Networking for Your OpenStack by
Open Networking for Your OpenStackOpen Networking for Your OpenStack
Open Networking for Your OpenStackCumulus Networks
797 views30 slides

Similar to Accelerating Neutron with Intel DPDK(20)

FD.IO Vector Packet Processing by Kernel TLV
FD.IO Vector Packet ProcessingFD.IO Vector Packet Processing
FD.IO Vector Packet Processing
Kernel TLV4.4K views
FD.io Vector Packet Processing (VPP) by Kirill Tsym
FD.io Vector Packet Processing (VPP)FD.io Vector Packet Processing (VPP)
FD.io Vector Packet Processing (VPP)
Kirill Tsym8.2K views
SCALE/SWITCHengines Update - Current and Possible SDN Applications by Simon Leinen
SCALE/SWITCHengines Update - Current and Possible SDN ApplicationsSCALE/SWITCHengines Update - Current and Possible SDN Applications
SCALE/SWITCHengines Update - Current and Possible SDN Applications
Simon Leinen1.1K views
OpenStack Networking and Automation by Adam Johnson
OpenStack Networking and AutomationOpenStack Networking and Automation
OpenStack Networking and Automation
Adam Johnson2.9K views
Ovn vancouver by Mason Mei
Ovn vancouverOvn vancouver
Ovn vancouver
Mason Mei520 views
Stacks and Layers: Integrating P4, C, OVS and OpenStack by Open-NFP
Stacks and Layers: Integrating P4, C, OVS and OpenStackStacks and Layers: Integrating P4, C, OVS and OpenStack
Stacks and Layers: Integrating P4, C, OVS and OpenStack
Open-NFP1.6K views
Openstack Cactus Survey by Pjack Chen
Openstack Cactus SurveyOpenstack Cactus Survey
Openstack Cactus Survey
Pjack Chen588 views
Simplifying OpenStack Networks with Routing on the Host: Gerard Chami + Scott... by OpenStack
Simplifying OpenStack Networks with Routing on the Host: Gerard Chami + Scott...Simplifying OpenStack Networks with Routing on the Host: Gerard Chami + Scott...
Simplifying OpenStack Networks with Routing on the Host: Gerard Chami + Scott...
OpenStack3.3K views
Understanding and deploying Network Virtualization by SDN Hub
Understanding and deploying Network VirtualizationUnderstanding and deploying Network Virtualization
Understanding and deploying Network Virtualization
SDN Hub6.5K views
[Draft] Fast Prototyping with DPDK and eBPF in Containernet by Andrew Wang
[Draft] Fast Prototyping with DPDK and eBPF in Containernet[Draft] Fast Prototyping with DPDK and eBPF in Containernet
[Draft] Fast Prototyping with DPDK and eBPF in Containernet
Andrew Wang211 views
NaaS in OpenStack - CloudCamp Moscow by Ilya Alekseyev
NaaS in OpenStack - CloudCamp MoscowNaaS in OpenStack - CloudCamp Moscow
NaaS in OpenStack - CloudCamp Moscow
Ilya Alekseyev3.5K views
DEVNET-1006 Getting Started with OpenDayLight by Cisco DevNet
DEVNET-1006	Getting Started with OpenDayLightDEVNET-1006	Getting Started with OpenDayLight
DEVNET-1006 Getting Started with OpenDayLight
Cisco DevNet1.5K views
June Boston openStack Summit: Preparing quantum for the data center by Kamesh Pemmaraju
June Boston openStack Summit: Preparing quantum for the data centerJune Boston openStack Summit: Preparing quantum for the data center
June Boston openStack Summit: Preparing quantum for the data center
Kamesh Pemmaraju1.2K views
Introduction to OpenNetwork and SDN by HungWei Chiu
Introduction to OpenNetwork and SDNIntroduction to OpenNetwork and SDN
Introduction to OpenNetwork and SDN
HungWei Chiu549 views
BKK16-409 VOSY Switch Port to ARMv8 Platforms and ODP Integration by Linaro
BKK16-409 VOSY Switch Port to ARMv8 Platforms and ODP IntegrationBKK16-409 VOSY Switch Port to ARMv8 Platforms and ODP Integration
BKK16-409 VOSY Switch Port to ARMv8 Platforms and ODP Integration
Linaro870 views
Scaling OpenStack Networking Beyond 4000 Nodes with Dragonflow - Eshed Gal-Or... by Cloud Native Day Tel Aviv
Scaling OpenStack Networking Beyond 4000 Nodes with Dragonflow - Eshed Gal-Or...Scaling OpenStack Networking Beyond 4000 Nodes with Dragonflow - Eshed Gal-Or...
Scaling OpenStack Networking Beyond 4000 Nodes with Dragonflow - Eshed Gal-Or...

Recently uploaded

KVM Security Groups Under the Hood - Wido den Hollander - Your.Online by
KVM Security Groups Under the Hood - Wido den Hollander - Your.OnlineKVM Security Groups Under the Hood - Wido den Hollander - Your.Online
KVM Security Groups Under the Hood - Wido den Hollander - Your.OnlineShapeBlue
154 views19 slides
Import Export Virtual Machine for KVM Hypervisor - Ayush Pandey - University ... by
Import Export Virtual Machine for KVM Hypervisor - Ayush Pandey - University ...Import Export Virtual Machine for KVM Hypervisor - Ayush Pandey - University ...
Import Export Virtual Machine for KVM Hypervisor - Ayush Pandey - University ...ShapeBlue
48 views17 slides
Automating a World-Class Technology Conference; Behind the Scenes of CiscoLive by
Automating a World-Class Technology Conference; Behind the Scenes of CiscoLiveAutomating a World-Class Technology Conference; Behind the Scenes of CiscoLive
Automating a World-Class Technology Conference; Behind the Scenes of CiscoLiveNetwork Automation Forum
49 views35 slides
CloudStack and GitOps at Enterprise Scale - Alex Dometrius, Rene Glover - AT&T by
CloudStack and GitOps at Enterprise Scale - Alex Dometrius, Rene Glover - AT&TCloudStack and GitOps at Enterprise Scale - Alex Dometrius, Rene Glover - AT&T
CloudStack and GitOps at Enterprise Scale - Alex Dometrius, Rene Glover - AT&TShapeBlue
81 views34 slides
Extending KVM Host HA for Non-NFS Storage - Alex Ivanov - StorPool by
Extending KVM Host HA for Non-NFS Storage -  Alex Ivanov - StorPoolExtending KVM Host HA for Non-NFS Storage -  Alex Ivanov - StorPool
Extending KVM Host HA for Non-NFS Storage - Alex Ivanov - StorPoolShapeBlue
56 views10 slides
DRaaS using Snapshot copy and destination selection (DRaaS) - Alexandre Matti... by
DRaaS using Snapshot copy and destination selection (DRaaS) - Alexandre Matti...DRaaS using Snapshot copy and destination selection (DRaaS) - Alexandre Matti...
DRaaS using Snapshot copy and destination selection (DRaaS) - Alexandre Matti...ShapeBlue
69 views29 slides

Recently uploaded(20)

KVM Security Groups Under the Hood - Wido den Hollander - Your.Online by ShapeBlue
KVM Security Groups Under the Hood - Wido den Hollander - Your.OnlineKVM Security Groups Under the Hood - Wido den Hollander - Your.Online
KVM Security Groups Under the Hood - Wido den Hollander - Your.Online
ShapeBlue154 views
Import Export Virtual Machine for KVM Hypervisor - Ayush Pandey - University ... by ShapeBlue
Import Export Virtual Machine for KVM Hypervisor - Ayush Pandey - University ...Import Export Virtual Machine for KVM Hypervisor - Ayush Pandey - University ...
Import Export Virtual Machine for KVM Hypervisor - Ayush Pandey - University ...
ShapeBlue48 views
Automating a World-Class Technology Conference; Behind the Scenes of CiscoLive by Network Automation Forum
Automating a World-Class Technology Conference; Behind the Scenes of CiscoLiveAutomating a World-Class Technology Conference; Behind the Scenes of CiscoLive
Automating a World-Class Technology Conference; Behind the Scenes of CiscoLive
CloudStack and GitOps at Enterprise Scale - Alex Dometrius, Rene Glover - AT&T by ShapeBlue
CloudStack and GitOps at Enterprise Scale - Alex Dometrius, Rene Glover - AT&TCloudStack and GitOps at Enterprise Scale - Alex Dometrius, Rene Glover - AT&T
CloudStack and GitOps at Enterprise Scale - Alex Dometrius, Rene Glover - AT&T
ShapeBlue81 views
Extending KVM Host HA for Non-NFS Storage - Alex Ivanov - StorPool by ShapeBlue
Extending KVM Host HA for Non-NFS Storage -  Alex Ivanov - StorPoolExtending KVM Host HA for Non-NFS Storage -  Alex Ivanov - StorPool
Extending KVM Host HA for Non-NFS Storage - Alex Ivanov - StorPool
ShapeBlue56 views
DRaaS using Snapshot copy and destination selection (DRaaS) - Alexandre Matti... by ShapeBlue
DRaaS using Snapshot copy and destination selection (DRaaS) - Alexandre Matti...DRaaS using Snapshot copy and destination selection (DRaaS) - Alexandre Matti...
DRaaS using Snapshot copy and destination selection (DRaaS) - Alexandre Matti...
ShapeBlue69 views
2FA and OAuth2 in CloudStack - Andrija Panić - ShapeBlue by ShapeBlue
2FA and OAuth2 in CloudStack - Andrija Panić - ShapeBlue2FA and OAuth2 in CloudStack - Andrija Panić - ShapeBlue
2FA and OAuth2 in CloudStack - Andrija Panić - ShapeBlue
ShapeBlue75 views
Backroll, News and Demo - Pierre Charton, Matthias Dhellin, Ousmane Diarra - ... by ShapeBlue
Backroll, News and Demo - Pierre Charton, Matthias Dhellin, Ousmane Diarra - ...Backroll, News and Demo - Pierre Charton, Matthias Dhellin, Ousmane Diarra - ...
Backroll, News and Demo - Pierre Charton, Matthias Dhellin, Ousmane Diarra - ...
ShapeBlue121 views
Confidence in CloudStack - Aron Wagner, Nathan Gleason - Americ by ShapeBlue
Confidence in CloudStack - Aron Wagner, Nathan Gleason - AmericConfidence in CloudStack - Aron Wagner, Nathan Gleason - Americ
Confidence in CloudStack - Aron Wagner, Nathan Gleason - Americ
ShapeBlue58 views
TrustArc Webinar - Managing Online Tracking Technology Vendors_ A Checklist f... by TrustArc
TrustArc Webinar - Managing Online Tracking Technology Vendors_ A Checklist f...TrustArc Webinar - Managing Online Tracking Technology Vendors_ A Checklist f...
TrustArc Webinar - Managing Online Tracking Technology Vendors_ A Checklist f...
TrustArc130 views
NTGapps NTG LowCode Platform by Mustafa Kuğu
NTGapps NTG LowCode Platform NTGapps NTG LowCode Platform
NTGapps NTG LowCode Platform
Mustafa Kuğu287 views
Live Demo Showcase: Unveiling Dell PowerFlex’s IaaS Capabilities with Apache ... by ShapeBlue
Live Demo Showcase: Unveiling Dell PowerFlex’s IaaS Capabilities with Apache ...Live Demo Showcase: Unveiling Dell PowerFlex’s IaaS Capabilities with Apache ...
Live Demo Showcase: Unveiling Dell PowerFlex’s IaaS Capabilities with Apache ...
ShapeBlue52 views
Declarative Kubernetes Cluster Deployment with Cloudstack and Cluster API - O... by ShapeBlue
Declarative Kubernetes Cluster Deployment with Cloudstack and Cluster API - O...Declarative Kubernetes Cluster Deployment with Cloudstack and Cluster API - O...
Declarative Kubernetes Cluster Deployment with Cloudstack and Cluster API - O...
ShapeBlue59 views
iSAQB Software Architecture Gathering 2023: How Process Orchestration Increas... by Bernd Ruecker
iSAQB Software Architecture Gathering 2023: How Process Orchestration Increas...iSAQB Software Architecture Gathering 2023: How Process Orchestration Increas...
iSAQB Software Architecture Gathering 2023: How Process Orchestration Increas...
Bernd Ruecker50 views
Hypervisor Agnostic DRS in CloudStack - Brief overview & demo - Vishesh Jinda... by ShapeBlue
Hypervisor Agnostic DRS in CloudStack - Brief overview & demo - Vishesh Jinda...Hypervisor Agnostic DRS in CloudStack - Brief overview & demo - Vishesh Jinda...
Hypervisor Agnostic DRS in CloudStack - Brief overview & demo - Vishesh Jinda...
ShapeBlue93 views
Centralized Logging Feature in CloudStack using ELK and Grafana - Kiran Chava... by ShapeBlue
Centralized Logging Feature in CloudStack using ELK and Grafana - Kiran Chava...Centralized Logging Feature in CloudStack using ELK and Grafana - Kiran Chava...
Centralized Logging Feature in CloudStack using ELK and Grafana - Kiran Chava...
ShapeBlue74 views
Zero to Cloud Hero: Crafting a Private Cloud from Scratch with XCP-ng, Xen Or... by ShapeBlue
Zero to Cloud Hero: Crafting a Private Cloud from Scratch with XCP-ng, Xen Or...Zero to Cloud Hero: Crafting a Private Cloud from Scratch with XCP-ng, Xen Or...
Zero to Cloud Hero: Crafting a Private Cloud from Scratch with XCP-ng, Xen Or...
ShapeBlue128 views
The Role of Patterns in the Era of Large Language Models by Yunyao Li
The Role of Patterns in the Era of Large Language ModelsThe Role of Patterns in the Era of Large Language Models
The Role of Patterns in the Era of Large Language Models
Yunyao Li74 views

Accelerating Neutron with Intel DPDK

  • 1. Accelerating OpenStack Neutron with Intel DPDK based Open vSwitch Alexander Shalimov http://arccn.ru/ ashalimov@arccn.ru @alex_shali @arccnnews
  • 2. OpenStack • Open source software for building private and public cloud. – Create VMs, attach storage to them, and connect them into virtual topology 2
  • 3. OpenStack Neutron • Neutron = OpenStack networking • Main responsibility is to provide virtual network to the tenant: – Setup L2 network – Setup L3 network (DHCP, gateway, ACL) • Plugin architecture – Linux Bridge – Open vSwitch – Ryu OpenFlow controller – Nicira NVP 3
  • 4. • Based on Open vSwitch, virtual software switch • The plugin supports three operational modes: – FLAT: virtual networks share on L2 domain – VLAN: each virtual network has its own VLAN tag – GRE: traffic goes through NVGRE tunnels and separated by XID. OVS/GRE setup: +: Very popular, any Ethernet fabric, 2^32 networks -: Bad performance and scalability (between VMs located on different compute nodes) 4 Open vSwitch plugin
  • 5. OVS/GRE plugin architecture 5 VM VM VM VM br-int br-ex Compute Node VMs OVS bridgespatch port GRE port NIC physical layer ??? SLOW http://www.openstack.org/summit/openstack-summit-hong-kong-2013/session-videos/presentation/open-vswitch-and-its-usage-in-neutron
  • 6. OVS/GRE plugin bottlenecks 6 br-ex patch port GRE port NIC Linux Networking Stack Standard networking stack is slow, yes. It’s well know fact. But the traffic speed is even slower. • Heavily layered • Allocation • ….
  • 7. GRE port in OVS • OVS lays finishing of GRE packet encapsulation on networking stack. 7 MACs IPs Payload VM OVS GRE port MACs IPs PayloadGRE Linux Networking Stack MACs IPs PayloadGREMACs IPs Require more work for route and arp lookups. Thus, slower!
  • 8. Accelerating Neutron • Don’t use Linux Networking Stack - use special fast paths instead: – Intel DPDK, – Netmap. • Open vSwitch should be integrated with such fast paths. • Our choose to start was Intel DPDK vSwitch. 8
  • 9. Intel DPDK vSwitch • Basically it is OVS daemon connected to DPDK-based datapath – https://github.com/01org/dpdk-ovs • But it required some work for OpenStack: – patch ports, – multiple datapaths/bridges, – GRE stack • Still need route and arp lookups. 9
  • 10. Our GRE port architecture • GRE port should fully be responsible for packet encapsulation. • Tasks of GRE port: – Determine local IP. • Must specify both local and remote IPs; – Determine MAC addresses • Maintain our own ARP table; – What NIC to send • Route table is encoded into main flow table and encapsulated packets are returned back to the datapath and matched again against the flow table. • Still suit OpenStack Neutron plugin 10
  • 11. Our GRE port architecture 11 VM VM GREGRE NIC NIC Original Our Flow table Flow table Linux networking stack DPDK OVS DPDK OVS
  • 12. Experimental evaluation 12 Accelerated OVS Original OVS VLAN physical-to-physical 5 Mpps 1.1 Mpps physical-to-vm 3.3 Mpps 0.44 Mpps GRE physical-to-physical 1.6 Mpps 0.22 Mpps physical-to-vm 1.12 Mpps 0.11 Mpps * 10 Gb channel ** 64 bytes UDP packets *** theoretical max is 15Mpps **** Intel Xeon E3-1240 2.4GHz/6 ***** IVSHMEM VM connection (~0.6Mpps without) It is 5 times performance improving!
  • 13. Questions? • The code is available in ARCCN github: – arccn.github.io 13 http://arccn.ru/ ashalimov@arccn.ru @alex_shali @arccnnews

Editor's Notes

  1. Many OpenStack deployments use Open vSwitch plugin for Neutron. But at the same time there are a lot of discussions that its performance and scalability is not enough for production. In this talk we will address this performance issues and present our work on accelerating Open vSwitch in Neutron in both VLAN and GRE operational modes. We already got 5 times performance improving!
  2. Presents a logical API and a corresponding plug-in architecture that separates the description of network connectivity from its implementation
  3. It is complex and expensive:Complex heavily layered universal code.Expensive system calls and data copies just to move packets from/to kernel.Costly packet encapsulation in the kernel (per-packet malloc/free, refcounter pointers, data sharing,…)