数据中心网络如何发展成为无损数据中心网络?

作者:袁冬至
公众号:救命的药
研究方向:数据中心网络
欢迎交流,学习!

数据中心网络如何实现无丢包、低时延、高吞吐的能力?

为解决上述问题,传统原生TCP/IP协议栈网络又遇到哪些问题,急需解决?

0 自己的理解及概括

为了建设高性能数据中心,计算和存储都发展很好,但是网络发展不好。传统TCP/IP网络在数据中心里有2个大问题:1TCP/IP协议栈处理时延大,2 服务器CPU负载高;为了解决这个问题,RoCE技术诞生了。RoCE它的发展过程是远程直接内存访问(RDMA)技术可以解决网络延迟,CPU负载高的问题;RDMA最初用在Infiniband网络中,Infiniband网络里面一切都是专用的,无丢包的无损网络;当RDMA技术应用在以太网中就不行了,因为以太网缺乏完善的丢包保护机制,所以有丢包RDMA就不好用了;为了能用RDMA把原生以太网通过PFC,ECN,DCBX,ETS技术改造成为无丢包的网络;RoCE是基于以太网的RDMA技术。

当然无损网络还有许多其它的问题需要解决,比如:线头阻塞,死锁等!

1 传统TCP/IP网络发展困境

​ 建设高性能数据中心的传统思路,一方面是推动数据中心网络带宽升级进而带动组网架构升级(即10G/40G模型向25G/100G组网模型演进,进而向100G/400G模型演化);另外一方面则是引入基于SDN Telemetry等智能管理技术使数据中心网络实现自动化、智能化运维管理,最终实现数据中心网络“管控析”业务融合升级。

​ 数据中心基础设施三大件:计算、存储和网络。计算和存储技术近些年都有长足的进步。

计算:在CPU基础上,出现了像GPU、TPU等为特定场景、特定业务而生的处理器芯片,计算效率成百上千的提升。

存储:在HDD机械硬盘的基础上,出现了SSD全闪存产品,存取效率也得到质的飞跃。

网络:虽然出现了SDN技术,但其内核本质还是TCP/IP技术,而TCP/IP处理机制是“尽力而为”,涉及“TCP/IP协议栈处理时延大”和“因协议栈处理机制带来的CPU负载居高不下的问题”,并没有太大的改进;

  • TCP/IP协议栈处理时延大:
  1. TCP协议栈在收/发报文时,需要做多次上下文切换,每次切换需耗费5μs~10μs左右时延;
  2. 以及至少三次的数据拷贝,严重依赖CPU进行协议封装,协议栈本身就有数十微秒的固定时延,使得在AI人工智能和SSD分布式存储-微秒级系统中,协议栈时延成为最明显的瓶颈;
  • 服务器CPU负载高:
  1. 除固定时延问题,TCP/IP还需主机CPU多次参与协议栈内存拷贝。网络规模越大,网络带宽越高, CPU在收发数据时的调度负担越大,导致CPU持续高负载。
  2. 按照业界测算数据:每传输1bit数据需要耗费1Hz的CPU资源;当网络带宽达到25G以上(满载),绝大多数服务器,至少50% CPU资源将不得不用来传输数据。

传统TCP/IP网络面对新业务时候自身瓶颈被无限放大,导致CPU资源被无限消耗,难道就没有技术能解决这个问题吗?有没有可以解放CPU资源,又能兼顾网络的实现方案呢?

2 RoCE技术适时而生

RoCE(RDMA over Converged Ethernet)是一种允许通过以太网使用远程直接内存访问(RDMA)的网络协议。

传统TCP/IP技术在数据包处理过程中,需要首先经过软件应用和操作系统的处理,需要占用大量的服务器资源和内存总线带宽资源,这一过程中存在多次数据拷贝、中断处理以及处理复杂的TCP/IP协议处理等问题,从而无可避免地就会带来网络时延过大的结果。

RDMA(Remote Direct Memory Access)技术全称“远程直接内存访问”,是为了解决网络传输中服务器端数据处理的延迟而产生的技术,该技术支持将用户应用中的数据直接传入服务器存储区,通过网络将数据从一个系统快速传输至远程系统的存储中。

