蜂巢式路由器的制作方法

文档序号:7589570阅读:809来源:国知局
专利名称:蜂巢式路由器的制作方法
技术领域
蜂巢式路由器属于互联网中的核心设备路由器的技术领域。
背景技术
路由器是计算机网络中的核心设备,随着计算机网络的快速发展,用户流量迅速增长,这就要求路由器的容量必须不断提高,以适应这一需求。早期的路由器完全通过软件实现,很大程度上限制了路由器的性能。第一代路由器采用了通用CPU,多个接口卡间利用共享总线互连;第二代路由器采用了分布式结构,将很多的工作分布到线卡上,但是分组在不同线卡间的转发仍然采用了共享总线结构;目前采用多处理器交换式体系结构的第三代路由器和采用共享并行处理器交换式体系结构的第四代路由器,均采用交换结构作为核心模块。下面就介绍几类常见的交换结构。
共享存储结构。假设路由器的交换结构由N个输入端口和N个输出端口构成,如果采用共享存储结构则每个时间片需要对存储单元进行N次写操作和N次读操作,如图1所示,其中SM表示共享存储(Shared Memory)单元。共享存储结构对存储单元带宽的要求为2NR,其中N表示输入(出)端口的数目,R表示单端口的访问速率。N的取值越大对存储单元的要求也就越高,利用目前的技术很难满足这样的增长需求。共享存储结构突出的优点在于不需要使用专门的调度器来避免输出端口的竞争,简化了设计,而且可以利用反压机制来解决缓冲区溢出问题;但是该交换结构的扩展能力受限于总线的带宽。共享存储结构的扩展通常借助于多平面加以实现,如图2所示。由于多平面方案中缓存的存在,将会出现分组乱序问题,这个问题应该在路由器的设计中尽量避免,因此就需要在输出侧配置很大的缓存,用于分组的重排序。
crossbar结构。目前很多常见的商用路由器都采用crossbar结构(如图3所示)来实现交换网络,针对crossbar结构有IQ(Input Queuing,输入排队)、OQ(Output Queuing,输出排队)和CIOQ(Combined Input and Output Queuing,输入输出排队)三类结构,相应的调度算法也有很多。例如,基于IQ结构的调度算法有PIM、RRM、iSLIP、LPF、LQF和OCF等;基于OQ结构的调度算法有虚拟时钟算法、逆差轮转算法和公平权重算法(又称通用处理器共享算法)等;基于CIOQ结构的调度算法有MUCFA、CCF和JPM等。
但crossbar结构本身存在一些缺点1)crossbar的代价按N2(N表示输入、输出端口的数目,共有N2个交点)递增,多端口的系统实现复杂,一般实际的系统都是较少的端口数目。一些实现系统中,尝试利用多个交换芯片组成crossbar阵列,效果不是很好。
2)很难保障QoS(Quality Of Service,服务质量)交换,因为QoS服务同其它的流有关,复杂度很大,所以一般只考虑best effort服务。
3)采用IQ交换结构时,存在HOL(Head Of Line,链头)阻塞问题,一般采用VOQ(VirtualOutput Queue,虚拟输出队列)技术解决,这样会涉及较多的队列管理调度,开销较大。
4)每个时间片都需要调度算法重新设置交换网络,不但开销大,而且对调度算法的时间复杂度要求很高,很多算法只有理论意义,很难应用于实际系统中。
crossbar结构的多平面扩展方案类似前面介绍的共享存储结构的扩展,如果crossbar不带缓存,很容易出现竞争冲突,如果带缓存,同样会出现分组乱序的问题。
Benes结构。采用Benes结构,要搭建一个N×N的无阻塞网络,代价为N·2logN,Benes结构属于可重排无阻塞交换网络。如果采用单路径路由,需要重新建立连接,采用多路径路由可以消除这一问题。可以通过递归的方式搭建Benes网,如图4所示。
Benes结构属于多级交换结构,该结构的构建简单、结构对称,可以很方便的支持较多的端口。而且,Benes结构中输入、输出端口间存在多条路径,可以实现负载的均衡,一定程度上缓解了路径冲突的问题。但是,该交换结构的实现代价较大,出现“阻塞”时需要重新设定网络的连接关系,反应速度较慢。
Clos结构。Clos结构也属于多级交换结构,图5是一个典型的3级Clos交换结构。一般情况下,3级Clos结构属于可重排无阻塞,但是可以证明当m>=2n-1时不需要重排,属于严格意义上的无阻塞结构。
Clos交换结构中每个组成“元素”可以是crossbar,不需要特殊的设计,而且相同规模的Clos结构的实现代价远远低于crossbar结构;在Clos结构中,输入、输出端口间存在多条交换路径。
Clos结构要实现无阻塞,代价较大,所以一般意义上还是属于可重排无阻塞,这就要求在中间过程重新设定连接关系。同样在利用多平面结构实现扩展时,面临一个两难的选择交换网络中有缓存,需要解决排序问题;无缓存,寻路的代价会很高,很难实现高吞吐率。
负载均衡交换结构是一种较为新颖的交换结构,如图6所示,两个相同的交换模块将一个缓冲区夹在中间,缓冲区按VOQ的方式组织,共有N2个VOQ。第一级交换模块负责负载均衡,第二级交换模块负责分组调度,两级交换模块不需要复杂的调度算法,只要简单的轮转即可。
负载均衡交换结构在设计之初存在一些问题,包括由于中间缓存的存在,可能导致分组乱序;一些病态流量可能导致整个交换的吞吐率急剧下降;该结构对交换模块设置的快速更新提出了很高的要求;容错能力不强等。后来的一些研究针对这些问题逐一做了分析,并给出了相应的解决方法。
负载均衡交换结构,虽然从结构设计上大大降低了调度算法的复杂度,但是仍然采用了集中式的输入(出)和中间的缓存,很大程度上限制了扩展能力。
上面介绍的各类结构,它们都是路由器中的重要部件,和线卡相连,共同组成路由器。为了简化交换,分组在进入交换网络之前要进行分片操作(分割成等长的数据单元),离开交换网络后还要进行重组操作。为了避免冲突造成的拥塞,通常需要设计相应的调度算法。本发明提出的蜂巢式路由器能够很好地解决这些问题。

