Wind River Education Services Course Catalog

Wind River Education Services offers cost-effective training in various forms. Browse our course catalog below to plan and track a curriculum that will satisfy the training needs of your device software development engineers.

Data Plane Development Kit = Not available =

Buy Now

Course Description

Course Results

Products Supported

Who Should Attend

Course Format

Buy Now

Course Details Summary

  • Duration: 2 Days
  • Course Information: n/a
  • Format: Lectures and Labs
  • Type: Instructor-led
  • Price/Schedule: View

This course is not available anymore

After this course, participants will be able to perform the following:

  • Understand the architecture of DPDK
  • Integrate and configure DPDK with Linux
  • Use the DPDK libraries and APIs
  • Implement the DPDK packet flow in a multi-core environment
  • Deploy several different data path processing applications
  • DPDK 1.7
  • Developers involved in data plane packet processing on Intel architecture general purpose processors
  • System architects and system integrators involved with the design of control and data plane systems

Day 1

Introduction to DPDK

  • Benefits of using DPDK and general purpose architecture over NPU
  • Data plane and control plane consolidation
  • Processor architectures and platforms supported
  • LAB: DPDK virtualized environment — running DPDK on QEMU-KVM virtualized machines
  • LAB: Configuration and Hello World — DPDK integration with Linux, with multi-core Hello World example

DPDK Position in the System

  • Architectural overview
  • Environment abstraction layer (EAL)
  • Data flow processing on multi-core architectures
  • Memory management on multi-core architectures
  • Inter-core communication on multi-core architectures
  • DPDK virtualization—SR-IOV, virtual functions, KVM, IVSHMEM
  • LAB: L2 forwarding — L2 forwarding application, forwarding packets between two Ethernet ports
  • LAB: DPDK SR-IOV — Setting up virtual ports with SR-IOV


  • Memory, ring, buffer, packet, time, queue managers, flow and packet classification
  • Poll mode, emulated devices, bonding drivers, QoS, power management
  • TAP and KNI interfaces to Linux
  • DPDK API overview

System Initialization

  • Memory, cores, PCI, NIC initialization
  • I/O and application workload distribution over cores

Life of a Packet

  • Packet reception and transmission

DPDK Applications

  • Hello World on multi-core
  • L2 and L3 forwarding, LPM and hash libraries
  • Deep packet inspection (DPI)
  • LAB: Client-server — Multiprocess application: I/O and data processing operations divided between several Linux processes running on different cores

Day 2

Integration of DPDK with Wind River Linux

  • Integration of DPDK with Wind River Linux
  • LAB: Linux TAP — DPDK code transmits and receives control plane data packets between Linux kernel and Ethernet ports via TAP interfaces
  • LAB: Linux KNI — DPDK code transmits and receives control plane data packets between Linux kernel and Ethernet ports via KNI interfaces

Configuration and Building

  • Native environment set-up
  • LAB: L3 forwarding — Forwarding decision based on data packet header content processed by longest prefix match (LPM) or hash functions

Deploying DPDK Systems

  • System configuration
  • Networking configuration
  • System debugging

Benchmarking and Performance Optimization

  • Comparison on results achieved with and without the DPDK
  • Tools and methods used in DPDK performance optimization
  • Intel VTune™
  • LAB: Workbench debugging — How to use Wind River Workbench to debug DPDK-based applications

Prerequisite Course

  • None

Prerequisite Skills

  • Intermediate knowledge of data plane IP packet processing
  • Intermediate knowledge of x86 Intel architecture
  • Intermediate knowledge of Linux
  • This two-day instructor-led course consists of lectures and lab sessions.
  • Students gain hands-on experience and receive personal guidance from expert Wind River® instructors.
  • Students examine and exercise simulated network topologies in hands-on labs.
  • Specific questions are addressed.