集群网络技术1:RDMA和相关协议

一、核心概念:为什么需要RDMA?

传统网络通信的问题(TCP/IP栈的瓶颈) 在传统的网络通信(如标准的TCP/IP Socket)中,数据从应用层到网卡需要经过复杂的路径:

1.应用将数据放入内存缓冲区。

2.操作系统内核接管,进行TCP/IP协议栈的处理(封装包头、校验等)。

3.数据从用户内存空间拷贝到内核的内存空间。

4.内核通过驱动程序通知网卡取数据。

5.网卡从内核内存中读取数据并发送。 这个过程涉及多次上下文切换(用户态/内核态切换)和内存拷贝,消耗大量的CPU周期和内存带宽。当网络速度达到200G、400G时,CPU会花费绝大部分时间来处理网络协议栈本身,而不是运行业务程序,这被称为"协议栈开销"。

RDMA(Remote Direct Memory Access)远程直接内存访问 RDMA技术的诞生就是为了解决上述瓶颈。它的核心思想是绕过操作系统内核,实现网络中一台计算机的网卡直接访问另一台计算机的内存。

二、RDMA的三个核心特征:

1.零拷贝:数据直接从应用的用户态内存发送到远程网卡,并写入远程应用的用户态内存,无需经过内核缓冲区。

2.内核旁路:应用可以直接向网卡提交指令,无需操作系统介入,减少了上下文切换。

3.无CPU参与:数据传输过程完全由网卡硬件处理,CPU几乎不干预,可以解放出来处理计算任务。

三、带来的好处:

1.超低延迟:从毫秒级降低到微秒级。

2.高吞吐:能充分发挥200G/400G网络的带宽。

3.极低的CPU占用率:即使网络流量满载,CPU使用率也几乎为零。

四、RDMA是一个技术理念,它需要通过具体的协议来实现。

主要有三种:

InfiniBand: 专为RDMA设计的网络,从硬件层就原生支持RDMA,性能最好,但需要专用的交换机和网线,成本高。

RoCE: RDMA over Converged Ethernet(基于融合以太网的RDMA)。它允许在标准的以太网上运行RDMA,从而利用现有、廉价且普及的以太网基础设施。这是目前最主流的方案。

iWARP: 另一种在TCP/IP上实现RDMA的协议,但由于TCP的复杂性,其性能和延迟通常不如RoCE。

相关推荐
2401_865382507 小时前
密评与等保的关系:不是替代,而是互补
网络·信息化造价
进军的码农8 小时前
浪潮服务器怎么选?DeepSeek V4、GLM-5.2、Qwen3三大开源模型本地部署方案与代理商选购指南
大模型部署·deepseek·qwen3·浪潮服务器·gpu服务器·glm-5.2
白狐_7989 小时前
408计算机网络第3章:PPP协议——帧格式、LCP/NCP、状态机与真题精讲
网络·计算机网络·智能路由器
MIXLLRED9 小时前
解决——Ubuntu远程桌面指令更换网络
linux·网络·ubuntu
zt1985q11 小时前
本地部署开源网络书签与内容管理工具 Karakeep 并实现外部访问
运维·服务器·网络·数据库·网络协议·开源
白狐_79813 小时前
408计算机网络第3章:以太网交换机与共享式以太网——知识总结
服务器·网络·计算机网络
yjm00213 小时前
Reasonix 安装配置教程:DeepSeek 编程 Agent 入门指南
deepseek
笨鸟先飞,勤能补拙13 小时前
网络安全等级保护 2.0:从定级备案、建设整改到持续合规的系统指南
网络·人工智能·windows·安全·web安全·网络安全·github
wgh65314 小时前
策略路由实验
网络
難釋懷14 小时前
Nginx日志
前端·网络·nginx