3DTorus交换网络中报文保序的多路径路由方法

文档序号:7614029阅读:180来源:国知局
专利名称:3D Torus交换网络中报文保序的多路径路由方法
技术领域
本发明涉及高性能路由器交换网络中的报文路由方法,尤其是3D Torus交换网络中报文保序的多路径路由方法。
背景技术
路由器是Internet中主要的互连设备之一,其基本功能是实现IP报文(TCP/IP协议在Internet中占主导地位)的路由、转发和交换。目前高性能路由器均采用分布式转发结构,由交换网络连接多个线卡组成,如图1所示。交换网络是路由器完成交换功能的核心模块,它对路由器的性能和规模起着决定作用。
交换网络是拥有多个输入/输出端口的报文交换部件,每个输入/输出端口均连接一块线卡,它根据报文的目的输出端口将其交换到目的线卡上。单级交换网络由于受限于存储器带宽以及调度器的复杂度,难以满足T比特路由器数百个高速端口的规模要求,而且其结构固定难以扩展。3D Torus交换网络是一种多级交换网络,它是一种3维Mesh结构,且每一维上的首尾节点环结,如图2所示。由于它具有高带宽,低延迟,节点度小且固定,拓扑规则有利于硬件实现,冗余路径多,可扩展性好等优点,被应用于T比特级高性能路由器的设计中。3D Torus交换网络中的每个节点连接一个外部输入/输出端口,并通过内部路径连接6个邻居节点,如图3所示,线卡是对外的报文输入输出端口,而其余的6个端口用于连接3D Torus交换网络中的6个邻居节点。
3D Torus交换网络中的报文路由是指报文由源端口到达目的端口的路径选择过程,为了实现更好的性能以及可靠性,报文路由方法应该兼顾多路径负载均衡以及报文保序的特性,但是这两个方面在实现中存在冲突,这也是一直以来困绕T比特级路由器设计人员的难点。

发明内容
本发明所要解决的技术问题是针对3D Torus交换网络中的报文路由存在难以同时兼顾多路径能力和报文保序,使得性能和功能产生相互制约的缺陷,提出了一种既能够在3D Torus交换网络内部的多条等价路径上均衡报文负载,又能保证属于同一条流的IP报文不会乱序的3D Torus交换网络中报文保序的多路径路由方法。
解决本发明技术问题所采用的技术方案是在3D Torus交换网络中使用报文保序的基于维序的多路径路由方法,包括如下步骤(1)、寻址对每一待进入交换网络的报文于源节点处查找目的节点的地址;
(2)、hash分类对每一待进入交换网络的报文于源节点处进行基于5元组的hash分类,每一流的报文进行5元组分类时属于同一类;(3)、查找类别—维序表根据hash分类结果查找类别—维序表,确定维序路径,保证属于同一流的报文按照完全相同路径经过交换网络;(4)、根据报文流目的地址和类别—维序表确定路由路径a、对源节点与目的节点处于同一维的情况,报文流可用路径只有1条,所有报文流经此路径到达目的节点;b、对源节点与目的节点处于同一面的情况,报文流可用路径有2条,经hash分类后的报文流根据路由维序信息选择该2条路径之一到达目的节点;c、对源节点与目的节点不在同一面的情况,报文流可用路径有6条,经hash分类后的报文流根据路由维序信息选择该6条路径之一到达目的节点。
(5)、各节点的路由部件根据步骤(4)确定的路径对报文进行路由根据报文携带的路由维序信息以及目的节点地址对报文进行路由,将报文按照维序向目的节点进行转发,走完某一维上的路径以后再处理下一维上的路径,直到最后一维上的路径处理完。
所述的在源节点输入端对报文进行基于5元组的hash分类,该5元组包括源IP地址、目的IP地址、源端口号、目的端口号和IP类型5个域。
所述的hash分类的分类数最多为6。
所述的类别—维序表表项个数等于hash分类的分类数。
所述的类别—维序表每个表项的三个域构成X、Y、Z维的一种排列。
本发明所产生的有益效果是充分利用3D Torus交换网络中任意两节点间存在着多条等价路径的特性,将进入3D Torus交换网络的报文流在多条等价路径上进行负载均衡,避免了系统中某条路径上产生热点而造成网络拥塞,使系统具有更高的性能和可用性,提高了网络资源的利用率;选择节点间的严格维序的等价路径作为负载均衡的可用路径,简化了报文在3D Torus交换网络中的路由选择过程,易于硬件设计;同时通过对报文进行基于可用路径的粗粒度的hash分类,保证属于同一流的报文经由相同路径穿过3DTorus交换网络,既完成了报文保序,节省了重定序的开销,又降低了报文hash分类的复杂度。


