6wind Support Intel DPDK Presentation
6wind Support Intel DPDK Presentation
6wind Support Intel DPDK Presentation
V1.5 / 1
V1.6
6WIND 2014. All rights reserved. All brand names, trademarks and copyright information cited in this presentation shall remain the property of its registered owners.
Topics
Introduction
Baseline features
Optional add-ons
Support
Business model
Performance
Support
Use cases
Summary
6WIND 2014
V1.6 | 2
Topics
Introduction
Baseline features
Optional add-ons
Support
Business model
Performance
Support
Use cases
Summary
6WIND 2014
V1.6 | 3
V1.6 | 4
Baseline Intel
DPDK Code
Sync of git tree
dpdk.org
2. From dpdk.org
Open-Source
Community
Patches
Sync of
git tree
3. From 6WIND
6WIND DPDK
Selected 6WINDdeveloped
enhancements
6WIND 2014
plus
selected 6WINDdeveloped
enhancements
Maintained version
Latest version of DPDK
Feature and performance enhancements
dpdk.org patches
Full technical support and maintenance
Optionally integrated with 6WINDGate
V1.6 | 5
Topics
Introduction
Baseline features
Optional add-ons
Support
Business model
Performance
Support
Use cases
Summary
6WIND 2014
V1.6 | 6
Libraries
Drivers
Documentation
git repository
Technical support.
V1.6 | 7
Topics
Introduction
Baseline features
Optional add-ons
Support
Business model
Performance
Support
Use cases
Summary
6WIND 2014
V1.6 | 8
Topics
Introduction
Baseline features: Intel presentation content reused with permission from Intel
Optional add-ons
Support
Business model
Performance
Support
Use cases
Summary
6WIND 2014
V1.6 | 9
6WIND 2014
V1.6 | 10
6WIND 2014
V1.6 | 11
6WIND 2014
V1.6 | 12
6WIND 2014
V1.6 | 13
6WIND 2014
V1.6 | 14
6WIND 2014
V1.6 | 15
6WIND 2014
V1.6 | 16
Topics
Introduction
Baseline features
Optional add-ons
Support
Business model
Performance
Support
Use cases
Summary
6WIND 2014
V1.6 | 17
Acceleration / offload
Intel QuickAssist
Acceleration Technology
Mellanox ConnectX-3 EN
Poll Mode Driver
dpdk.org features
6WIND 2014
V1.6 | 18
librte_ framework
librte_pmd_multibuffer.so
librte_pmd_nitrox.so
librte_pmd_quickassist.so
librte_cmdline
librte_power
librte_sched
librte_timer
librte_pmd_others.so
librte_pmd_mlx4.so
librte_pmd_fast_vnic.so
librte_pmd_vmxnet3.so
librte_pmd_virtio.so (1)
librte_pmd_virtio (1)
librte_pmd_ring
librte_pmd_pcap
librte_pmd_ixgbe
librte_pmd_e1000
librte_mbuf
librte_ring
librte_malloc
librte_mempool
librte_eal / linux userland
V1.6 | 19
6WIND 2014
Developed by 6WIND
and available from
6WIND
Developed
by 6WIND,
available
from
dpdk.org
librte_crypto
librte_ether (rte_eth_dev_*() )
System Design
Requirements analysis.
System software architecture
evaluation
Performance measurements
Software integration
System Deployment
Technical training
DPDK integration.
Maintenance
Updates.
Technical training
Migrating networking
applications to multicore.
6WIND 2014
Customization
Software integration.
V1.6 | 20
Successful technical support model proven with clients worldwide in all tiers
Experienced with custom support agreements for specific clients when required.
6WIND 2014
V1.6 | 21
Developer subscription
6WIND 2014
Optional additions
Optional additions
Standard subscription
Standard subscription
Production subscription
V1.6 | 22
Topics
Introduction
Baseline features
Optional add-ons
Support
Business model
Performance
Support
Use cases
Summary
6WIND 2014
V1.6 | 23
Performance
Ivy Bridge
Sandy Bridge
6WINDGate ported
to Clovertown in
2007
Westmere
Nehalem
Clovertown
6WIND 2014
V1.6 | 24
Intel DPDK
Data Plane libraries
Optimized NIC drivers
6WIND 2014
V1.6 | 25
Control
Plane
Data
Plane
Fast Path
dpdk.org
dpdk.org
6WIND 2014
Control Plane
Architecture-independent fast path modules
6WIND 2014
Fast Path
Data
Plane
IA FPN-SDK
DPDK
V1.6 | 27
Fast Path
QoS
IPv4 / IPv6
Filtering
VLAN
GRE
IP Reassembly
GTP-U
NAT
IPsec SVTI
Ethernet Bridging,
LAG
L2TP, PPPoE
BRAS
Open vSwitch
(OVS) Acceleration
Flow Inspection
(BPF)
TCP / UDP
Termination
Extended Fast
Path (1CP + xFP)
FPN
SDK
rte_timers timers
DPVI
fpu RPC
librte_ framework
librte_ether (rte_eth_dev_*() )
librte_pmd_multibuffer.so
librte_pmd_nitrox.so
librte_pmd_quickassist.so
librte_cmdline
librte_power
librte_sched
librte_timer
librte_pmd_others.so
librte_pmd_mlx4.so
librte_pmd_fast_vnic.so
librte_pmd_vmxnet3.so
librte_pmd_virtio.so (1)
librte_pmd_virtio (1)
librte_pmd_ring
librte_pmd_pcap
6WIND 2014
librte_pmd_ixgbe
librte_pmd_e1000
librte_mbuf
librte_ring
librte_malloc
librte_mempool
Intel
DPDK
librte_crypto
V1.6 | 28
High Availability
Control Plane
HA ARP / NDP
HA Routing
Routing (RIP,
OSPF, BGP,
Multicast)
Virtual Routing
and Forwarding
Security (IKEv1,
IKEv2)
VPN Monitoring
HA Firewall /
NAT
HA IPsec
BFD
SMR
PPPoE BRAS
L2TP BRAS
HA Daemon
Monitoring
System
HA LACP
VRRP
LACP
Open vSwitch
(OVS)
Management
Fast Path
Data
Plane
IPv4 / IPv6
Forwarding and
Tunneling
VLAN
GRE
Ethernet
Bridging, LAG
Flow Inspection
QoS
IPv4 / IPv6
Multicast
IP Reassembly
GTP-U
L2TP, PPPoE
BRAS
TCP / UDP
Termination
(IPv4 / IPv6)
IPv4 / IPv6
Filtering
MPLS / VPLS
Encapsulation
NAT
IPsec SVTI
Open vSwitch
(OVS)
Acceleration
Extended Fast
Path (1CP + xFP)
6WIND 2014
V1.6 | 29
Linux
Application Software
Packet Processing
Software
Packet
Processing
Performance
Control Plane
1
Data
Plane
Fast Path
6WIND 2014
DPDK
DPDK
3
4
5
Number of fast path cores
DPDK
DPDK
Fast Path
Cores
V1.6 | 30
Virtual Machine
Virtual Machine
Virtual Machine
Virtual
Application
Virtual
Network
Appliance
Virtual
Network
Appliance
Linux
Linux
6WIND DPDK
enhancements
6WIND DPDK
enhancements
Operating
System
VM2VM
vNIC
IOv
IOMMU
or SRIOV
Virtual Switch
6WIND 2014
Hypervisor
NIC(s)
V1.6 | 31
Performance on other
IA platforms available
on request
6WIND 2014
6WINDGate IP forwarding
performance
Performance is independent of
packet size
V1.6 | 32
System Design
Requirements analysis
System software architecture
evaluation
Performance measurements
Software integration
6WINDGate source code
license
DPDK technical support
DPDK integration
System Deployment
Migrating networking
applications to multicore
Development support
Technical training
Architecture optimizations
Customization
Protocols
Software integration
6WIND 2014
Maintenance
Updates
V1.6 | 33
Industry-leading experience from many years of software development for Intel DPDK platform
6WIND provides 6WINDGate pre-integrated with Intel DPDK to accelerate clients' time-to-market.
Successful technical support model proven with clients worldwide in all tiers
Experienced with custom support agreements for specific clients when required.
6WIND 2014
V1.6 | 34
Physical Appliance
Virtual Appliance
Virtual Machine
Linux
Firewall / IPS
Application Software
Linux
Firewall / IPS
Application Software
Networking Control
Plane
VLAN
Leverages highperformance
6WINDGate data
plane protocols plus
optimized NIC drivers
in 6WIND DPDK
High Availability
Virtual Routing
Crypto
Acceleration
TCP / SSL
6WIND 2014
Virtualization
acceleration in
6WIND DPDK
maximizes
performance of
virtual appliance
Networking Control
Plane
Packet
Processing
6WIND
DPDK
Firewall / QoS
High Availability
VLAN
Crypto
Acceleration
Virtual Routing
IPv4 / IPv6 / IPsec
TCP / SSL
Hypervisor
V1.6 | 35
OpenFlow-compatible
Transparent to applications
6WINDGate-plusDPDK also used to
accelerate VMs
with high packet
processing
performance
requirements
VM
VM
VM
VM
VM
6WINDGateAccelerated
Open vSwitch
VM
IPsec
Accelerated
vSwitch Data
Plane
(Fast Path)
(NV)GRE
V(x)LAN
Layer 2 Switching
6WIND DPDK
6WIND 2014
OpenFlow
Controller
10x switching
performance
3x - 9x
improvement
in VM density
V1.6 | 36
Virtual Machine
Virtual Machine
Virtual Machine
Virtual Machine
Virtual Network
Function
Virtual Network
Function
Virtual Network
Function
Virtual Network
Function
Linux
Linux
Linux
Linux
6WIND DPDK
6WIND DPDK
6WIND DPDK
6WIND DPDK
Hypervisor
6WIND DPDK
Linux
COTS or Server
Platform
6WIND 2014
Accelerated
by 6WINDGate
6WINDGate-plusDPDK accelerates
Virtual Networking
Functions (VNFs)
running in VMs
and
Virtual Switch
responsible for
switching traffic to
VNFs
Enables VNFs to
deliver comparable
performance to
physical
implementations
V1.6 | 37
Topics
Introduction
Baseline features
Optional add-ons
Support
Business model
Performance
Support
Use cases
Summary
6WIND 2014
V1.6 | 38
Website
www.6wind.com
White Paper
Blog
www.6windblog.com
6WIND 2014
V1.6 | 39
Linux
Intel DPDK
.
Intel Multicore Processor
V1.6 | 40