随着现代数据中心的不断扩张,网络拓扑和路由转发变得越来越复杂。传统数据中心采用大型机和小型机,网络规模较小。普通的机箱交换机就可以满足网络的要求。随着CLOS集群架构的普及,标准的x86服务器集群以低成本、高扩展性逐渐取代大型机和小型机,成为数据中心的主流。下图是典型的基于CLOS架构的数据中心解决方案。在如此大规模的网络中,如何使数据以最快的速度从发送方传输到接收方成为网络性能优化的关键。因素。在京东IT资源服务部举办的未来数据中心核心技术研讨会上,京东人工智能、大数据、云计算团队的多位研发总监和关键技术人员就网络对应用性能的影响进行了深入探讨。网络影响应用性能的一个原因是处理器的性能越来越高,应用与应用之间的点对点延迟越来越低。例如,在高性能计算和AI应用中使用的MPI协议中,点对点传输的延迟可以小于1微秒(1us),但现在大多数交换机的单跳延迟都超过了3微秒。从上面的拓扑图可以看出,同一个数据中心需要经过5跳(从RackToR到RowSpine,再到DataCenterSpine,再到RowSpine,再到RackToR),这需要15微秒的延迟.1微秒与15微秒相比,应用运行过程中90%以上的时间消耗在网络上。这种情况不包括网络丢包引起的重传。如何降低网络对应用性能的影响1、采用高性能交换机如果交换机的性能可以从3微秒降低到0.3微秒,那么整个网络的延迟将降低到原来的十分之一原来的。2、使用高性能稳定的开关。部分交换机转发性能不稳定。在不同数据包大小的情况下,会有不同的转发性能。在小数据包的情况下,延迟可能很低,而在大数据包的情况下,延迟可能会显着增加,从而导致不可预测的网络性能。一些交换机的转发性能不随数据包大小的变化而波动,保持低时延状态。3、避免多对一沟通的不公平现象。如果出现这种不公平的现象,就会导致网络转发速度参差不齐,出现先到先得的现象。4.建立快速的网络拥塞控制机制在大规模网络中,拥塞是不可避免的。如何有效地管理拥塞,减少拥塞造成的丢包和重传,是网络管理中一个非常重要的技术难点。5、慢速数据传输策略优于丢包重传。在网络中,慢速传输和丢包重传是解决拥塞的两种方式。实践证明,慢速传输比丢包重传效率更高。可以有效解决拥堵问题。网络拥塞的管理和控制通过研讨会的讨论,我们可以发现应用的属性决定了网络中的通信方式,例如存储应用中的多个发起者访问单个或多个目标,MPI应用中的多对多通信,机器学习中的worker和parameterserver通信,CDN中的一对多通信等。当出现多对一的情况时,为了减少丢包带来的重传,我们需要采取措施减少发送端的速度降低了switchbuffer的压力。在网络拥塞管控方面,业界通常采用PFC(PrioritybasedFlowControl)和ECN(ExplicitCongestionNotification)来实现。1、PFC是在交换机的入端口发起的拥塞管理机制。在没有拥塞的情况下,交换机的入口缓冲区不需要存储数据。当交换机出端口的缓冲区达到一定阈值时,交换机的入口缓冲区开始累积。当入口缓冲区达到我们设置的阈值时,交换机的入口开始主动强制其上层端口减速。由于PFC是基于优先级的控制,这种背压会导致具有相同优先级的应用程序受到影响。2、ECN是在交换机的出端口发起的拥塞控制机制。当交换机的出口缓冲区达到设定的阈值时,交换机将改变包头中的ECN位,为数据打上ECN标签。当带有ECN标签的数据到达接收端后,接收端会生成一个CNP(CongestionNotificationPacket)发送给发送端。CNP中包含引起拥塞的流或QP信息。接收端收到CNP后,会采取措施降低发送速度。可以看出ECN是一种基于TCP流或者RDMAQP的拥塞控制机制。它只对造成拥塞的流或QP起作用,不会影响其他应用。京东IT资源服务部硬件系统部技术总监王中平提出,在网络拥塞管理上,PFC和ECN应该结合起来,有效实现性能和可操作性的平衡。在具体实施过程中,可以参考以下建议:京东IT资源服务部负责人陆柯表示:“如何降低网络对应用性能的影响是一个非常复杂的问题,也是一个非常复杂的问题。”也是所有数据中心管理者一直试图解决的问题。最好的方式是我们的网络人员和应用人员共同探讨应用对网络的需求,我们专业的技术团队会根据需求进行测试,选择最合适的网络产品和解决方案。”