图1为目前高性能路由器采用的分布式转发结构。
图2为3D Torus交换网络的拓朴结构。
图3为本发明中3D Torus交换网络单个节点的结构。
图4为3D Torus交换网络中本发明所利用的维序路径。
图5为本发明中交换网络的单个节点硬件实现的逻辑框图。
图6为源节点在输入端口对进入报文的处理流程图。
图7为每个节点的路由部件对进入报文的处理流程图。
具体实施例方式
3D Torus网络是3维结构,为规则的K元N方网络,所以内部两节点之间一般具有多条等价路径,但是要在所有的等价路径之间进行报文分配,则报文需要携带大量的路由信息且每一步的路由处理将相当复杂,不利于中间节点上路由部件的硬件实现。
本发明中采用节点间的严格维序的等价路径作为报文负载均衡的可用路径。如图4所示的各节点中,节点A和节点L不处于同一平面上,则从节点A到节点L的可用维序路径有6条,它们是ABCFL,AGHIL,ADJKL,ABCIL,ADEFL和AGJKL,分别对应6种维序排列XYZ,ZXY,YZX,XZY,YXZ和ZYX;节点A和节点F处于同一平面但不处于同一维上,则从节点A到节点F的可用维序路径有2条,它们是ABCF和ADEF,且这两条路径是完全不相交的(没有共享边);节点A和节点C处于同一维上,则从节点A到节点C的可用维序路径只有一条ABC。
具有相同5元组信息的报文被认为是属于同一个流的,是交换网络需要进行保序的对象。本发明在3D Torus交换网络每个节点的输入端口,对准备进入交换网络的报文流根据其5元组信息进行hash分类,以分类类别作为索引查找类别-维序表,确定一种维序排列,从而为该报文选定一条维序路径,任意两节点间的报文只要在5元组分类时属于同一类,即会具有相同的路由维序信息,它们必定按照相同的路径穿过交换网络,不会造成乱序,达到了保序的目的。由于报文进行负载均衡的维序路径最多有6条,所以hash分类的分类数最多为6类即可。本发明要在每个节点的输入端口维护一个类别—维序表,该表为每一类报文对应了一种维序排列。类别-维序表的表项个数等于分类数,最多为6。其每个表项的结构如下,表项的三个域构成X、Y、Z维的一种排列。

3D Torus交换网络的每个节点在作为报文路由的中间节点时,根据报文携带的路由维序信息以及目的节点地址对报文进行路由。具体做法是按照报文携带的路由维序,将报文依次在各个维上向目的节点进行转发,走完某一维上的路径以后再处理下一维上的路径;如果最后一维上的路径已经处理完,则说明到达了目的节点。
本发明中交换网络单个节点的具体实现逻辑框图见图5,输入端口进入的报文在FE(转发引擎)模块查找其目的节点的地址,然后进行5元组的hash分类,再查找类别-维序表确定其路由路径的维序,然后进入路由部件;路由部件根据进入报文携带的目的信息及路径维序信息进行分析,确定该报文的下一跳并从相应端口转发出去。
源节点在输入端口对进入报文的处理过程(流程图见附图6)1、查找报文的目的节点地址。
2、对报文根据5元组进行hash分类。
3、根据分类结果查找类别-维序表,为报文确定路由维序。
4、为报文附上路由标签,其中包括目的节点地址及路由维序。
5、交路由部件处理。
各节点的路由部件对输入报文的处理过程(流程图见附图7)1、获取报文路由标签信息,以下根据维序信息处理。
2、本节点与目的节点在第一维上的距离是否为0?是则转第3步,否则按照相差的跳步数进行路由,将报文转发至第一维上的下一节点。
3、本节点与目的节点在第二维上的距离是否为0?是则转第4步,否则按照相差的跳步数进行路由,将报文转发至第二维上的下一节点。
4、本节点与目的节点在第三维上的距离是否为0?是则转第5步,否则按照相差的跳步数进行路由,将报文转发至第三维上的下一节点。
5、到达目的节点,将报文送至输出端口。
从以上对本发明技术方案以及实施的论述可以看出本发明具有以下优点1、降低了报文多路径路由的硬件实现复杂度。本发明选择维序路径作为负载均衡的可用路径,限制了报文分流的路径数目;报文路由时仅需携带维序信息和目的信息,简化了报文在3D Torus交换网络中的路由过程,易于硬件实现以获得较高性能。
2、保持了较好的多路径负载均衡能力。在3D-Torus网络中,若两节点之间的距离向量为(Δx,Δy,Δz),则易知它们之间等长的最短路径数为Δx+Δy+ΔzΔxΔy+ΔzΔy.]]>在本发明中,能够利用的路径数等于维序的不同排列数,与节点间的距离无关。
下表给出了不同规模的规则3D Torus交换网络中(每维节点数4~8),上述3种情况所占的比例。(其中k表示每维节点数,N表示总节点个数)


