一起来看看RDMA让网络实现低时延的绝招

众所周知,互联网数据的爆炸式增长,给数据中心的处理能力带来了很大的挑战。  
计算、存储和网络,是推动数据中心发展的三驾马车。
计算随着cpu、gpu和fpga的发展,算力得到了极大的提升。存储随着闪存盘(ssd)的引入,数据存取时延已大幅降低。
但是,网络的发展明显滞后,传输时延高,逐渐成为了数据中心高性能的瓶颈。
在数据中心内,70%的流量为东西向流量(服务器之间的流量)。这些流量,一般为数据中心进行高性能分布式并行计算时的过程数据流,通过tcp/ip网络传输。
如果服务器之间的tcp/ip传输速率提升了,数据中心的性能自然也会跟着提升。
下面,我们就来看看服务器之间数据tcp/ip传输的过程,了解一下“时间都去哪了”,才好“对症下药”。      
服务器间的tcp/ip传输
在数据中心,服务器a向服务器b发送数据的过程如下:
1、cpu控制数据由a的app buffer拷贝到操作系统buffer。
2、cpu控制数据在操作系统(os)buffer中添加tcp、ip报文头。
3、添加tcp、ip报文头后的数据传送到网卡(nic),添加以太网报文头。
4、报文由网卡发送,通过以太网络传输到服务器b网卡。
5、服务器b网卡卸载报文的以太网报文头后,将其传输到操作系统buffer。
6、cpu控制操作系统buffer中的报文卸载tcp、ip报文头。
7、cpu控制卸载后的数据传输到app buffer中。
从数据传输的过程可以看出,数据在服务器的buffer内多次拷贝,在操作系统中需要添加/卸载tcp、ip报文头,这些操作既增加了数据传输时延,又消耗了大量的cpu资源,无法很好得满足高性能计算的需求。
那么,如何构造高吞吐量、超低时延和低cpu开销的高性能数据中心网络呢?
rdma技术可以做到。      
什么是rdma
rdma( remote direct memory access,远程直接地址访问技术 )是一种新的内存访问技术,可以让服务器直接高速读写其他服务器的内存数据,而不需要经过操作系统/cpu耗时的处理。
rdma不算是一项新技术,已经广泛应用于高性能(hpc)科学计算中。随着数据中心高带宽、低时延的发展需求,rdma也开始逐渐应用于某些要求数据中心具备高性能的场景中。
举个例子,2021年某大型网上商城的双十一交易额再创新高,达到5000多亿,比2020年又增长了近10%。如此巨大的交易额背后是海量的数据处理,该网上商城采用了rdma技术来支撑高性能网络,保障了双十一的顺畅购物。
下面我们一起来看看rdma让网络实现低时延的绝招吧。
rdma将服务器应用数据直接由内存传输到智能网卡(固化rdma协议),由智能网卡硬件完成rdma传输报文封装,解放了操作系统和cpu。
这使得rdma具有两大优势:  
zero copy(零拷贝):无需将数据拷贝到操作系统内核态并处理数据包头部的过程,传输延迟会显著减小。
kernel bypass(内核旁路)和protocol offload(协议卸载):不需要操作系统内核参与,数据通路中没有繁琐的处理报头逻辑,不仅会使延迟降低,而且也大大节省了cpu的资源。
三大rdma网络
目前,大致有三类rdma网络,分别是infiniband、roce(rdma over converged ethernet,rdma过融合以太网)和iwarp(rdmaover tcp,互联网广域rdma协议)。
rdma最早专属于infiniband网络架构,从硬件级别保证可靠传输,而roce和iwarp都是基于以太网的rdma技术。
infiniband
infiniband是一种专为rdma设计的网络。
采用cut-through转发模式(直通转发模式),减少转发时延。
基于credit的流控机制(基于信用的流控机制),保证无丢包。
要求infiniband专用的网卡、交换机和路由器,建网成本最高。
roce
传输层为infiniband协议。
roce有两个版本:rocev1基于以太网链路层实现,只能在l2层传输;rocev2基于udp承载rdma,可部署于三层网络。
需要支持rdma专用智能网卡,不需要专用交换机和路由器(支持ecn/pfc等技术,降低丢包率),建网成本最低。
iwarp
传输层为iwarp协议。
iwarp是以太网tcp/ip协议中tcp层实现,支持l2/l3层传输,大型组网tcp连接会消耗大量cpu,所以应用很少。
iwarp只要求网卡支持rdma,不需要专用交换机和路由器,建网成本介于infiniband和roce之间。
infiniband技术先进,但是价格高昂,应用局限在hpc高性能计算领域,随着roce和iwarpc的出现,降低了rdma的使用成本,推动了rdma技术普及。
在高性能存储、计算数据中心中采用这三类rdma网络,都可以大幅度降低数据传输时延,并为应用程序提供更高的cpu资源可用性。
其中,infiniband网络为数据中心带来极致的性能,传输时延低至百纳秒,比以太网设备延时要低一个量级。
roce和iwarp网络为数据中心带来超高性价比,基于以太网承载rdma,充分利用了rdma的高性能和低cpu使用率等优势,同时网络建设成本也不高。
基于udp协议的roce比基于tcp协议的iwarp性能更好,结合无损以太网的流控技术,解决了丢包敏感的问题。roce网络,已广泛应用于各行业高性能数据中心中。      
结语
随着5g、人工智能、工业互联网等新型领域的发展,rdma技术的应用会越来越普及,rdma将成为助力数据中心高性能的一大功臣。


RS232串行数据截取器的设计方案
零跑T03信息曝光 L2级辅助驾驶功能满足了年轻消费者的需求
小米6逆天配置,满血版骁龙835,4月16号正式发布
刘昊然实力带货,其代言新品vivo S6获年轻人喜爱
人工智能时代的到来,搜索引擎将会是什么样子呢?
一起来看看RDMA让网络实现低时延的绝招
魅族的骄傲:魅蓝Note 5发布,并没有曲面屏
后来居上的中国人工智能
采用QPSK调制方式和卷积编码实现中频调制解调系统的FPGA功能
美光爆发气体泄漏事件,致6名员工中毒送医抢救
IGBT模块机械构造相关的电气特性参数
同惠LCR测试仪TH2817C+产品详解介绍
湖北电信抢抓进度,加速5G“新基建”
iPhone 12 助力,韩国 5G 用户在 10 月底接近 1000 万
MIT开发用于监测海洋温度和可进行数据采集的水下压电传感器
KT宣布推出支持Wi-Fi6技术的第二款家用无线路由器
基于DSP器件TMS320C6211芯片实现视频检测设计
国内外智能驾驶计算芯片发展现状
欧司朗光电半导体牵手华星光电,为显示屏提供LED背光源
至强可扩展处理器首秀:浪潮M5系列服务器 性能提升100%!