【网络】为什么巨型帧会影响延迟?|网络的带宽,吞吐量,时延的理解|MTU
为什么巨型帧会影响延迟?
以下是巨型帧可能会影响延迟的一些方面:
-
9kB巨型帧的大小是最大标准以太网帧(1500字节)的6倍。因此,在相同的误码率下,超长帧发生错误的几率高6倍,并且当发生错误时,必须重传整个大6倍的帧。
-
针对以太网帧检查序列(FCS)中为CRC32算法选择的多项式,是针对最大1500字节的帧大小进行了调整的。对于较大的帧,它的效果较差,但是(使用)巨型帧的人们并没有改变多项式。因此,巨型帧中的位错误更有可能在MAC层上未被检测到,而必须稍后在更高的层(对于UDP / IP的情况下可能是应用层)被检测到,这导致被要求重传之前的等待时间更长。
-
如果对延迟敏感的数据包在 full-size帧之后排队等待访问介质,那么如果full-size是9kB巨型帧而不是标准的1500字节,则等待访问介质所需的时间是原来的6倍。
-
如果对延迟敏感的协议使用巨型帧以提高带宽效率,那么在发送到线路之前构造帧,填帧的第一个字节到帧的最后一个字节的时间大大加长。
举一个极端的例子,某些高效的语音编解码器可以使用2kbps的比特率,因此单个9k帧可能需要大约36秒的语音。试想一下,在VoIP通话中有36秒的延迟。当然,正如您所指出的那样,以这种方式设计对延迟敏感的协议实在是太愚蠢了,以至于无法提及。尽管如此,使用巨型帧仍可能会损害延迟。
另请注意,路径MTU发现是IP层的内容,因此它不是特定于TCP的(so it is not TCP-specific)。因此基于UDP的协议可以从“路径MTU发现”中“受益”。还要注意,您不必执行PMTUD即可知道本地链接的MTU,因此,如果您的发送主机位于巨型帧以太网上,即使不执行PMTUD,它的MTU也将设置为(最多)9000字节。 。关于您写问题的方式的某些事使我认为您可能不知道这一点。
P.S.是的,因为FCS位于末尾并且是在整个帧中计算的,所以在进行进一步处理之前需要完全接收帧。此外,以太网中没有错误更正,只有检测。(there is no error correction in Ethernet, only detection.)
https://superuser.com/questions/715590/why-do-jumbo-frames-hurt-latency
带宽,吞吐量,时延的理解
带宽指的是网络设备支持的最高速度
https://zhuanlan.zhihu.com/p/82002106
时延指的是延迟
带宽的提高改变的是发送时延,传播时延使用的介质相同不会发生改变。