> -----Original Message----- > From: Ferruh Yigit <ferruh.yi...@amd.com> > Sent: Wednesday, May 31, 2023 1:46 AM > To: Dong Zhou <dongz...@nvidia.com>; Ori Kam <or...@nvidia.com>; NBU- > Contact-Thomas Monjalon (EXTERNAL) <tho...@monjalon.net>; Aman Singh > <aman.deep.si...@intel.com>; Yuying Zhang <yuying.zh...@intel.com>; > Andrew Rybchenko <andrew.rybche...@oktetlabs.ru>; Olivier Matz > <olivier.m...@6wind.com> > Cc: dev@dpdk.org > Subject: Re: [PATCH v4] ethdev: add flow item for RoCE infiniband BTH > > On 5/30/2023 4:06 AM, Dong Zhou wrote: > > IB(InfiniBand) is one type of networking used in high-performance > > computing with high throughput and low latency. Like Ethernet, IB > > defines a layered protocol (Physical, Link, Network, Transport > > Layers). IB provides native support for RDMA(Remote DMA), an extension > > of the DMA that allows direct access to remote host memory without CPU > > intervention. IB network requires NICs and switches to support the IB > > protocol. > > > > RoCE(RDMA over Converged Ethernet) is a network protocol that allows > > RDMA to run on Ethernet. RoCE encapsulates IB packets on Ethernet and > > has two versions, RoCEv1 and RoCEv2. RoCEv1 is an Ethernet link layer > > protocol, IB packets are encapsulated in the Ethernet layer and use > > Ethernet type 0x8915. RoCEv2 is an internet layer protocol, IB packets > > are encapsulated in UDP payload and use a destination port 4791, The > > format of the RoCEv2 packet is as follows: > > ETH + IP + UDP(dport 4791) + IB(BTH + ExtHDR + PAYLOAD + CRC) > > > > BTH(Base Transport Header) is the IB transport layer header, RoCEv1 > > and RoCEv2 both contain this header. This patch introduces a new RTE > > item to match the IB BTH in RoCE packets. One use of this match is > > that the user can monitor RoCEv2's CNP(Congestion Notification > > Packet) by matching BTH opcode 0x81. > > > > This patch also adds the testpmd command line to match the RoCEv2 BTH. > > Usage example: > > > > testpmd> flow create 0 group 1 ingress pattern > > eth / ipv4 / udp dst is 4791 / ib_bth opcode is 0x81 > > dst_qp is 0xd3 / end actions queue index 0 / end > > > > Signed-off-by: Dong Zhou <dongz...@nvidia.com> > > Acked-by: Ori Kam <or...@nvidia.com> > > Acked-by: Andrew Rybchenko <andrew.rybche...@oktetlabs.ru> > > > > v2: > > - Change "ethernet" name to "Ethernet" in the commit log. > > - Add "RoCE" and "IB" 2 words to words-case.txt. > > - Add "rte_byteorder.h" header file in "rte_ib.h" to fix compile errors. > > - Add "Acked-by" labels in the first ethdev patch. > > > > v3: > > - Do rebase to fix the patch apply failure. > > - Add "Acked-by" label in the second net/mlx5 patch. > > > > v4: > > - Split this series of patches, only keep the first ethdev patch. > > > > Patch looks good, can you please add a release notes update too?
Sure, will send the v5 patch to update it.