Sie sind auf Seite 1von 40

6WIND Support for Intel® Data Plane

Development Kit (DPDK)

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

 DPDK.org open-source project

 Intel® DPDK library from 6WIND

 Baseline features

 Optional add-ons

 Support

 Business model

 Integrated packet processing solution: 6WINDGate™ plus Intel® DPDK

 Features and benefits

 Performance

 Support

 Use cases

 Summary

©6WIND 2014 V1.6 | 2


Topics

 Introduction

 DPDK.org open-source project

 Intel® DPDK library from 6WIND

 Baseline features

 Optional add-ons

 Support

 Business model

 Integrated packet processing solution: 6WINDGate™ plus Intel® DPDK

 Features and benefits

 Performance

 Support

 Use cases

 Summary

©6WIND 2014 V1.6 | 3


Introduction: 6WIND and Intel® DPDK

 Long-term strategic partnership

 First high performance networking


software on Intel processors, introduced
before Intel® DPDK

 First commercial networking software with


Intel® DPDK support, demonstrated at
Intel Developer Forum September 2011

 6WINDGate deployed on IA platforms by


tier-1 networking and telecom equipment
OEMs

 Launched dpdk.org in April 2013

©6WIND 2014 V1.6 | 4


Your Three Options for Obtaining Intel® DPDK

1. From Intel
• As direct Intel customer
• Latest version of Intel® DPDK
• www.intel/com/go/dpdk

Baseline Intel®
DPDK Code
Sync of git tree dpdk.org
2. From dpdk.org
• Latest version of Intel DPDK
• Community patches
Open-Source
• Community support
Community • Some 6WIND-developed features
Patches
Sync of
git tree

3. From 6WIND
6WIND DPDK • Maintained version
plus • Latest version of DPDK
Selected 6WIND- selected 6WIND- • Feature and performance enhancements
developed developed • dpdk.org patches
enhancements enhancements • Full technical support and maintenance
• Optionally integrated with 6WINDGate

©6WIND 2014 V1.6 | 5


Topics

 Introduction

 DPDK.org open-source project

 Intel® DPDK library from 6WIND

 Baseline features

 Optional add-ons

 Support

 Business model

 Integrated packet processing solution: 6WINDGate™ plus Intel® DPDK

 Features and benefits

 Performance

 Support

 Use cases

 Summary

©6WIND 2014 V1.6 | 6


DPDK.org Open-Source Project

 Open-Source project established by 6WIND


 Announced on April 9, 2013.

 Goal is to accelerate development of DPDK-


based networking and telecom products.

 Comprehensive set of resources for developers


 Libraries
 Drivers
 Documentation
 Development mailing list
 git repository
 Technical support.

Openly-accessible repository for released


versions of DPDK

©6WIND 2014 V1.6 | 7


Topics

 Introduction

 DPDK.org open-source project

 Intel® DPDK library from 6WIND

 Baseline features

 Optional add-ons

 Support

 Business model

 Integrated packet processing solution: 6WINDGate™ plus Intel® DPDK

 Features and benefits

 Performance

 Support

 Use cases

 Summary

©6WIND 2014 V1.6 | 8


Topics

 Introduction

 DPDK.org open-source project

 Intel® DPDK library from 6WIND

 Baseline features: Intel presentation content reused with permission from Intel

 Optional add-ons

 Support

 Business model

 Integrated packet processing solution: 6WINDGate™ plus Intel® DPDK

 Features and benefits

 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

 DPDK.org open-source project

 Intel® DPDK library from 6WIND

 Baseline features

 Optional add-ons

 Support

 Business model

 Integrated packet processing solution: 6WINDGate™ plus Intel® DPDK

 Features and benefits

 Performance

 Support

 Use cases

 Summary

©6WIND 2014 V1.6 | 17


Intel® DPDK Library from 6WIND: Features and
Benefits

 Based on baseline Intel® DPDK library


6WIND DPDK add-on functions  As well as features available via dpdk.org
Virtualization acceleration Acceleration / offload
Cavium Nitrox Security  6WIND DPDK add-ons available for increased system
Fast vNIC Poll Mode Driver
Acceleration functionality, performance and reliability

