Loading…
DPDK Userspace 2018 has ended

Sign up or log in to bookmark your favorites and sync them to your phone or calendar.

Wednesday, September 5
 

8:30am

Registration
Wednesday September 5, 2018 8:30am - 9:00am
TBA

9:00am

9:30am

rte_security: An Update and Introducing New Protocols (PDCP)
Security library was introduced in DPDK as means for offloading the security protocol processing to hardware providing better utilization of host CPU for packet processing. There are many enhancements since the original proposal. This talk provides the updates on the security library, current gaps and a new proposal to add PDCP protocol offload support.

Speakers


Wednesday September 5, 2018 9:30am - 10:00am
TBA

10:00am

A DPDK Native IPsec Library
IPsec is a suite of communication protocols which enable the securing of communications networks at the IP layer and is increasingly making up a larger proportion of the total packet processing workload of data plane applications. In this presentation, we will introduce a new IPsec library for DPDK, designed and developed to be performant and scalable, with native support for hardware acceleration. We will describe the modular architecture of the library and outline the proposed development roadmap. Finally, we will discuss how an IPsec solution in DPDK can be used to drive the adoption of IPsec hardware acceleration in data plane applications and infrastructure.

Speakers
DD

Declan Doherty

Network Software Engineer, Intel


Wednesday September 5, 2018 10:00am - 10:30am
TBA

10:30am

Break
Wednesday September 5, 2018 10:30am - 10:45am
TBA

10:45am

Introduction to the Distributed Software Event Device
The Distributed Software (DSW) event device proposal adds a new software-based event device, which differs from the SW event device in that the task of scheduling events is distributed across all participating lcores.

Speakers
avatar for Mattias Rönnblom

Mattias Rönnblom

Principal Developer, Ericsson



Wednesday September 5, 2018 10:45am - 11:15am
TBA

11:15am

Deflate Your Data with DPDK
This presentation will be a crash course on the new compressdev API. If you are an application developer you will gain the skills to be able to use the API to compress your data. If you have a software/hardware accelerator you will be enabled to start building your own compression PMD. We will also explain some of the architecture and design hurdles we faced and overcame in creating the API.

Speakers
avatar for Lee Daly

Lee Daly

Software Engineer, Intel
Working on Compressdev, compression in DPDK. Developer & maintainer of the ISA-L compression software driver.
avatar for Fiona Trahe

Fiona Trahe

Senior Software Engineer, Intel
Fiona Trahe has over twenty years of software engineering experience in the networking, automotive and charging segments. From her base in Intel on the west coast of Ireland she has been contributing to the acceleration APIs in DPDK since the introduction of cryptodev and led the... Read More →



Wednesday September 5, 2018 11:15am - 11:30am
TBA

11:30am

mbuf External Buffer and Usage Examples
Recent work in DPDK exposed a new mode for mbuf to have the data buffer externally attached.

We will present the new mbuf mode in details. In addition, we will demonstrate its usage for various applications as well as for devices which can receive a single buffer pointer to be used for multiple packets. Finally, we will present our thoughts for further improvements to expose the external buffer mode as part of the non-experimental API.

Speakers
SS

Shahaf Shuler

Staff Architect, Mellanox
Working on DPDK for last 3 years



Wednesday September 5, 2018 11:30am - 11:45am
TBA

11:45am

Dynamic Device Management (hotplug)
This presentation is an overview of the device management in DPDK - past, present, and future. It is a guided tour into the layers (bus, device resource, driver, device class, application) explaining what are the requirements and solutions to manage several buses, migration, hotplug, and multi-process.

Speakers
avatar for Thomas Monjalon

Thomas Monjalon

DPDK Maintainer, Mellanox



Wednesday September 5, 2018 11:45am - 12:15pm
TBA

12:15pm

Don't Fear uid != 0
Much of the code in DPDK makes assumptions about which system resources are available and required.  In this talk, we'll challenge those assumptions and show that developers and users should embrace non-root users and SELinux == Enforcing.  We'll talk about some of the challenges we've encountered in using these 'locked down' systems.

