diff options
author | Dave Barach <dave@barachs.net> | 2019-09-13 17:47:50 -0400 |
---|---|---|
committer | Damjan Marion <dmarion@me.com> | 2019-09-25 22:19:59 +0000 |
commit | 1b696ac9b334aa9305925e4759c6c6f6b47c3328 (patch) | |
tree | 6cbc009453d33c1a7d54b5aca1a4d347bbcf0a8a /src/vlib | |
parent | 2abe699d10450553148307bb614979902f2bf4b3 (diff) |
misc: classifier-based packet trace filter
See .../src/vnet/classify/trace_classify.h for the business end
of the scheme.
It would be best to hash pkts, prefetch buckets, and do the primary
table lookups two at a time. The inline as given works, but perf
tuning will be required. "At least it works..."
Add "classify filter" debug cli, for example:
classify filter mask l3 ip4 src dst \
match l3 ip4 dst 192.168.2.10 src 192.168.1.10
Add "pcap rx | tx trace ... filter" to use the current classify filter chain
Patch includes sphinx documentation and doxygen tags.
Next step: device-driver integration
Type: feature
Signed-off-by: Dave Barach <dave@barachs.net>
Change-Id: I05b1358a769f61e6d32470e0c87058f640486b26
(cherry picked from commit 9137e5400699bed9f7c0095187839a8b38273100)
Diffstat (limited to 'src/vlib')
-rw-r--r-- | src/vlib/main.h | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/src/vlib/main.h b/src/vlib/main.h index 05687a8c987..88ce98bb405 100644 --- a/src/vlib/main.h +++ b/src/vlib/main.h @@ -63,6 +63,7 @@ typedef struct int pcap_enable; u32 pcap_sw_if_index; pcap_main_t pcap_main; + u32 filter_classify_table_index; } vnet_pcap_t; typedef struct vlib_main_t |