Filtering using pcap_setfilter is SW-based and does not utilize the filtering capabilities of the SmartNICs. Filtering using Napatech libpcap with configuration files is HW-based. It is also possible to use the ntpl tool (see DN-0449) for HW filtering after the driver has been loaded.
Napatech libpcap version 1.7.3 and later supports all libpcap functions with a few limitations:
|int pcap_get_selectable_fd(pcap_t *)||Linux only.|
|int pcap_fileno(pcap_t *)||Linux only.|
|int pcap_setdirection(pcap_t *, pcap_direction_t)||Supports only PCAP_D_N, received packets.|
|int pcap_set_promisc(pcap_t *, int)||Accepted, but will always run promiscuous mode.|
|int pcap_set_timeout(pcap_t *, int)||Has no effect. Will always run 100 ms time-out.|
|int pcap_set_tstamp_type(pcap_t *, int)||Supports only PCAP_TSTAMP_ADAPTER_UNSYNCED SmartNIC time-stamping.|
|int pcap_set_buffer_size(pcap_t *, int)||Has no effect. Will always run zero-copy mode.|
|int pcap_getnonblock_fd(pcap_t *, char *)||Unsupported. Result undefined.|
|int pcap_setnonblock_fd(pcap_t *p, int, char *)||Unsupported. Result undefined.|
Bold typeface is used for names of, for instance, user interface elements and software components.
Italic typeface is used for replaceable text.
Monospaced typeface is used for code, commands and file names.