随着现代数据中心的规模越来越大,网络拓扑和路由转发变得越来越复杂。从前的数据中心使用传统的大型机和小型机,网络规模相对小和简单,一般的机框式交换机就能满足网络的需求。

随着CLOS集群架构的普及,标准的x86服务器集群以低成本和高扩展性逐渐取代大型机和小型机而成为数据中心的主流。

下图就是一个典型的基于CLOS架构的数据中心解决方案,在这样的大规模网络中,如何能让数据在传输过程中能以最快的速度从发送端到接收端,这条通路直接影响到应用的性能。

京东IT资源服务部举办的未来数据中心核心技术研讨会上,京东人工智能,大数据,云计算团队的多位研发总监,技术骨干人员,针对网络影响应用性能的话题,展开了深入的讨论。

网络影响应用性能的一个原因,是处理器的性能越来越高,应用到应用之间,点对点延迟越来越低。

比如在高性能计算和AI应用中用到的MPI 协议,点对点传输的延迟可以小于1微秒(1us), 而现在多数交换机的单个Hop延迟超过了3微秒。

从上面那张拓扑图中可以看到,同一数据中心需要经过5个Hop(从Rack ToR 到Row Spine,到Data Center Spine, 再到Row Spine,到Rack ToR),这需要消耗15微秒的延迟。

1微秒比15微秒,在运行应用的过程中超过90%的时间消耗到了网络上,这种情形还不包括网络上有任何丢包导致的重传。

1

如何减小网络对于应用性能的影响

  • 采用高性能的交换机

如果交换机的性能能从3微秒降低到0.3微秒,这样的话,整个网络的延时会降低到原来的十分之一。

  • 采用性能高而且稳定的交换机

有的交换机转发性能不稳定,在不同的包大小情况下,会有不同的转发性能,在小包的情况下可以有低的延迟,在大包的情况下延迟会大幅增加,导致网络性能不可预测。

有的交换机转发性能可以不随着包大小的变化而波动,一直维持在低延迟的状态。

  • 避免出现多对一通讯时的不公平现象

如果出现这种不公平现象,会导致网络转发速度不均,出现先到后得的现象。

  • 建立快速的网络拥塞控制机制

在大型的网络中,拥塞是不可避免的,如何能有效的管理拥塞和降低拥塞带来的丢包和重传,是现在网络管理中非常重要的一个技术难点

  • 降速慢传数据策略优于丢包重传数据

在网络中,降速慢传和丢包重传是两种被用来解决拥塞的方式,实践证明,慢传比丢包重传更能有效的解决拥塞问题。

2

对网络拥塞的管理和控制

通过研讨会上的讨论我们可以发现,应用的属性决定了网络中的通讯方式,如存储应用中的多个initiator访问单个或多个target,MPI应用中的多对多通讯,machine learning中的worker和parameter server通讯,CDN中的一对多通讯等。

当多对一的情况发生时,为了减少丢包导致的重传,我们需要采取措施来降低发送端的速度,来减少对交换机buffer的压力。

在网络的拥塞管理和控制上,业界通常采用PFC(Priority based Flow Control)和ECN(Explicit Congestion Notification)两种方式来实现。

  • PFC 是在交换机入口(ingress port)发起的拥塞管理机制

在通常无拥塞情况下,交换机的入口buffer不需要存储数据。当交换机出口(egress port)的buffer达到一定的阈值时,交换机的入口buffer开始积累,当入口buffer达到我们设定的阈值时,交换机入口开始主动的迫使它的上级端口降速。

由于PFC是基于优先级的控制,所以这种反压可能导致同样优先级的应用受到影响。

  • ECN是在交换机出口(egress port)发起的拥塞控制机制

当交换机的出口buffer达到设定的阈值时,交换机会改变数据包头中的ECN位来给数据打上ECN标签,当带ECN标签的数据到达接收端以后,接收端会生成CNP(Congestion Notification Packet)并将它发送给发送端,CNP包含了导致拥塞的flow或QP的信息,当接收端收到CNP后,会采取措施降低发送速度。

可见ECN是基于TCP flow或RDMA QP的拥塞控制机制,它只对导致拥塞的flow或QP起作用,不会影响到其他的应用。

京东IT资源服务部的硬件系统部技术负责人王中平提出:在管理网络的拥塞中,应该综合应用PFC 和ECN 两种方式,来有效的实现性能和操作性的平衡。具体的实施过程中可参考以下推荐:

京东IT资源服务部负责人吕科说:“如何降低网络对于应用性能的影响是一个非常复杂的问题,也是所有的数据中心管理者一直在力求解决的问题。”

“最好的方式就是我们的网络人员和应用人员一起来讨论应用对于网络的需求,我们专业的技术团队会针对需求,测试和选择最合适的网络产品和网络方案。”

