Cisco官方认为,在基于ATM DSLAM的ADSL网络中,设置IP MTU为1454要比1492更为高效。 这是为什么呢?请看原理: ATM信元是53字节定长的,其结构是5字节首部+48字节数据。 MTU为1492时,加上PPP、PPPoE和以太网帧首部,整个以太网帧的长度是1518字节。拆分到31个信元中,还余下30字节。最后还需要添加8字节的SAR(分段和重组),第32个信元的载荷还必须再充填10字节数据,才能达到48字节长度。这样就造成了带宽的浪费。 MTU为1454时,加上PPP、PPPoE和以太网帧的首部,整个以太网帧一共是1480字节。拆分为30个信元,还余下40字节。最后加上8字节的SAR,第31个信元的载荷正好是48字节,无需再充填。用金坷垃的话说,叫“零浪费,不挥发”! 但是我们需要考虑一个实际的应用问题,MTU1454的数据静荷要比MTU1492少了38字节,在实际应用中,下载相同大小的数据,肯定会多传一些包,这也造成了网络的额外开销。通过“理想的计算”我们得到: MTU为1492时,TCP/IP应用的每包开销为244字节(18Eth+2PPP+6PPPoE+20IP+20TCP+160ATM+8SAR+10充填),其以太网帧长度为1518字节,数据静荷为1452字节,载荷开销比为5.95:1。 MTU为1454时,TCP/IP应用的每包开销为229字节(18Eth+2PPP+6PPPoE+20IP+20TCP+155ATM+8SAR),其以太网帧长度为1480字节,数据静荷为1414字节,载荷开销比为6.17:1(越大越好)。 在网络上传输2053128字节(约合2MB)有效数据(即不计算开销),MTU为1492时,总开销为345016字节;MTU为1454时,总开销为332966字节;二者开销差值为12050字节。 也就是说,在网络上传输2MB大小的有效数据,使用MTU1454实际能比MTU1492减少约12KB的额外开销。 实际上,如果你不去优化操作系统的TCP/IP设置,使用MTU1454还会带来更大的开销。(TCP会增加额外的选项) 总结一下,提高下载速度还需要增加带宽,这些小技巧是没啥作用的! 另:关于如何在Windows系统下控制TCP首部中的窗口缩放和时间戳选项,请看笔者的另一篇文章: http://blog.csdn.net/robur/archive/2009/12/01/4909813.aspx |
|