Hello  Team,

Wish to reach out to the gurus of VPP/DPDK to get some quick fix  on the 
problem we face in VPP based solution , have tried to share on what we do and 
where we do we need support , hope this is fine, Thanks for the support



Context of the problem:



Working on  VPP based solution with Intel Fortville eth device , and hosted a 
sample NF as App in a VM ;System is designed to send eth packets from FVL to 
VPP (thru i40e dpdk driver config) with Eth type as "Unknown" with our own 
payloads; Here we tried using  "RSS with flexible payload" option , passing 16 
bytes of data as fields to RSS hash function after the Eth Header for 
processing.



What is happening:

    And we have configured two queues for each port and packets are NOT 
distributed across rx_queues. We have checked this using "show runtime" command 
in VPP. When we use the function rte_eth_dev_info_get() function to check RSS 
offloads in dev_info struct. It outputs "hash_key_size:52 
flow_type_rss_offloads:0x7ef8". This means that RSS_L2_PAYLOAD is also enabled 
which is 14th bit in the flow_type_rss_offloads field in dev_info struct.



What we want understand:



Whether RSS is supported with flexible payload option as we see flexible 
payload option the datasheet of Fortville eth device?? so, we thought that we 
can change the hash input set fields as mentioned in Table 7.5 of data sheet 
using flexible payload option with PCTYPE as L2 Protocol type (that is, PCTYPE 
== 63)



In section 7.1.4, it says flexible payload is used with FD. So we can confirm 
this through this mail VPP mailing alias



Changes in  VPP source code:

    struct rte_eth_hash_filter_info filter_info;

    memset(&filter_info, 0, sizeof(filter_info));

    filter_info.info_type = RTE_ETH_HASH_FILTER_INPUT_SET_SELECT;

    filter_info.info.input_set_conf.flow_type = RTE_ETH_FLOW_L2_PAYLOAD;

    filter_info.info.input_set_conf.inset_size = 8;

    filter_info.info.input_set_conf.field[0] = 
RTE_ETH_INPUT_SET_FLEX_PAYLOAD_1ST_WORD;

    filter_info.info.input_set_conf.field[1] = 
RTE_ETH_INPUT_SET_FLEX_PAYLOAD_2ND_WORD;

    filter_info.info.input_set_conf.field[2] = 
RTE_ETH_INPUT_SET_FLEX_PAYLOAD_3RD_WORD;

    filter_info.info.input_set_conf.field[3] = 
RTE_ETH_INPUT_SET_FLEX_PAYLOAD_4TH_WORD;

    filter_info.info.input_set_conf.field[4] = 
RTE_ETH_INPUT_SET_FLEX_PAYLOAD_5TH_WORD;

    filter_info.info.input_set_conf.field[5] = 
RTE_ETH_INPUT_SET_FLEX_PAYLOAD_6TH_WORD;

    filter_info.info.input_set_conf.field[6] = 
RTE_ETH_INPUT_SET_FLEX_PAYLOAD_7TH_WORD;

    filter_info.info.input_set_conf.field[7] = 
RTE_ETH_INPUT_SET_FLEX_PAYLOAD_8TH_WORD;

    filter_info.info.input_set_conf.op = RTE_ETH_INPUT_SET_ADD;

    filter_ret = rte_eth_dev_filter_ctrl(xd->port_id, RTE_ETH_FILTER_HASH, 
RTE_ETH_FILTER_SET, &filter_info);



    where I coded in VPP 18.10 source code:



    Function name: dpdk_device_setup()

    File: plugins/dpdk/device/common.c

    Line: at line 148 of 368


Best Regards
Gunaseelan V
98408 60856

::DISCLAIMER::
--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
The contents of this e-mail and any attachment(s) are confidential and intended 
for the named recipient(s) only. E-mail transmission is not guaranteed to be 
secure or error-free as information could be intercepted, corrupted, lost, 
destroyed, arrive late or incomplete, or may contain viruses in transmission. 
The e mail and its contents (with or without referred errors) shall therefore 
not attach any liability on the originator or HCL or its affiliates. Views or 
opinions, if any, presented in this email are solely those of the author and 
may not necessarily reflect the views or opinions of HCL or its affiliates. Any 
form of reproduction, dissemination, copying, disclosure, modification, 
distribution and / or publication of this message without the prior written 
consent of authorized representative of HCL is strictly prohibited. If you have 
received this email in error please delete it and notify the sender 
immediately. Before opening any email and/or attachments, please check them for 
viruses and other defects.
--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
-=-=-=-=-=-=-=-=-=-=-=-
Links: You receive all messages sent to this group.

View/Reply Online (#12174): https://lists.fd.io/g/vpp-dev/message/12174
Mute This Topic: https://lists.fd.io/mt/29662357/21656
Group Owner: vpp-dev+ow...@lists.fd.io
Unsubscribe: https://lists.fd.io/g/vpp-dev/unsub  [arch...@mail-archive.com]
-=-=-=-=-=-=-=-=-=-=-=-

Reply via email to