京东如何处理数据中心网络对于应用性能的影响相关推荐

  1. 数据中心网络性能:新应用下的新需求

    随着机器学习,大数据,云计算和NFV不断完善,数据中心网络性能也随之发展.亚马逊,谷歌,百度和腾讯等大型云服务提供商已更新提供IT服务的方式,使之功能更强大,速度更敏捷,灵活性更高.这敲响了传统运营商 ...

  2. 走进宿迁|解密开发者关心的京东云数据中心

    2019年9月7日,我们招募的第一批[开发者走进京东云数据中心]活动已圆满落幕.此次活动中,我们特邀了两位行业KOL与开发者们同行,参观的同时,与大家进行技术沟通与交流. 今天,我们特别为大家带来了吴 ...

  3. 走进宿迁,解密开发者关心的京东云数据中心

    近年来,京东云快速崛起.在市场调查公司 IDC 的<中国公有云服务市场(2019 第一季度) 跟踪>,京东云位列中国公有云 IaaS 市场第九名:在Forrester 评的 2018 年 ...

  4. NVIDIA数据中心深度学习产品性能

    NVIDIA数据中心深度学习产品性能 在现实世界的应用程序中部署AI,需要训练网络以指定的精度融合.这是测试AI系统的最佳方法-准备将其部署在现场,因为网络随后可以提供有意义的结果(例如,对视频流正确 ...

  5. 7项最佳实践助您利用媒体转换不断发展数据中心网络

    任何数据中心网络的基础都是物理层;是光纤和铜缆将用户.服务器.存储以及当前物联网时代的各种设备连接起来的.而在这些网络上不断增涨的需求,需要数据中心不断进行升级.本文中,我们将为广大读者诸君介绍7项最 ...

  6. 什么是超融合数据中心网络?

    数据中心网络连接数据中心内部通用计算.存储和高性能计算资源,服务器间的所有数据交互都要经由网络转发.当前,IT架构.计算和存储技术都在发生重大变革,驱动数据中心网络从原来的多张网络独立部署向全以太化演 ...

  7. 你真的认识 “ 数据中心网络 ” 吗?

    如果就按照你目前的认知水平,你认为数据中心应该是什么呢? 从肉眼可见的方面来说,数据中心实际上就是一个机房或者说是一组机房,在这个机房中,有着一套完整的.复杂的.大集合的系统组合.其硬件环境: 1 各 ...

  8. 2.数据中心网络演进

    1. 数据中心的主要目标 数据中心的主要目标是将服务器传输至客户端和其他服务器.为了提供数据服务而建设的,网络可以精确地定义设备的真实效率. 数据中心网络特征: 可用性:能够健全地从故障中快速恢复,或 ...

  9. 数据中心网络架构的问题与演进 — 传统路由交换技术与三层网络架构

    戳蓝字"CSDN云计算"关注我们哦! 文章目录 目录传统路由交换技术路由和交换交换技术传统的 2 层交换技术具有路由功能的 3 层交换技术具有网络服务功能的 7 层交换技术路由技术 ...

最新文章

  1. jq--ajax中止请求
  2. C语言经典例74-连接两个链表
  3. ProgressBar进度条颜色改变
  4. Android开发中手机存储路径问题
  5. 4G(LTE)是如何实现智慧农业物联网的?
  6. .net类库学习(一)System.object
  7. Java BigInteger类| xor()方法与示例
  8. .h5是什么文件_PPT转H5丨再也不用担心忘带U盘怎么办了
  9. 【翻译自mos文章】Oracle GoldenGate 怎么在源头的传输进程和目的端的server/collector进程之间分配 port?...
  10. IEnumerable,IQueryable之前世今生
  11. 爬虫程序的简单介绍(Python)
  12. 专访Wunderlist主设计师Jan Martin:永远不要盲目跟风流行趋势1
  13. 1507. 旅行计划
  14. 宾州州立大学帕克分校计算机科学,宾夕法尼亚州立大学帕克分校计算机专业好吗?...
  15. java list下标_Java list删除指定多个下标数据
  16. Butter Knife[黄油刀]配置
  17. 蓝色荧光染料Monobromobimane (mBBr) 单溴二胺71418-44-5
  18. pictureBox sizemode=zoom时图片像素坐标
  19. Python+Django电影推荐系统搭建
  20. 虚拟化、云计算与超融合的简单总结

热门文章

  1. Attention机制的总结笔记
  2. 如何基于任务的价值确定其优先级
  3. Response to preflight request doesn‘t pass access control check: No ‘Access-Control-Allow-Origin‘ he
  4. mysql索引和solr区别_Solr索引详解
  5. 政务外网部署 minio上传下载报错 javax.net.ssl.SSLException: Unrecognized SSL message, plaintext connection?
  6. Android 原生控件之一 TextView
  7. cesium切片底图正常出来但控制台一直报错的方法
  8. 记一次@Lazy问题
  9. 函数,库函数,自定义函数
  10. 【Unity3D】游戏物体操作 ① ( 场景简介 | 添加游戏物体 | 操作游戏物体 | 选中游戏物体 | 场景显示效果缩放 | 重命名游戏物体 | 复制游戏物体 | 删除游戏物体 | 移动物体 )