I saw two noteworthy items in your 'vppctl show runtime' output: 1. All of the packets received/processed appear to be handled by the gtpu4-input node. They also all appear to be received/handled by a single worker thread. 2. Nearly all of the packets are being dropped. I mean the packets that were actually received and processed - not the packets that were counted as an rx-miss.
Regarding #1 - I imagine that one thread might be receiving all inbound packets because you're sending across a single GTPU tunnel (i.e. a single stream). If this is true, AFAIK most NICs will hash all of the packets to the same queue. This means you will likely be constrained to handling however many packets can be handled by a single thread and increasing the number of workers or rx queues won't help. You might be able to utilize multiple workers/queues by sending across multiple tunnels. I know very little about GTPU use cases so I don't know whether it's practical for you to use multiple tunnels. Regarding #2 - Out of 8004674 packets received by dpdk-input, 7977696 packets end up being dropped by error-drop. It would probably be useful to look at a packet trace and see what node is sending the packets to error-drop. If packets are being passed to error-drop by gtpu4-input, maybe they do not match any configured tunnel. -Matt On Tue, Sep 28, 2021 at 9:24 AM Akash S R <akashsr.akas...@gmail.com> wrote: > Hello, > > I have tried increasing the workers from 2 to 5 and rx/tx queues from 1024 > (default) to 2048 ,also decreasing till 256 but of no use. > As you told, vector is very high (> 100). Please let us know if there is > any other way or reason for the same. > > > Thread 1 vpp_wk_0 (lcore 2) > Time 41.3, 10 sec internal node vector rate 79.42 loops/sec 3628.25 > vector rates in 1.9388e5, out 6.5319e2, drop 1.9322e5, punt 0.0000e0 > Name State Calls Vectors > Suspends Clocks Vectors/Call > TenGigabitEthernet4/0/0-output active 19735 26978 > 0 2.12e3 1.37 > TenGigabitEthernet4/0/0-tx active 19735 26969 > 0 1.43e3 1.37 > dpdk-input polling 10241833 8004674 > 0 2.81e3 .78 > drop active 92422 7977696 > 0 1.31e3 86.32 > error-drop active 92422 7977696 > 0 6.82e1 86.32 > ethernet-input active 93109 8004674 > 0 1.84e2 85.97 > gtpu4-input active 93106 8004671 > 0 3.29e2 85.97 > ip4-drop active 2 2 > 0 1.33e4 1.00 > ip4-input active 93106 8004671 > 0 6.82e2 85.97 > ip4-input-no-checksum active 93106 8004673 > 0 2.37e2 85.97 > ip4-local active 93106 8004671 > 0 2.66e2 85.97 > ip4-lookup active 112841 8031651 > 0 3.55e2 71.18 > ip4-policer-classify active 93106 8004671 > 0 1.35e3 85.97 > ip4-rewrite active 19735 26978 > 0 2.43e3 1.37 > ip4-udp-lookup active 93106 8004671 > 0 3.17e2 85.97 > ip6-input active 1 1 > 0 1.99e4 1.00 > ip6-not-enabled active 1 1 > 0 2.59e4 1.00 > unix-epoll-input polling 9998 0 > 0 3.30e3 0.00 > --------------- > Thread 2 vpp_wk_1 (lcore 3) > Time 41.3, 10 sec internal node vector rate 0.00 loops/sec 988640.31 > vector rates in 0.0000e0, out 0.0000e0, drop 0.0000e0, punt 0.0000e0 > Name State Calls Vectors > Suspends Clocks Vectors/Call > dpdk-input polling 37858263 0 > 0 1.14e3 0.00 > unix-epoll-input polling 36940 0 > 0 3.54e3 0.00 > --------------- > Thread 3 vpp_wk_2 (lcore 4) > Time 41.3, 10 sec internal node vector rate 0.00 loops/sec 983700.23 > vector rates in 4.8441e-2, out 0.0000e0, drop 4.8441e-2, punt 0.0000e0 > Name State Calls Vectors > Suspends Clocks Vectors/Call > dpdk-input polling 37820862 2 > 0 2.16e10 0.00 > drop active 2 2 > 0 9.34e3 1.00 > error-drop active 2 2 > 0 7.78e3 1.00 > ethernet-input active 2 2 > 0 2.44e4 1.00 > ip6-input active 2 2 > 0 1.06e4 1.00 > ip6-not-enabled active 2 2 > 0 8.75e3 1.00 > unix-epoll-input polling 36906 0 > 0 3.54e3 0.00 > --------------- > Thread 4 vpp_wk_3 (lcore 5) > Time 41.3, 10 sec internal node vector rate 0.00 loops/sec 985307.67 > vector rates in 0.0000e0, out 0.0000e0, drop 0.0000e0, punt 0.0000e0 > Name State Calls Vectors > Suspends Clocks Vectors/Call > dpdk-input polling 37834354 0 > 0 1.14e3 0.00 > unix-epoll-input polling 36918 0 > 0 3.47e3 0.00 > > Thanks, > Akash > > On Tue, Sep 28, 2021 at 4:09 PM Akash S R via lists.fd.io > <akashsr.akashsr=gmail....@lists.fd.io> wrote: > >> Thanks mate, that makes sense. Will check it out and get back . >> >> >> Thanks, >> Akash >> >> On Tue, Sep 28, 2021, 16:00 Benoit Ganne (bganne) <bga...@cisco.com> >> wrote: >> >>> Rx-miss means the NIC must drop packets on RX because the rx queue was >>> full, usually because VPP cannot keep up with the incoming packet rate. >>> You can check it with the output of 'show run'. If you see a big average >>> vector size (100 or more) it means VPP is busy. >>> To improve that you must increase the number of VPP workers (and rx >>> queues). >>> Rx-misses can also be caused by traffic spikes. In that case you can >>> increase the rx queues size to absorb the bursts. >>> >>> Best >>> ben >>> >>> > -----Original Message----- >>> > From: vpp-dev@lists.fd.io <vpp-dev@lists.fd.io> On Behalf Of Akash S R >>> > Sent: mardi 28 septembre 2021 11:43 >>> > To: vpp-dev <vpp-dev@lists.fd.io> >>> > Subject: [vpp-dev] rx-miss while sending packets to Interface >>> (IMPORTANT) >>> > >>> > Hello mates, >>> > >>> > Its been a long time, me , raising a query out here to you guys :) >>> (Nah, >>> > Please ignore this junk.) >>> > >>> > I have a question on rx-miss. Whenever we fire packets at some high >>> rate, >>> > say 1GBPS or more, I get rx-miss on the interface with some packet >>> count. >>> > I referred to a link below from the VPP forum: >>> https://lists.fd.io/g/vpp- >>> > dev/topic/78179815#17985 >>> > >>> > TenGigabitEthernet4/0/1 3 up 1500/0/0/0 rx >>> > packets 8622948 >>> > rx >>> > bytes 1103737344 >>> > ip4 >>> > 8622948 >>> > rx- >>> > miss 283721416 >>> > >>> > But the buffer is available and allocated is less. I reduced the >>> queues to >>> > 256 and threads to 4. >>> > But still the issue is not resolved. >>> > DBGvpp# show dpdk buffer >>> > name="vpp pool 0" available = 13984 allocated = 2816 total = >>> 16800 >>> > >>> > May I know the reason for this rx-miss and any kinda resolution for >>> this >>> > issue? >>> > >>> > Thanks, >>> > Akash >>> >>> >> >> >> > > >
-=-=-=-=-=-=-=-=-=-=-=- Links: You receive all messages sent to this group. View/Reply Online (#20229): https://lists.fd.io/g/vpp-dev/message/20229 Mute This Topic: https://lists.fd.io/mt/85920772/21656 Group Owner: vpp-dev+ow...@lists.fd.io Unsubscribe: https://lists.fd.io/g/vpp-dev/unsub [arch...@mail-archive.com] -=-=-=-=-=-=-=-=-=-=-=-