vNIC VMXNET3 Poll Mode Intel® Multi Buffer Crypto for


 Poll Mode Drivers (PMDs) for non-Intel NICs
Driver IPsec Library
 e.g. Mellanox ConnectX-3® EN PMD
Intel® QuickAssist
vNIC Virtio Poll Mode Driver
Acceleration Technology  Performance acceleration for virtualized networking
 Fast vNIC PMD
Mellanox ConnectX®-3 EN  vNIC VMXNET3 PMD
Non-Intel NIC support
Poll Mode Driver
 vNIC Virtio PMD

 Crypto acceleration modules that leverage


dpdk.org features  Cavium Nitrox security acceleration
 Intel® Multi Buffer Crypto for IPsec Library

Baseline Intel® DPDK library  Intel® QuickAssist Acceleration Technology

©6WIND 2014 V1.6 | 18


V1.6 | 19

librte_pmd_multibuffer.so
librte_crypto

librte_pmd_nitrox.so
librte_pmd_quickassist.so
Developed by 6WIND

librte_cmdline
and available from
6WIND's Enhancements to Intel® DPDK

librte_power
6WIND

librte_sched
librte_timer
librte_pmd_others.so
librte_pmd_mlx4.so
librte_pmd_fast_vnic.so
librte_ framework

librte_ether (rte_eth_dev_*() )

Developed
by 6WIND,

dpdk.org
available
librte_pmd_vmxnet3.so

from
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
librte_eal / linux userland
Intel® DPDK Library from 6WIND:
Comprehensive Lifecycle Support

System Development and


System Design System Deployment
Integration

• Requirements analysis. • Software integration • DPDK product support


• DPDK technical support • Technical training
• System software architecture • DPDK integration. • Maintenance
evaluation
• Updates.
• Performance measurements • DPDK driver development.
• Software design trade-offs.

• Development support
• 6WIND expertise • Technical training
• Migrating networking • Customization
applications to multicore.
• Software integration.

©6WIND 2014 V1.6 | 20


Best-in-Class Technical Support

 Industry-leading experience from many years of software development for Intel®


DPDK platform
 Proven with tier-1 networking and telecom equipment companies worldwide.

 Successful technical support model proven with clients worldwide in all tiers
 Experienced with custom support agreements for specific clients when required.

 Standard support agreement includes


 SLA-defined response times
 Online system for submitting support questions and tracking issues.

 Dedicated service and support team


 Local experts based in Asia, Europe and North America

 Partnerships with software services companies for value-added services worldwide.

©6WIND 2014 V1.6 | 21


Subscription-Based Business Model for DPDK
Note: different business model
for 6WINDGate software

 Developer subscription  Production subscription


 Resources to help develop a product  Resources to help maintain a shipping platform

 Cannot be used for product deployment  Cannot be used for product development

 Applies to defined platform configuration(s)  Applies to defined DPDK version and platform
configuration(s)

 Patches and maintenance releases


 Quarterly releases of 6WIND DPDK
 Multiple options for number of deployed units
 Patches and maintenance releases

 Ongoing access to latest version of DPDK


 Standard subscription
 One year duration, web interface plus 12x5 phone support,
 Standard subscription
quarterly reports, two subscribers, single supported
 One year duration, web interface for support, single platform, one DPDK version, on-line training
subscriber, single supported platform, limited engineering
services, on-line training
 Optional additions
 Up to three years duration, web interface plus 24x7 phone
 Optional additions
support, monthly reports, additional subscribers, more
 Up to three years duration, regular support calls, additional platforms, more DPDK versions, engineering services, on-
subscribers, more platforms, increased engineering site training, private branch
services, on-site training

©6WIND 2014 V1.6 | 22


Topics

 Introduction

 DPDK.org open-source project

 Intel® DPDK library from 6WIND

 Baseline features

 Optional add-ons

 Support

 Business model

 Integrated packet processing solution: 6WINDGate™ plus Intel® DPDK

 Features and benefits

 Performance

 Support

 Use cases

 Summary

