distributor: new packet distributor library
authorBruce Richardson <bruce.richardson@intel.com>
Thu, 29 May 2014 10:12:14 +0000 (11:12 +0100)
committerThomas Monjalon <thomas.monjalon@6wind.com>
Thu, 12 Jun 2014 13:47:04 +0000 (15:47 +0200)
commit08ccf3faa6a9977c9960306e03b4fbe6a4e76dbf
tree3303108f1c514e54e73d31e8d05491c4a3b42246
parent96ff445371e034b558d6a34b577ee00892d7042f
distributor: new packet distributor library

This adds the code for a new Intel DPDK library for packet distribution.
The distributor is a component which is designed to pass packets
one-at-a-time to workers, with dynamic load balancing. Using the RSS
field in the mbuf as a tag, the distributor tracks what packet tag is
being processed by what worker and then ensures that no two packets with
the same tag are in-flight simultaneously. Once a tag is not in-flight,
then the next packet with that tag will be sent to the next available
core.

Signed-off-by: Bruce Richardson <bruce.richardson@intel.com>
Acked-by: Neil Horman <nhorman@tuxdriver.com>
Tested-by: Waterman Cao <waterman.cao@intel.com>
[Thomas: add doxygen @file comment]
config/common_bsdapp
config/common_linuxapp
doc/doxy-api-index.md
doc/doxy-api.conf
lib/Makefile
lib/librte_distributor/Makefile [new file with mode: 0644]
lib/librte_distributor/rte_distributor.c [new file with mode: 0644]
lib/librte_distributor/rte_distributor.h [new file with mode: 0644]
lib/librte_eal/common/include/rte_tailq_elem.h
mk/rte.app.mk