电子工程专辑
UBM China

10Gbps交换结构接口标准的比较与选择

上网日期: 2003年05月31日 ?? 作者: Phil Brown ?? 我来评论 字号:放大 | 缩小 分享到:sina weibo tencent weibo tencent weibo


打开微信“扫一扫”,打开网页后点击屏幕右上角分享按钮

1.扫描左侧二维码
2.点击右上角的分享按钮
3.选择分享给朋友

关键字:switch abric? interface? flow control? datapath?

网络处理论坛(NPF)最近发布的NPSI流接口规范有效综合了SPI-4.2和CSIX-L1这两个现有的10Gbps标准,并弥补了其中制约交换结构性能和互操作性能的不足。该接口能满足10Gbps以上的数据传输速率要求,并保证良好的信号完整性、流量控制和组播功能。本文将对这些接口进行比较,以便在系统设计中正确选择合适的接口标准。

对10 Gbps高服务品质、非阻塞交换结构的分析通常都集中在内部网络架构的问题上,如调度算法、排队机制、故障恢复方法和系统级拓扑等。随着交换结构的性能继续提高,通常交换结构与传输信息源之间的接口所存在的关键瓶颈被忽视。该接口必须高效地将信息以10Gbps以上的速率进行传输并保证良好的信号完整性,同时还要简化PCB的设计,并支持交换结构的一些重要特性,如单目的地流量控制和高效组播。NPF最近发布的NPSI规范有望满足这些要求。

交换结构的性能要求

图1是一个典型交换结构的框图。在该图中,交换结构接口表示为一条红线。为了避免成为系统性能的瓶颈,交换结构接口必须满足三个关键的要求。其中包括:

a. 数据通路吞吐率


通常,交换结构端口采用一个熟知的数据传输速率,如10Gbps和OC-48等。但是,结构接口提供的吞吐率必须至少超出该速率30%~60%。额外开销的来源主要有两种:网络接口报头、报尾和用于带内线卡间的包处理器开销,其中报头和报尾是纯额外开销,而数据包处理器额外开销则被交换结构看作传输信息。两种额外开销总共可以达到14个字节或更大,与容量为40字节的最小IP数据包相比,其所占比例很大。此外,为保证每个帧的宽度相同,有些接口还具有填充字节形式的额外开销,这些填充字节可能要求额外增加20%的吞吐率来进行补偿。所有这些额外开销加在一起,使10Gbps结构端口吞吐率至少应达到16Gbps。

b. 流量控制吞吐率


在拥塞时可能会导致结构缓冲器填满,需要通过结构接口传输流量控制消息来阻止信息传向发生拥塞的目的地。在大型结构中,流量控制信息可能相当多。如果流量控制信息与正常的单播信息或组播信息共用同样的数据通路,那么流量控制消息可能会充斥数据通路,使吞吐率显著降低。因此,一个设计良好的结构接口应该在高度拥塞的情况下,维持流量控制吞吐率同时又不降低数据通路的吞吐率。

c. 流量控制粒度图1:一个典型交换结构的方框图。图中接口显示为红色。


今天的高性能交换结构可以有数千个可能的传输目的地,由一个{端口,子端口(端口的逻辑划分),服务类别}元组(tuple)进行标识。为了防止行头(HOL)阻塞,每个目的终端必须在结构内进行独立管理,如果一个目的终端发生拥塞,结构将向信息源发送一个流量控制消息。流量控制消息越不具体,与发生拥塞的数据流一起被阻断而受到影响的数据流就会越多。为了避免影响无关的传输数据流,结构接口的流量控制协议必须既能缩小到细粒度又能扩大到数千个可能的目的对象。流量控制延迟也可能与粒度有关,高延迟增大了发送较低粒度消息以阻断拥塞数据流的可能性,这更容易影响无关的传输数据流。

前面已经论述了交换结构接口所需的主要性能,下面来考察一下NPSI、SPI-4.2和CSIX-L1满足这些性能要求的情况。

数据通路吞吐率

交换结构接口对数据通路吞吐率的要求可以通过多种方法来实现,一组相对较宽的单端总线是最为直接的实现方式。然而,对于一个10Gbps(实际为16Gbps)的结构接口来说,数据通路将会非常宽,而传输速度仍然不够快,因为单端接口采用标准的I/O技术。

图2c所示为CSIX-L1能够实现的最窄的10Gbps数据通路,每个方向6?位(不计电源、地和一些带外控制信号)。为了实现16Gbps的吞吐率,6?位数据通路的时钟必须为250 MHz。CSIX-L1中规定的HSTL2信号支持该时钟速率,但是,对这种高带宽、高速率的单端设计进行PCB布线将面临极大的挑战,还会引起信号完整性问题。而且,CSIX-L1标准明确禁止在交换结构接口中使用连接器。将结构接口结构化在研制系统中是一种有效的方法,将来也有可能成为某类产品系统的标准,以简化维护和热切换操作。

