DPDK Bangalore has ended
Friday, March 9

8:30am PST

Welcome, Introduction, Roadmap from Tech Board
avatar for Hemant Agrawal

Hemant Agrawal

Technical Director, NXP
Hemant works as an Software Architect with NXP. He is also part of DPDK Technical Advisory Baord. He has been involved in bringing various new ideas to DPDK.

Kannan Babu Ramia

Principal Engineer, Intel
Principal Engineer in the Network Platforms Group (NPG) under Data Center Group (DCG). Kannan is responsible for driving the telecommunication service provider’s network transformation with NFV (Network Function Virtualization) and SDN (Software Defined Networking) with an end goal... Read More →
avatar for Sujata Tibrewala

Sujata Tibrewala

Network Technology Evangelist, Intel
Sujata Tibrewala is an Intel community development manager and technology evangelist who defines programs and training events to ensure that the network developer ecosystem works together toward a common goal: to drive SDN/NFV adoption in the industry using open source ingredients... Read More →

Friday March 9, 2018 8:30am - 9:05am PST
Leela Palace

9:05am PST

Ideas for Adding FPGA Accelerators to DPDK
With Partial Reconfigure(PR) parts of Bitstream, Field Programmable Gate Array(FPGA) not only provides one kinds of accelerator but also provides many types of accelerators at the same time. But the lack of standard software framework and APIs to integrate various FPGA devices is hindering FPGA’s integration with standard frameworks such as DPDK and its mass deployment. In this presentation, we will introduce FPGA-BUS which will provide FPGA management software frameworks without dealing with hardware differences among various FPGA devices.

avatar for Zhihong Wang

Zhihong Wang

软件研发经理, Intel
Software engineer focused on virtualization and performance optimization.

Friday March 9, 2018 9:05am - 9:35am PST
Leela Palace

9:40am PST

Rte_Security: A New Crypto Offload Framework in DPDK
In this talk we will present a security framework for offloading cryptographic operations and specific protocol processing like IPSec to hardware. This helps in reducing the CPU cycles for packet processing. In this talk, we provide a brief overview of the rte_security APIs and its implementation for inline and lookaside offload hardwares.

avatar for Hemant Agrawal

Hemant Agrawal

Technical Director, NXP
Hemant works as an Software Architect with NXP. He is also part of DPDK Technical Advisory Baord. He has been involved in bringing various new ideas to DPDK.

Friday March 9, 2018 9:40am - 10:05am PST
Leela Palace

10:10am PST

Friday March 9, 2018 10:10am - 10:20am PST
Leela Palace

10:20am PST

Asymmetric Crypto and Compression in DPDK

Shally Verma

Manager, Project Managment, Cavium
Handling DPDK / ODP Specification definition and development for compression & crypto modules of cavium networking and storage family of devices

Friday March 9, 2018 10:20am - 10:50am PST
Leela Palace

10:55am PST

Virtio/Vhost Status Quo and Near-Term Plan
This talk will help developers to improve virtual switches by better understanding the recent and upcoming improvements in DPDK virtio/vhost on both features and performance. Also some best practice is shared for both dev and ops.

avatar for Zhihong Wang

Zhihong Wang

软件研发经理, Intel
Software engineer focused on virtualization and performance optimization.

Friday March 9, 2018 10:55am - 11:20am PST
Leela Palace

11:25am PST

Open vSwitch Hardware Offload Over DPDK
OpenVswitch hardware offload over DPDK

Telcos and Cloud providers are looking for higher performance and scalability when building nextgen datacenters for NFV & SDN deployments. While running OVS over DPDK reduces the CPU overload of interrupt driven packet processing, CPU cores are still not completely freed up from polling of packet queues.