©6WIND 2014 V1.6 | 23


6WINDGate Support for Intel® DPDK

Performance

Ivy Bridge

Sandy Bridge
6WINDGate ported
to Clovertown in
2007 Westmere

Intel® DPDK support


Nehalem

Early Intel® DPDK


Clovertown releases before general
availability

©6WIND 2014 V1.6 | 24


6WINDGate Provides System Solution
Leveraging Intel® DPDK

Client’s Application Software

High-performance packet processing solutions for


• Gateways
• Security appliances
• UTMs
• Virtual appliances
• etc.

Intel® DPDK
• Data Plane libraries
• Optimized NIC drivers

……
Intel Multicore Processor

©6WIND 2014 V1.6 | 25


Optimized Integration between 6WINDGate and
Intel® DPDK

 6WINDGate provides complete packet


processing solution for DPDK platforms
Complete set of Layer 2 through Layer 4  Comprehensive set of optimized networking
Control protocols
routing, security, connectivity, switching and
Plane mobility protocols
 Full compatibility with application APIs
 Carrier Grade reliability.
20+ optimized fast path
Data Fast Path protocols with full support
Plane for on-chip accelerators  6WINDGate fully leverages Intel® DPDK
library
 Exploits Intel® DPDK data plane libraries for
best possible utilization of processor resources
Optional 6WIND Add-Ons  Optimized NIC drivers for maximum networking
performance.
dpdk.org dpdk.org dpdk.org

Intel® DPDK library plus dpdk.org features and


6WIND DPDK add-ons
 Delivered as integrated solution to
accelerate clients' time-to-market.

©6WIND 2014 V1.6 | 26


Intel® DPDK Support Implemented via Optimized
"FPN-SDK" Module

Control Plane

Architecture-independent fast path modules


Fast Path
Data
• Generic, processor-independent source code Plane
• Cycle-level and pipeline-level optimizations.

Architecture-specific "Fast Path Networking SDK"


IA FPN-SDK
• Zero-overhead API for fast path modules
• Support for processor-specific features and resources
• Optimized for Intel® DPDK.
DPDK

©6WIND 2014 V1.6 | 27


Detailed Architecture of 6WINDGate on Intel®
DPDK
Fast Path IPv4 / IPv6 Ethernet Bridging, Flow Inspection
IPsec IPv4 / IPv6 VLAN GRE
Forwarding LAG (BPF)
IPv4 / IPv6 L2TP, PPPoE TCP / UDP
QoS IP Reassembly GTP-U
Multicast BRAS Termination
IPv4 / IPv6 MPLS / VPLS Open vSwitch Extended Fast
NAT IPsec SVTI
Filtering Encapsulation (OVS) Acceleration Path (1CP + xFP)

RX/TX plug-ins (load balancers, QoS, custom modules)

FPN
rte_mbuf  fast path buf rte_timers  timers DPVI fpu RPC
SDK

librte_ framework

librte_ether (rte_eth_dev_*() ) librte_crypto


librte_eal / linux userland

librte_pmd_quickassist.so

librte_pmd_multibuffer.so
librte_pmd_fast_vnic.so
librte_pmd_vmxnet3.so
librte_pmd_virtio.so (1)
librte_mempool

librte_pmd_others.so

librte_pmd_nitrox.so
librte_cmdline
librte_pmd_virtio (1)

librte_pmd_mlx4.so
librte_malloc

librte_power
librte_sched
librte_pmd_e1000

librte_pmd_ixgbe

librte_timer
librte_pmd_pcap

Intel®
librte_ring

librte_pmd_ring
librte_mbuf

DPDK

©6WIND 2014 V1.6 | 28


Comprehensive Protocol Set

High Availability Control Plane


Routing (RIP,
Virtual Routing Security (IKEv1,
HA ARP / NDP HA Routing OSPF, BGP, VPN Monitoring
and Forwarding IKEv2)
Multicast)

HA Firewall /
HA IPsec BFD SMR PPPoE BRAS L2TP BRAS
NAT