(图:TCP/IP和RDMA协议栈处理流程对比)

RDMA技术实现了在网络传输过程中两个节点之间数据缓冲区数据的直接传递,在本节点可以直接将数据通过网络传送到远程节点的内存中,绕过操作系统内的多次内存拷贝,相比于传统的网络传输,RDMA无需操作系统和TCP/IP协议栈的介入,可以轻易的实现超低延时的数据处理、超高I/O吞吐量的传输,基本不需要远程节点CPU等资源的介入,不必因为数据的处理和迁移耗费过多的资源

RDMA技术最早出现在Infiniband网络,用于HPC高性能计算集群的互联。传统的基于Socket套接字(TCP/IP协议栈)的网络通信,需要经过操作系统软件协议栈,数据在系统DRAM、处理器Cache和网卡Buffer之间来回拷贝搬移,因此占用了大量的CPU计算资源和内存总线带宽,也加大了网络延时。

(图:RDMA协议的技术优势)

**举个栗子:**40Gbps的TCP/IP流能耗尽主流服务器的所有CPU资源,RDMA技术则很好地解决了传统TCP/IP通信的技术痛点。在40Gbps场景下,采用RDMA技术的服务器,CPU占用率会从100%下降到5%,网络延时从ms级降低到10μs以下,极端场景下甚至会更多,所以RDMA技术带来的优势是显而易见的,同时RDMA技术又可以在数据中心几乎所有业务流量场景都可以采用,比如应用到应用、计算到计算、计算到存储和存储到存储四类场景,并且对于数据中心数据读取效率的提升也是显而易见的。

(图:RDMA技术在四类场景流量模拟)

现阶段,RDMA网络技术主要为Infiniband、RoCE和iWARP。

1 Infiniband网络主要出现在HPC高性能计算场景,因为其自身技术特点的因素,该技术采用的一切都是专用的,包括应用程序、编程接口、网络协议、网卡、网络设备和硬件接口形式乃至管理软件都是专用的。

2 iWARP基于TCP/IP协议的RDMA技术,由IETF标准定义发布,本文受制于篇幅所限,重点介绍RoCE技术。

3 RoCE技术基于以太网的RDMA技术,Emulex联合IBTA(InfiniBand Trade Association, InfiniBand行业协会)共同宣布推出,发展至今已经发布两个版本,最新RoCEv2版本,将IB的GRH(Global Routing Header)换成UDP Header + IP Header。 RoCE v2工作在UDP之上,采用UDP 4791端口进行传输,支持路由,所以有时又会称为可路由的RoCE,简称RRoCE。

(图:主流RDMA技术演化与对比)

出现新的RDMA技术后,如何实现在以太网上运行的呢?

3 RoCE:RDMA技术在以太网落地生根

RDMA的提出之初是被承载于无损的InfiniBand网络中,Infiniband网络提供完善的丢包重传机制,对于InfiniBand架构,接收端仅可接收有序报文,如果有丢包发生,会引起流中断;当有丢包发生时, 接收端会发送带有PSN (packet sequence number报文序列号) 的NACK (not ACK否认字符) 控制报文到发送端,来重传丢失报文及后续报文。

图1:基于InfiniBand的重传机制

但是当RDMA技术应用在以太网中时候,以太网本质是“尽力而为”的网络,因为以太网缺乏完善的丢包保护机制,对于丢包异常敏感,超过0.1%(千分之一)的丢包率将导致网络有效吞吐急剧下降至75%;而1%的丢包则使得网络有效吞吐率几乎下降为0;所以要使得RDMA吞吐不受影响,丢包率最好保证在万分之一(0.1‰)甚至是十万分之一(0.01‰)以下,即最好无丢包。

图2:传统以太网缺少完善的丢包保护机制