To solve this challenge, OVS-DPDK is further accelerated through HW offloads.
We introduce a classification methodology that enables a split data plane between OVS-DPDK and the NIC hardware. A flow tag that represents the matched rule in the hardware is passed to OVS which saves CPU cycles consumed for flow look ups. We present the open source work being done in the DPDK, OVS and Linux Kernel communities and significant performance gains achieved. We also present how this work can be extended to VXLAN traffic.


Ashrut Ambastha

Sr. Staff Engineer, Mellanox Technologies

Friday March 9, 2018 11:25am - 11:50am PST
Leela Palace

11:55am PST

Memzone Monitor
Debugging memory corruption in DPDK applications can be difficult - particularly if multiple processes are accessing huge pages simultaneously. Given a machine with stripped binaries and no GDB instance - where do you start debugging?

avatar for Vipin Varghese

Vipin Varghese

Network Software Engineer, Intel
Currently working with Intel India for Network Custom Silicon Group as Network Software Engineer. Have a huge passion to share and contribute to DPDK, VPP, OVS and Github Projects.

Friday March 9, 2018 11:55am - 12:10pm PST
Leela Palace

12:10pm PST

DPDK Data Plane Corruption
DPDK worker threads are the Linux threads. Thread level MMU protection does NOT exist. All the worker-threads of the primary-process has access to stack and heap memory of all the other worker-threads, one thread can corrupt the other thread’s stack and heap-allocated memory. Worker-thread’s stack corruption prevention and detection can be achieved by provisioning the stack-memory from the mem-zone, the dynamically allocated objects can be allocated from the mem-zone instead of the heap. This allows protecting the thread’s stack and allows checking the corruption by dumping the mem-zones at the runtime.Any accidental Data-plane tables corruption can be prevented by using some of the general 'C' programming features and centralizing the data-plane object updates. Data-plane tables can be safe-guarded by placing each of them in individual mem-zones and surrounding it by the memory-guard-bands. This allows user to dump the complete table in one go and easily identify the table corruption. Memory guard-band allows user to identify any out-of-bound access for the tables.

avatar for Amol Patel

Amol Patel

Sys App Eng Manager, Intel

Friday March 9, 2018 12:10pm - 12:25pm PST
Leela Palace

12:25pm PST

Friday March 9, 2018 12:25pm - 1:30pm PST
Leela Palace

1:30pm PST

DPDK – A Must Have Best Practices Checklist for NFV Platform Performance Optimizations
WHAT IS THE PROBLEM STATEMENT: Vendor Agnostic DPDK runs with multiple open software components. Eco System and open software developers, when picking and choosing different s/w modules need a checklist, that is applicable across all of their platforms, for ensuring their product is tuned for best performance.
HOW DOES THIS PRESENTATION ADDRESS THIS?: The presentation explains each potential bottleneck in the system along with the tools to identify those issues. In addition, for each performance deterrent, it gives vendor neutral tuning steps to achieve optimal performance. Since the steps are vendor neutral, the solutions are scaleable to multiple platforms - in terms of development and deployment.
DPDK being a user space process - still it co-exists with kernel, OS scheduler, Kernel Drivers and Kernel Applications and each can potentially impact performance. Let us take OS scheduler as an example. It can and come take DPDK core away from its network polling task and "steal" to schedule other tasks. The tuning checklist gives steps to isolate the core from such disturbance. Similarly an optimization you do for mice flow may have to be different from elephant flow. Checklist gives the balance and optimal guidelines.

avatar for Muthurajan Jayakumar

Muthurajan Jayakumar

Platform Application Engineer, Intel Corporation
M Jay has worked with the DPDK team since 2009. M Jay has authored DPDK Cookbook ebook https://software.intel.com/en-us/article/get-the-dpdk-cookbook M Jay joined Intel in 1991 and has worked in various roles and divisions with Intel, including a roles as a 64 bit CPU front side... Read More →

Friday March 9, 2018 1:30pm - 1:55pm PST
Leela Palace

2:00pm PST