由表中数据可知,假设各个节点注入交换网络的报文的目的节点分布均匀,则85%以上的报文可以在多条路径上平衡负载,40%以上的报文可以在多达6条路径上平衡负载。所以本发明在降低硬件实现复杂度的同时仍然具有较好的负载均衡能力,可以避免系统中某条路径上产生热点,产生网络拥塞,同时使系统具有更高的可用性,提高了网络的效率。
3、以较低的代价实现了同一个流中报文的保序功能。判断报文是否属于同一个流的依据是报文头部的5元组信息,包括源IP地址、目的IP地址、源端口号、目的端口号和协议类型5个域,共104个二进制位。在多路径条件下,要保证报文顺序,可以对每一个流进行区分和控制,但这样做显然代价太大,也没有必要。本发明中报文进行负载均衡的路径最多有6条,所以在报文输入端只需对5元组信息进行粗粒度的hash分类即可,分类数最多为6,这大大降低了输入端hash分类的实现代价。同时从源节点和中间节点对报文的路由处理可以看出,两节点间属于同一流的报文在5元组分类时属于同一类,所以具有相同的路由维序,它们必定会按照完全相同的路径穿过交换网络,不会造成乱序。所以本发明以简便的方法、较低的代价即可保证同一流中的报文的顺序。
权利要求
1.一种3D Torus交换网络中报文保序的多路径路由方法,其特征在于该3D Torus交换网络中报文保序的多路径路由方法包括如下步骤(1)、寻址对每一待进入交换网络的报文于源节点处查找目的节点的地址;(2)、hash分类对每一待进入交换网络的报文于源节点处进行基于5元组的hash分类,每一流的报文进行5元组分类时属于同一类;(3)、查找类别—维序表根据hash分类结果查找类别—维序表,确定维序路径,保证属于同一流的报文按照完全相同路径经过交换网络;(4)、根据报文流目的地址和类别—维序表确定路由路径a、对源节点与目的节点处于同一维的情况,报文流可用路径只有1条,所有报文流经此路径到达目的节点;b、对源节点与目的节点处于同一面的情况,报文流可用路径有2条,经hash分类后的报文流根据路由维序信息选择该2条路径之一到达目的节点;c、对源节点与目的节点不在同一面的情况,报文流可用路径有6条,经hash分类后的报文流根据路由维序信息选择该6条路径之一到达目的节点;(5)、各节点的路由部件根据步骤(4)确定的路径对报文进行路由根据报文携带的路由维序信息以及目的节点地址对报文进行路由,将报文按照维序向目的节点进行转发,走完某一维上的路径以后再处理下一维上的路径,直到最后一维上的路径处理完。
2.根据权利要求1所述的3D Torus交换网络中报文保序的多路径路由方法,其特征在于所述的在源节点输入端对报文进行基于5元组的hash分类,该5元组包括源IP地址、目的IP地址、源端口号、目的端口号和IP类型5个域。
3.根据权利要求1或2所述的3D Torus交换网络中报文保序的多路径路由方法,其特征在于所述的hash分类的分类数最多为6。
4.根据权利要求1或2所述的3D Torus交换网络中报文保序的多路径路由方法,其特征在于所述的类别—维序表表项个数等于hash分类的分类数。
5.根据权利要求3所述的3D Torus交换网络中报文保序的多路径路由方法,其特征在于所述的类别—维序表表项个数等于hash分类的分类数。
6.根据权利要求4中所述的3D Torus交换网络中报文保序的多路径路由方法,其特征在于所述的类别—维序表每个表项的三个域构成X、Y、Z维的一种排列。
7.根据权利要求5中所述的3D Torus交换网络中报文保序的多路径路由方法,其特征在于所述的类别—维序表每个表项的三个域构成X、Y、Z维的一种排列。
全文摘要
本发明公开了一种3D Torus交换网络中报文保序的多路径路由方法,该方法利用3D Torus交换网络中任意两点间存在多条等价路径的特性,将进入3D Torus交换网络的报文流在多条路径中进行负载均衡,对需通过的报文进行基于可用路径数目的hash分类后,选择节点间的严格维序的等价路径作为负载均衡的可用路径,保证属于同一流的报文经相同路径通过3D Torus交换网络,既完成了报文保序,节省了重新定位的开销,降低了报文路由的复杂度。
文档编号H04L12/56GK1719805SQ20051003187
公开日2006年1月11日 申请日期2005年7月15日 优先权日2005年7月15日
发明者孙志刚, 管剑波, 张晓明, 胡晓峰 申请人:中国人民解放军国防科学技术大学
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1