From 9137e5400699bed9f7c0095187839a8b38273100 Mon Sep 17 00:00:00 2001 From: Dave Barach Date: Fri, 13 Sep 2019 17:47:50 -0400 Subject: 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 Change-Id: I05b1358a769f61e6d32470e0c87058f640486b26 --- src/vnet/vnet.h | 3 +++ 1 file changed, 3 insertions(+) (limited to 'src/vnet/vnet.h') diff --git a/src/vnet/vnet.h b/src/vnet/vnet.h index 3b20f71917b..a726f0379ef 100644 --- a/src/vnet/vnet.h +++ b/src/vnet/vnet.h @@ -77,6 +77,9 @@ typedef struct vnet_main_t */ vnet_api_error_t api_errno; + /* pcap rx/tx, packet tracer filter tables */ + u32 *classify_filter_table_indices; + vlib_main_t *vlib_main; } vnet_main_t; -- cgit 1.2.3-korg