DPDK19.05 rte_flow 的 rss 支持情况

  • Post author:
  • Post category:其他




DPDK19.05 rte_flow 的 rss 支持情况:



结论

实验和查看源码得出:

driver supports supports
igb rss ntuple + queue
ixgbe rss ntuple + queue
i40e rss, eth + rss, vlan + rss ntuple + queue



证据

igb, ixgbe 都没有看到 ntuple 和 rss 组合使用:

static int

igb_parse_rss_filter(struct rte_eth_dev *dev,

const struct rte_flow_attr *attr,

const struct rte_flow_action actions[],

struct igb_rte_flow_rss_conf *rss_conf,

struct rte_flow_error *error)

static int

ixgbe_parse_rss_filter(struct rte_eth_dev *dev,

const struct rte_flow_attr *attr,

const struct rte_flow_action actions[],

struct ixgbe_rte_flow_rss_conf *rss_conf,

struct rte_flow_error *error)

i40e 只支持 eth+rss, vlan+rss 的使用:

/**

  • This function is used to do configuration i40e existing RSS with rte_flow.
  • It also enable queue region configuration using flow API for i40e.
  • pattern can be used indicate what parameters will be include in flow,
  • like user_priority or flowtype for queue region or HASH function for RSS.
  • Action is used to transmit parameter like queue index and HASH
  • function for RSS, or flowtype for queue region configuration.
  • For example:
  • pattern:
  • Case 1: only ETH, indicate flowtype for queue region will be parsed.
  • Case 2: only VLAN, indicate user_priority for queue region will be parsed.
  • Case 3: none, indicate RSS related will be parsed in action.
  • Any pattern other the ETH or VLAN will be treated as invalid except END.
  • So, pattern choice is depened on the purpose of configuration of
  • that flow.
  • action:
  • action RSS will be uaed to transmit valid parameter with
  • struct rte_flow_action_rss for all the 3 case.

    */

    static int

    i40e_parse_rss_filter(struct rte_eth_dev *dev,

    const struct rte_flow_attr *attr,

    const struct rte_flow_item pattern[],

    const struct rte_flow_action actions[],

    union i40e_filter_t *filter,

    struct rte_flow_error *error)



版权声明:本文为yk_wing4原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。