ntop / PF_RING

High-speed packet processing framework
http://www.ntop.org
GNU Lesser General Public License v2.1
2.68k stars 353 forks source link

pfcount XDP reports lower numbers #913

Open Gabscap opened 7 months ago

Gabscap commented 7 months ago

Hi, I'm trying to get pf_ring+XDP to work. I followed the docs, but XDP always reports lower pps/bps:

$ sudo ./pfcount -i ens27@0
Using PF_RING v.8.6.1.231023 kernel module v.8.6.1
Dumping statistics on /proc/net/pf_ring/stats/2026254-ens27.171
error reading link speed on ens27@0
Capturing from ens27@0 [mac: ][if_index: 5][speed: 0Mb/s]
# Device RX channels: 12
# Polling threads:    1
=========================
Absolute Stats: [48'192 pkts total][0 pkts dropped][0.0% dropped]
[48'192 pkts rcvd][37'404'206 bytes rcvd]
=========================

=========================
Absolute Stats: [95'325 pkts total][0 pkts dropped][0.0% dropped]
[95'325 pkts rcvd][74'960'783 bytes rcvd][95'316.70 pkt/sec][599.63 Mbit/sec]
=========================
Actual Stats: [47'133 pkts rcvd][1'000.08 ms][47'128.89 pps][0.30 Gbps]
=========================

=========================
Absolute Stats: [132'931 pkts total][0 pkts dropped][0.0% dropped]
[132'931 pkts rcvd][99'123'820 bytes rcvd][66'457.89 pkt/sec][396.45 Mbit/sec]
=========================
Actual Stats: [37'606 pkts rcvd][1'000.14 ms][37'600.66 pps][0.19 Gbps]
=========================

$ sudo ./pfcount -i xdp:ens27@0
Using PF_RING v.8.6.1.231023 kernel module v.8.6.1
Dumping statistics on /proc/net/pf_ring/stats/2026384-none.172
Capturing from xdp:ens27@0 [mac: ][if_index: 5][speed: 0Mb/s]
# Device RX channels: 12
# Polling threads:    1
=========================
Absolute Stats: [0 pkts total][0 pkts dropped][0.0% dropped]
[0 pkts rcvd][0 bytes rcvd]
=========================

=========================
Absolute Stats: [0 pkts total][0 pkts dropped][0.0% dropped]
[0 pkts rcvd][0 bytes rcvd][0.00 pkt/sec][0.00 Mbit/sec]
=========================
Actual Stats: [0 pkts rcvd][1'000.05 ms][0.00 pps][0.00 Gbps]
=========================

=========================
Absolute Stats: [12'667 pkts total][0 pkts dropped][0.0% dropped]
[12'667 pkts rcvd][2'099'210 bytes rcvd][6'333.13 pkt/sec][8.40 Mbit/sec]
=========================
Actual Stats: [12'667 pkts rcvd][1'000.06 ms][12'666.21 pps][0.02 Gbps]
=========================

=========================
Absolute Stats: [33'758 pkts total][0 pkts dropped][0.0% dropped]
[33'758 pkts rcvd][5'775'977 bytes rcvd][11'251.92 pkt/sec][15.40 Mbit/sec]
=========================
Actual Stats: [21'091 pkts rcvd][1'000.08 ms][21'089.22 pps][0.03 Gbps]
=========================

=========================
Absolute Stats: [53'052 pkts total][0 pkts dropped][0.0% dropped]
[53'052 pkts rcvd][9'369'817 bytes rcvd][13'261.96 pkt/sec][18.74 Mbit/sec]
=========================
Actual Stats: [19'294 pkts rcvd][1'000.11 ms][19'291.82 pps][0.03 Gbps]
=========================

If I try to listen on all channels, the gap gets even bigger:

$ sudo ./pfcount -i ens27@0-11
Using PF_RING v.8.6.1.231023 kernel module v.8.6.1
Dumping statistics on /proc/net/pf_ring/stats/2026640-ens27.174
error reading link speed on ens27@0-11
Capturing from ens27@0-11 [mac: ][if_index: 5][speed: 0Mb/s]
# Device RX channels: 12
# Polling threads:    1
=========================
Absolute Stats: [634'654 pkts total][0 pkts dropped][0.0% dropped]
[634'654 pkts rcvd][583'559'435 bytes rcvd]
=========================

=========================
Absolute Stats: [1'285'022 pkts total][0 pkts dropped][0.0% dropped]
[1'285'022 pkts rcvd][1'205'220'695 bytes rcvd][1'284'879.37 pkt/sec][9'640.69 Mbit/sec]
=========================
Actual Stats: [650'368 pkts rcvd][1'000.11 ms][650'295.81 pps][4.97 Gbps]
=========================

=========================
Absolute Stats: [1'873'285 pkts total][0 pkts dropped][0.0% dropped]
[1'873'285 pkts rcvd][1'747'285'957 bytes rcvd][936'546.97 pkt/sec][6'988.43 Mbit/sec]
=========================
Actual Stats: [588'263 pkts rcvd][1'000.09 ms][588'208.29 pps][4.34 Gbps]
=========================

^CLeaving...
=========================
Absolute Stats: [2'405'871 pkts total][0 pkts dropped][0.0% dropped]
[2'405'871 pkts rcvd][2'242'117'402 bytes rcvd][825'903.52 pkt/sec][6'157.51 Mbit/sec]
=========================
Actual Stats: [532'586 pkts rcvd][912.81 ms][583'455.75 pps][4.34 Gbps]
=========================

$ sudo ./pfcount -i xdp:ens27@0-11
Using PF_RING v.8.6.1.231023 kernel module v.8.6.1
Dumping statistics on /proc/net/pf_ring/stats/2026684-none.175
Capturing from xdp:ens27@0-11 [mac: ][if_index: 5][speed: 0Mb/s]
# Device RX channels: 12
# Polling threads:    1
=========================
Absolute Stats: [0 pkts total][0 pkts dropped][0.0% dropped]
[0 pkts rcvd][0 bytes rcvd]
=========================

=========================
Absolute Stats: [0 pkts total][0 pkts dropped][0.0% dropped]
[0 pkts rcvd][0 bytes rcvd][0.00 pkt/sec][0.00 Mbit/sec]
=========================
Actual Stats: [0 pkts rcvd][1'000.08 ms][0.00 pps][0.00 Gbps]
=========================

=========================
Absolute Stats: [1'630 pkts total][0 pkts dropped][0.0% dropped]
[1'630 pkts rcvd][292'325 bytes rcvd][814.92 pkt/sec][1.17 Mbit/sec]
=========================
Actual Stats: [1'630 pkts rcvd][1'000.11 ms][1'629.81 pps][0.00 Gbps]
=========================

^CLeaving...
=========================
Absolute Stats: [10'743 pkts total][0 pkts dropped][0.0% dropped]
[10'743 pkts rcvd][1'961'709 bytes rcvd][4'257.79 pkt/sec][6.22 Mbit/sec]
=========================
Actual Stats: [9'113 pkts rcvd][522.94 ms][17'426.54 pps][0.03 Gbps]
=========================

NIC is a 82599ES 10-Gigabit SFI/SFP+ Network Connection and uses the ixgbe driver.

Thank you