> On 2 Oct 2017, at 18:14, Alessio Silvestro <ale.silver...@gmail.com> wrote:
> 
> Dear all,
> 
> I am running VPP on a CPU with 2 sockets and 4 virtual cores. The startup 
> configuration is the following:
> 
> unix {
>   interactive
>   nodaemon
> }
> 
> cpu {
>         main-core 0
>       corelist-workers 2-3
>       workers 2
> }
> 
>  dpdk {
>       dev 0000:07:00.0 
>        {
>               num-rx-queues 2
>       }
>       dev 0000:07:00.1
>       socket-mem 1024,1024
> }
> 
> The thread placement is the following:
> Thread 1 (vpp_wk_0 at lcore 2):
>   TenGigabitEthernet7/0/0 queue 0
>   TenGigabitEthernet7/0/1 queue 0
> Thread 2 (vpp_wk_1 at lcore 3):
>   TenGigabitEthernet7/0/0 queue 1
> 
> So, I can see that RSS is working because the first queue of the first 
> interface is on lcore2 whereas the second queue is on lcore3.
> 
> I am running a simple L2-xconnect with the following command:
> set int l2 xconnect TenGigabitEthernet7/0/0 TenGigabitEthernet7/0/1
> 
>  
> I am expecting the second thread actually working when the first cannot 
> handle all the traffic. 
> 
> Therefore, I am saturating the RX bandwidth of TenGigabitEthernet7/0/0 
> sending 14 Mpps (packets of 64B).
> I am receiving on TenGigabitEthernet7/0/1 only ~13Mpps which means that I am 
> not able to process ~ 1Mpps.
> 
> However, when I perform  "show run", the second thread does not work at all!
> 
> Am I missing something in the configuration of VPP or what do you think can 
> be the cause?
> 
> Thanks for the help :)

RSS is per-flow so likely your NIC thinks that all your traffic belongs to the 
same flow and sends it to the same queue.
You need to make your traffic more diverse, i.e. by randomizing address or port 
values…




_______________________________________________
vpp-dev mailing list
vpp-dev@lists.fd.io
https://lists.fd.io/mailman/listinfo/vpp-dev

Reply via email to