发明内容
本发明的目的在于提出一种蜂巢式路由器。它基于正六边形结构,取消了传统路由器设计中的交换网络,简化了路由器的设计。另一方面,传统路由器的扩展能力往往有限,无法根据需要不断地扩展,本发明可以有效地解决路由器的扩展问题。
本发明的特征在于它是一种单机架单层的蜂巢式路由器,它由一个由多个正六边形组成的蜂巢式结构线卡群和与所述蜂巢式结构线卡群处于同一层面且与各线卡相连的多块控制卡构成;所述的蜂巢式结构线卡群上的每一个正六边形的线卡群含有位于所述正六边形的线卡群的中心点以及6个顶点即共计7个节点上且相互平行放置的7块线卡;对应于所述各个线卡之间且相互等长的数据通道即链路。
本发明的特征还在于它是一种单机架且上下层结构的蜂巢式路由器,它的每一层都由一个由多个正六边形组成的蜂巢式线卡群和与所述蜂巢式结构线卡群处于同一层面且与各线卡相连的多块控制卡构成;所述的各层的由多个正六边形组成的蜂巢式线卡群中的各个线卡是在垂直方向上一一对应地相连的。
本发明的特征又在于它是一种多机架多层结构的蜂巢式路由器,它是由单机架单层的蜂巢式路由器或/和单机架多层的蜂巢式路由器根据需要组合而成的,其组合的方式是以下九种组合方式的任意一种或几种的组合(1)单机架单层的蜂巢式路由器的线卡和单机架单层的蜂巢式路由器的线卡根据需要连接在一起;(2)单机架单层的蜂巢式路由器的控制卡和单机架单层的蜂巢式路由器的控制卡根据需要连接在一起;(3)单机架单层的蜂巢式路由器的线卡和单机架单层的蜂巢式路由器的线卡根据需要连接在一起,同时单机架单层的蜂巢式路由器的控制卡和单机架单层的蜂巢式路由器的控制卡根据需要连接在一起;(4)单机架多层的蜂巢式路由器的线卡和单机架多层的蜂巢式路由器的线卡根据需要连接在一起;(5)单机架多层的蜂巢式路由器的控制卡和单机架多层的蜂巢式路由器的控制卡根据需要连接在一起;(6)单机架多层的蜂巢式路由器的线卡和单机架多层的蜂巢式路由器的线卡根据需要连接在一起,同时单机架多层的蜂巢式路由器的控制卡和单机架多层的蜂巢式路由器的控制卡根据需要连接在一起;(7)单机架单层的蜂巢式路由器的线卡和单机架多层的蜂巢式路由器的线卡根据需要连接在一起;(8)单机架单层的蜂巢式路由器的控制卡和单机架多层的蜂巢式路由器的控制卡根据需要连接在一起;(9)单机架单层的蜂巢式路由器的线卡和单机架多层的蜂巢式路由器的线卡根据需要连接在一起,同时单机架单层的蜂巢式路由器的控制卡和单机架多层的蜂巢式路由器的控制卡根据需要连接在一起。
本发明的特征还在于所述的多个正六边形构成的线卡群包括仅由一个正六边形构成的线卡群的情况。
本发明的特征最后在于所述的多块控制卡包括只有一块控制卡的情况。
本发明具有以下的特点1.扩展性能好。每次可以只增加一个线卡,使得整个路由器的费用按线性增加,总容量也随着线卡数目的增加而有所增长;2.升级或更新的成本低。传统的路由器,交换网络的规模一般是固定的,要增加路由器的容量,就必须整套地更换交换网络,造成了很大的损失,而蜂巢式路由器取消了独立的交换网络,升级路由器时,只需要增加线卡或者更换线卡即可;3.多条路径有利于实现负荷均衡。蜂巢结构中的某个线卡和其它线卡间存在多条转发路径,在出现拥塞现象时,可以借助多条路径实现负载均衡;4.增强了路由器的容错性。由于各个线卡间存在多条连接路径,使得当某个(些)线卡出现故障时,没有出现故障的线卡仍然可以工作;5.无阻塞。由于相邻线卡间都有专用的数据通道,这样就避免了多个线卡竞争一个线卡的现象,从而避免了拥塞;6.有利于实现QoS。可以在相邻线卡间设置多条数据通道,使得不同优先级的分组通过不同的数据通道进行转发,从而达到控制QoS的目的。


