我的理解是,带宽延迟产品是指在两个端点之间的任何时间点“在途中”的最大数据量。
我没有得到的是,为什么乘以RTT的带宽。带宽是底层介质的功能,如铜线,火灾光学等,RTT是中间节点繁忙程度,中间节点应用的任何调度,距离等的函数.RTT可以改变,但实际用途的带宽可以考虑固定的。那么如何将一个恒定值(容量即带宽)乘以波动值(RTT)表示传输中的数据总量?
基于此,真的很慢会有非常大的容量吗?机会是RTT的“原因”将开始下降。
答案 0 :(得分:25)
看看单位:
[数据量] = [带宽] * [往返时间]。
单位,这是正确的。语义上,
什么是带宽*往返时间?它是在发件人收到第一个确认之前离开发件人的数据量。也就是说,带宽*往返时间=在完美条件下所需的窗口大小。
如果从最后一个数据包测量往返时间并且发送方的出站带宽完全稳定且完全使用,则测量的窗口大小精确计算传输中的数据包(数据和ACK)。如果您只想要一个方向,请将数量除以2。
由于往返时间是一个测量数量,它自然会波动(并且变得平滑)。测量的带宽也可能会波动,因此估计的传输中的数据总量也会波动。
请注意,传输中的数据量会随数据传输速率而变化。如果瓶颈是线路延迟,那么RTT可以被认为是不变的,并且传输中的数据量将与它发送到网络的速度成比例。
当然,如果往返时间突然大幅上升,估计最大值。传输中的数据量也会增加,但这是正确的。如果没有伴随的数据包丢失,滑动窗口需要扩展。如果 数据包丢失,则需要重新考虑带宽估计(并且带宽延迟产品会相应地下降)。
答案 1 :(得分:9)
为了增加Jan Dvorak的答案,您可以将“大肥管”视为花园软管。我们感兴趣的是管道中有多少水。因此,我们采用其“带宽”,即如何快速它可以输送水,软管由其横截面积决定,并乘以其长度,这对应于RTT,即如何'长'一滴水从一端到另一端。结果是软管的体积,管道的体积,管道中的数据量。
答案 2 :(得分:1)
首先,BDP是性能调整中使用的计算值,用于确定可能未完成/未确认的数据的上限。这几乎总是不代表“在途”数据的数量,而是表示应用调整参数的目标。如果它始终代表“在途”数据,那么就没有进行性能调整的空间。
实际上,RTT实际上是波动的。这就是为什么预期更糟糕的情况RTT用于计算。通过调整到更糟的情况,当RTT最差时,吞吐效率将最大。如果RTT改进,我们会更快地获得出色的Acks,管道保持满,并保持最大吞吐量(效率)。“满管”是用词不当。目标是保持Tx端满,因为Rx包含的Ack数据包通常小于传输的数据包。
RTT还聚合了不对称的上行和下行带宽(ADSL,卫星调制解调器,电缆调制解调器等)。