Speakers
AC

Aaron Conole

Senior Software Engineer, Red Hat, Inc.



Wednesday September 5, 2018 12:15pm - 12:30pm
TBA

12:30pm

Lunch
Wednesday September 5, 2018 12:30pm - 1:30pm
TBA

1:30pm

Exploring the New DPDK Memory Subsystem
As an important step towards making DPDK less "greedy", DPDK memory subsystem has been reworked in 18.05 release. In this talk, we will present an overview of the changes done to the DPDK memory subsystem, and explain various new features made possible by these changes. We will also provide an overview of several practical examples of how changes in DPDK memory subsystem have affected other DPDK features, and discuss solutions that were implemented in an effort to demonstrate approaches to dealing with these changes.

Speakers
AB

Anatoly Burakov

Software Engineer, Intel Shannon Ltd.
VFIO in DPDK, Memory in DPDK, Secondary processes in DPDK, Unit tests in DPDK



Wednesday September 5, 2018 1:30pm - 2:00pm
TBA

2:00pm

DPDK Usability for OVS with DPDK
OVS with DPDK aims to be device agnostic i.e. regardless of the driver, ports should be initialized, configured and used largely in the same manner. APIs such as the eth dev API help achieve this to a degree but specific device capabilities and driver behavior beneath the eth dev API make a truly generic approach in OVS DPDK difficult. This talk will present a number of examples of this encountered to date, how they were resolved within OVS DPDK but how they could be better resolved within the DPDK code base.

Speakers
IS

Ian Stokes

Network Software Engineer, Intel
Ian is a network software engineer at Intel. He is currently active in the Open vSwitch community as a committer for OVS DPDK components.



Wednesday September 5, 2018 2:00pm - 2:30pm
TBA

2:30pm

Do Less by Default
DPDK started as a bare-metal framework and evolves toward a library model. In order to be a real library, giving all powers and flexibility to the application, some work and agreements are required. Ideally, the application should own all the configurations (e.g. for threads, memory or devices), while DPDK provides some good defaults, some parsing helpers, and a fine-grain API.

Speakers
avatar for Thomas Monjalon

Thomas Monjalon

DPDK Maintainer, Mellanox



Wednesday September 5, 2018 2:30pm - 3:15pm
TBA

3:15pm

Break
Wednesday September 5, 2018 3:15pm - 3:30pm
TBA

3:30pm

Vhost/Virtio: Past Year Achievements and Upcoming Challenges
In this talk, we will cover the past year developments related to Vhost and Virtio, covering the features that have been introduced, and issues that have been fixed. Then, new features that are planned for the next releases will be presented, and improvements expected by the community will be discussed.

Speakers
MC

Maxime Coquelin

Software Engineer, Red Hat
avatar for Jens Freimann

Jens Freimann

Senior Software Engineer, Red Hat



Wednesday September 5, 2018 3:30pm - 4:15pm
TBA

4:15pm

DPDK on Hyper-V: Past, Present, Future
This talk covers the architecture of DPDK support on Azure/Hyper-V. Some of the challenges this brings as well. It will also cover how the driver is evolving to support a simpler model and BSD.

Speakers
avatar for Stephen Hemminger

Stephen Hemminger