HA Daemon
Open vSwitch
Monitoring HA LACP VRRP LACP Management
(OVS)
System

Fast Path
IPv4 / IPv6
Ethernet
Forwarding and IPsec IPv4 / IPv6 VLAN GRE Flow Inspection
Bridging, LAG
Tunneling
Data TCP / UDP
IPv4 / IPv6 L2TP, PPPoE
Plane QoS
Multicast
IP Reassembly GTP-U
BRAS
Termination
(IPv4 / IPv6)
Open vSwitch
IPv4 / IPv6 MPLS / VPLS Extended Fast
NAT IPsec SVTI (OVS)
Filtering Encapsulation Path (1CP + xFP)
Acceleration

©6WIND 2014 V1.6 | 29


Scalable across Processors, Blades and Racks

Hardware Platform
Linux
Cores • Fast path maximizes performance by processing
packets on dedicated cores running DPDK
Linux
• Supports dynamic configuration of cores to run
Linux or fast path
Application Software • Performance scales linearly with number of cores
running fast path

Packet Processing Packet


Software Processing
Performance

Control Plane

1 2 3 4 5
Number of fast path cores

Data Fast Path Fast Path


DPDK DPDK DPDK DPDK
Plane Cores

©6WIND 2014 V1.6 | 30


High-Performance Networking in Virtualized
Environments

Virtual Machine Virtual Machine Virtual Machine


 6WIND-enhanced version of Intel® DPDK library
Virtual Virtual
removes VM and hypervisor bottlenecks Virtual
Network Network
Application
 I/O Virtualization (IOV) bypasses vSwitch, removing switching Appliance Appliance
performance constraints

 Supports both IOMMU and SRIOV Linux Linux

 Virtual VIC (vNIC) driver accelerates VM-to-VM communication Operating


via vSwitch System 6WIND DPDK 6WIND DPDK
enhancements enhancements
 VM2VM driver enables direct VM-to-VM communication for
ultimate performance, bypassing vSwitch
VM2VM
IOv
 6WINDGate accelerates Virtual Network Appliances IOMMU
or SRIOV
vNIC
 Fully-compatible with standard hypervisors

 Citrix XEN, Red Hat KVM, VMware ESX etc.


Virtual Switch

 6WINDGate accelerates Virtual Switch Hypervisor


 10x performance improvement for Open vSwitch, with no changes
required to OVS code itself

 Increases VM density and accelerates VM-VM traffic


NIC(s)

©6WIND 2014 V1.6 | 31


Up to 313Mpps on Dual Ivy Bridge Complex
(Intel® Xeon® Processor E5-2600v2 Series)

 6WINDGate IP forwarding
performance
 14 Mpps per core
 24 Mpps per core with l2switch
 Up to 313 Mpps with 22 cores (2
cores configured to run Linux)

 Performance scales linearly with


the number of cores configured to
run the fast path

Performance on other  Until it reaches the limit of the


IA platforms available platform
on request

 Performance is independent of
packet size

©6WIND 2014 V1.6 | 32


Comprehensive Lifecycle Support for Integrated
Solution

System Development and


System Design System Deployment
Integration

• Requirements analysis • Software integration • 6WINDGate product support


• 6WINDGate source code • Technical training
license
• System software architecture • Maintenance
evaluation • DPDK technical support
• Updates
• Performance measurements • DPDK integration • Roadmap alignment
• Software design trade-offs
• DPDK driver development. • DPDK product support
• 6WIND expertise • Technical training
• Migrating networking • Development support • Maintenance
applications to multicore • Technical training • Updates
• Architecture optimizations • Customization
• Protocols • Software integration

©6WIND 2014 V1.6 | 33


Best-in-Class Technical Support

 Industry-leading experience from many years of software development for Intel® DPDK platform
 Proven with tier-1 networking and telecom equipment companies worldwide
 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.

 Standard support agreement includes


 SLA-defined response times
 Online system for submitting support questions and tracking issues.

 Dedicated service and support team


 Local experts based in Asia, Europe and North America

 Partnerships with software services companies for value-added services worldwide.