而原生以太网的设计理念是“尽力而为”的网络,并不是无损网络,因此无损以太网络则需要PFC基于优先级的流量控制(Priority-based Flow Control,IEEE802.1Qbb)、ECN显示拥塞通知(Ethernet Congestion Notification,IEEE802.1Qau)、DCBX数据中心桥能力交换协议(Data Center Bridging Exchange Protocol,IEEE802.1Qaz)和ETS增强传输选择(Enhanced Transmission Selection,IEEE802.1Qaz)四个技术配合完成,其中以太网层主要是PFC、ETS、DCBX;IP层主要是ECN;IB传输层主要是ECN,业务处理流程大致如下:

图3:RDMA无损以太网计算场景技术全景图

构建无损以太网,必须支持以下关键特性:

  • **数据缓冲区管理和监控:**根据流量特点调整端口、队列能够使用的缓冲区大小,并通过命令行方式或gRPC上报缓冲区使用情况。数据缓冲区大小调整请根据需要在专业人士指导下进行,数据缓冲区监控建议配置。
  • **(必选)PFC(Priority-based Flow Control,基于优先级的流量控制):**逐跳提供基于优先级的流量控制,能够实现在以太网链路上运行多种类型的流量而互不影响。
  • **(必选)ECN(Explicit Congestion Notification,显示拥塞通知):**设备发生拥塞时,通过对报文IP头中ECN域的标识,由接收端向发送端发出降低发送速率的CNP(Congestion Notification Packet,拥塞通知报文),实现端到端的拥塞管理,减缓拥塞扩散恶化。
  • **(建议)DCBX(Data Center Bridging Exchange Protocol,数据中心桥能力交换协议):**使用LLDP自动协商DCB能力参数,包括PFC和ETS等。一般用在接入交换机连接服务器的端口,与服务器网卡进行能力协商。
  • **(可选)ETS(Enhanced Transmission Selection,增强传输选择):**将流量按服务类型分组,在提供不同流量的最小带宽保证的同时提高链路利用率,保证重要流量的带宽百分比。需要逐跳提供。

其中PFC和ECN是其中两个必选技术,一般情况推荐使用。虽然PFC是二层技术,ECN是网络层和传输层技术,但是PFC与ECN能够同时使能,并且推荐在RoCE环境中同时使能,以保证RoCE报文无丢包并且网络带宽得到保证。从充分发挥网络高性能转发角度,一般建议通过调整ECN和PFC的buffer水线,让ECN快于PFC触发,即网络还是持续全速进行数据转发,让服务器主动降低发包速率。若还不能解决问题,再通过PFC让上游交换机暂停报文发送,虽然整网吞吐性能降低,但是不会产生丢包,两大技术相互配合以期最终实现网络无损。

4 参考文献

1 智能联接丨AD-DC SeerFabric智能无损数据中心网络(一)

https://zhuanlan.zhihu.com/p/396579324

2 智能联接丨AD-DC SeerFabric智能无损数据中心网络(二)RoCE技术

https://zhuanlan.zhihu.com/p/399051879

3 智能联接丨AD-DC SeerFabric智能无损数据中心网络(三)

https://zhuanlan.zhihu.com/p/401776533

(二)RoCE技术

https://zhuanlan.zhihu.com/p/399051879

3 智能联接丨AD-DC SeerFabric智能无损数据中心网络(三)

https://zhuanlan.zhihu.com/p/401776533

