Please find below NVIDIA roadmap for 24.03 release:


A. rte_flow new APIs

=================

  1.  Add NAT64 action.

Adding a new action for header re-write of NAT64.

NAT64 (Network Address Translation 64) is a networking technology that 
facilitates communication between IPv6 and IPv4 networks.

  1.  Support more modify fields of IP and TCP headers​.

Supporting IPv4 IHL & total length, IPv6 payload length and TCP data offset in 
the rte_flow modify field actions.​​

For example, by using the ADD operation, the length of the IP and TCP headers 
can be calculated. When it is equal to the total

length of an IP packet, it means that there is no encrypted header and the 
IPSec matching can be skipped.​

  1.  Template API performance tuning.

Improve code to enable faster rule insertion/deletion.​

Improve indexed pool management for faster allocations.​

  1.  Align the source port in the tunnel header calculation between SW and HW
When doing ECMP (Equal-Cost Multipath Routing) in the underlay network with a 
tunnel encapsulation,

for example, GENEVE, the outer UDP source port can be used as an identifier.

The source port calculation in the slow path SW and data path HW offloading 
should be aligned to solve the path selection mismatch.

  1.  Support compares two fields with rte_flow_item, including 
EQ/NE/LT/LE/GT/GE.

Adding new item RTE_FLOW_ITEM_TYPE_COMPARE to compare 2 fields with reusing the 
MODIFY_FIELD​

Provide a more flexible comparison.

  1.  Match random inside a range in template API.

Enable matching random inside a range. An enhancement of the random item 
matching. ​

Used for sampling the packets.

  1.  Support Geneve encap/decap and modify actions.
Added support for Geneve raw_encap/decap as well as Geneve options modify with 
template API in addition to previously supported match on Geneve options.

  1.  Support table resize in template API​.

The table size (maximal number of rules supported) is fixed when creating a 
template table and the ASO actions number is also fixed when configuring the 
port.​​

Reduce the number of tables to be created. Using rehash mechanism to handle the 
table resize for this stage.​​



B. Net/mlx5 PMD updates

=====================

  1.  Return detailed error if the match pattern cannot be created due to 
matching fields limit.

Different NIC generations has different matching size limits (number of 
matching fields).

Once application receive such error, it should perform relevant enhancements to 
build an

alternate matching pipe that fits to the NIC’s limits.

  1.  Support more than 32 ports for CT

No ports number limitation when creating an indirect connection tracking action 
in the template API.​

  1.  Support VXLAN-GPE matching

Support VXLAN-GPE matching in template API, including the flag and reserved 
bits.



C. Test apps updates

=================

  1.  Support the changes in rte_flow listed above in testpmd.
  2.  Support hairpin with 4 physical ports in testpmd.

For Connectx -7 Nic's that support 4 physical ports, detect port number, and 
update hairpin logic to enable use of all ports.

Current testpmd enable sequential pair for hairpin, this feature is meant to 
enable any pair.

Regards,
Maayan Kashani

Reply via email to