Optimal VM Dimensioning for DPDK Enabled VNFs in Core / Edge Telco Cloud
For Optimal VM performance in Cloud networks, dimension of the VM plays an important role. Specifically the CPU and RAM assignment effects not just the workload performance but also the operations aspects. VMs handling line rate traffic, need DPDK enabled framework and enough number of cores for the workload processing but this makes the VMs bulky from the perspective of operations performance. Handling live migrations, failures are difficult in such cases. Reducing the CPUs cannot be done beyond certain level as it would lead to sub-optimal performance from DPDKs standpoint. Similarly Edge networks has different set of challenges for VM dimensioning. Edge cloudlets consists of mix of bare metal servers, dual sockets servers, single controller/compute node or a full fledged chassis. Each of these has different constraints and needs to be handled separately for optimal VM dimension. This presentation shall bring out these the factors that need to be considered for optimal VM dimensioning from overall performance perspective.

avatar for Shashi Kant Singh

Shashi Kant Singh

System Architect, Altiostar Networks India Pvt Ltd
Working as System Architect in Cloud Platform. Handle the Architecture and prototyping work for various VNFs in the Wireless network. Currently doing prototyping work with VPP/DPDK in VNF.

Friday March 9, 2018 2:00pm - 2:25pm PST
Leela Palace

2:30pm PST

Deep Packet Inspection (DPI) and other specialized packet processing workloads are often run in user space due to their complexity and/or specialization. With the increase of Ethernet speeds from 40, 100 to 200 Gbits/s, the need for high-speed raw Ethernet frame delivery to Linux user-space is ever increasing. In this talk, we present AFXDP (formerly known as AFPACKET V4) designed to scale to these high networking speeds through the use of true zero-copy, lock-less data structures, elimination of syscalls and other techniques, while still abiding to the isolation and security rules of Linux. AF_XDP is currently an RFC on the Linux netdev mailing list with the goal to get it accepted upstream.

In our evaluation, AFXDP provides a performance increase of up to 40x for some microbenchmarks and 20x for tcpdump compared to previous AFPACKET (raw socket) versions in Linux. To illustrate the approach, we have implemented support for Intel I40E NICs and veth, but it should hopefully be easy to port to other NICs and virtual devices as well. AFXDP is designed as an extension to the existing XDP support in Linux so that XDP enabled devices will be able to use this. We also show how SW networking libraries and SDKs such as DPDK can benefit from AFXDP to achieve increased robustness, ease-of-use and HW independence.


Magnus Karlsson

SW Architect, Intel Corporation
Magnus Karlsson is a Principal Engineer at Intel. Magnus joined Intel in late 2014 through the acquisition of LSI's/Avago's networking processor business and has worked for the past 25 years with low-level SW such as operating systems, hypervisors, networking, and boot loaders as... Read More →

Nikhil Rao

Software Engineer, Intel
Nikhil currently works on data plane SW at Intel. Previously, he has worked on system software in the areas of HPC and Graphics.

Björn Töpel

Linux Kernel Engineer, Intel
Björn is a Linux kernel networking hacker at Intel, with a a soft spot for memory models, all things networking, and RISC-V. He's a wannabe librarian, coffee addict, and kernel maintainer.

Friday March 9, 2018 2:30pm - 2:55pm PST
Leela Palace

2:40pm PST

Friday March 9, 2018 2:40pm - 2:55pm PST
Leela Palace

3:10pm PST

Skydive - Analyzing Topology and Flows in OVS - DPDK and OVN OVS-DPDK Environments
Skydive is a real time network topology and flow and protocols analyzer tool. Skydive can be used with OVS deployments - both kernel and dpdk datapaths to do on demand port, payload and statistical analysis, which helps in monitoring and troubleshooting complex openstack/nfv/sdn environments. This talk covers on using it in the OVS - DPDK deployments. The talk would also cover the OVN which provides virtual network abstractions (L2 and L3) on top of OpenvSwitch and using it with Skydive and OVS-DPDK environments.

avatar for Masco Kaliyamoorthy