NPSI和SPI-4.2(图2a与图2b)采用的方法不同,它们都采用分离时钟的LVDS信号 ,与时钟与数据流一起编码的串并转换器链路明显不同。为了实现16Gbps的数据通路吞吐率,NPSI和SPI-4.2的时钟必须为500MHz DDR,或每个LVDS信号对(1位)的速率为1Gbps。

由于采用LVDS信号的原因,数据通路的每一位为两条信号线,但即使这样,每个传输方向仍然只有32条信号线,而CSIX-L1却使用了6?条信号线。对于SPI-4.2和NPSI来说,这是一个重要的系统级设计优势。虽然时钟速率为CSIX-L1的两倍,但NPSI/SPI-4.2 LVDS方案将支持在接口中使用连接器,而且由于其差分的特点和内置的接收器端抗畸变能力,它减少了 对PCB设计更严格的要求。

NPSI和SPI-4.2采用用户可选择重复速率和持续时间的内置训练序列,来实现抗相位偏移功能。这消除了由于PCB走线长度不等所导致的相位误差,对于无论是单端总线还是差分总线的高时钟速率的并行总线而言,这是一个重要的特性。通常都有+/-1位时间的抗信号相位偏移的能力,这允许结构接口上的PCB走线长度有较大的不同。

SPI-4.2和NPSI在数据吞吐率上的主要区别在于组播操作,SPI-4.2在组播支持方面不如NPSI。SPI-4.2最初是作为一个成帧器接口而开发的,是一个点对点的应用。因此,SPI-4.2本身并没有任何的组播功能。

目前,一些商家已经开发出了专门的解决方案,它们利用有效载荷字节来创建组播帧报头。不过,严格兼容SPI-4.2的实现方案只能通过在结构接口上复制传输信息来支持组播。对于一个扇出为N的组播,必须通过SPI-4.2接口发送传输信息的N个拷贝才能实现所需的扇出,这样使结构接口带宽的利用率很低。

相反,NPSI在本质上支持组播,而且组播传输信息的流量控制是与同一服务类别的单播传输信息独立处理的。后一个特性对于高优先级的传输数据流(如视频)可能特别有用,而这些数据流可能需要发送到多个目的地。这三种接口之间的流量控制差别将在下一部分进行讨论。

流量控制吞吐率

三种交换结构接口规范在流量控制上有差别。如上图2所示,CSIX-L1没有任何带外流量控制(状态)信道,它需要将所有的流量控制信息作为数据通路的一部分在带内进行传输。如前所述,其最大缺点是数据通路带宽中相当大的一部分被流量控制信息占用。这种方法的优点是不需要单独的控制总线,但是该流量控制总线相当窄,在拥塞状况下对数据通路吞吐率的增加具有优势。

NPSI和SPI-4.2采用带外流量控制信道,它提供了独立于数据通路之外的流量控制带宽。然而,SPI-4.2在实现流量控制信道时允许两种不兼容的选择方案:LVDS可以达到满数据通路时钟速率,而LVTTL只能达到数据通路时钟速率的25%。如果选择LVTTL,对流量控制性能可能会有很大的负面影响,因为它将流量控制带宽限制在数据通路带宽的3%左右。这对于许多成帧器接口而言带宽是足够的,但是不能满足交换结构的要求。如果选择LVDS(这是NPSI标准中所要求的),可能会使流量控制带宽提高四倍。通过设置流量控制总线宽度为4位而不是SPI-4.2所允许的2位,NPSI进一步改善了这方面的性能。

SPI-4.2常常在SONET/SDH成帧器和数据包处理器之间用作10Gbps接口。从数据包处理器来看,NPSI和SPI-4.2(假设SPI-4.2用LVDS实现流量控制)之间的电气相似性允许一个两用的结构/成帧器接口,其协议可由用户选择。结构接口必须比成帧器接口速率更高,以弥补上面所述的额外开销。

在成帧器一侧,两用接口将被设置为SPI-4.2,时钟为311MHz DDR;在交换结构一侧,与该接口相同的另一个接口将被设置为NPSI,时钟为450 MHz DDR或更高,具体数值取决于数据包处理器额外开销。虽然有两个不同的协议,但数据包处理器IC设计小组现在只须提交一个唯一的物理接口即可。如果该结构接口是CSIX-L1,两用接口的好处就无法实现。

