提高带宽利用率!为什么要Pacing?

文章探讨了互联网协议的历史,特别是TCP的拥塞控制机制,如AIMD、慢启动等,强调公平性而非效率。随着HTTP多连接带来的问题,提高单条TCP连接的带宽利用率成为关键。引入Pacing技术,旨在实现最大化的综合效用,即在充分利用带宽的同时降低代价。通过分析突发和泊松到达的情况,说明100%利用率的神话不可达成,并解释了Pacing如何工作以及面临的挑战,如带宽测量滞后和TCP实现的复杂性。文章指出,现代TCP如BBR采用Pacing来平衡带宽利用和延迟。
摘要由CSDN通过智能技术生成

1986年的TCP拥塞崩溃事件让AIMD模型在1988年后出来应对时局,从此以后互联网协议的设计者和实现者聚焦于如何让网络不拥塞。

毫无疑问,这里最重要的是公平性,而非效率。不管是慢启动,加性增窗,乘性减窗,还是后来的Vegas算法的主动退让,其目标都在于保证多条流经过共享链路时能公平共享带宽。这种机制的目标不是让单条流跑得更快。

换句话说,1988年的模型是不患寡而患不均的模型。其中的 “不患寡” 给很多人带来了误解。

事情在2010年前后悄悄地起了变化。

AIMD模型的目标是不患寡,而患不均,这注定单条TCP的带宽利用率极低,因此HTTP协议一般会采用多条TCP流捆绑的方式来传输Web服务器的数据以增加带宽,然而多TCP连接意味着连接管理的开销会增大,同时数据同步的开销也会增加,这导致了人们倾向于使用单独的连接来完成所有的事情。

然而,又是一个然而,TCP固有的队头拥塞问题导致单独的TCP连接无法很好的进行HTTP流的多路复用,这个难题促进了Google对QUIC协议的设计和发布,同时,QUIC的一些显而易见的优势点也逐步的回移进了TCP(如果可能的话)。

不管怎样,如今确实是倾向于减少TCP连接数量,这便弱化了公平性的约束,如今,提高单条连接的带宽利用率,成了迫在眉睫的硬需求。

如何度量带宽利用率?

我倾向于用一种 综合的效用 来度量,而不仅仅是 把带宽跑满, 倘若如此,一个包发十遍肯定能把带宽跑满,然而此时的利用率高吗?

我倾向于把代价也算进去,最终,我们需要,在带宽尽可能大的同时,保证代价尽可能小。

设G GG为收益ÿ

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值