Masco Kaliyamoorthy

Senior Software Engineer, Red Hat
Masco working as a Software Engineer and one of the core member of the sydive project. he has more than 5 years of OpenStack development experience, apart from coding he likes to do cycling and running.

Venkata Anil Kumar Kommaddi

Principal Software Engineer, RH - Bangalore - Carina
I am a Principle Software Engineer in Red Hat and have more than 13 years of experience. I have been working on OpenStack Neutron and other networking related projects.
avatar for Numan Siddique

Numan Siddique

Principal Software Engineer, RHEL Networking, Red Hat
Numan is a Principal Software Engineer in Network services team working on core OVN.  Numan has been working with OVN since late 2015 and helped in adoption of OVN in OSP by contributing to Openstack Tripleo and Neutron.  Before working in OVN, he worked in OpenContrail.
avatar for Yogananth Subramanian

Yogananth Subramanian

Principal Software Engineer, RH - Bangalore - Carina
Yogananth working as software engineer and part of Openstack NFV integration engineeering team at Redhat, day to day tasks involves in performance, debug and feature analysis in OVS-DPDK and openstack, related to NFV.

Friday March 9, 2018 3:10pm - 3:35pm PST
Leela Palace

3:40pm PST

Integrating DPDK with Storage Application
The Storage Performance Development Kit (SPDK) provides a set of tools and libraries for writing high performance, scalable, user-mode storage applications. New applications requiring fast access to storage can be built on top of SPDK, however they need to adhere to principles which are fundamental part of SPDK/DPDK framework. To name few of these, there is exactly one thread running on a CPU core, which never blocks and constantly polls for new events and executes corresponding handlers in a loop. Blocking locks in poller’s loop are not acceptable since those could delay execution of other handlers on reactor. Memory is allocated from pinned huge pages, which make DMA transfers to and from device possible avoiding copy of data between buffers etc. Those are fundamental design changes compared to how applications were built 5, 10 or more years ago (legacy applications). Legacy applications have usually many threads, which are using classic synchronization primitives (mutexes, readers/writers locks, etc.), which don’t scale with number of CPUs, and rely on kernel to synchronize and schedule the threads with well known ill effects. Trying to redesign legacy applications is often not feasible especially if they are more complex and have matured for many years. On the other hand, trying to reimplement them from scratch, preserving their stability and quality, can take years. Instead what we suggest is a compromise solution when legacy application runs with minimal changes while to some degree it can leverage performance that SPDK has to offer for doing IOs. Legacy application runs in a separate process from SPDK and VirtIO with vhost-user protocol is used for passing data between them. VirtIO is well proven technology which allows moving data between two processes using shared memory without a need to copy them, without heavy-weight synchronization and without involving kernel. Vhost-user client-server protocol allows to establish VirtIO data channel between two processes using unix domain socket. SPDK framework already comes with vhost-user server implementation. Missing part is vhost-user client implementation coming in form of a simple library which could be easily embedded to legacy application. A library for allocating IO buffers from huge pages is necessary too, although DPDK’s rte_eal library seems sufficient for a proof of concept. Legacy application could completely bypass the kernel for doing disk IO assuming SPDK runs a disk driver in userland and although the application cannot unleash the full potential of SPDK due to its legacy design, it is expected to perform faster. The most important question, which we are trying to find an answer for, is how much speed can be gained using this compromise solution compared to traditional way of reading/writing data blocks through block device file. While comparing IOPS from fio benchmark tool is surely interesting, we also focus and compare performance of real-world storage application - one of the most advanced local file system of present days - ZFS. Perhaps it is less known that it is possible to run ZFS file system in userspace, which was initially introduced only for testing it. It is exciting to observe how much the performance of the file system as a whole can be further improved by using SPDK as a storage backend.
In this talk, Mayank and Vishnu, who are active contributors of an open source project OpenEBS, worked on ZFS to make it SPDK enable, will share their learnings about:
- Integration of DPDK/SPDK libraries with project
- Uses of mempool library for memory allocation of frequently used objects
- Uses of ring library for message passing between threads
- Experiences with developing vhost-user client library


