1 线速 wire speed, wire rate, line rate
指线缆中能流过的最大帧数,是理论值。
对网络设备而言,“线速转发”意味着无延迟地处理线速收到的帧,无阻塞(Nonblocking)交换。
2 转发速率 & 吞吐量 —— pps
2.1 转发速率 Forwarding rate (based on 64-byte packets) 指基于64字节分组,在单位时间内交换机转发的数据总数。
转发速率体现了交换引擎的转发性能。RFC规定标准的以太网帧尺寸在64字节到1518字节之间,在衡量交换机包转发能力时应当采用最小尺寸的包进行评价。在以太网中,每个帧头都加上了8个字节的前导符(7个10101010八位组,1个10101011八位组),前导符的作用在于告诉监听设备数据将要到来。然后,以太网中的每个帧之间都要有帧间隙,即每发完一个帧之后要等待一段时间再发另外一个帧,在以太网标准中规定最小是12个字节,虽然帧间隙在实际应用中有可能会比12个字节要大,但是在衡量交换机包转发能力时应当采用最小值,所以,计算时取值一个包的最小值:80字节。
转发能力计算公式:
对于1个全双工1000Mbps接口达到线速时要求:转发能力=1000Mbps/((64+20)*8bit)=1.488Mpps
对于1个全双工100Mbps接口达到线速时要求:转发能力=100Mbps/((64+20)*8bit)=0.1488Mpps
对于OC-12的POS端口,一个线速端口的包转发率为1.17Mpps。
对于OC-48的POS端口,一个线速端口的包转发率为468MppS。
当交换机达到线速时包转发率Mpps(Mega packet per second)
=(1000Mbit×千兆端口数量+100Mbit×百兆端口数量+10Mbit×十兆端口数量+其它速率的端口类推累加)/((64+12+8)bytes×8bit)
=1.488Mpps×千兆端口数量+0.1488Mpps×百兆端口数量+其它速率的端口类推累加
如果交换机的该指标参数值小于此公式计算结果则说明不能够实现线速转发,是有阻塞设计。反之还必须进一步衡量其它参数。
2.2 端口吞吐量
-反映端口的分组转发能力
-常采用两个相同速率端口进行测试,与被测口的位置有关
-吞吐量是指在没有帧丢失的情况下,设备能够接受的最大速率。其测试方法是:在测试中以一定速率发送一定数量的帧,并计算待测设备传输的帧,如果发送的帧与接收的帧数量相等,那么就将发送速率提高并重新测试;如果接收帧少于发送帧则降低发送速率重新测试,直至得出最终结果。
吞吐量和转发速率是反映网络设备性能的重要指标,一般采用FDT(Full Duplex Throughput)来衡量,指64字节数据包的全双工吞吐量,该指标既包括吞吐量指标也涵盖了报文转发率指标。
2.3 满配置吞吐量
所有端口的线速转发率之和
满配置吞吐量(Mpps)
=1.488Mpps×千兆端口数量+0.1488Mpps×百兆端口数量+其它速率的端口类推累加
3 背板带宽 vs. 交换容量 —— bps
3.1 交换引擎
-实现系统数据包交换、协议分析、系统管理
-交换机的核心部分,类似于PC机的CPU+OS
-分组的交换主要通过专用的ASIC芯片实现
交换引擎的转发性能 (交换容量、转发能力)
由于交换引擎是作为模块化交换机数据包转发的核心,所以这一指标能够真实反映交换机的性能。对于固定端口交换机,交换引擎和网络接口模板是一体的,所以厂家提供的转发性能参数就是交换引擎的转发性能,这一指标是决定交换机性能的关键。支持第三层交换的设备,厂家会分别提供第二层转发速率和第三层转发速率,一般二层能力用bps,三层能力用pps,采用不同体系结构的模块化交换机,这两个参数的意义是不同的。但是,对于一般的局域网用户而言,只关心这两个指标就可以了,它是决定该系统性能的关键指标。对于大型园区网和城域网用户,讨论交换机的体系结构和第三层优化算法是有意义的。
3.2 背板带宽 backboard bandwidth
交换机的背板带宽,是交换机接口处理器或接口卡和数据总线间所能吞吐的最大数据量,它决定了各模板与交换引擎间的连接带宽的最高上限。。背板带宽标志了交换机总的数据交换能力,单位为Gbps,也叫交换带宽,一般的交换机的背板带宽从几Gbps到上百Gbps不等。一台交换机的背板带宽越高,所能处理数据的能力就越强,但同时设计成本也会越高。交换机背板是设计值,可以大于等于交换容量(此为达到线速交换机的一个标准)。厂家在设计的时候考虑了将来模块的升级,比如模块从开始的百兆升级到支持千兆、万兆,端口密度增加等。背板带宽多指模块化交换机,固定端口交换机的背板容量和交换容量大小是相等的。
背板带宽资源的利用率与交换机的内部结构息息相关。目前交换机的内部结构主要有以下几种:
一是共享内存结构,这种结构依赖中心交换引擎来提供全端口的高性能连接,由核心引擎检查每个输入包以决定路由。这种方法需要很大的内存带宽、很高的管理费用,尤其是随着交换机端口的增加,中央内存的价格会很高,因而交换机内核成为性能实现的瓶颈;
二是交叉总线结构,它可在端口间建立直接的点对点连接,这对于单点传输性能很好,但不适合多点传输;
三是混合交叉总线结构,这是一种混合交叉总线实现方式,它的设计思路是,将一体的交叉总线矩阵划分成小的交叉矩阵,中间通过一条高性能的总线连接。其优点是减少了交叉总线数,降低了成本,减少了总线争用;但连接交叉矩阵的总线成为新的性能瓶颈。
3.3 交换容量
-交换容量(最大转发带宽、吞吐量)是指系统中用户接口之间交换数据的最大能力,用户数据的交换是由交换矩阵实现的。交换机达到线速时,交换容量等于端口数×相应端口速率×2(全双工模式)
-模块化交换机的业务模块亦可实现本地交换,其交换容量是(引擎+模块)的交换容量总和
-转发带宽(forwarding bandwidth),交换矩阵(switching fabric)
存储转发模式,交换容量的大小由缓存(BUFFER)的位宽及其总线频率决定。即,交换容量=缓存位宽*缓存总线频率=96*133=12.8Gbps
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
我们购买交接机最佳性能,就是要求这款交换机做到了线性无阻塞传输。我们如何去考察一个交换机的背板带宽是否够用呢?如何去确定你买的交换机设计是否合理,存在阻塞的结构设计呢?
显然,通过估算的方法是没有用的,笔者认为应该从两个方面来考虑:
1、所有端口容量X端口数量之和的2倍应该小于背板带宽,可实现全双工无阻塞交换,证明交换机具有发挥最大数据交换性能的条件。
2、满配置吞吐量(Mbps)=满配置GE端口数×1.488Mpps,其中1个千兆端口在包长为64字节时的理论吞吐量为1.488Mpps。例如,一台最多可以提供64个千兆端口的交换机,其满配置吞吐量应达到 64×1.488Mpps = 95.2Mpps,才能够确保在所有端口均线速工作时,提供无阻塞的包交换。
如果一台交换机最多能够提供176个千兆端口,而宣称的吞吐量为不到261.8Mpps(176 x 1.488Mpps = 261.8),那么用户有理由认为该交换机采用的是有阻塞的结构设计。
一般是两者都满足的交换机才是合格的交换机。
背板相对大,吞吐量相对小的交换机,除了保留了升级扩展的能力外就是软件效率/专用芯片电路设计有问题;背板相对小。吞吐量相对大的交换机,整体性能比较高。不过背板带宽是可以相信厂家的宣传的,可吞吐量是无法相信厂家的宣传的,因为后者是个设计值,测试很困难的并且意义不是很大。
设备选型时需要注意的几个方面:
线速只能作为一个参考,绝大多数情况下端口实际速率不会达到线速;
主频高点没有坏处,但是CPU在一般业务中的实际占用率是个很重要的指标。
阅读(2752) | 评论(0) | 转发(0) |