Suricata is a network Intrusion Detection System, Intrusion Prevention System and Network Security Monitoring engine developed by the OISF and the Suricata community.
You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
 
Go to file
Eric Leblond 919377d4a5 af-packet: synchronize reading start
This patch is updating af-packet to discard packets that have been
sent to a socket before all socket in a fanout group have been setup.
Without this, there is no way to assure that all packets for a single
flow will be treated by the same thread.

Tests have been done on a system with an ixgbe network card. When using
'cluster_flow' load balancing and disactivating receive hash on the iface:
 ethtool -K IFACE rxhash off
then suricata is behaving as expected and all packets for a single flow
are treated by the same thread.

For some unknown reason, this is not the case when using cluster_cpu. It
seems that in that case the load balancing is not perfect on the card side.

The rxhash offloading has a direct impact on the cluster_flow load balancing
because load balancing is done by using a generic hash key attached to
each skb. This hash can be computed by the network card or can be
computed by the kernel. In the xase of a ixgbe network card, it seems there
is some issue with the hash key for TCP. This explains why it is necessary to
remove the rxhash offloading to have a correct behavior. This could also
explain why cluster_cpu is currently failing because the card is using the
same hash key computation to do the RSS queues load balancing.
12 years ago
benches Initial add of the files. 16 years ago
contrib Add option on Tile-Gx for logging for fast.log alerts over PCIe 12 years ago
doc Update docs from wiki 13 years ago
m4 Prelude plugin: add detection in configure script 16 years ago
qa Updated banned function cocci check 12 years ago
rules classification: add category to some stream rules 12 years ago
scripts suricatasc: fix make distcheck. 13 years ago
src af-packet: synchronize reading start 12 years ago
.gitignore unittest: make check use a qa/log dir for logging 12 years ago
COPYING Initial add of the files. 16 years ago
ChangeLog Update ChangeLog for 2.0rc2 release 12 years ago
LICENSE import of gplv2 LICENSE 16 years ago
Makefile.am make install-full: get correct version of ET 12 years ago
Makefile.cvs Initial add of the files. 16 years ago
acsite.m4 Added C99 defs/macros to acsite.m4 for CentOS 16 years ago
autogen.sh OpenBSD 5.2 build fixes, Unit test fix. 13 years ago
classification.config Import of classification.config 16 years ago
config.rpath Add file needed for some autotools version. 12 years ago
configure.ac OpenBSD: set correct magic path 12 years ago
doxygen.cfg doxygen: document all code 12 years ago
reference.config Add md5 to reference.config. 14 years ago
suricata.yaml.in yaml: comment out example config 12 years ago
threshold.config threshold: improve comments of shipped threshold.config, add links to wiki. 13 years ago