[dpdk-dev] [PATCH v4] ethdev: add flow tag

Ori Kam orika at mellanox.com
Sun Oct 27 20:11:36 CET 2019



> -----Original Message-----
> From: Viacheslav Ovsiienko <viacheslavo at mellanox.com>
> Sent: Sunday, October 27, 2019 8:42 PM
> To: dev at dpdk.org
> Cc: Thomas Monjalon <thomas at monjalon.net>; Matan Azrad
> <matan at mellanox.com>; Ori Kam <orika at mellanox.com>; Yongseok Koh
> <yskoh at mellanox.com>
> Subject: [PATCH v4] ethdev: add flow tag
> 
> A tag is a transient data which can be used during flow match. This can be
> used to store match result from a previous table so that the same pattern
> need not be matched again on the next table. Even if outer header is
> decapsulated on the previous match, the match result can be kept.
> 
> Some device expose internal registers of its flow processing pipeline and
> those registers are quite useful for stateful connection tracking as it
> keeps status of flow matching. Multiple tags are supported by specifying
> index.
> 
> Example testpmd commands are:
> 
>   flow create 0 ingress pattern ... / end
>     actions set_tag index 2 value 0xaa00bb mask 0xffff00ff /
>             set_tag index 3 value 0x123456 mask 0xffffff /
>             vxlan_decap / jump group 1 / end
> 
>   flow create 0 ingress pattern ... / end
>     actions set_tag index 2 value 0xcc00 mask 0xff00 /
>             set_tag index 3 value 0x123456 mask 0xffffff /
>             vxlan_decap / jump group 1 / end
> 
>   flow create 0 ingress group 1
>     pattern tag index is 2 value spec 0xaa00bb value mask 0xffff00ff /
>             eth ... / end
>     actions ... jump group 2 / end
> 
>   flow create 0 ingress group 1
>     pattern tag index is 2 value spec 0xcc00 value mask 0xff00 /
>             tag index is 3 value spec 0x123456 value mask 0xffffff /
>             eth ... / end
>     actions ... / end
> 
>   flow create 0 ingress group 2
>     pattern tag index is 3 value spec 0x123456 value mask 0xffffff /
>             eth ... / end
>     actions ... / end
> 
> Signed-off-by: Yongseok Koh <yskoh at mellanox.com>
> Signed-off-by: Viacheslav Ovsiienko <viacheslavo at mellanox.com>
> 
> ---
> v4: rebased, doc comments are addressed
> v3:
> https://eur03.safelinks.protection.outlook.com/?url=http%3A%2F%2Fpatches.dp
> dk.org%2Fpatch%2F61902%2F&data=02%7C01%7Corika%40mellanox.com
> %7Cc16ca32f167b4104801708d75b0d6d82%7Ca652971c7d2e4d9ba6a4d14925
> 6f461b%7C0%7C0%7C637077985544569848&sdata=uig9z%2BKlajityhrU2P
> ejBEJR%2FsgBHvytHC2HcZBuI7Q%3D&reserved=0
> v2:
> https://eur03.safelinks.protection.outlook.com/?url=http%3A%2F%2Fpatches.dp
> dk.org%2Fpatch%2F60909%2F&data=02%7C01%7Corika%40mellanox.com
> %7Cc16ca32f167b4104801708d75b0d6d82%7Ca652971c7d2e4d9ba6a4d14925
> 6f461b%7C0%7C0%7C637077985544579804&sdata=9pfgncgaRg1mVkJ00o
> wm63lsiNw14hoo4pySvnjFCVE%3D&reserved=0
> v1:
> https://eur03.safelinks.protection.outlook.com/?url=http%3A%2F%2Fpatches.dp
> dk.org%2Fpatch%2F56104%2F&data=02%7C01%7Corika%40mellanox.com
> %7Cc16ca32f167b4104801708d75b0d6d82%7Ca652971c7d2e4d9ba6a4d14925
> 6f461b%7C0%7C0%7C637077985544579804&sdata=3r9b2yaNZfNiLjYStD
> MDbw3PpQFbTYuPdJO9%2F8c0VbM%3D&reserved=0
> rfc:
> https://eur03.safelinks.protection.outlook.com/?url=http%3A%2F%2Fpatches.dp
> dk.org%2Fpatch%2F54271%2F&data=02%7C01%7Corika%40mellanox.com
> %7Cc16ca32f167b4104801708d75b0d6d82%7Ca652971c7d2e4d9ba6a4d14925
> 6f461b%7C0%7C0%7C637077985544579804&sdata=3uM2kVUbEwohNwFr
> %2FR0mpBKEIFDfqYAChz0GakK6Pkw%3D&reserved=0


Acked-by: Ori Kam <orika at mellanox.com>

Thanks,
Ori


More information about the dev mailing list