©6WIND 2014 V1.6 | 34


Use Case Example: Firewall / IPS

Physical Appliance Virtual Appliance

Virtual Machine

Linux

Firewall / IPS Networking Control


Application Software Plane
Linux • Leverages high-
Firewall / IPS
performance Networking Data Plane
Networking Control
Application Software Plane 6WINDGate data
Firewall / QoS High Availability
plane protocols plus Packet
VLAN
Networking Data Plane optimized NIC drivers Processing Crypto
Acceleration
Virtual Routing
in 6WIND DPDK 6WIND
Firewall / QoS High Availability DPDK IPv4 / IPv6 / IPsec TCP / SSL
Packet
VLAN
Processing Crypto

6WIND
Virtual Routing Acceleration • Virtualization
DPDK acceleration in
IPv4 / IPv6 / IPsec TCP / SSL
Hypervisor
6WIND DPDK
maximizes
performance of
virtual appliance
Intel Multicore Processor Platform Intel Multicore Processor Platform

©6WIND 2014 V1.6 | 35


Use Case Example: Accelerated Virtual Switch
for Data Centers

• 6WINDGate-plus-DPDK accelerates Open vSwitch • Layer 2 switching

• No modification to OVS software • OpenFlow-compatible

• Transparent to applications • Additional networking protocols


• Encapsulation (GRE, NVGRE,
6WINDGate-plus- VLAN, VxLAN etc.)
DPDK also used to VM VM VM
accelerate VMs VM VM VM • IPsec with hardware crypto
with high packet
processing
performance
support
requirements
• MAC bridging

Standard Open vSwitch Control Plane OpenFlow


Controller
• 10x switching
6WINDGate-
Accelerated IPsec performance
Accelerated
Open vSwitch vSwitch Data (NV)GRE V(x)LAN
• 3x - 9x
Plane Layer 2 Switching
(Fast Path) improvement
6WIND DPDK
in VM density

©6WIND 2014 V1.6 | 36


Use Case Example: Network Functions
Virtualization (NFV)

• 6WINDGate-plus-
Orchestration DPDK accelerates
• Virtual Networking
Functions (VNFs)
Virtual Machine Virtual Machine Hypervisor Virtual Machine Virtual Machine
running in VMs
Virtual Network Virtual Network Virtual Network Virtual Network
Function Function Function Function • and
Linux Linux Linux Linux • Virtual Switch
responsible for
6WIND DPDK 6WIND DPDK 6WIND DPDK 6WIND DPDK
switching traffic to
VNFs

Accelerated
Open Virtual Switch 6WIND DPDK by 6WINDGate • Enables VNFs to
deliver comparable
Linux performance to
physical
COTS or Server implementations
Platform

©6WIND 2014 V1.6 | 37


Topics

 Introduction

 DPDK.org open-source project

 Intel® DPDK library from 6WIND

 Baseline features

 Optional add-ons

 Support

 Business model

 Integrated packet processing solution: 6WINDGate™ plus Intel® DPDK

 Features and benefits

 Performance

 Support

 Use cases

 Summary

©6WIND 2014 V1.6 | 38


For More Information

Website

www.6wind.com

White Paper

Blog

www.6windblog.com

©6WIND 2014 V1.6 | 39


Summary: Right Architecture + Right Software =
Winning Solution

 6WIND completes the system solution for IA platforms


 Full set of optimized protocols for networking and Client’s Application Software
security products.

Linux
 6WIND delivers the maximum performance for IA
platforms
 Fully exploits IA processor architecture and Intel®
DPDK.
Intel® DPDK
 Packaged solution accelerates clients' development
cycles
 6WINDGate delivered integrated with Intel® DPDK. ….
Intel Multicore Processor
 Stand-alone Intel® DPDK library available for custom
development
 Value-added feature enhancements and add-ons.

 Expert technical support for all Intel® DPDK users


 From the company with the industry's best experience
of developing software for Intel® DPDK platform.

©6WIND 2014 V1.6 | 40