NVME-oF IP 设计8 :设计扫盲6

RoCEv2 协议封装与数据流

RoCE(RDMA over Converged Ethernet)是RDMA在以太网上的实现方式。RoCE协议通过在以太网帧中封装RDMA数据,使RDMA能够运行在标准以太网环境中。RoCE最初版本(RoCEv1)仅支持二层网络,而RoCEv2采用UDP/IP封装方式,使RDMA数据能够在三层网络中进行路由,从而适用于大规模数据中心环境。

在RoCEv2协议中,RDMA数据包的基本封装结构包括以太网头部、IP头部、UDP头部以及Infiniband传输头(IB Transport Header)。其中IP和UDP头部用于实现网络层路由,而IB Transport Header则用于描述RDMA操作类型以及队列信息。RDMA数据载荷被封装在UDP数据段中,通过以太网进行传输。

RoCEv2的数据传输流程如图1所示,通常包括以下几个阶段:首先,发送端应用程序向QP提交WR,RNIC从SQ中读取WR并构建RDMA数据包;随后RNIC将数据包封装为RoCEv2数据帧并发送至网络;网络交换设备根据IP地址进行路由转发;接收端RNIC在接收到数据帧后进行协议解析,并根据QP信息将数据写入对应的内存区域;最后,RNIC生成CQE并通知应用程序数据传输完成。

图1 RoCEv2的数据传输流程图

为了保证RDMA数据传输的可靠性,RoCEv2通常依赖无损以太网机制,例如Priority Flow Control(PFC)和 Explicit Congestion Notification(ECN)。PFC可以在网络拥塞时暂停特定优先级的数据流,从而避免数据包丢失;ECN则通过在数据包中标记拥塞信息,使发送端能够动态调整发送速率。通过这些机制,RoCEv2可以在以太网环境中实现与InfiniBand类似的可靠传输能力。

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

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

相关推荐
gwf2162 小时前
国产RDMA网卡驱动现状、挑战与未来:从内核上游到数据中心实践
rdma·rocev2·linuxkernel·数据中心网络·devicedriver·auxiliarybus·erdma
Moyu_Friday4 小时前
网络安全基础-计算机网络应用与协议
网络协议·计算机网络
徐同保15 小时前
免费ssl证书全流程AI配置(含七牛云cdn)
网络·网络协议·ssl
幻智星科技18 小时前
一个开源的纯FPGA网口采集卡
网络协议·fpga开发·udp
anew___1 天前
《从零手写操作系统 (48):网络协议栈基础——Socket API与TCP/IP分层架构》
网络协议·tcp/ip·架构
TMT星球1 天前
2026阅文创作大会:首批AI精品动画亮相,推出OPC一站式平台与IP委员会模式
人工智能·网络协议·tcp/ip
程序员夏洛1 天前
TCP 和 UDP 有什么区别?
网络协议·tcp/ip·udp
跨境数据猎手1 天前
机房、住宅、原生IP区别在哪,三类代理的说明
网络·网络协议·tcp/ip
尘一不染1 天前
多模型 API 接入实战(一):从一次 HTTP 请求到可维护的适配层
网络·人工智能·网络协议·http