Principal Engineer, Microsoft
Stephen has been actively involved with Linux kernel development for over 10 years. He has contributed several network device drivers, a network emulator, and is the maintainer of the bridging and iproute2utilities. After leaving LF, he went on to Vyatta (now acquired by Brocade... Read More →



Wednesday September 5, 2018 4:15pm - 4:45pm
TBA

4:45pm

Supporting Cloud Native with DPDK and Containers
Getting DPDK ready to better support Cloud Native applications in containers/VMs by adding Runtime control, Application Abstraction and flexible I/O designs. Adding runtime control to DPDK for external coordination in an easy to use design plus adding application abstraction layer for applications to easily utilize DPDK high performance I/O without having to understand the details of DPDK internals. The presentation will have a demo and explain how we can scale hardware I/O within a system with large numbers of containers by creating an easy software patch panel design for container to hardware abstraction.

Speakers
avatar for Keith Wiles

Keith Wiles

Principal Engineer, Intel
Keith Wiles is a principal engineer at Intel Corporation working with DPDK and NFV acceleration technologies for accelerated networking performance. Wiles also authored Pktgen-DPDK, a network traffic generator running on DPDK. He wrote Pktgen-DPDK while working at Wind River to understand... Read More →



Wednesday September 5, 2018 4:45pm - 5:15pm
TBA

5:15pm

A Service Assurance Solution for DPDK
It is currently impossible to reliably monitor DPDK applications using generic service assurance tools. This talk introduces a JSON based API to retrieve metrics and telemetry from DPDK. It shows how simple the monitoring of any DPDK application can be if we expose DPDK metrics through a simple RESTful API, which can be consumed by any service-assurance agent (eg: CollectD). Building this functionality into the DPDK primary application enables the Service Assurance agent to monitor all DPDK applications as generic entities, instead of each application providing an ad-hoc implementation.

Speakers
avatar for Harry van Haaren

Harry van Haaren

Network Software Engineer, Intel
Harry van Haaren is a network software engineer optimizing DPDK and OVS. Interests range from high-performance API design to making every last instruction-per-cycle count towards your computing requirements. [NOTE: The "Measuring Software Performance" session will be 15 minutes... Read More →



Wednesday September 5, 2018 5:15pm - 5:30pm
TBA

5:30pm

6:00pm

Evening Reception
Wednesday September 5, 2018 6:00pm - 8:00pm
TBA
 
Thursday, September 6
 

8:30am

Registration
Thursday September 6, 2018 8:30am - 9:00am
TBA

9:00am

Scaling the DPDK Community
As the community continues to grow, our ability to scale and support our customers is increasingly important. In this talk, we will present a brief overview of the current status of maintenance in DPDK and seek feedback on further improvements. We will take the opportunity to present an overview of the DPDK maintenance map including where we have gaps, discuss committer and maintainer expectations, discuss changes recently implemented  (for example the new weekly Maintainers call, weekly merge, etc.), and get input on proposed future changes.

Speakers
avatar for John McNamara

John McNamara

DPDK Engineering Manager, Intel
KT

Kevin Traynor

Software Engineer, Red Hat
Kevin Traynor is a software engineer at Red Hat. He is a contributor to Open vSwitch and DPDK.



Thursday September 6, 2018 9:00am - 10:00am
TBA

10:00am

DPDK CI & Open Lab
Establishing a CI system for DPDK is facing several challenges: 1) DPDK validation (build, test and benchmark) need to cover different OSes, vendors’ platforms, and vendors’ NICs. 2) Need to do CI test for DPDK patches in “before merge” and “after merge” timely (in a short time).  

The proposal is that DPDK open lab + DPDK CI system. In open lab, standard testbeds are designed by each vendor, and all testbeds are managed centralized. Based on standard testbeds, a unified test suite can be well defined to cover OSes, platforms, NICs and their combination. With standard testbeds and a unified test suite, execution time is fined controlled and consistent quality indicator can be provided to all users. Meanwhile, CI system is designed to monitor patches in community, to trigger build test on each OS, and to dispatch tests to testbeds in open lab. Finally, the validation results are showed in CI dashboard. Furthermore, CI system includes a database in the back-end to support to track quality and performance data.

Speakers
avatar for Jeremy Plsek

Jeremy Plsek

Software Developer, University of New Hampshire InterOperability Laboratory
I am the current maintainer of the DPDK CI Dashboard (lab.dpdk.org) backed by DPDK. I also presented at the Dublin Summit this year under a similar topic.
LT

Lijuan Tu

Network Software Engineer, Intel



Thursday September 6, 2018 10:00am - 10:45am
TBA

10:45am

Break
Thursday September 6, 2018 10:45am - 11:00am
TBA

11:00am