数据中心网络如何发展成为无损数据中心网络?相关推荐

  1. 大数据之-入门_Hadoop发展历史---大数据之hadoop工作笔记0009

    然后我们看一下hadoop的发展历史. 可以看到人家doug cutting用了,2年的业余时间去根据Google的论文来写出了DFS和MapReduce很厉害啊...厉害... 技术交流QQ群[JA ...

  2. 熠智科技CTO汤载阳:筑牢隐私计算基础底座,打通数据要素流通的任督二脉 | 数据猿专访...

    数据智能产业创新服务媒体 --聚焦数智 · 改变商业 2020年4月,中共中央.国务院正式发布<关于构建更加完善的数据要素市场化配置体制机制的意见>,将数据与土地.资本.劳动力并列为关键生 ...

  3. 我国网络营销发展的现状、障碍与对策

    网络营销21世纪企业营销的主流 网络营销(On-lineMarketing或Cybermarketing )全称是网络直复营销,属于直复营销的一种形式,是企业营销实践与现代信息通讯技术.计算机网络技术 ...

  4. “三步走”构建全链路数据能力,助力企业全面唤醒数据价值

    01 企业数字化转型加速前进,数据价值唤醒仍面临多重挑战 数字经济蓬勃发展时代,数据已成为关键生产要素.随着国家政策对数据要素价值释放的方向引领,数据赋能企业经营决策.业务模式创新的需求不断强化,以及 ...

  5. 旅游景区IP网络广播方案-旅游风景区景点IP网络广播建设指南

    旅游景区IP网络广播系统方案-旅游风景区景点IP网络广播建设指南 北京海特伟业科技有限公司于2022年6月7日原创发布 文/任洪卓 一.旅游景区IP网络广播系统用户需求 为给游客创造天人合一的意境,使 ...

  6. 旅游景区IP网络广播系统方案-旅游风景区景点IP网络广播建设指南

    旅游景区IP网络广播系统方案-旅游风景区景点IP网络广播建设指南 北京海特伟业科技有限公司于2022年7月5日原创发布 文/任洪卓 一.旅游景区IP网络广播系统用户需求 为给游客创造天人合一的意境,使 ...

  7. 数据中心架构和发展分析

    导读 随着5G.AI和IoT等各类信息新技术的发展,对数据中心的需求越来越强烈.传统的数据中心五层架构需要更多的集成优化,以更好满足各类应用的算力需求.未来数据中心的发展方向将不再局限于云数据中心,边 ...

  8. 数据中心液冷技术发展分析

    电力信息与通信技术,中国知网 | 来源 数据中心液冷技术发展分析 | 题目 王艳松1,张琦2,孙聪3,庄泽岩2,黄子轩2,翟天一4 | 作者 1国网北京市电力公司,2华为技术有限公司,3中国信息通信研 ...

  9. 四部门发文!坚决避免数据中心盲目无序发展

    国家发展改革委.工信部等四部门日前印发文件,推动数据中心和5G等新型基础设施绿色高质量发展,优化数据中心建设布局,并要求各地加强统筹指导力度,坚决避免数据中心盲目无序发展. 数据中心作为支撑未来经济社 ...

最新文章

  1. 利用委托和泛型实现树的常用操作
  2. 安装nginx1.8
  3. Linux权限管理 - 特殊权限之文件特殊权限
  4. html viewer.app,HTML Viewer studio classroom
  5. art-template入门(九)之API
  6. android.os.BinderProxy cannot be cast to
  7. 论文浅尝 | 利用开放域触发器知识改进事件检测
  8. Java多层翻页网络爬虫实战(以搜房网为例)
  9. Spring的xml文件配置方式实现AOP
  10. 安装搭配VUE使用的UI框架ElementUI
  11. kali linux嗅探图片_kali linux 密码嗅探工具 Dsniff 详解
  12. 教你们一招免300元直接认证小程序的办法
  13. viper4Android md风格,ViPER4Android音效驱动
  14. es中单机部署状态为Yellow解决办法
  15. 手把手系列之三十——手把手教你做番薯小煎饼
  16. 强化学习笔记(2)深度学习tensorflow2.5以上版本环境安装
  17. 异步处理,Event Souring,事务补偿,实现最终一致性和服务的弹性和批处理
  18. DOSBox+MASM搭建汇编环境
  19. h5应用 vue 钉钉_钉钉企业内部H5微应用开发
  20. Linux学习(Kali为蓝本)

热门文章

  1. Matlab中cell2mat,num2cell用法
  2. CMD命令下图片马生成命令
  3. oracle新建数据库并新建用户
  4. 自变量是分类变量的线性拟合+哑变量
  5. 消除恼人的SD卡去不掉的写保护提示
  6. 学习盘口语言--转载
  7. MySQL数据库使用触发器自动生成UUID
  8. 垃圾回收日志与算法深度解读
  9. 神州数码防火墙与路由器之间配置IPSec
  10. 封装一个函数,山峰 高度不固定、纸张厚度不固定,计算折叠几次后超过山峰