RDMA设计19:RoCE v2 发送及接收模块设计

本博文主要交流设计思路,在本博客已给出相关博文约150篇,希望对初学者有用。注意这里只是抛砖引玉,切莫认为参考这就可以完成商用IP设计。若有NVME或RDMA 产品及项目需求,请看B站视频后联系。

RoCE v2 发送及接收模块负责将用户指令组装为 RoCE v2 数据包或从 RoCE v2数据包中解析出远程主机信息及数据。RoCE v2 发送及接收模块的结构和数据转移方式如图1所示。RoCE v2 发送及接收模块均由五个单元组成,分别为 SEND 单元、READ 单元、WRITE 单元、ACK 单元和 REP 单元。其中 SEND 单元、READ 单元及WRITE 单元负责组装或解析这三种类型的请求包,而 ACK 单元与 REP 单元则负责组装或解析这两种类型的回复包。

图1 RoCE v2 发送及接收模块结构及数据转移图

在 RoCE v2 协议中,SEND 指令为双边语义,发送及接收均需要远程主机 CPU 参与,数据交换速率相对较慢、延迟相对较高。因此在RoCE v2 发送及接收模块中,SEND 单元只用于进行主机间的信息参数交换,不直接涉及大批量的数据传输操作,可以在一定程度上降低传输延迟、增加数据吞吐量。而DMA 控制器在其中负责数据交换,即把 AXI4 总线接口的数据和 AXI-Stream 总线接口的数据进行相互转换,分别与直接涉及到数据操作的 WRITE 单元和 REP 单元相连接。接下来将分别对 RoCE v2 发送和接收模块的结构设计和工作流程进行具体分析。

B站已给出相关性能的视频,如想进一步了解,请搜索B站用户:专注与守望

https://www.bilibili.com/video/BV1mPV5eCE8z/?spm_id_from=333.337.search-card.all.click\&vd_source=c355545d27a44fe96188b7caefeda6e7

相关推荐
gwf2161 天前
RDMA子接口与VLAN性能测试
性能测试·rdma·芯片测试·dpu·roce·智能网卡·perftest
垆边人似月.4 天前
RDMA项目踩坑(一):为什么最后一块数据必须使用实际长度?
网络·c/c++·rdma·高性能io·tcp与rdma
垆边人似月.5 天前
RDMA 文件传输踩坑(二):为什么 `sleep()` 不能保证接收端准备好了?
linux·服务器·网络·rdma
孙琦Ray5 天前
Meta 把 AI 网络 RDMA 传输层开源了
meta·开源·rdma·ai 网络·ocp 全球峰会·数据中心交换机
Eloudy6 天前
`ibv_get_device_list` 实现分析
网络·gpu·rdma
Eloudy6 天前
MLNX_OFED 源码补齐、Debug/Release 构建命令与修改记录
gpu·rdma
Eloudy7 天前
从 huggingFace 下载大模型命令备忘
llm·gpu·rdma
cyf319 天前
半小时玩转RDMA:从零跑通高速网络通信
网络协议·rdma·高速通信·rocev2·wireshark抓包·ai 智算网络·入门实战
gwf2169 天前
NVMe SSD全生命周期管理深度解析:从出厂初始化到安全退役的完整技术链路
linux内核·ssd·nvme·数据中心运维·全生命周期管理·sanitize·nvme 2.4
gwf21610 天前
RC/UC/UD/XRC四种传输模式性能对比与实战选型
性能测试·rdma·芯片测试·dpu·roce·智能网卡·perftest