[PATCH v1 1/3] ethdev: add flow item for RoCE infiniband BTH

Andrew Rybchenko andrew.rybchenko at oktetlabs.ru
Mon May 22 09:01:55 CEST 2023


On 5/17/23 20:06, Ori Kam wrote:
> Hi Bill,
> 
>> -----Original Message-----
>> From: Bill Zhou <dongzhou at nvidia.com>
>> Sent: Thursday, May 11, 2023 10:55 AM
>> Subject: [PATCH v1 1/3] ethdev: add flow item for RoCE infiniband BTH

RoEC should be added devtools/words-case.txt
IB as well.

>>
>> 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

ethernet -> Ethernet (4 times above)

>> 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 <dongzhou at nvidia.com>
>> ---
> 
> Acked-by: Ori Kam <orika at nvidia.com>

Acked-by: Andrew Rybchenko <andrew.rybchenko at oktetlabs.ru>




More information about the dev mailing list