- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
1. 路由器的结构 路由器是一种具有多个输入端口和多个输出端口的专用计算机,其任务是转发分组。也就是说,将路由器某个输入端口收到的分组,按照分组要去的目的地(即目的网络),把该分组从路由器的某个合适的输出端口转发给下一跳路由器。 下一跳路由器也按照这种方法处理分组,直到该分组到达终点为止。 在输入端口中得不到及时处理,或者发生输出端口冲突的分组在输入缓存中存储。当交换网络发送分组的速率大于输出链路速率时,分组在输出缓存存储。 * 路由器中的输入/输出缓存 分组在路由器的输入端口和输出端口都可能会在队列中排队等候处理。若输入或输出队列发生溢出,就会造成分组的丢失。 * 7.5.3 高性能路由器关键技术概述 高性能路由器,主要是指大容量、线速路由器。 对于高性能路由器来说,其高速处理能力几乎贯穿路由器的每一个实现环节,如路由表的查找、内存的访问、分组的调度等。 新一代高性能核心路由器的体系结构通常都是基于集群结构设计的,内连网络的性能直接影响路由器集群的整体交换性能。为了减小分组在内连网络中经历的时延,可以采用不同的交换机制,目前研究较多的交换机制包括分组交换、虫孔交换和虚切通交换。 下面将详细叙述高性能路由器涉及的关键技术问题。这些技术包括线速缓存、转发表快速查找、内连网络结构及交换机制等。 路由器输入链路速率的不断提高,给缓存器提出两个要求:读写速率高和存储容量大。 输入链路速率为40G/s,分组长度为40字节时,存储器读写一个分组的时间是4ns。 缓存器的容量要能满足网络内拥塞控制机制的要求:互联网中源端对于拥塞控制的响应时间为端到端往返时间RTT。设路由器输入链路的速率为R,在此期间,路由器收到的比特数可能会达到R×RTT。为防丢失,缓存器容量应为R×RTT。当R 40G/s,RTT 0.25s时,需要缓存器容量为1.25G字节。 SRAM速率快、容量小,DRAM容量大、速率低。 * 7.5.4 线速缓存技术 对DRAM数据线并行扩展时,不同的DRAM块地址总线是相同的。图中一次向一个地址要读写320字节的数据。一次有可能向DRAM块中写入两个分组。但如果两个分组要写入两个队列,就不能使用一个地址。为解决这一问题,需要采用DRAM/SRAM混合结构。 * DRAM的并行读写 通过对多块DRAM的并行读写,可以提高DRAM的读写速率。 * SRAM/DRAM混合结构 SRAM和DRAM都分为Q个队列,SRAM与DRAM之间的数据宽度b 2RT 。 使用混合结构,可以分队列存储分组。SRAM可线速读写,用来暂存分组,输入的分组先写入SRAM尾部队列,再由SRAM写入DRAM。输出分组时,先把分组从DRAM读出到SRAM头部队列,再由SRAM输出。 * 7.5.5 路由快速查找技术 随着路由器接口速度的不断提高,使用软件方法实现高速路由查找越来越困难。目前已经广泛使用的STM-16 2.5Gbps 和STM-64 10Gbps 接口要求路由查找速度达到每秒几千万次,因此,需要用硬件实现高速路由查找。 查找路由表,就要读存放路由表的存储器,读存储器需要时间,减少查表过程中读存储器的次数,是提高查找速度的关键。 下面介绍2种基于硬件的路由查找技术: 1)基于DRAM的路由查找算法-DIR-24-8-BASIC算法 ; 2)基于CAM的路由查找算法 。 DIR-24-8-BASIC算法 1 第二个表称为TBLlong,存储所有长度大于24的网络前缀。长度小于24位网络前缀查第一个表得出下一跳路由器,长度大于24位的网络前缀要分别查两个表。 * 采用两级DRAM表来实现路由查找。第一个表称为TBL24,存储所有长度小于等于24的网络前缀,该表有224个表项,地址范围从0.0.0到255.255.255。 DIR-24-8-BASIC算法 2 如果网络前缀的长度大于等于24,TBL24中表项的第1位为1,后15位给出指向TBLlong表的指针。查TBL24时,使用分组目的地址的前24位作为TBL24的读地址。查TBLlong时,把查TBL24得到的指针乘256再加上分组目的地址的后8位作为TBLlong读地址。 * 互联网99%的网络前缀长度小于等于24,绝大部分路由只需查一次表。网络前缀长度小于24,TBL24中表项的第1位为0,后15位给出下一跳信息。 DIR-24-8-BASIC算法 3 * A 10.54/16 ,A的网络前缀为16位,在TBL24中一共有224-16个表项都存储的是A的下一跳信息。对于一个大于24位的网络前缀,TBLlong分配28 256个表项。由于B、C前24位相同,且C的长度超过24,因此需要使用第二个表TBLlong。在TBL24的10.54.34的表项中设置一个索引号,以此索引TBLlo
文档评论(0)