Skip to content
Eddie Kohler edited this page Oct 18, 2017 · 1 revision

FromDPDKDevice Element Documentation

NAME

FromDPDKDevice — Click element; reads packets from network device using Intel's DPDK (user-level)

SYNOPSIS

FromDPDKDevice(PORT [, QUEUE [, keywords PROMISC, BURST, NDESC]])

Ports: no inputs, 1 output
Processing: push
Drivers: userlevel

DESCRIPTION

Reads packets from the network device with DPDK port identifier PORT.

On the contrary to FromDevice.u which acts as a sniffer by default, packets received by devices put in DPDK mode will NOT be received by the kernel, and will thus be processed only once.

To use RSS (Receive Side Scaling) to receive packets from the same device on multiple queues (possibly pinned to different Click threads), simply use multiple FromDPDKDevice with the same PORT argument. Each FromDPDKDevice will open a different RX queue attached to the same port, and packets will be dispatched among the FromDPDKDevice elements that you can pin to different thread using StaticThreadSched.

Arguments:

  • PORT — Integer or PCI address. Port identifier of the device, or a PCI address in the format fffff:ff:ff.f
  • QUEUE — Integer. Index of the queue to use. If omitted or negative, auto-increment between FromDPDKDevice attached to the same port will be used.
  • PROMISC — Boolean. FromDPDKDevice puts the device in promiscuous mode if PROMISC is true. The default is false.
  • BURST — Integer. Maximal number of packets that will be processed before rescheduling. The default is 32.
  • NDESC — Integer. Number of descriptors per ring. The default is 256.
  • ALLOW_NONEXISTENT — Boolean. Do not fail if the PORT do not existent. If it's the case the task will never run and this element will behave like Idle.

This element is only available at user level, when compiled with DPDK support.

EXAMPLES

  FromDPDKDevice(3, QUEUE 1) -> ...

ELEMENT HANDLERS

  • count (read-only) — Returns the number of packets read by the device.
  • reset_count (write-only) — Resets "count" to zero.

SEE ALSO

DPDKInfo, ToDPDKDevice

Generated by click-elem2man from ../../elements/userlevel/fromdpdkdevice.hh:11 on 2017/10/17.

Clone this wiki locally