通信工程师交换技术线速缓存技术

交换技术与网络管控 责任编辑:touchpad 2013-11-08

摘要:通信工程师交换技术线速缓存技术:随着路由器速率的不断提高,路由器线卡中缓存器的读写速率和缓存器的容量面临着越来越严竣的挑战。首先随着链路速率以及交换网络速率的提高,要求分组进人和离开线卡上缓存器的速率要越来越快。

 在线辅导 面授招生 考试大纲 指定教材 试题汇总

7.5.4 线速缓存技术
随着路由器速率的不断提高,路由器线卡中缓存器的读写速率和缓存器的容量面临着越来越严竣的挑战。首先随着链路速率以及交换网络速率的提高,要求分组进人和离开线卡上缓存器的速率要越来越快。通常情况下存储器读和写的数据总线是共享的,一个分组到达后先要被写人缓存,再读出缓存,因而要求缓存总线的速率应是链路速率的两倍。当链路速率为40Gbit/S,分组长度为40字节时,要求存储器读写一个分组的周期为4n8。目前只有SRAM可以达到这一速率要求,但是SRAM的容量比较小。其次链路速率的提髙,势必要求线卡的缓存器能够存储大量的分组。线卡缓存的容量,与多种因素有关,如业务特性、丢失率指标、拥塞控制机制等。从拥塞控制的角度考虑,当出现拥塞时,瓶颈链路很容易积压大量分组。设链路速率为R,端到端往返时延为R7T,在闭环控制策略下,源端对于拥塞控制的响应至少需要一个ft7T的时间。为了减小丢失率,通常情况下,线卡的缓存容量需要为RxRTT0假设互联W平均的fiTT时间为0.25s,当链路速率为40Gbit/8时,需要的缓存容量为1.25G字节。显然单片SRAM根本无法做到这么大的容贵,如果用几十片或上百片SRAM堆叠出这一容量,除印制板的尺寸难以接受外,整个存储器的成本和功耗也将是无法接受的。
DRAM的特点是容量大,但是读写速率低,目前读写周期为几十n8。采用并行技术,通过增加数据总线的宽度(即数据位数),同时对多个DRAM进行读写,一次写人多位数据,可以解决DRAM读写速率低的缺点,如图7-38所示。

并行技术是用慢速器件搭建高速系统的基础,但是在线卡中,仅仅依靠DRAM的并行扩展并不能完全解决问题。原因是并行DRAM不能有效地解决变长分组多队列存储的问题。我们把对并行DRAM的一次读写称为一次块读写。由于分组是变长的,因此在一个块写人时可能包含两个分组。但是这两个分组有可能是属于不同队列的,例如,它们厉于不同的优先级,应该存放在不同的优先级队列中。而在DRAM进行并行扩展时,仅仅是数据线宽度的扩展,各个DRAM的数据线是彼此独立的,聚合成一个更宽的总线,但各个DRAM的地址线是共同的。这就意味着一次块写人不可能把块中的不同分组写人到不同的地址中去,即不可能写到不同的队列中去。为了解决这一问题,需要在并行DRAM与线卡的输人、输出链路之间再加一级缓存,该缓存的作用是暂时存放输人输出链路与DRAM之间需要传送的分组,以便对需要传送的分组进行队列划分操作。显然对这一缓冲的要求是可以进行线速读写而存储容量可以较小。SRAM适合这一要求。因此,实际上路由器中线卡上的缓存是由DRAM和SRAM共同组成的,结构如图7-39所示。

在DRAM与SRAM组成的缓存结构中,SRAM的作用类似于Cache。不同的是计算机Cache中的数据是一次写人,多次读出,而SRAM中的分组是到达时一次写人,离开时一次读出。
图7-39所示的缓存结构中一共包含Q个队列,每个队列按照FIF0组织。FIFO队列的头部和尾部的分组分别存储在SRAM中,FIFO队列中的中间分组存放在DRAM中。分组到达线卡时写人SRAM,也就是写人FIFO队列的尾部,缓存管理算法(Memory Management Algorithm,MMA)负责把SRAM中FIFO尾部的分组写人DRAM,为新到的分组腾出空间。缓存管理算法MMA还负责把DRAM各个队列头部的分组读人SRAM对应的队列头部位置,线卡上只输出SRAM队列头部中的分组。图7-39所示的SRAM采用的是静态缓存结构,SRAM中每个队列都是独立的,彼此之间没有共享。FIFO队列头部、尾部的长度都为byte。在这一结构中,对DRAM是并行读写的。设DRAM的读写周期为SRAM与DRAM之间的数据宽度b=2RTa
与计算机中的Cache管理算法类似,缓存管理算法MMA决定着何时在SRAM与DRAM之间进行分组的读写,不同的算法决定了SRAM的大小以及分组在线卡上输出的时延。MMA算法包含两部分,一是SRAM中FIFO队列的队尾分组何时写人DRAM,二是DRAM中的分组何时写人SRAM队列头部。线卡上分组的输出次序是由调度算法决定的,调度算法把输出分组的请求发往SRAM,如果这个分组在SRAM中,就可以立即输出,否则要将分组从DRAM写入SRAM,才能从SRAM中输出。因此,MMA的作用就是根据调度算法的请求,决定对SRAM中的哪个队列进行刷新,把哪个队列中的6字节数据由DRAM读到SRAM中。由于在第二部分中要求从DRAM读人的分组有一定随机性,而且要输出的分组一旦不在SRAM中,就会增加分组从线卡上输出的时延。因此,第二部分算法比较复杂,是重点研究的对象。这里列出3种MMA算法,并给出它们的性能。这3种算法中,均假设调度器(Arbiter,也叫仲裁器)向SRAM发出的输出请求(Request)都是以字节为单位的。

返回目录: 通信专业交换技术非连接型快速分组交换汇总

编辑推荐

通信专业实务考试终端与业务教程汇总

通信专业实务考试设备与环境教程汇总

通信工程师考试培训交换理论基确汇总

更多资料
更多课程
更多真题
温馨提示:因考试政策、内容不断变化与调整,本网站提供的以上信息仅供参考,如有异议,请考生以权威部门公布的内容为准!

通信工程师备考资料免费领取

去领取

距离2024 通信工程师考试

还有
  • 1
  • 2
  • 2
专注在线职业教育23年

项目管理

信息系统项目管理师

厂商认证

信息系统项目管理师

信息系统项目管理师