粒度与延迟

交换结构可能会产生大量的流量控制消息。消息的粒度有很多种,包括很具体的{端口,子端口,服务类别}元组、一般的{端口,子端口}和不具体的{端口}或{服务类别}等。消息的粒度越低,就会有越多“无辜”的传输信息会被流量控制,导致有用的数据通路带宽浪费。优化的接口效率需要高粒度的流量控制消息。图2:交换结构接口的比较显示了数据通路和流量控制的宽度。(c)中的CSIX-L1流量控制是带内的(数据通路的一部分)。在(a)和(b)中,NPSI和SPI-4.2的流量控制信道被标记为STAT。(点击放大图)

与此有关的一个问题是流量控制延迟。该问题有两个方面:流量控制消息发送的频率高低,以及在收到之后要多长的时间才产生作用。如果流量控制延迟较长,很可能每发送一个消息就会有许多传输数据流被阻止,因为该消息的粒度将会比较低。

NPSI和CSIX-L1都支持单目的地流量控制消息,在检测到拥塞后可立即发送这些消息。CSIX-L1支持220个可能的目的地,NPSI支持的目的地则接近216个。

除了前面讨论的流量控制吞吐率限制以外,CSIX-L1还有另外一个敏感的问题:开启流量控制(阻止传输信息)比解除流量控制更容易。CSIX-L1支持一种通配符方案,可以同时对多个端口或多种服务类别进行流量控制,这是对流量控制接口的一种高效使用。但是,采用通配符进行流量控制的端口或服务类别必须通过单独的流量控制消息来进行解除。由于解除流量控制的频率通常与开启流量控制的频率相同,CSIX-L1通配符的优势有限,并且在实际应用时具有一定的困难。

通过支持方向性流量控制的位图(bitmap),并采用一种对称方法来开启和解除流量控制,NPSI避免了该问题。当流量控制的状态发生改变时(无论消息的粒度如何),位图被更新,而且无需重复刷新,这称为“持续”流量控制。

流量控制的持续性允许对流量控制带宽进行高效的利用。在解除一个低粒度流量控制条件,如整个结构端口的流量控制时,不必重传在整个端口被阻止前已经存在的高粒度定向流量控制状态。低频率的背景(background)流量控制刷新可用来解决一个流量控制消息可能已经发出,但未被接收到或没有被正确接收到的可能性。

SPI-4.2采用一种完全不同的“日历”机制来实现按目的地的流量控制。在这种方案中,用一个“日历轮”(calendar wheel)在28个可能的SPI-4.2目的地之间旋转。当日历轮经过一个给定的目的地时,与其相有关的所有消息就会被发送出去。

SPI-4.2的日历机制有一个很大的缺点,如果一个目的地在日历轮经过后立即发生拥塞情况,那么只有在日历轮下次再旋转经过它之后传输信息源才能得到通知。这增大了平均流量控制延迟,而且也会因此而增大无关数据流受到影响的可能性。日历轮机制也使拥塞目的地难以得到更多流量控制带宽。虽然日历轮可以根据加权在某些目的地更多地等待,但是却不能预先知道在哪个目的地会发生拥塞。

本文小结:

根据对各种接口的数据通路和流量控制两个方面的比较,可以认为NPSI是10 Gbps交换结构接口的正确选择。它结合了SPI-4.2的最佳数据通路和流量控制技术,以及以结构为中心的协议CSIX-L1,其效果超过了两部分的简单相加之和。将来,网络处理论坛有可能将其注意力转向NPSI的改进,包括有效利用SPI-5的低速操作(如OC-48/2.5 Gbps)和高速操作(OC-768)。

参考文献:

1. The Streaming Interface Implementation Agreement


2. The HSTL specification is available from JEDEC at http://www.jedec.org/download/search/jesd8-6.pdf.

作者:Phil Brown


高级通信系统设计工程师


Tau Networks公司


Email:philb@taunetworks.com






我来评论 - 10Gbps交换结构接口标准的比较与选择
评论:
*? 您还能输入[0]字
分享到: 新浪微博 qq空间
验证码:
????????????????
?

关注电子工程专辑微信
扫描以下二维码或添加微信号“eet-china”

访问电子工程专辑手机网站
随时把握电子产业动态,请扫描以下二维码

?

5G网络在提供1Gbps至10Gbps吞吐量方面具有很好的前途, 并且功耗要求比今天的网络和手机都要低,同时还能为关键应用提供严格的延时性能。本期封面故事将会与您分享5G的关键技术发展,以及在4G网络上有怎样的进步。

?
?
有问题请反馈
推荐到论坛,赢取4积分X