东山网站建设,网站开发交易平台,微信上的网站,佛山网站建设哪个HPCC#xff1a;高精度拥塞控制 文章目录 HPCC#xff1a;高精度拥塞控制摘要1 引言1.1 背景1.2 现有CC的局限性1.3 HPCC的提出 2 研究动机2.1 大型RDMA部署2.2 RDMA目标2.3 当前RDMA CC中的权衡DCQCNTIMELY 2.4 下一代高速CC 3 技术方案3.1 INT3.2 HPCC设计3.3 HPPC的参数 4…HPCC高精度拥塞控制 文章目录 HPCC高精度拥塞控制摘要1 引言1.1 背景1.2 现有CC的局限性1.3 HPCC的提出 2 研究动机2.1 大型RDMA部署2.2 RDMA目标2.3 当前RDMA CC中的权衡DCQCNTIMELY 2.4 下一代高速CC 3 技术方案3.1 INT3.2 HPCC设计3.3 HPPC的参数 4 仿真结果5 结论 摘要
TCP是最基础的网络传输层通信协议其拥塞控制算法是为Internet这种相对低速、高延迟的网络环境设计的。在新一代的高速云网络中TCP的拥塞控制算法无法充分发挥底层网络能力而现有高速网络拥塞控制算法如RDMA协议中的拥塞控制算法DCQCN、TIMELY都存在有一定的局限性。HPCC高精度拥塞控制是一种新的高速CC机制它利用网络遥测INT获得精确的链路负载信息并精确控制流量。通过解决诸如在拥塞期间延迟INT信息和对INT信息的过度反应等难题HPCC可以快速收敛以利用空闲带宽同时避免拥塞并且可以在网络队列中保持接近零的数据堆积以实现超低的延迟HPCC也更加公平且易于在硬件中部署。
1 引言
1.1 背景
在过去的十年中数据中心网络的链路速度从1Gbps增长到100Gbps而且这种增长还在继续。超低延迟和高带宽是当今和未来高速网络的两个关键要求越来越多的应用要求超低延迟和高带宽。近年来数据中心部署了大规模网络通过聚合以太网版本2RoCEv2Converged Ethernet Version 2实现RDMA远程直接内存访问作为当前的硬件卸载解决方案。但是在运行大规模RoCEv2网络多年后我们发现RDMA网络在协调低延迟、高带宽利用率和高稳定性方面面临着根本性的挑战。这是因为高速意味着流量以线路速率开始并积极攫取可用网络容量这很容易在大规模网络中造成严重拥塞。此外高吞吐量通常会导致深度数据包排队这会破坏延迟敏感流的性能以及网络处理意外拥塞的能力。
1.2 现有CC的局限性
为了解决协调延迟、带宽/利用率和稳定性的困难良好的CC设计是关键。这是因为CC是在高流量负载下避免数据包缓冲或丢失的主要机制。如果CC频繁失败像PFC或数据包重传这样的备份方法要么会带来稳定性问题要么会遭受巨大的性能损失。现有的CC如DCQCN和TIMELY有一些基本的局限性
收敛慢。对于粗粒度反馈信号如ECN或RTT当前的CC方案不知道增加或减少多少发送速率需要使用启发式来猜测速率更新并尝试迭代收敛到稳定的速率分布。这种迭代方法处理大规模拥塞事件的速度很慢。
不可避免的数据包排队。DCQCN发送方利用一位ECN标记来判断拥塞风险TIMELY发送方使用RTT的增加来检测拥塞发送方只有在队列建立后才开始降低流量这些构建的队列会显著增加网络延迟。
复杂的参数调整。当前CC算法用于调整发送速率的启发式算法有许多参数需要针对特定网络环境进行调整。例如DCQCN需要设置15个参数。
1.3 HPCC的提出
前面三个限制的根本原因是传统网络中缺少细粒度的网络负载信息。ECN是终端主机可以从交换机获得的唯一反馈RTT是一种纯端到端的测量没有交换机的参与。然而随着新的交换ASIC中提供的网络遥测INTIn-network telemetry功能在生产网络中获得细粒度网络负载信息并使用它改进CC已成为可能。
HPCC高精度拥塞控制是一种新的CC机制用于大规模高速网络。HPCC背后的关键思想是利用来自INT的精确链路负载信息来计算准确的流量更新。与通常需要大量迭代才能找到合适流速的现有方法不同HPCC在大多数情况下只需要一个流速更新步骤。使用INT提供的精确信息使HPCC能够解决当前CC方案中的三个限制。
2 研究动机
2.1 大型RDMA部署
数据中心中采用RDMA以满足分布式存储、数据库和深度学习训练框架等多个关键应用程序的超低延迟和大带宽需求。一般而言数据中心网络是一个Clos拓扑结构有三层ToR、Agg和核心交换机。PoD交付点point-of-delivery是一个基本部署单元由数十个ToR交换机组成这些交换机由多个Agg交换机互连。不同的PoD通过核心交换机互连。每台服务器都有两条上行链路与两个ToR交换机相连以根据客户的要求实现服务器的高可用性。在当前的RDMA部署中每个PoD都是一个独立的RDMA域这意味着只有同一PoD中的服务器才能使用RDMA通信。
大规模RDMA部署可能涉及成千上万的节点每个节点都在进行高速、低延迟的通信。在这种环境下拥塞控制的研究需要考虑如何适应大规模并行通信确保网络稳定性和性能。而现有的CC算法都有一定的局限性因此需要设计出更高效、更高精度的CC算法。
2.2 RDMA目标
除了超低延迟和高带宽之外网络稳定性和操作复杂性在RDMA网络中也至关重要因为RDMA网络比TCP/IP网络面临更多的风险和更严格的性能要求。
RDMA网络有四个基本目标1延迟应尽可能低2带宽利用率应尽可能高3拥堵和PFC暂停应尽可能少4操作复杂性应尽可能低。实现这四个目标将为我们的客户和我们自己提供巨大的价值我们相信实现这四个目标的关键是一个适当的CC机制。
2.3 当前RDMA CC中的权衡
DCQCN
对于DCQCN权衡方面
1、分布式控制DCQCN引入了分布式控制的思想允许数据中心网络中的交换机独立地进行拥塞检测和控制。这种分布式方法可以更好地适应大规模网络的动态性和异构性。
2、基于标记的拥塞信号DCQCN使用基于标记的拥塞信号PFC标记来传达网络拥塞状态这使得交换机能够更精确地指导终端节点的传输速率。
3、快速收敛DCQCN致力于实现快速的拥塞状态收敛以减小对网络性能的影响。
局限性
1、PF开销基于标记的拥塞信号需要使用PFCPriority Flow Control来暂停交换机上的输出队列。PFC的开销可能导致网络的低效利用尤其在面对短流时。
2、对带宽敏感DCQCN对带宽非常敏感可能导致在某些情况下过度保护并在网络中形成不均衡的流量分布。
TIMELY
对于TIMELY权衡方面
1、时延感知TIMELY引入了对网络时延的感知以便更精确地调整拥塞控制策略。通过考虑时延TIMELY可以更好地适应不同的网络环境和负载。
2、弹性多资源TIMELY考虑了多个资源的弹性调整包括带宽和排队时延。这种综合考虑可以使算法更全面地适应不同的网络条件。
3、抗噪声能力TIMELY设计了一种抗噪声的拥塞信号采样方法有助于更准确地捕捉网络拥塞状态。
局限性
1、复杂性TIMELY的设计相对较为复杂需要综合考虑多个资源的调整这可能使得实现和管理相对繁琐。
2、对时钟同步的依赖TIMELY对时钟同步要求较高需要确保网络中的时钟同步性能良好否则可能影响算法的准确性。
2.4 下一代高速CC
下一代应用于RDMA的CC或其他类型的高速网络应同时具备以下特性以显著提高应用性能和网络稳定性
1快速收敛。网络可以快速收敛到高利用率或避免拥塞。流量调整的时间应该适合特定的网络环境而不是手动配置。
2接近空队列。网络内缓冲区的队列大小保持稳定的低接近于零。
3参数很少。新的CC不应该依赖于需要操作员调整的大量参数。相反它应该适应环境和流量模式本身以便降低操作复杂性。
4公平。新的CC确保了流之间的公平性。
5易于在硬件上部署。新的CC算法非常简单可以在商品NIC硬件和商品交换机硬件上实现。
目前有两个关键趋势它们有可能实现满足上述所有要求的CC。第一个趋势是交换机在数据平面上更加开放和灵活特别是网络遥测技术INT正在迅速普及。使用INT发送方可以从ACK数据包准确地知道流路径上的链路负载这有助于发送方进行准确的流量调整。第二个趋势是NIC硬件的功能和可编程性越来越强它们有更快的速度和更多的资源来公开数据包级别的事件和处理。利用这些新的硬件特性设计并实现了HPCC同时实现了所需的CC特性。
3 技术方案
设计HPCC有两个主要挑战。首先链路拥塞会延迟数据包上承载的INT信息从而延迟流量降低以解决拥塞。HPCC旨在限制和控制繁忙链路的传输中总字节数total inflight bytes防止发送方发送额外流量及时反馈延迟。第二尽管所有ACK数据包中都包含INT信息但如果发送方盲目地对所有信息做出快速反应则可能会出现破坏性的过度反应。因此CC算法需要通过结合每次确认和每次RTT反应选择性地使用INT信息实现快速反应而无过度反应。
3.1 INT
In-band Network TelemetryINT是一种利用数据转发平面来收集、携带、整理和上报网络状态信息的技术。它不需要使用单独的控制面管理流量来进行上述信息收集而是通过在数据流中嵌入INT指令让中间转发设备收集并上报所需的数据。
INT技术利用了数据平面和转发设备的处理能力通过在数据流中嵌入INT指令让转发设备在处理数据流的同时收集网络状态信息。这些信息可以包括网络延迟、带宽利用率、丢包率等以便于网络管理员及时了解网络状况并进行相应的优化调整。 INT技术还具有以下优点
减少控制平面负载INT技术不需要使用单独的控制面管理流量进行信息收集从而减少了控制平面的负载提高了网络的性能和稳定性。
实时性INT技术可以实时收集网络状态信息并快速上报给网络管理员以便于及时发现和解决问题。
灵活性INT技术可以根据不同的需求和场景灵活地嵌入不同的INT指令以满足不同的网络监控和管理需求。
3.2 HPCC设计
HPCC是一个发送方驱动的CC框架。 如图3所示采用逐包确认即sender发送的每个数据包都会得到receiver的确认。 数据包从sender传播到receiver的过程中路径上的每个交换机都会利用其交换 ASIC 的 INT 功能插入一些元数据报告数据包出端口的当前负载包括时间戳ts、队列长度qLen、传输字节txBytes和链路带宽容量B。当receiver收到数据包时会将交换机记录的所有元数据通过ACK发送给sender。然后sender根据带有网络负载信息的 ACK 决定如何调整其流量。 HPCC是一种基于窗口的CC方案使用窗口控制infligh字节数。inflight字节数表示已发送但尚未确认的数据量。这里需要解释下为啥采用控制inflight字节数而不是控制发送速率。在没有拥塞的情况下inflight字节数和速率的关系等价于等式inflight速率×T其中T是base RTT。与纯粹基于速率的CC方案在反馈到来之前不断发送数据包相比对inflight字节数的控制可以确保inflight字节数在限制范围内使得sender在达到限制时立即停止发送无论反馈ack延迟了多长时间。 这样一来整个网络就大大稳定了。 3.3 HPPC的参数
HPCC具有三个易于设置的参数η、maxStage和。η控制带宽利用率和队列长度之间的简单权衡由于数据包随机到达造成的临时冲突。因此默认将其设置为95%仅损失5%的带宽但实现了几乎零排队。maxStage控制状态稳定性和回收可用带宽的速度之间的简单权衡。控制链路上可维持buffer接近零排队的最大并发流数与公平收敛速度之间的权衡通常设置一个非常小的 来支持链路上的大量并发流。
4 仿真结果
1、使用ns3仿真下图是HPCC、DCQCN的队列长度的CDF曲线从图中可以看出HPCC的队列长度维持在比较低的水平。 2、下图是FCT延迟和流的大小对应的图像关系从图中可以看出HPCC的FCT延迟相对于其他现有的算法而言在绝大多数的流的大小对应的情况之下都要低只有在流的大小非常大的时候才会比其他算法差一些。 5 结论
在本文中我们介绍了一种新型的高精度拥塞控制机制即HPCCHigh Precision Congestion Control它旨在解决现有高速网络中TCP拥塞控制算法的局限性。在新一代高速云网络中传统的TCP拥塞控制算法无法充分发挥底层网络能力而现有的高速网络拥塞控制算法也存在一定的局限性。
HPCC利用网络遥测INT技术获取精确的链路负载信息并通过解决在拥塞期间延迟INT信息和对INT信息的过度反应等难题实现了快速的拥塞状态收敛充分利用空闲带宽同时避免拥塞的发生。与现有的拥塞控制算法相比HPCC在网络队列中保持接近零的数据堆积从而实现了超低的延迟同时更加公平且易于在硬件中部署。 研究动机主要源于大规模RDMA部署和对RDMA网络的目标包括超低延迟、高带宽、网络稳定性和操作复杂性。分析了现有拥塞控制算法如DCQCN和TIMELY的局限性提出了HPCC的设计思想通过利用INT信息和设计新的控制机制实现了快速收敛、接近空队列、参数很少、公平、易于在硬件上部署等特性。
在仿真结果中HPCC在各项性能指标上展现出明显的优势特别是在大规模RDMA部署中其快速收敛和低延迟的特性使其成为下一代高速网络拥塞控制的有力候选。因此HPCC为满足未来高速网络的需求提供了一种创新的解决方案。