Extending DPDK Flow Classification Libraries for Determinism and Cloud Users
In this talk we will briefly present new technologies to extend DPDK flow classification libraries to cover more general use cases. We will fist provide an overview of the different classification libraries (e.g. hash library, EFD library, membership library, ..etc.) and highlight the set of usages where each library is a best fit for. Next, we provide details of new extensions that we are adding to the hash library to support read/write concurrency and guaranteed flow insertion, Both features, in our point of view, are must have for a wide set of usages especially to support telco workloads. Additionally we present new research directions we are investigating on how to use DPDK flow classification libraries to optimize cloud key-value stores. We highlight bottlenecks of the current indexing schemes of such huge stores, and how DPDK can be augmented (e.g. by extending membership library to support range filters, and lossy caches, ..etc.) to help address these bottlenecks. We are soliciting feedback of DPDK developers and users on our new research directions and looking forward to any collaboration opportunity to optimize cloud workloads.

Speakers
SG

Sameh Gobriel

Research Scientist, Intel



Thursday September 6, 2018 11:00am - 11:30am
TBA

11:30am

Lock-Free Read-Write Concurrency in rte_hash
Recent patches have tried to address the reader-writer concurrency in rte_hash library. However, these fall short on solving the problem on multiple use cases. These solutions result in further significant problems when the use cases involve preemptible writer threads. Lock-free addition and deletion algorithms are required to truly solve the read-write concurrency. This talk explores the need for lock-free algorithms in the context of rte_hash library, the changes required in rte_hash for 64bit systems. It will also discuss various options available for solving the issue on 32bit systems and seek feedback. Performance numbers with this proposal will also be presented.

Speakers
avatar for Honnappa Nagarahalli

Honnappa Nagarahalli

Principal Software Engineer, ARM
Honnappa has 19 years of experience in developing applications, platform enablement kits and application development kits meant for high throughput packet processing workloads. He started his career working on IXP2400. He has worked on Octeon and Axxia line of multi-core packet processors... Read More →



Thursday September 6, 2018 11:30am - 12:00pm
TBA

12:00pm

rte_flow for hyper scale
We would like to present the requirement and concerns of hyper scale users for support of NFV's and virtual switches/routers over DPDK which require HW to support offload of millions of rules, connection tracking and traffic counters, as well as hundreds of thousands of packet modification actions.

Multiple layers of rule caching, in rte_flow, PMD, application copy and in HW makes a huge memory footprint for applications. Supporting batch processing instead of single entry processing, like for reading of counters, multi-rule deletion/update is missing for allowing high rate rule updates.

Enabling async API's can release the application CPU while HW and firmware are updating the smart NIC offloads and allow even more.

Speakers
avatar for Alex Rosenbaum

Alex Rosenbaum

Principal Software Architect, Mellanox
Alex Rosenbaum is a Principal Software Architect in Mellanox Technologies, based from Israel. Alex is leading the architect definitions for Mellanox DPDK and RDMA software subsystem in Kernel and User-Space and several application acceleration solutions. His focus is researching network... Read More →



Thursday September 6, 2018 12:00pm - 12:30pm

12:30pm

Lunch
Thursday September 6, 2018 12:30pm - 1:30pm
TBA

1:30pm

Recent Power Management Enhancements in DPDK
DPDK PMDs typically poll on rings, making the cores look 100% busy to the OS. Using Power Management Unit (PMU) counters, it is possible to differentiate between busy and non-busy poll loops, allowing scaling down of the core frequency during low-traffic situations, and scaling up (including Turbo) in high traffic situations, without modifying the application. A patch demonstrating this method has been added to DPDK 18.08 using the branch hits and branch misses PMU counters. The talk will give an overview of power management techniques in DPDK, and detail the methods used in the latest DPDK Power Management features.

Speakers
avatar for David Hunt

David Hunt

Senior Software Engineer, Intel



Thursday September 6, 2018 1:30pm - 2:00pm
TBA

2:00pm

Soft NIC: Build Your Own NIC Pipeline in SW
This presentation describes the benefits of using the DPDK Soft NIC, which allows building custom NIC pipelines at the speed of SW development.

