Skip to content

Instantly share code, notes, and snippets.

@Shengliang
Last active July 2, 2016 17:07
Show Gist options
  • Save Shengliang/c63b07272180c567772578ff6665b02c to your computer and use it in GitHub Desktop.
Save Shengliang/c63b07272180c567772578ff6665b02c to your computer and use it in GitHub Desktop.
Intel DPD Key Software Compoents

Intel DPDK

Key software components

  • Environment Abstraction Layer provides access to low-level resources: memory space, logical cores

  • Memory Pool Manager allocates numa-aware pools of objects in huge-page memory space

  • Buffer Manager pre-allocates fixed size buffers

  • Queue Manager implements safe lockless queues instead of using spinlocks

  • Ring Manager provides a lockless implementation for single or multi producer/consumer enqueue/dequeue operations suporting bulk operations to reduce overhead for efficient passing of events, data and packet buffers

  • Flow Classification provides an efficient mechanism for generating a hash used to combine packets into flows

  • Poll Mode Drivers for 1GbE and 10GbE Ethernet controllers greatly speed up the packet pipeline

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment