在数据为王的时代,人们对网络的要求更加严苛。然而传统的TCP / IP以太网连接占用了大量的CPU资源,并且需要额外的数据处理,已无法再满足当前更快、更高效和可扩展性的网络需求。在这种情况下,RoCE(RDMA over Converged Ethernet )走进了人们的视野。

图片
什么是RDMA?
图片

RDMA(远程直接数据存取)就是为了解决网络传输中服务器端数据处理的延迟而产生的,无需使用CPU,就可以从一个主机或服务器的内存直接访问另一主机或服务器的内存。它释放了CPU去执行其应做的工作,比如运行应用程序和处理大量数据。这既提高了带宽又降低了延迟、抖动和 CPU 消耗。

图片

RDMA技术

因此,RDMA可以简单理解为利用相关的硬件和网络技术,服务器1的网卡可以直接读写服务器2的内存,最终达到高带宽、低延迟和低资源利用率的效果。

如下图所示,应用程序不需要参与数据传输过程,只需要指定内存读写地址,开启传输并等待传输完成即可。

图片

目前,大致有三类RDMA网络,分别是Infiniband、RoCE、iWARP。其中,Infiniband是一种专为RDMA设计的网络,从硬件级别保证可靠传输 ,而RoCE 和 iWARP都是基于以太网的RDMA技术,支持相应的verbs接口。

图片
什么是RoCE?
图片

顾名思义,RoCE是在InfiniBand Trade Association(IBTA)标准中定义的网络协议,允许通过以太网络使用RDMA。简而言之,它可以看作是RDMA技术在超融合数据中心、云、存储和虚拟化环境中的应用。

RoCE的类型

RoCE协议存在RoCEv1和RoCEv2两个版本,这取决于所使用的网络适配器或网卡。

RoCE v1:RoCE v1是基于以太网链路层实现的RDMA协议(交换机需要支持PFC等流控技术,在物理层保证可靠传输),允许在同一个VLAN中的两台主机进行通信。RoCE V1协议在以太层的typeID是0x8915。

RoCE v2:RoCE v2克服了RoCE v1绑定到单个VLAN的限制。通过改变数据包封装,包括IP和UDP标头,RoCE v2现在可以跨L2和L3网络使用。

图片
RoCE v1与RoCE v2数据包格式

如何实现RoCE?

通常,为了实现RoCE,可以安装支持RoCE的网卡或卡驱动程序。所有以太网NIC都需要RoCE网络适配器卡。RoCE驱动程序在Red Hat、Linux、Microsoft Windows和其他常见操作系统中使用。RoCE有两种可用方式:对于网络交换机,可以选择使用支持PFC(优先流控制)操作系统的交换机;对于机架服务器或主机,需要使用网卡。

图片

RoCE的好处

低CPU占用率:访问远程交换机或服务器的内存,无需消耗远程服务器上的CPU周期,从而可以充分利用可用带宽和更高的可伸缩性。

零复制:向远程缓冲区发送数据和接收数据。

高效:由于RoCE改善了延迟和吞吐量,网络性能得到了很大提高。

节省成本:借助RoCE,无需购买新设备或更换以太网基础设施即可处理大量数据,从而大大节省了公司的资本支出。

图片

图片
关于RoCE的常见问题
图片

下面列出了一些有关RoCE的常见问题。

  1. RoCE与iWARP、InfiniBand的技术对比

RDMA最早在Infiniband传输网络上实现,技术先进,但是价格高昂,后来业界厂家把RDMA移植到传统Ethernet以太网上,降低了RDMA的使用成本,推动了RDMA技术普及。在Ethernet以太网上,根据协议栈融合度的差异,分为iWARP和RoCE两种技术,而RoCE又包括RoCEv1和RoCEv2两个版本(RoCEv2的最大改进是支持IP路由),各RDMA网络协议栈的对比如下图所示。

图片

Infiniband,支持RDMA的新一代网络协议。由于这是一种新的网络技术,因此需要支持该技术的NIC和交换机。

RoCE,一个允许在以太网上执行RDMA的网络协议。其较低的网络标头是以太网标头,其较高的网络标头(包括数据)是InfiniBand标头。这支持在标准以太网基础设施(交换机)上使用RDMA。只有网卡应该是特殊的,支持RoCE。

iWARP,一个允许在TCP上执行RDMA的网络协议。IB和RoCE中存在的功能在iWARP中不受支持。这支持在标准以太网基础设施(交换机)上使用RDMA。只有网卡应该是特殊的,并且支持iWARP(如果使用CPU卸载),否则所有iWARP堆栈都可以在软件中实现,并且丧失了大部分RDMA性能优势。

RoCE和iWARP,一个是基于无连接协议UDP,一个是基于面向连接的协议(如TCP)。RoCEv1只能局限在一个二层广播域内,而RoCEv2和iWARP都能够支持三层路由。相比RoCE,在大型组网的情况下,iWARP的大量TCP连接会占用大量的额内存资源,对系统规格要求更高。另外,RoCE支持组播,而iWARP还没有相关的标准定义。

  1. RoCE适配器可以与其他适配器类型(例如iWARP)通信吗?

RoCE适配器只能与其他RoCE适配器通信,如果混合适配器类型配置的话,例如RoCE适配器与iWARP适配器组合,都可能会恢复为传统的TCP / IP连接。

图片
结论
图片

在数据中心中运行RDMA,可以减轻数据移动的负担,并为应用程序提供更高的CPU资源可用性。RoCE协议可以从RDMA的功能中受益,而无需更改其网络基础架构。通过减少以太网延迟和CPU开销,RoCE可以提高搜索、存储、数据库和高事务处理率应用程序的性能。通过提高CPU效率和应用程序性能,RoCE可以减少所需的服务器数量,从而节省能源,并减少基于以太网的数据中心的占用空间。

同翔网浅析RoCE网络技术相关推荐

  1. RoCE网络技术和实现方式

    在数据为王的时代,人们对网络的要求更加严苛.然而传统的TCP / IP以太网连接占用了大量的CPU资源,并且需要额外的数据处理,已无法再满足当前更快.更高效和可扩展性的网络需求.在这种情况下,RoCE ...

  2. python网易云爬虫网络技术的意义_Python3爬虫实战之网易云音乐

    Xpath最初被设计用来搜寻XML文档,但它同样适用于HTML文档的搜索.通过简洁明了的路径选择表达式,它提供了强大的选择功能:同时得益于其内置的丰富的函数,它可以匹配和处理字符串.数值.时间等数据格 ...

  3. 浅析AnyCast网络技术

    什么是BGP AnyCast? BGP anycast就是 利用一个(多个) as号码在不同的地区广播相同的一个ip段. 利用bgp的寻路原则,短的as path 会选成最优路径(bgp寻路原则之n) ...

  4. 凯少技术网-专注于网络技术,为广大电脑用户提供免费技术教学和常见电脑硬软件故障解决方案。

    这里写自定义目录标题 欢迎使用Markdown编辑器 新的改变 功能快捷键 合理的创建标题,有助于目录的生成 如何改变文本的样式 插入链接与图片 如何插入一段漂亮的代码片 生成一个适合你的列表 创建一 ...

  5. 浅析IRF虚拟化技术增强企业网络架构的弹性

    浅析IRF虚拟化技术增强企业网络架构的弹性  [摘要]随着"云"时代到来和各种虚拟化技术日趋成熟,对传统企业网络架构提出新挑战.例如:在不破坏企业原有网络架构和资产投入情况下,可以 ...

  6. 视频教程-学校网管员培训视频教程-网络技术

    学校网管员培训视频教程 擅长技术领域:网络安全.Windows Server 2003/2008.网络基础架构设计.活动目录规划. 韩利辉 ¥49.00 立即订阅 扫码下载「CSDN程序员学院APP」 ...

  7. 如何正确的学习网络技术?不妨试试这套网工学习路线

    我的绝大多数粉丝朋友,应该都会遇到一些网络设备的调试问题.无论你是桌面运维.弱电还是刚入门的网络工程师,或多或少需要掌握一定的网络知识.我知道很多人会说,网络技术太难学了.可是,网络技术原理真的有那么 ...

  8. Ad Hoc网络技术浅析

    Ad Hoc Network Technology 摘 要:Ad Hoc网络是随着无线通信技术的快速发展而出现的一种新型网络.本文详细介绍了Ad Hoc网络的概念.特点.应用需求.与其他移动通信系统的 ...

  9. 路由、 网络、互联网、因特网、公网私网IP、NAT技术

    路由 在不同网段之间转发数据,需要有路由器的支持 默认情况下,路由器只知道跟他直连的网段,非直连的网段需要通过静态路由.动态路由告诉它. 静态路由 管理员手动添加路由信息(路由表) 适用于小规模网络 ...

最新文章

  1. APA102C全彩色LED控制IC
  2. 前端架构之移动端混合架构(hybrid)
  3. IPC--三---共享内存
  4. 接口,new,匿名内部类
  5. Wordpress 修改 mysql 插件_史上最详细的WordPress安装教程(三):安装php 5.6及fpm、pdo、mysql等插件...
  6. 华科08年计算机考研复试机试
  7. mysql中如何删除空记录表_mysql删除表中的记录
  8. JWT实现Token认证
  9. 埃博拉疫情蔓延在进行中
  10. android实现Materia Design风格APP(三):部分Materia Design风格的控件介绍二
  11. 常见职位的英文简称_英语面试常见的50大问题及应对技巧
  12. 【Android 逆向】APK 加壳脱壳现状 | 判断 APK 是否加壳 | APK 逆向流程
  13. 【实习】C++开发 - 美国顶尖金融交易公司-Akuna Capital - 金融科技
  14. C#中TreeView树配图片
  15. 诺丁汉大学的计算机工程专业咋样,诺丁汉大学电子计算机工程本科专业.pdf
  16. 【分享-一键在线抠图】在线免费去除图片背景
  17. 【转 iOS 8 Auto Layout界面自动布局系列2-使用Xcode的Interface Builder添加布局约束
  18. 台媒:台积电预计在台湾新竹建设使用2纳米制程的工厂
  19. win7剪切板_Win7系统当中清空剪切板的操作方法是什么?
  20. CSDN贴子: rundl132.exe和logo1_.exe病毒如何清除

热门文章

  1. 微信小程序开发入门教程(十二)
  2. Android项目之视频播放器
  3. 数据结构与算法(基于<algorithm>)
  4. Hadoop-HDFS
  5. transmac装黑苹果_自己安装黑苹果,安装mac简单教程,双系统轻松使用
  6. 8MSaaS PM:如何管理银行项目?
  7. Linux cat命令学习
  8. oracle巡检表,ORACLE日常巡检内容
  9. Beego2 使用Session时SetCookie无效
  10. 从数据标准到数据库设计:解决基础数据标准落地的最后一公里难题(上)