千兆路由交换机技术对第三层数据包的处理,笔者坚持每天写一写笔记。把自己的心得体会记录下来,把更多的时间投入到自己的事业中来。千兆路由交换机技术,路由交换机的定义 传统意义上,只处理第二层数据转发的设备被称之为交换机,交换机只根据数据包中的目的和源MAC地址进行处理和转发,而不涉及第三层的数据包中的内容。
如进行以太网,FDDI,令牌杯交换的局域网千兆路由交换机技术。第三层的数据包的转发由路由器来完成,对于IP协议来说,路由器检查第三层数据包的目的和源IP地址,然后作出相应的处理或转发。在90年代中期以前,由于硬件芯片技术的限制,路由器和交换机是两个独立的网络设备。
路由器的内部系统结构很象一台专用计算机,有一个主CPU,如486或MIPS,有内存,在CPU上运行软件来进行包的转发和路由的计算及更新。所以路由器的性能比较差,往往成为一个网络的瓶颈。
为了解决基于软件的路由器在性能上的缺陷,在新的ASIC芯片技术的推动下,交换机中用来处理第二层数据包的芯片功能增强到能够进行第三层数据包的处理,这种具有路由功能的千兆路由交换机技术被称为路由交换机。
路由交换机的背板及其实现方式 背板是交换机的中央交换部件,用于千兆路由交换机技术的各个端口之间传送数据。背板的结构和容量决定了一个路由交换机的性能。现在的路由交换机背板主要有三种结构:交叉矩阵(Cross Bar);共享内存;并行访问共享内存。
下面分别详细论述。 2.2.1交叉矩阵(Cross Bar) 这种结构容易设计,扩展性好,并且在其基本形式中可以提供较低的每端口成本。然而,它有几个关键的局限性。 交叉矩阵结构的3个主要的局限和其对网络的影响如表1所述。表1
千兆以太网和千兆路由交换机技术
静态内存他和队头阻塞的问题的共同影响使其难以在逐端口的基础上转发基于优先级的业务。所以交叉矩阵结构提供可靠的QoS支持的能力有限,这与整个IP网络提高QoS能力的要求不符。 2.2.2共享内存 传统的共享内存结构是基于总线的。
这种结构克服了交叉矩阵背板的局限性,并且它们在背板容量小于10GbPS的交换机中十分普遍。在一个共享内存总线结构中,所有的端口通过一个共享总统访问中央内存。采用仲裁机制来控制端口访问共享端口。这消除了交叉矩阵千兆路由交换机技术具有的基于端口的静态内存分配和队头阻塞的问题并以一种高效的方式使用系统内存。
共享内存的问题是,构造一个快的足以提供无阻塞的速度超过20Gbps性能的仲裁机构现在很难作到。例如:现在的芯片,技术的数据总线一般是64位,总统的时钟频率(并非芯片的内部时钟频率)为 100MHz,这样的系统背板性能可达到64×100MHz=6.4GbPs,按双向计算,系统背板性能为12.8GbPS。
因此,受限于现在的内存促裁机制芯片,共享内存体系的扩展性比较差。 2.2.3并行访问共享内存 并行访问共享内存是一种共享内存结构设计:所有端口共享一个中央内存空间。
然而,不象传统的基于总统的共享内存结构,并行访问共享内存为每个模块上的每个端口提供一个专用的可同时写入中央内存机构和从中读出的机制,这种机制无需要总线仲裁设备。#p#
并行访问共享内存能够保证在所有端口上同时实现完全的线速性能。并行共享内存解决了基于总线的共享内存的扩展性问题,它的每一个模块到中央内存的存取速度都可以达到10GbPS以上,而整个中央内存可以容许超过30路的同时访问,这样一个系统的背板容量可以扩展到300GbPs以上。
同时并行访问共享内存也没有引人交叉矩阵背板带来的队头阻塞等问题。 2.3千兆路由交换机技术的第三层包转发机制(胸中式与分布式) 每个厂商的路由交换机的实现机制不同,在路由功能的实现上,主要有集中式和分布式两种机制。下面进行详细论述。
集中式第三层包转发 集中式第三层包转发是指在交换机中有一个专门的硬件模块(路由模块)来对全交换机的第三层包进行转发。交换机的每个接口模块如千兆路由交换机技术同交换模块,都不具备第三层的处理功能,需要把第三层的数据包从背饭送往路由模块来查询路由并转发。
严格的讲,这种结构的交换机更准确的名称是第三层交换机,而不是千兆路由交换机技术。 集中式第三层包转发是早期的技术,它的缺点在于整个交换机的路由性能受限于其路由模块的能力。
另外,当一个IP包要进行路由时,它经常要从一个以太网接口模块通过背板总线送往路由模块,在路由模块处理后,又经背板总统送往同一以太网接口模块,这样一种数据包传送方式浪费了背板总规处理能力。
并且路由模块的故障会导致整个交换机内的路由功能的失效。 实际中很多厂商交换机中的路由模块就是一个以插卡形式集成在交换机内的软件路由器。因此在各厂商的产品中,采用集中式包转发的千兆路由交换机技术的路由能力一般可达到15Mpps。
分布式第三层包转发 随着ASIC芯片技术的发展,具有路由功能的模块被集成到一块芯片上,于是厂商将路由芯片设计到了路由交换机中的每一个接口模块上,这种技术就被称为分布式第三层包转发。它不需要一个专门的模块来为整个机箱服务做包的转发,第三层的包转发可以由每个接口模块上的路由芯片独立完成。
分布式第三层包转发突破了集中式第三层包转发的性能瓶颈,但它的路由控制机制比集中式要复杂,它需要在每一个端口保留路由表信息以进行快速的包转发。尽管在技术上更复杂,由于在性能上远远超出集中式,分布式第三层包转发技术已经成为了现在路由交换机的主流技术。
线速的包转发 现在厂商往往直称自己的千兆路由交换机技术的每个端口都是线速的,那么怎么判定一个路由交换机中所有的端口是否线速呢?线速的衡量标准是以64byte的数据包(第二层或第三层包)作为计算基准,常用的基准如下: *对于千兆路由交换机技术,一个线速端口的包转发率为1.488Mpps。
对于快速以太网,一个线速端口的包转发率为148.8kpps。 *对于OC-12的POS端口,一个线速端口的包转发率为1.17Mpps。 *对于OC-48的POS端口,一个线速端口的包转发率为468MppS。
对于千兆路由交换机技术来说,计算方法如下: (64+8+12)byte×1,488,095pps.×8bit=1,000,000,000bps 说明:当以太网帧为64byte时,需考虑8byte。的帧头和12byte的帧间隙的固定开销。故一个线速的千兆路由交换机技术端口在转发64byte包时的包转发率为1.488Mpps。快速以太网的统速端口包转发率正好为千兆路由交换机技术的十分之一,为148.8kpps。
对于POS端口来说,计算方法如下: 一个OC-12的SDH中容器的有效速率约为599MbPs,将其除以64×8bit的包长度,就可以得出一个线速的OC-12POS端口的包转发率为1.17Mpps。OC-48的容器的有效速率为OC-12一的四倍,所以OC-48 POS端口的线速包转发率为1.17×4=4.68Mpps。