[dpdk-dev] mlx5: match broadcast and multicast packets using flows

Carasec Elena xcaras00 at stud.fit.vutbr.cz
Fri Oct 2 12:53:18 CEST 2020


Hello,

I am trying to create flow rules that will match broadcast and multicast 
packets using testpmd
on mlx5 'MT27800 Family [ConnectX-5] 1017'. However, after creating the 
following rules, they do not match any packets.

My testpmd script is:

port stop all
port config all rss none
set promisc 0 on
set allmulti 0 on
port start all
set link-up port all
flow create 0 group 0 ingress pattern eth dst is ff:ff:ff:ff:ff:ff / 
ipv4 / end actions mark id 1 / count / queue index 1 / end
flow create 0 group 0 ingress pattern eth dst is ff:ff:ff:ff:ff:ff / 
ipv6 / end actions mark id 1 / count / queue index 1 / end
flow create 0 group 0 ingress pattern eth dst spec 01:00:00:00:00:00 dst 
mask 01:00:00:00:00:00 / ipv4 / end actions mark id 2 / count / queue 
index 2 / end
flow create 0 group 0 ingress pattern eth dst spec 01:00:00:00:00:00 dst 
mask 01:00:00:00:00:00 / ipv6 / end actions mark id 2 / count / queue 
index 2 / end
flow create 0 group 0 priority 1 ingress pattern end actions queue index 
3 / count / end
start

All the packets will match the last rule.

Also, creating only the rule
flow create 0 group 0 ingress pattern eth dst spec 01:00:00:00:00:00 dst 
mask 01:00:00:00:00:00 / end actions mark id 2 / count / queue index 2 / 
end
fails with error "port_flow_complain(): Caught PMD error type 1 (cause 
unspecified): hardware refuses to create flow: File exists"

What may be the reason of it? Is there another way to match broadcast 
and multicast packets using flow?

Thank you.
Elena Carasec


More information about the dev mailing list