Speakers
CD

Cristian Dumitrescu

SW Architect, Intel
Cristian is a SW architect at Intel working on data plane enablement on Intel platform.



Thursday September 6, 2018 2:00pm - 2:15pm
TBA

2:15pm

urdma: A Remote Direct Memory Access verbs provider using DPDK
Remote Direct Memory Access (RDMA) provides a low latency, high throughput network interconnect with kernel bypass and zero copy between application virtual memory regions. RDMA deployments require expensive, specialized hardware. Software RDMA providers have been developed to allow testing and research of RDMA features without this specialized hardware. Historically, these software providers, including softiwarp and softroce (rxe), have been implemented in the kernel. Using DPDK, we have developed an RDMA provider named urdma that performs data transfer entirely in userspace with only minimal connection management in the kernel. The urdma provider uses a variant of the standard iWARP protocol over UDP, and is capable of running on commodity NICs. The kernel and userspace components of urdma are available under an open-source license. This presentation will discuss goals, the design and implementation of the  provider, issues encountered during development, and a performance evaluation.

Speakers
avatar for Patrick MacArthur

Patrick MacArthur

Graduate Research Assistant, University of New Hampshire InterOperability Laboratory



Thursday September 6, 2018 2:15pm - 2:30pm
TBA

2:30pm

Tungsten Fabric DPDK Based vRouter HW Offloads
There is a wide range of smart/intelligent NICs emerging on the market, implemented using various technologies. These NICs are capable of being programed to perform advanced packet classification and modification operations, allowing to implement flexible packet processing pipelines implementing switching, routing, tunneling, etc. This talk will present work being done to accelerate the Tungsten Fabric DPDK based vRouter, using DPDK rte_flow API to implement a generic, vendor-agnostic, open source offload module. We will also discuss potential future enhancements to DPDK rte_flow APIs to enable additional accelerations.

Speakers
OS

Olga Shern

Senior Software Director, Mellanox



Thursday September 6, 2018 2:30pm - 2:45pm
TBA

2:45pm

Break
Thursday September 6, 2018 2:45pm - 3:00pm
TBA

3:00pm

DPDK PMD for AF_XDP
AF_XDP, which can be regarded as an upgraded version of AF_PACKET, can provide more than 10 times performance improvement. It can also connect the XDP pass-through to user-space directly, which means an ebpf program that processes packets can be forwarded to an application in a very efficient way. Thus enabling a delicate PMD for AF_XDP is valuable for DPDK applications to benefit from it. In this presentation, we will share our recent work about enabling a DPDK Polling Mode driver for AF_XDP. Firstly, we will briefly introduce AF_XDP and why we need a DPDK PMD driver for AF_XDP. Then we will present the implementation details on how to translate AF_XDP language (XDP socket, ebpf redirect map…) into DPDK language (ethdev, queue), how to reach zero copy between rte_mempool and XDP umem, and so on. At last, we will share some ideas for future improvement such as utilizing the busy poll feature to improve performance.

Speakers
XL

Xiaoyun Li

Software Engineer, Intel



Thursday September 6, 2018 3:00pm - 3:15pm
TBA

3:15pm

DPDK + eBPF
BPF is used quite intensively inside Linux (and BSD) kernels for various different purposes and proved to be extremely useful. BPF inside DPDK might also be used in a lot of places for a lot of similar things. As an example to: - packet filtering/tracing (aka tcpdump) - packet classification - statistics collection - HW/PMD live-system debugging/prototyping - trace HW descriptors,  internal PMD SW state, etc.   The presentation provides information about current  status of DPDK eBPF library and ideas for further enhancements and usage scenarios.

Speakers
KA

Konstantin Ananyev

Software Engineer, Intel



Thursday September 6, 2018 3:15pm - 3:30pm
TBA

3:30pm

Overflow Discussion
Thursday September 6, 2018 3:30pm - 4:15pm
TBA

4:15pm

Closing Remarks
Thursday September 6, 2018 4:15pm - 4:30pm
TBA