实现真正10G性能
发布时间:2006-10-14 7:58:01   收集提供:gaoqian
  从诞生之日起,用户就希望10G以太网在将性能提高十倍的同时,能保持与10/100/1000Mbps以太网的向后兼容性和全面的互操作性。

  在802.3ae标准中,获得十倍的性能提升并不像看起来那样简单。10/100/1000Mbps与10G以太网MAC层之间存在的一项关键差异,影响到10G以太网接口提供10Gbps的线速性能。802.3ae标准的制订者详细说明了三种解决这个问题的方式。

  10G以太网MAC内部的关键差异

  在10/100和千兆以太网中,MAC层以线性方式运行,数据串行进入和离开MAC层,所有的数据都具有嵌入在数据流内部的起始与结束控制信息(包括计时和同步信息)。10G以太网的MAC层则要复杂得多。

  为取得10Gbps的宽带速率,IEEE改变了MAC层解释信令的方式。10G以太网MAC层在解释数据时并行运行,而非生成串行流。每条传输与接收路径都由四条数据通道构成,被分割为字节的数据流以循环方式分配到编号为0到3的四条通道上。

  以太网帧具有明确定义的起始与结束边界,即分隔符。这些边界由特殊字符和一个指示数据包之间最小间隔量或空闲时间的12字节长度的包间缝隙(IPG)标记。由于10G以太网MAC层的并行本质,预测前一个数据流的结束字节落入到哪条通道中是不可能的。这使得找到起始位(保持计时和同步的必要条件)更加困难。802.3ae标准规定了一个绝妙的解决办法:“起始控制字符”,即新数据帧的每一个字节,必须对准“通道0”。但是,这个解决办法使MAC处理IPG的方法变得复杂,从而直接影响到性能。IEEE为厂商提供了以下三种解决方式。

  增加IPG的填充

  如果前一个包的结束字符落入到12字节IPG的第12个缝隙中,那么MAC层什么都不做,保持12字节的最小IPG,下一个包的起始字符自动对准“通道0”的位置A。但是,如果前一个包的结束字符落在其他位置上,MAC层必须分别向IPG添加字节,以保证下一个包的起始字符恰好对准“通道0”的位置A。这种作法导致了长度范围为12到15字节的最小IPG(最小12字节加额外的填充)。

  缩减IPG

  在向IPG填充字节、保证起始字符对准位置A后,MAC删除中间列的空闲字符。这种作法导致长度范围从8到11字节的IPG。通过删除中间列的空闲字符减少10G以太网IPG,可将10G以太网链路上的可用带宽根据包长度最多增加5%。

  平均IPG

  这种选择采用前两种方式的组合,并增加了一个亏损额空闲计数器。后者跟踪记录增加的或删除的空闲字节的数量。在某些情况下,MAC层将添加字节,在另一些情况下,删除字节。经过一段相当长时间后,最终结果将是平均的12字节最小10G以太网IPG。平均10G以太网IPG保证了10G以太网提供100%的可用宽带,使连接保持零损失线速性能。

摘自《网络通信》
 
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50