Vishnu Itta

Director Of Engineering, MayaData
Developer who always eager to learn, loves math, algorithms and programming. Have good experience in storage protocols, ZFS, FreeBSD internals, Linux, device drivers. Enjoys playing Table Tennis and doing travel.

Mayank Patel

Software engineer, MayaData Inc
Eager to hack into latest technologies. Loves coding. Enjoys traveling.

Friday March 9, 2018 3:40pm - 4:05pm PST
Leela Palace

4:10pm PST

Accelerating NVMe-oF target service via SPDK/DPDK
NVMe over fabrics (NVMe-oF) extends NVMe protocol from PCIe to fabrics and aims at providing high performance on accessing remote NVMe devices. In this talk, an accelerated NVMe-oF target is introduced with SPDK (storage performance development kit) technique. SPDK provides a set of tools and libraries for writing high performance, scalable, user-mode storage applications. It achieves high performance by moving all of the necessary drivers into user space and operating in a polled mode (similar with the idea in DPDK) instead of relying on interrupts, which avoids kernel context switches and eliminates interrupt handling overhead. The accelerated NVMe-oF target relies on SPDK’s framework, user space NVMe driver, environment library encapsulated from DPDK’s EAL library (e.g., thread and memory management) and standard fabrics library (e.g., ibverbs) to provide high performance block service. Compared with Linux kernel’s NVMe-oF target, our solution can is much more efficient with 10X improvement in per CPU core aspect.

avatar for Ziye Yang

Ziye Yang

Staff Cloud software engineer, Intel
Ziye Yang is a staff software engineer at Intel and is currently involved in cloud native related projects. Before that, Ziye worked at EMC for 4.5 years. Ziye is interested in system virtualization, file system and storage related research and development work. Ziye currently has... Read More →

Friday March 9, 2018 4:10pm - 4:35pm PST
Leela Palace

4:40pm PST

Empower Diverse Open Transport Layer Protocols in the Cloud Networking
With the development of cloud network, the networking stack needs to be re-invented. Although user application has more options to construct high performance solutions with varied stacks, there are a lot of challenges :
* Legacy TCP is best effort based and provides no performance guarantee.
* One-fits all protocol or algorithm is less feasible.
* Complicated and Heterogeneous Network Environments.
* Growing concern on network security
We want to share Huawei’s practices, an open source protocol Kit DMM(Dual-domain,Multi-protocol, Multi-instance), that provides an extendable transport protocol framework and runtime. It enables application-transparent and dynamic new protocol engagement. New protocols can be added on-demand and protocols can be managed dynamically. DMM is a new project in FD.io and has achieved great success on package forwarding, provides flexible interfaces for user applications and protocols.

avatar for George Zhao

George Zhao

Director, Huawei, Inc
George is director for open source and ecosystem for Huawei, inc, he has 25 years of working experience in networking, software architecture. He currently is TSC member for FD.io and OpenDaylight as well as board of director silver representative for DPDK. George received a bachelor... Read More →

Friday March 9, 2018 4:40pm - 5:00pm PST
Leela Palace

5:00pm PST

Vote of Thanks and Speaker Recognition
avatar for Sujata Tibrewala

Sujata Tibrewala

Network Technology Evangelist, Intel
Sujata Tibrewala is an Intel community development manager and technology evangelist who defines programs and training events to ensure that the network developer ecosystem works together toward a common goal: to drive SDN/NFV adoption in the industry using open source ingredients... Read More →

Friday March 9, 2018 5:00pm - 5:15pm PST

5:15pm PST

Afternoon Tea and Networking
Friday March 9, 2018 5:15pm - 6:00pm PST
Leela Palace
Filter sessions
Apply filters to sessions.