发布网友 发布时间:2022-04-21 21:42
共1个回答
热心网友 时间:2023-07-01 15:44
高性能路由器交换结构的设计需要考虑的因素包括:吞吐量,报文丢失率,报文延时,缓冲空间和实现的复杂性等。1.交换结构的实现 从实现手段来看,交换芯片一般有两种实现方式:Crossbar方式和共享内存方式。Crossbar方式相当于一个开关阵列,入口数据通过自寻路方式到达出口,当然还需要周边的控制部件对寻路方式进行设置。而共享内存芯片则像一个功能单一的CPU,有控制部件和寄存器部件,控制部件可以灵活地实现各种控制算法来操作寄存器。相对来说,共享内存方式实现起来更为复杂。 交换芯片对于外部接口的处理方式也有两种:不包括接口功能,或者将接口功能集成在交换芯片内。2.构造大型路由器交换结构 共享存储和共享介质的方法受访存时间的影响,吞吐量受限。空分结构对吞吐量没有特殊的制约,影响规模扩展的是一些物理因素,例如引脚的数目,电路的密度等。但是随之出现的互连复杂性,功耗以及可靠性,可维护性等问题复杂。为了提高Crossbar结构的吞吐量,需要解决HOL阻塞问题,从而进一步增加了实现的复杂性。 一般认为,实现T比特及其以上的交换性能只靠扩大规模和增大尺寸是很难做到的。比较有效的方法是将一组交换模块互连,通过小型的交换模块互连实现更高性能的交换结构。3.容错和可靠性 通过对关键部件的冗余备份来实现,在路由器中,报文路由和缓冲结构是关键部件。除了冗余,还要考虑故障的检测,隔离和恢复。4.多播的支持 新闻,商业数据,音频,视频信息的分发和多方会议等新型应用或服务具有多播特性,要求路由器支持多播。在基于共享介质和分布式输出缓冲交换结构中,多播支持非常自然,可以通过广播发送和输出接口过滤的方法实现。但是需要附加的控制逻辑,有两种方法,一是对报文进行复制,这样需要更多存储空间;而是从同一个存储位置多次读取一个报文,这要求控制逻辑将报文在存储体内保存较长时间,直到送到所有多播接口。 在Crossbar交换结构中实现多播并不复杂。但是会带来问题。在基于输入缓冲的Crossbar交换结构中,将到达的报文从一个接口广播到多个接口非常简单,但是会加剧输入缓冲区的HOL阻塞问题。缓解此问题要增加缓冲控制的复杂性。但是,如果采用报文复制方法,会降低交换结构的有效吞吐量。还有其他一些方法,提高多播转发性能,这是业界研究的一个热点问题。5.缓冲区管理和QoS IP电话,视频会议以及其他一些关键应用要求路由器交换结构提供优先级支持。这些应用对绝对时延和延迟变化(即抖动)非常敏感。这可以通过划分优先级来实现。例如,在输出缓冲交换结构中,每个输出端口一般有多个缓冲区,每个缓冲区与一个QoS级别的数据相对应。这些缓冲区可以是物理上彼此分离的缓冲区,也可能是一个物理缓冲区逻辑划分的结果。 缓冲区管理包括输入端口的报文丢弃策略和输出端口的报文调度策略。IP路由器中的缓冲区管理涉及时间(报文调度)和空间(报文丢弃)两个方面。不同QoS级别的报文在时空二维的差异分别表现为转发时延和丢弃优先级。6.定长和变长报文 报文通过背板进行交换时可以作为长度可变报文,或者分割为定长的信元,到输出端口再重新组装。由于变长会影响交换性能,所以高性能路由器一般都采用信元模式进行交换。原因:如果将时间均分成一个个时槽,在每个时槽结束的时候,所有的输出和输入会同时空闲,调度器将检查那些等待通过交换开关的报文。然后,选择一种配置,决定在下一个时槽哪些输入和哪些输出互连。这种做法很容易在连接间实现公平性,不会饿死输入或输出,维持Crossbar交换开关的高效利用。7.报文延时控制 输入阻塞和输出阻塞都会造成报文延时不可预测。有两种方法可以克服这个问题:优先级方法和提高加速比的方法。8.大容量交换芯片的实现 对于CPU,Intel已经有了2GHz以上的微处理器。在交换芯片产品方面,Vitesse也推出了160G容量的芯片。杰尔系统面向城域和核心网络推出了OC-768C的交换芯片。2003年9月,Vitesse推出业界首个时隙交换的340G交换芯片VSC9195。9.波长交换和IP路由的综合