图1现有共享存储结构a、输入(出)端口数目为3;b、输入(出)端口数目为5;c、输入(出)端口数目为N。
图2现有利用多平面实现共享存储结构的扩展。
图3现有N×N Crossbar结构。
图4现有N×N Benes结构。
图5现有3级Clos交换结构。
图6现有负载均衡结构(图中缓存平面中的0、1、…、N-1代表虚拟输出队列)。
图7能无缝覆盖平面的三类正多边形a、使用正三边形覆盖平面;b、使用正四边形覆盖平面;c、使用正六边形覆盖平面。
图8正六边形结构可以涵盖正三边形和正四边形a、正六边形结构;b、正六边形结构涵盖正三边形结构;c、正六边形结构涵盖正四边形结构。
图9单层7线卡实现方案a、包含中心点的正六边形结构中各个节点的编号;
b、平行放置的七块线卡;c、线卡1和其它线卡的连接关系;d、线卡2和其它线卡的连接关系;e、线卡3和其它线卡的连接关系;f、线卡0和其它线卡的连接关系;g、线卡4和其它线卡的连接关系;h、线卡5和其它线卡的连接关系;i、线卡6和其它线卡的连接关系;j、七块线卡的连接关系。
图10单机架多层实现方案a、三层正六边形结构;b、三层机架示意图。
图11多机架扩展方案。
图12组成多机架路由器的“部件”(图中节点代表线卡,虚线代表取消的链路和线卡,实线代表线卡间的数据通路)a、包含7个线卡的机架;b、包含5个线卡的机架;c、包含4个线卡的机架;d、包含3个线卡的机架。
图13线卡设计方案。
图14单机架单层蜂巢式路由器和单机架单层蜂巢式路由器互连方案a、线卡间互连;b、控制卡间互连;c、线卡、控制卡间各自互连。
图15单机架多层蜂巢式路由器和单机架多层蜂巢式路由器互连方案a、线卡间互连;b、控制卡间互连;c、线卡、控制卡间各自互连。
图16单机架单层蜂巢式路由器和单机架多层蜂巢式路由器互连方案a、线卡间互连;b、控制卡间互连;c、线卡、控制卡间各自互连。
具体实施例方式
蜂巢结构在很多领域都有应用,如果将这一结构引入到可扩展路由器的设计上来,同样会收到很好的效果。
在所有的正多边形中,能够无缝覆盖整个平面的只有三类正三边形、正四边形和正六边形(如图7所示)。
路由器在部属过程中必然受到场地的限制,如何有效利用空间具有很现实的意义。采用蜂巢结构(正六边形),可以有效利用场地。
如果为每个正六边形增加一个中心点,则正六边形结构可以涵盖正三边形和正四边形(通过剪枝操作取消某些链路),如图8所示。
给正六边形增加中心点后,每个正六边形被划分成六个小的正三边形,从拓扑结构上而言,改造后的正六边形结构“变成”了正三边形结构。但是,这类正三边形结构具有很好的扩展方案,将无序的正三边形扩展变成限制在正六边形内的有序扩展。
在具体实现路由器时,线卡的代价远大于数据通道的代价,当通过背板布线实现高速数据通道时,这个差距会更大。
在网络拓扑结构中,增加链路可以增加节点的度,从而增加交换通道的数目,可以提升整个拓扑结构的容错能力和负载均衡能力。如果考虑到3维扩展的情况,正三边形、正四边形和改造后的正六边形(蜂巢结构)结构中节点的度分别为8、6和8。从这个角度上看,蜂巢结构优于正四边形结构。
蜂巢式路由器可以分为单机架和多机架两种情况,其中单机架路由器又可以分成单层结构和多层结构,下面分别加以介绍。
对于单机架单层结构,考虑到蜂巢结构中单个正六边形包含7个节点,所以单层按照7线卡的容量进行设计(路由器中除了数据处理平面外,往往还需要控制平面,控制卡可能和线卡位于同一层,为了不破坏蜂巢结构,在实际的设计中,单层的容量应该大于7个线卡的位置)。
由于实际系统中线卡都是平行放置的,所以应该将正六边形结构进行“改造”,图9(a)中的0~6节点,分别对应图9(b)中的0~6线卡。节点间的链路,对应线卡间的数据通道,为了实现各个链路的等长,图9(c)~(i)中箭头标出了各个线卡和“相邻”线卡间的数据通道,图9(j)中列出了7个线卡间的数据通道。
对于蜂巢结构而言,单机架多层结构属于垂直方向(Z轴)的扩展,这样对蜂巢结构中的某个节点而言,除了水平方向(可采用极坐标来表示相邻节点)上最多有6个邻居外,垂直方向上还可以再增加两个邻居,使得节点的度达到最大值8(如图10所示)。
蜂巢式路由器中,多机架路由器按照正六边形组织,如图11所示。图11只列出了两圈机架的方案(内圈1个机架,外圈6个机架),当所需线卡的数目增加时,可以通过增加圈数的方式继续扩展路由器的规模。
要实现如图11所示的多机架结构,每个机架单层部署的线卡数目不再固定为7,可能出现某些线卡被多个机架所复用的情况,所以在多机架结构中,存在图12所示的四类“部件”。
线卡在蜂巢式路由器中的地位很重要,它的基本设计如图13所示。每个线卡包含9路输入(出),其中8路来自相邻线卡,1路来自自身线卡。也就是说,每个线卡内部包含一个9×9的小型交换系统,由于端口数目较少,可以采用Crossbar作为内部的交换模块,输出(入)侧按照VIQ(Virtual Input Queue,虚拟输入队列)(VOQ)组织存储队列。相应的调度算法很多,可以参见前面关于Crossbar结构的介绍。
虽然线卡内部仍然需要使用传统的Crossbar交换,但是却因为蜂巢结构变得简化1)大大降低了Crossbar的端口数目。Crossbar输入输出端口的数目不再随着线卡数目的增加而增加,而是最大为9×9的规模;2)蜂巢结构提供了路径多样性的支持。从一个线卡到另一个线卡,不再只有一条路径,而是可以存在多条路径。路径多样性有利于实现负载均衡,对单线卡内部交换的压力变小,而且还有利于增强容错性,即使某个(些)线卡或某条(些)数据通道出现故障,仍然可以通过其它的路径实现交换。
关于容错性方面,线卡还需要实现错误检测、重新配置和系统修复等功能。
对于多机架多层的结构,可以由单机架单层的蜂巢式路由器或/和单机架多层的蜂巢式路由器根据需要组合而成的,其组合的方式是以下九种组合方式的任意一种或几种的组合(1)单机架单层的蜂巢式路由器的线卡和单机架单层的蜂巢式路由器的线卡根据需要连接在一起,如图14(a);(2)单机架单层的蜂巢式路由器的控制卡和单机架单层的蜂巢式路由器的控制卡根据需要连接在一起,如图14(b);(3)单机架单层的蜂巢式路由器的线卡和单机架单层的蜂巢式路由器的线卡根据需要连接在一起,同时单机架单层的蜂巢式路由器的控制卡和单机架单层的蜂巢式路由器的控制卡根据需要连接在一起,如图14(c);(4)单机架多层的蜂巢式路由器的线卡和单机架多层的蜂巢式路由器的线卡根据需要连接在一起,如图15(a);(5)单机架多层的蜂巢式路由器的控制卡和单机架多层的蜂巢式路由器的控制卡根据需要连接在一起,如图15(b);(6)单机架多层的蜂巢式路由器的线卡和单机架多层的蜂巢式路由器的线卡根据需要连接在一起,同时单机架多层的蜂巢式路由器的控制卡和单机架多层的蜂巢式路由器的控制卡根据需要连接在一起,如图15(c);(7)单机架单层的蜂巢式路由器的线卡和单机架多层的蜂巢式路由器的线卡根据需要连接在一起,如图16(a);(8)单机架单层的蜂巢式路由器的控制卡和单机架多层的蜂巢式路由器的控制卡根据需要连接在一起,如图16(b);(9)单机架单层的蜂巢式路由器的线卡和单机架多层的蜂巢式路由器的线卡根据需要连接在一起,同时单机架单层的蜂巢式路由器的控制卡和单机架多层的蜂巢式路由器的控制卡根据需要连接在一起,如图16(c)。
权利要求
1.蜂巢式路由器,其特征在于,它是一种单机架单层的蜂巢式路由器,它由一个由多个正六边形组成的蜂巢式结构线卡群和与所述蜂巢式结构线卡群处于同一层面且与各线卡相连的多块控制卡构成;所述的蜂巢式结构线卡群上的每一个正六边形的线卡群含有位于所述正六边形的线卡群的中心点以及6个顶点即共计7个节点上且相互平行放置的7块线卡;对应于所述各个线卡之间且相互等长的数据通道即链路。
2.根据权利要求1所述的蜂巢式路由器,其特征在于,它是一种单机架且上下层结构的蜂巢式路由器,它的每一层都由一个由多个正六边形组成的蜂巢式线卡群和与所述蜂巢式结构线卡群处于同一层面且与各线卡相连的多块控制卡构成;所述的各层的由多个正六边形组成的蜂巢式线卡群中的各个线卡是在垂直方向上一一对应地相连的。
3.根据权利要求1或权利要求2所述的蜂巢式路由器,其特征在于,它是一种多机架多层结构的蜂巢式路由器,它是由单机架单层的蜂巢式路由器或/和单机架多层的蜂巢式路由器根据需要组合而成的,其组合的方式是以下九种组合方式的任意一种或几种的组合(1)单机架单层的蜂巢式路由器的线卡和单机架单层的蜂巢式路由器的线卡根据需要连接在一起;(2)单机架单层的蜂巢式路由器的控制卡和单机架单层的蜂巢式路由器的控制卡根据需要连接在一起;(3)单机架单层的蜂巢式路由器的线卡和单机架单层的蜂巢式路由器的线卡根据需要连接在一起,同时单机架单层的蜂巢式路由器的控制卡和单机架单层的蜂巢式路由器的控制卡根据需要连接在一起;(4)单机架多层的蜂巢式路由器的线卡和单机架多层的蜂巢式路由器的线卡根据需要连接在一起;(5)单机架多层的蜂巢式路由器的控制卡和单机架多层的蜂巢式路由器的控制卡根据需要连接在一起;(6)单机架多层的蜂巢式路由器的线卡和单机架多层的蜂巢式路由器的线卡根据需要连接在一起,同时单机架多层的蜂巢式路由器的控制卡和单机架多层的蜂巢式路由器的控制卡根据需要连接在一起;(7)单机架单层的蜂巢式路由器的线卡和单机架多层的蜂巢式路由器的线卡根据需要连接在一起;(8)单机架单层的蜂巢式路由器的控制卡和单机架多层的蜂巢式路由器的控制卡根据需要连接在一起;(9)单机架单层的蜂巢式路由器的线卡和单机架多层的蜂巢式路由器的线卡根据需要连接在一起,同时单机架单层的蜂巢式路由器的控制卡和单机架多层的蜂巢式路由器的控制卡根据需要连接在一起。
4.权利要求1或权利要求2中所述的蜂巢式路由器,它的特征在于,所述的多个正六边形构成的线卡群包括仅由一个正六边形构成的线卡群的情况。
5.权利要求1或权利要求2中所述的蜂巢式路由器,它的特征在于,所述的多块控制卡包括只有一块控制卡的情况。
全文摘要
蜂巢式路由器,属于互联网中的核心设备路由器的技术领域。其特征在于,它是一种蜂巢式结构的路由器,它由多个正六边形组成的蜂巢式结构的线卡群以及与所述线卡群处于同一层面且于线卡相连的多块控制卡构成。它具有很好的扩展性能,降低了升级或更新的成本,线卡间的多条路径有利于实现负荷均衡,多条路径的存在增强了路由器的容错性,线卡间采用专用数据通道从而实现了无阻塞交换,它还有利于实现QoS(Quality Of Service,服务质量)交换。
文档编号H04L12/56GK1606273SQ20041000987
公开日2005年4月13日 申请日期2004年11月26日 优先权日2004年11月26日
发明者赵有健, 乐祖晖, 吴建平, 张小平, 关洪涛 申请人:清华大学
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1