CN106656808A - 一种二级全连接互连网络的容错完全自适应路由方法 - Google Patents
一种二级全连接互连网络的容错完全自适应路由方法 Download PDFInfo
- Publication number
- CN106656808A CN106656808A CN201610882251.6A CN201610882251A CN106656808A CN 106656808 A CN106656808 A CN 106656808A CN 201610882251 A CN201610882251 A CN 201610882251A CN 106656808 A CN106656808 A CN 106656808A
- Authority
- CN
- China
- Prior art keywords
- node
- security
- router
- group
- data packet
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L45/00—Routing or path finding of packets in data switching networks
- H04L45/28—Routing or path finding of packets in data switching networks using route fault recovery
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L45/00—Routing or path finding of packets in data switching networks
- H04L45/12—Shortest path evaluation
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L45/00—Routing or path finding of packets in data switching networks
- H04L45/20—Hop count for routing purposes, e.g. TTL
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L45/00—Routing or path finding of packets in data switching networks
- H04L45/24—Multipath
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/10—Flow control; Congestion control
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/70—Admission control; Resource allocation
- H04L47/72—Admission control; Resource allocation using reservation actions during connection setup
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本发明提供了一种二级全连接互连网络的容错完全自适应路由方法,所述二级全连接互连网络包括多个路由器组,每个路由器组包括多个路由器,将所述多个路由器组以及同一组中的多个路由器映射到不同的超立方体中,从超立方体的子立方体中收集安全信息,其中所述多个路由器组之间两两相互全连接,所述多个路由器之间两两相互全连接;所述路由方法包括如下步骤:a,设置数据包;b,判断所述数据包当前节点标号与所述数据包目标节点标号是否相等;c,判断所述数据包源节点所在路由器组标号与所述数据包目标节点所在路由器组标号是否相等。本发明在链路出现障碍时,使计算过程简化,实现容错完全自适应路由。
Description
技术领域
本发明涉及计算技术领域,特别涉及一种二级全连接互连网络的容错完全自适应路由方法。
背景技术
通常,互连网络取代由于电气限制而达到性能极限的总线技术,成为解决现代数字系统系统级通信问题的通用方案。互连网络是影响整个多处理器系统的性能和扩展性的重要方面。如何在现有技术基础上,为处理节点之间的提供低延迟、高效通信成为互连网络亟待解决的关键问题。互连网络主要由三个要素来描述:拓扑结构、交换机制和路由方法。
交换机制决定怎样给分组分配通道、缓冲区等网络资源。VCT交换被广泛用于超级计算机中,如商用超级计算机Cray XT,IBM Blue Gene Q就采用了VCT交换技术。
路由方法决定了每个消息或分组将在网络中传输的路径,它负责将分组正确无误的发送到目的节点。确定性路由方法,分组在任意节点对之间总是提供相同的路径,而与网络状态无关。该算法简单,但路径惟一,因此路径中有一条通道或节点发生故障时,分组就不能被正确传输。自适应性路由方法在做路由决策时要考虑当前网络的状态。通常分组在任意节点对之间都有多条路径供选择,所有分组均匀的使用各条通道。使得网络流量更加均衡,有利于网络性能的提高。现有技术中(专利20140302935)的路由方法采用了基于多层次的dragonfly互连网络,但是其路由方法在链路出现障碍时,需要复杂绕道进行传递,其计算过程繁琐,而且容易产生容错不完全的情况。
因此,需要一种能有效地解决路由过程简单,容错完全的二级全连接互连网络的容错完全自适应路由方法。
发明内容
本发明的目的在于提供一种二级全连接互连网络的容错完全自适应路由方法,所述二级全连接互连网络包括多个路由器组,每个路由器组包括多个路由器,将所述多个路由器组以及同一组中的多个路由器映射到不同的超立方体中,从超立方体的子立方体中收集安全信息,其中
所述多个路由器组之间两两相互全连接,所述多个路由器之间两两相互全连接;
所述路由方法包括如下步骤:
a,设置数据包,对数据包源节点、数据包源节点所在路由器组、数据包当前节点、数据包当前节点所在路由器组、数据包目标节点和数据包目标节点所在路由器组进行标号;
b,判断所述数据包当前节点标号与所述数据包目标节点标号是否相等,若相等,则算法结束;
c,判断所述数据包源节点所在路由器组标号与所述数据包目标节点所在路由器组标号是否相等;若不相等,则进入步骤d;若相等,则进入步骤e;
d,若所述数据包源节点所在路由器组与所述数据包目标节点所在路由器组之间全局链路无故障,则数据包传递至所述数据包目标节点所在路由器组;
若所述数据包源节点所在路由器组与所述数据包目标节点所在路由器组之间全局链路存在故障,则依次检查如下链路,按照其中的一个链路进行数据包传递:
链路d1:沿着所述数据包源节点所在路由器组到所述数据包目标节点所在路由器组的组级MFR路径传递所述数据包到中间路由器组,其中,中间路由器组满足如下条件:(1)所述中间路由器组与所述数据包目标节点所在路由器组满足汉明距离为1;(2)所述中间路由器组是包含中间路由器组和数据包目标节点所在路由器组的子立方体中的局部安全节点或第二局部非安全节点;
链路d2:沿着所述数据包源节点所在路由器组到所述数据包目标节点所在路由器组的组级MFR路径传递所述数据包到中间路由器组,其中,中间路由器组满足如下条件:所述中间路由器的所有全局输出信道都是无故障的;
链路d3:沿着所述数据包源节点所在路由器组到所述数据包目标节点所在路由器组的组级MFR路径,通过预留的所述数据包源节点所在路由器组到所述中间路由器的子路径绕道传递数据包到中间路由器组;其中,所述中间路由器组满足如下条件:(1)所述中间路由器组与所述数据包目标节点所在路由器组满足汉明距离为1;(2)所述中间路由器组是包含中间路由器组和数据包目标节点所在路由器组的子立方体中的局部安全节点或第二局部非安全节点;
链路d4:沿着所述数据包源节点所在路由器组到所述数据包目标节点所在路由器组的组级MFR路径,通过预留的所述数据包源节点所在路由器组到所述中间路由器的子路径绕道传递数据包,其中,中间路由器组满足如下条件:所述中间路由器组的所有全局输出信道都是无故障的。
e,若所述数据包源节点与所述数据包目标节点之间局部链路无故障,则数据包传递至所述数据包目标节点;若所述数据包源节点与所述数据包目标节点之间局部链路存在故障,则依次检查如下链路,按照其中的一个链路进行数据包传递:
链路e1:沿着所述数据包源节点到所述数据包目标节点的MFR路径传递所述数据包到中间路由器,其中,中间路由器满足如下条件:(1)所述中间路由器与所述数据包目标节点满足汉明距离为1;(2)所述中间路由器是包含中间路由器和数据包目标节点的子立方体中的局部安全节点或第四局部非安全节点;
链路e2:沿着一条MFR路径,绕道传递数据包到任意一个所有输出信道都是无故障的中间路由器;
链路e3:绕道传递数据包到任意一个所有输出信道都是无故障的中间路由器。
优选地,将所述多个路由器组映射到超立方体中,从超立方体的子立方体中收集安全信息,具体包括如下步骤:
S1,首先选取任意一个路由器组作为超立方体中的第一个节点;
S2,选取与所述第一个节点之间无故障的另外一个路由器组作为超立方体中的第二个节点;
S3,将其余路由器组映射到所述超立方体中作为超体方体的其余节点,其中每个节点连接的新节点与已经连接的所有节点链路无故障;
S4,定义所述超立方体的安全节点和非安全节点;
S5,将步骤S4中的安全节点应用到所述超立方体的子立方体中。
优选地,所述安全节点和非安全节点按如下方法分类:
第一非安全节点,超立方体中的一条单向故障链路的源节点;
第二非安全节点,至少与两个第一非安全节点相邻的无故障节点或者
至少与三个的第一非安全节点和第二非安全节点相邻的无故障节点;
安全节点,除第一非安全节点和第二非安全节点外的其余节点。
优选地,所述步骤5将安全节点应用的所述超立方体的子立方体中,对所述超立方体的子立方体的节点按如下方法分类:
第一局部非安全节点,子立方体中的一条故障的单向链路的源节点;
第二局部非安全节点,至少与两个第一局部非安全节点相邻的无故障节点或者
至少与三个第一局部非安全节点和第二局部非安全节点相邻的无故障节点;
局部安全节点,除第一局部非安全节点和第二局部非安全节点的其余节点。
优选地,将所述同一组中的多个路由器被映射到超立方体中,从超立方体的子立方体中收集安全信息,具体包括如下步骤:
S1,首先选取任意一个路由器作为超立方体中的第一个节点;
S2,选取与所述第一个节点之间无故障的另外一个路由器作为超立方体中的第二个节点;
S3,将其余路由器映射到所述超立方体中作为超体方体的其余节点,其中每个节点连接的新节点与已经连接的所有节点链路无故障;
S4,定义所述超立方体的安全节点和非安全节点;
S5,将步骤S4中的安全节点应用到所述超立方体的子立方体中。
优选地,所述安全节点和非安全节点按如下方法分类:
第三非安全节点,超立方体中的一条单向故障链路的源节点;
第四非安全节点,至少与两个第三非安全节点相邻的无故障节点或者
至少与三个第三非安全节点和第四非安全节点相邻的无故障节点;
安全节点,除第三非安全节点和第四非安全节点外的其余节点。
优选地,所述步骤5将安全节点应用的所述超立方体的子立方体中,对所述超立方体的子立方体的节点按如下方法分类:
第三局部非安全节点,子立方体中的一条故障的单向链路的源节点;
第四局部非安全节点,至少与两个第三局部非安全节点相邻的无故障节点或者
至少与节点个数之和为三个以上的第三局部非安全节点和第四局部非安全节点相邻的无故障节点;
局部安全节点,除第三局部非安全节点和第四局部非安全节点的其余节点。
优选地,所述数据包包括安全数据包和非安全数据包。
优选地,所述的MFR路径是采用标号减向优先算法。
优选地,所述的全局链路是路由器组间的链路,所述的局部链路是路由器组内路由器间的链路。
本发明提供的一种二级全连接互连网络的容错完全自适应路由方法采用两层安全信息,路由器组层中将路由器组映射到超立方体中,在路由器层中将同组中的路由器映射到超立方体中,映射的目标是使得超立方体链路尽可能的无故障,从各自的超立方体的子立方体中获取局部安全信息,实现在数据传递过程增强容错能力,提高系统性能。
应当理解,前述大体的描述和后续详尽的描述均为示例性说明和解释,并不应当用作对本发明所要求保护内容的限制。
附图说明
参考随附的附图,本发明更多的目的、功能和优点将通过本发明实施方式的如下描述得以阐明,其中:
图1示意性示出示出了本发明路由器组的网络结构示意图;
图2示出了本发明同一路由器组内的路由器网络结构示意图;
图3示出了本发明的全局网络连接示意图;
图4示出了本发明二级全连接互连网络的容错完全自适应路由方法流程图;
图5示出了本发明路由器组映射到超立方体中,从超立方体的子立方体中收集安全信息的流程图;
图6示出了本发明同一组路由器组中的路由器映射到超立方体中,从超立方体的子立方体收集安全信息的流程图。
具体实施方式
通过参考示范性实施例,本发明的目的和功能以及用于实现这些目的和功能的方法将得以阐明。然而,本发明并不受限于以下所公开的示范性实施例;可以通过不同形式来对其加以实现。说明书的实质仅仅是帮助相关领域技术人员综合理解本发明的具体细节。
在下文中,将参考附图描述本发明的实施例。在附图中,相同的附图标记代表相同或类似的部件,或者相同或类似的步骤。
在下文实施例中本发明的一种二级全连接互连网络的容错完全自适应路由方法采用的是二级全连接互连网络,所说的二级全连接互连网络包括多个路由器组,每个路由器组包括多个路由器,应当理解的是,这里所说的多个路由器组是第一级互连网络,每个路由器组内包括的多个路由器为第二级互连网络。所述多个路由器组之间两两相互全连接,所述多个路由器之间两两相互全连接。
本发明的二级全连接互连网路通过将所述多个路由器组以及同一组中的多个路由器映射到不同的超立方体中,从超立方体的子立方体中收集安全信息,从而使的映射到不同超立方体中的路由器组层以及路由器层形成全局无故障的链路。具体地,多个路由器组以及同一组中的多个路由器被映射到不同的超立方体中,从超立方体的子立方体中收集安全信息的详细方法将在下文中具体阐释。
为了更加清楚的说明本发明,如图1所示本发明路由器组的网络结构示意图,本实施例中有n个了路由器组G0、G1、G2......Gn-2、Gn-1,路由器组之间两两相互全连接,从而使的链路出现故障时可以通过相互连接的网络进行数据传递。如图2所示同一路由器组内的路由器网络结构示意图,本实施例中以其中一个路由器组内的路由器为例,应当理解的是,每个路由器组内的路由器互连网络与本实施例中的链路相同,路由器组内有m个路由器R0,R1……Rm-1。如图3所示本发明的全局网络连接示意图,本实施例示意性给出了三个路由器组以及每一路由器组内示意性给出了两个路由器,路由器组G0、G1、G2之间两两相互全连接,所有的路由器(包括每个路由器组之间的路由器)R0,R1之间两两相互全连接。
本实施例采用的二级全连接互连网络,将路由器分为两个层级,其中第一级为n个路由器组,其中n为大于或等于1的整数;第二级为每个路由器组内包括一个或多个路由器,本实施例中优选为m个路由器。实施例中,任意两个路由器之间距离为一个跳步,路由器组之间的拓扑通过如下方法进行:
S1、对于i从0到n-2,将Gi组的Rm-1路由器与Gi+1组的R0路由器连接。
S2、对于i从0到n-3,j从i+2到n-1,将Gi组的路由器Rv与Gj组的路由器Rv’连接,其中v是Gi组中最高可用的插槽,v’是Gj组中最低可用的插槽。
路由方法
下面通过本实施例对本发明的容错完全自适应方法详细说明,如图4所示二级全连接互连网络的容错完全自适应路由方法流程图,所述路由方法包括如下步骤:
步骤101,设置数据包,数据包设置包括对数据包源节点、数据包源节点所在路由器组、数据包当前节点、数据包当前节点所在路由器组、数据包目标节点和数据包目标节点所在路由器组进行标号,本实施例中对源节点标号为GsRi,数据包源节点所在路由器组标号为S,数据包当前节点标号为GcRt,数据包当前节点所在路由器组标号为C,数据包目标节点标号为GdRj,数据包目标节点所在路由器组标号为D。所述数据包包括安全数据包和非安全数据包。
步骤102,判断所述数据包当前节点标号GcRt与所述数据包目标节点标号GdRj是否相等,二者的判断方式主要通过数据包当前节点所在路由器组标号为C、数据包目标节点所在路由器组标号为D、当前节点路由器Rt和目标节点路由器Rj体现,若相等,即C=D且Rt=Rj,则算法结束。
步骤103,判断所述数据包源节点所在路由器组标号S与所述数据包目标节点所在路由器组标号D是否相等,若不相等,即S≠D,则进入步骤104进行跳步;若相等,即S=D,则进入步骤105进行跳步。
步骤104,若所述数据包源节点所在路由器组S与所述数据包目标节点所在路由器组D之间全局链路无故障,则数据包传递至所述数据包目标节点所在路由器组D;
若所述数据包源节点所在路由器组S与所述数据包目标节点D所在路由器组之间全局链路存在故障,若所述数据包源节点所在路由器组S与所述数据包目标节点所在路由器组D之间全局链路存在故障,则依次检查如下链路,寻找可以传递数据包的无故障链路,按照其中的一个或多个链路进行数据包传递:
链路一:沿着所述数据包源节点所在路由器组S到所述数据包目标节点所在路由器组D的组级MFR路径传递所述数据包到中间路由器组V,其中,中间路由器组V满足如下条件:(1)所述中间路由器组V与所述数据包目标节点所在路由器组D满足汉明距离为1;(2)所述中间路由器组V是包含中间路由器组V和数据包目标节点所在路由器组D的子立方体中的局部安全节点或第二局部非安全节点。
链路二:沿着所述数据包源节点所在路由器组S到所述数据包目标节点所在路由器组D的组级MFR路径传递所述数据包到中间路由器组V,其中,中间路由器组V满足如下条件:所述中间路由器组V的所有全局输出信道都是无故障的。
链路三:沿着所述数据包源节点所在路由器组S到所述数据包目标节点所在路由器组D的组级MFR路径,通过预留的所述数据包源节点所在路由器组S到所述中间路由器组V的子路径绕道传递数据包到中间路由器组V;其中,所述中间路由器组满足如下条件:(1)所述中间路由器组V与所述数据包目标节点所在路由器组D满足汉明距离为1;(2)所述中间路由器组V是包含中间路由器组V和数据包目标节点所在路由器组D的子立方体中的局部安全节点或第二局部非安全节点。
链路四:沿着所述数据包源节点所在路由器组S到所述数据包目标节点所在路由器组D的组级MFR路径,通过预留的所述数据包源节点所在路由器组S到中间路由器组V的子路径绕道传递数据包到输出全局无故障的中间路由器组V。
所述的MFR路径是采用标号减向优先算法。
上述不同链路的选择通过依次对链路一到链路四进行检查,直至将数据包传递至中间路由器组V。
上述过程中,所述的子立方体中的局部安全节点或第二局部非安全节点在下文中给出详细的说明。
步骤105,数据包源节点所在路由器组标号S与所述数据包目标节点所在路由器组标号D相等,即数据包源节点与目标节点在同一路由器组中;
若所述数据包源节点GsRi与所述数据包目标节点GdRj之间局部链路无故障,则数据包传递至所述数据包目标节点GdRj;
若所述数据包源节点GsRi与所述数据包目标节点GdRj之间局部链路存在故障,则依次检查如下链路,寻找可以传递数据包的无故障链路,按照其中的一个或多个链路进行数据包传递:
链路一:沿着所述数据包源节点GsRi到所述数据包目标节点GdRj的MFR路径传递所述数据包到中间路由器GwRv,其中,中间路由器GwRv满足如下条件:(1)所述中间路由器GwRv与所述数据包目标节点GdRj满足汉明距离为1;(2)所述中间路由器GwRv是包含中间路由器GwRv和数据包目标节点GdRj的子立方体中的局部安全节点或第四局部非安全节点。
链路二:沿着一条MFR路径,绕道传递数据包到任意一个所有输出信道都是无故障的中间路由器GwRv。
链路三:绕道传递数据包到任意一个所有输出信道都是无故障的中间路由器GwRv。
所述的MFR路径是采用标号减向优先算法。
上述不同链路的选择通过依次对链路一到链路三进行检查,直至将数据包传递至中间路由器GwRv。
上述过程中,所述的子立方体中的局部安全节点或第四局部非安全节点在下文中给出详细的说明。
上述路由方法的数据传递过程,应当遵循如下的流控机制,本实施例中以数据传递过程的下一跳路由器输入端口有f个空闲缓冲,s个安全数据包为例,具体的流控机制为:
若f=2,那么数据包可以前进下一个节点,
若f=1且s=1,那么数据包可以前进下一个节点,
若f=1且s=0,如果数据包下一跳遵循MFR路由机制,那么该数据包可以前进下一个节点,
其他情况下,数据包不能前进到下一个节点。
步骤106,路由结束。
上述路由方法所述的全局链路是路由器组间的链路,所述的局部链路是路由器组内路由器间的链路,所述的汉明距离是指在超立方体链路中,从中间路由器组V到数据包目标节点所在的路由器组D或者从中间路由器GwRv到数据包目标节点GdRj的最短路径。
应当理解的是上述的本发明的路由方法,所述的数据包源节点、数据包当前节点以及数据包目标节点都均以路由器组内的路由器作为节点。
本实施例根据本发明的容错完全自适应路由方法,数据包从二级全连接互连网络中找到传输的下一个节点,数据传递过程增强了容错能力,提高了系统性能。
路由器组映射到超立方体收集安全信息
下文中详细说明路由器组映射到超立方体中,从超立方体的子立方体中收集安全信息的方法,如图5所示路由器组映射到超立方体中从超立方体的子立方体中收集安全信息的流程图,具体包括如下步骤:
步骤501,首先选取任意一个路由器组作为超立方体中的第一个节点;
步骤502,选取与所述第一个节点之间无故障的另外一个路由器组作为超立方体中的第二个节点;本领域技术人员应当理解的是,这里所说的节点之间的无故障应当是节点之间尽可能的无故障。
步骤503,将其余路由器组映射到所述超立方体中作为超体方体的其余节点,其中每个节点连接的新节点与已经连接的所有节点链路无故障;本领域技术人员应当理解的是,这里所说的节点之间的无故障应当是节点之间尽可能的无故障。
步骤504,定义所述超立方体的安全节点和非安全节点;其中,安全节点和非安全节点按如下方法分类:
第一非安全节点,超立方体中的一条单向故障链路的源节点;
第二非安全节点,至少与两个第一非安全节点相邻的无故障节点或者
至少与三个第一非安全节点和第二非安全节点相邻的无故障节点;需要说明的是,这里所说的三个第一非安全节点和第二非安全节点是指第一非安全节点和第二非安全节点的节点个数之和至少三个,例如在一些实施例中,第二非安全节点与一个第一非安全节点相邻,同时与另外的两个第二非安全节点相邻。在另一些实施例中,第二非安全节点还可以是与两个第一非安全节点相邻,同时与另外一个第二非安全节点相邻。
安全节点,除第一非安全节点和第二非安全节点外的其余节点。
步骤505,将步骤S504中的安全节点应用到所述超立方体的子立方体中,其中,超立方体中某个节点用z0z1z2...zn-1表示,zi是0或1,那么z0*...*表示其中一个子立方体,*表示不关心的位。根据上述的定义,子立方体第一位是z0,其他的n-1位可以是0或1,即z1z2...zn-1每一位可以是0或1。
所述子立方体的节点按如下方法分类:
第一局部非安全节点,子立方体中的一条故障的单向链路的源节点;
第二局部非安全节点,至少与两个第一局部非安全节点相邻的无故障节点或者
至少与三个第一非安全节点和第二非安全节点相邻的无故障节点;需要说明的是,这里所说的三个第一非安全节点和第二非安全节点是指第一非安全节点和第二非安全节点的节点个数之和至少三个,例如在一些实施例中,第二非安全节点与一个第一非安全节点相邻,同时与另外的两个第二非安全节点相邻。在另一些实施例中,第二非安全节点还可以是与两个第一非安全节点相邻,同时与另外一个第二非安全节点相邻。局部安全节点,除第一局部非安全节点和第二局部非安全节点的其余节点。
通过上述路由器组映射到超立方体收集安全信息的方法,收集了路由器组的安全信息(安全节点和局部安全节点),使得路由器组的链路尽可能不存在故障链路。
同一路由器组的路由器映射到超立方体收集安全信息
下文中详细说明同一路由器组中的路由器映射到超立方体中,从超立方体的子立方体中收集安全信息的方法,如图6所示本发明同一组路由器组中的路由器映射到超立方体中,从超立方体的子立方体收集安全信息的流程图,具体包括如下步骤:
步骤S601,首先选取任意一个路由器作为超立方体中的第一个节点;
步骤S602,选取与所述第一个节点之间无故障的另外一个路由器作为超立方体中的第二个节点;本领域技术人员应当理解的是,这里所说的节点之间的无故障应当是节点之间尽可能的无故障。
步骤S603,将其余路由器映射到所述超立方体中作为超体方体的其余节点,其中每个节点连接的新节点与已经连接的所有节点链路无故障;本领域技术人员应当理解的是,这里所说的节点之间的无故障应当是节点之间尽可能的无故障。
步骤S604,定义超立方体的安全节点和非安全节点;所示安全节点和非安全节点按如下方法分类:
第三非安全节点,超立方体中的一条单向故障链路的源节点;
第四非安全节点,至少与两个第三非安全节点相邻的无故障节点或者
至少与三个第三非安全节点和第四非安全节点相邻的无故障节点;需要说明的是,这里所说的三个第三非安全节点和第四非安全节点是指第三非安全节点和第四非安全节点的节点个数之和至少三个,例如在一些实施例中,第四非安全节点与一个第三非安全节点相邻,同时与另外的两个第四非安全节点相邻。在另一些实施例中,第四非安全节点还可以是与两个第三非安全节点相邻,同时与另外一个第四非安全节点相邻。
安全节点,除第三非安全节点和第四非安全节点外的其余节点。
步骤S605,将步骤S604中的安全节点应用到所述超立方体的子立方体中,其中,超立方体中某个节点用z0z1z2...zn-1表示,zi是0或1,那么z0*...*表示其中一个子立方体,*表示不关心的位。根据上述的定义,子立方体第一位是z0,其他的n-1位可以是是0或1,即z1z2...zn-1每一位可以是0或1。
所述子立方体的节点按如下方法分类:
第三局部非安全节点,子立方体中的一条故障的单向链路的源节点;
第四局部非安全节点,至少与两个第一局部非安全节点相邻的无故障节点或者
至少与三个第三非安全节点和第四非安全节点相邻的无故障节点;需要说明的是,这里所说的三个第三非安全节点和第四非安全节点是指第三非安全节点和第四非安全节点的节点个数之和至少三个,例如在一些实施例中,第四非安全节点与一个第三非安全节点相邻,同时与另外的两个第四非安全节点相邻。在另一些实施例中,第四非安全节点还可以是与两个第三非安全节点相邻,同时与另外一个第四非安全节点相邻。
局部安全节点,除第三局部非安全节点和第四局部非安全节点的其余节点。
通过上述同一路由器组中的路由器映射到超立方体收集安全信息的方法,收集了路由器的安全信息(安全节点和局部安全节点),使得路由器的链路尽可能不存在故障链路。本发明二级全连接互连网络的容错完全自适应路由方法,采用两层安全信息,不仅能够容忍静态故障,还通过动态重构安全信息从而能够容忍动态故障,在路由器组层和路由器层动态重构安全信息。
结合这里披露的本发明的说明和实践,本发明的其他实施例对于本领域技术人员都是易于想到和理解的。说明和实施例仅被认为是示例性的,本发明的真正范围和主旨均由权利要求所限定。
Claims (10)
1.一种二级全连接互连网络的容错完全自适应路由方法,其特征在于,所述二级全连接互连网络包括多个路由器组,每个路由器组包括多个路由器,将所述多个路由器组以及同一组中的多个路由器映射到不同的超立方体中,从超立方体的子立方体中收集安全信息,其中
所述多个路由器组之间两两相互全连接,所述多个路由器之间两两相互全连接;
所述路由方法包括如下步骤:
a,设置数据包,对数据包源节点、数据包源节点所在路由器组、数据包当前节点、数据包当前节点所在路由器组、数据包目标节点和数据包目标节点所在路由器组进行标号;
b,判断所述数据包当前节点标号与所述数据包目标节点标号是否相等,若相等,则算法结束;
c,判断所述数据包源节点所在路由器组标号与所述数据包目标节点所在路由器组标号是否相等;若不相等,则进入步骤d;若相等,则进入步骤e;
d,若所述数据包源节点所在路由器组与所述数据包目标节点所在路由器组之间全局链路无故障,则数据包传递至所述数据包目标节点所在路由器组;
若所述数据包源节点所在路由器组与所述数据包目标节点所在路由器组之间全局链路存在故障,则依次检查如下链路,按照其中的一个链路进行数据包传递:
链路d1:沿着所述数据包源节点所在路由器组到所述数据包目标节点所在路由器组的组级MFR路径传递所述数据包到中间路由器组,其中,中间路由器组满足如下条件:(1)所述中间路由器组与所述数据包目标节点所在路由器组满足汉明距离为1;(2)所述中间路由器组是包含中间路由器组和数据包目标节点所在路由器组的子立方体中的局部安全节点或第二局部非安全节点;
链路d2:沿着所述数据包源节点所在路由器组到所述数据包目标节点所在路由器组的组级MFR路径传递所述数据包到中间路由器组,其中,中间路由器组满足如下条件:所述中间路由器的所有全局输出信道都是无故障的;
链路d3:沿着所述数据包源节点所在路由器组到所述数据包目标节点所在路由器组的组级MFR路径,通过预留的所述数据包源节点所在路由器组到所述中间路由器的子路径绕道传递数据包到中间路由器组;其中,所述中间路由器组满足如下条件:(1)所述中间路由器组与所述数据包目标节点所在路由器组满足汉明距离为1;(2)所述中间路由器组是包含中间路由器组和数据包目标节点所在路由器组的子立方体中的局部安全节点或第二局部非安全节点;
链路d4:沿着所述数据包源节点所在路由器组到所述数据包目标节点所在路由器组的组级MFR路径,通过预留的所述数据包源节点所在路由器组到所述中间路由器的子路径绕道传递数据包,其中,中间路由器组满足如下条件:所述中间路由器的所有全局输出信道都是无故障的。
e,若所述数据包源节点与所述数据包目标节点之间局部链路无故障,则数据包传递至所述数据包目标节点;若所述数据包源节点与所述数据包目标节点之间局部链路存在故障,则依次检查如下链路,按照其中的一个链路进行数据包传递:
链路e1:沿着所述数据包源节点到所述数据包目标节点的MFR路径传递所述数据包到中间路由器,其中,中间路由器满足如下条件:(1)所述中间路由器与所述数据包目标节点满足汉明距离为1;(2)所述中间路由器是包含中间路由器和数据包目标节点的子立方体中的局部安全节点或第四局部非安全节点;
链路e2:沿着一条MFR路径,绕道传递数据包到任意一个所有输出信道都是无故障的中间路由器;
链路e3:绕道传递数据包到任意一个所有输出信道都是无故障的中间路由器。
2.根据权利要求1所述的路由方法,其特征在于,将所述多个路由器组映射到超立方体中,从超立方体的子立方体中收集安全信息,具体包括如下步骤:
S1,首先选取任意一个路由器组作为超立方体中的第一个节点;
S2,选取与所述第一个节点之间无故障的另外一个路由器组作为超立方体中的第二个节点;
S3,将其余路由器组映射到所述超立方体中作为超体方体的其余节点,其中每个节点连接的新节点与已经连接的所有节点链路无故障;
S4,定义所述超立方体的安全节点和非安全节点;
S5,将步骤S4中的安全节点应用到所述超立方体的子立方体中。
3.根据权利要求2所述的路由方法,其特征在于,所述安全节点和非安全节点按如下方法分类:
第一非安全节点,超立方体中的一条单向故障链路的源节点;
第二非安全节点,至少与两个第一非安全节点相邻的无故障节点或者
至少与三个的第一非安全节点和第二非安全节点相邻的无故障节点;
安全节点,除第一非安全节点和第二非安全节点外的其余节点。
4.根据权利要求2所述的路由方法,其特征在于,所述步骤5将安全节点应用的所述超立方体的子立方体中,对所述超立方体的子立方体的节点按如下方法分类:
第一局部非安全节点,子立方体中的一条故障的单向链路的源节点;
第二局部非安全节点,至少与两个第一局部非安全节点相邻的无故障节点或者
至少与三个第一局部非安全节点和第二局部非安全节点相邻的无故障节点;
局部安全节点,除第一局部非安全节点和第二局部非安全节点的其余节点。
5.根据权利要求1所述的路由方法,其特征在于,将所述同一组中的多个路由器被映射到超立方体中,从超立方体的子立方体中收集安全信息,具体包括如下步骤:
S1,首先选取任意一个路由器作为超立方体中的第一个节点;
S2,选取与所述第一个节点之间无故障的另外一个路由器作为超立方体中的第二个节点;
S3,将其余路由器映射到所述超立方体中作为超体方体的其余节点,其中每个节点连接的新节点与已经连接的所有节点链路无故障;
S4,定义所述超立方体的安全节点和非安全节点;
S5,将步骤S4中的安全节点应用到所述超立方体的子立方体中。
6.根据权利要求5所述的路由方法,其特征在于,所述安全节点和非安全节点按如下方法分类:
第三非安全节点,超立方体中的一条单向故障链路的源节点;
第四非安全节点,至少与两个第三非安全节点相邻的无故障节点或者
至少与三个第三非安全节点和第四非安全节点相邻的无故障节点;
安全节点,除第三非安全节点和第四非安全节点外的其余节点。
7.根据权利要求5所述的路由方法,其特征在于,所述步骤5将安全节点应用的所述超立方体的子立方体中,对所述超立方体的子立方体的节点按如下方法分类:
第三局部非安全节点,子立方体中的一条故障的单向链路的源节点;
第四局部非安全节点,至少与两个第三局部非安全节点相邻的无故障节点或者
至少与节点个数之和为三个以上的第三局部非安全节点和第四局部非安全节点相邻的无故障节点;
局部安全节点,除第三局部非安全节点和第四局部非安全节点的其余节点。
8.根据权利要求1所述的路由方法,其特征在于,所述数据包包括安全数据包和非安全数据包。
9.根据权利要求1所述的路由方法,其特征在于,所述的MFR路径是采用标号减向优先算法。
10.根据权利要求1所述的路由方法,其特征在于,所述的全局链路是路由器组间的链路,所述的局部链路是路由器组内路由器间的链路。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610882251.6A CN106656808B (zh) | 2016-10-10 | 2016-10-10 | 一种二级全连接互连网络的容错完全自适应路由方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610882251.6A CN106656808B (zh) | 2016-10-10 | 2016-10-10 | 一种二级全连接互连网络的容错完全自适应路由方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN106656808A true CN106656808A (zh) | 2017-05-10 |
CN106656808B CN106656808B (zh) | 2019-08-02 |
Family
ID=58854990
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201610882251.6A Active CN106656808B (zh) | 2016-10-10 | 2016-10-10 | 一种二级全连接互连网络的容错完全自适应路由方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN106656808B (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113271267A (zh) * | 2021-05-18 | 2021-08-17 | 清华大学 | 互连网络、自适应路由方法、装置、电子设备及存储介质 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101414952A (zh) * | 2008-11-28 | 2009-04-22 | 西安邮电学院 | 一种基于超立方体的可扩展并行计算互连网络拓扑结构 |
CN102904806A (zh) * | 2012-09-28 | 2013-01-30 | 清华大学 | 一种计算机系统的无死锁容错自适应路由方法 |
CN104079490A (zh) * | 2014-06-27 | 2014-10-01 | 清华大学 | 多层次的dragonfly互连网络及自适应路由方法 |
CN103973564B (zh) * | 2013-01-31 | 2017-12-15 | 清华大学 | 互连网络系统的自适应路由方法 |
-
2016
- 2016-10-10 CN CN201610882251.6A patent/CN106656808B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101414952A (zh) * | 2008-11-28 | 2009-04-22 | 西安邮电学院 | 一种基于超立方体的可扩展并行计算互连网络拓扑结构 |
CN102904806A (zh) * | 2012-09-28 | 2013-01-30 | 清华大学 | 一种计算机系统的无死锁容错自适应路由方法 |
CN103973564B (zh) * | 2013-01-31 | 2017-12-15 | 清华大学 | 互连网络系统的自适应路由方法 |
CN104079490A (zh) * | 2014-06-27 | 2014-10-01 | 清华大学 | 多层次的dragonfly互连网络及自适应路由方法 |
Non-Patent Citations (3)
Title |
---|
GUL N. KHAN.ETC: "Distributed recovery block based fault-tolerant routing in hypercube networks", 《IEEE》 * |
GUSTAVO D. PIFARRC.ETC: "Fully adaptive minimal deadlock-free packet routing in hypercubes, meshes, and other networks: algorithms and simulations", 《IEEE》 * |
XIANG DONG: "Fault-tolerant routing in hypercube multicomputers using local safety information", 《IEEE》 * |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113271267A (zh) * | 2021-05-18 | 2021-08-17 | 清华大学 | 互连网络、自适应路由方法、装置、电子设备及存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN106656808B (zh) | 2019-08-02 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN103703727B (zh) | 用于分体式架构系统中控制业务的弹性路由的方法和设备 | |
US9137098B2 (en) | T-Star interconnection network topology | |
JP6520344B2 (ja) | 並列計算機システム、並列計算機システムの制御方法、及び情報処理装置 | |
US20060002291A1 (en) | Methods of network routing having improved resistance to faults affecting groups of links subject to common risks | |
CN109698788A (zh) | 流量转发方法和流量转发装置 | |
CN105379196A (zh) | 容错和负载平衡路由 | |
CN110391977B (zh) | 一种网络故障保护的方法、系统和存储介质 | |
Yuan et al. | A new routing scheme for Jellyfish and its performance with HPC workloads | |
CN106489255A (zh) | 用于在高性能计算(hpc)环境中支持高效负载均衡的系统和方法 | |
CN104579951B (zh) | 片上网络中新颖的故障与拥塞模型下的容错方法 | |
Wang et al. | SprintNet: A high performance server-centric network architecture for data centers | |
Sem-Jacobsen et al. | Dynamic fault tolerance in fat trees | |
Wang et al. | Designing efficient high performance server-centric data center network architecture | |
CA2407911A1 (en) | Communications networks | |
WO2022269357A1 (en) | Deadlock-free multipath routing for direct interconnect networks | |
Alqahtani et al. | Rethinking fat-tree topology design for cloud data centers | |
CN106302169A (zh) | 确定的且优化的比特索引显式复制(bier)转发 | |
CN105450524B (zh) | 一种媒体转发路由优化计算的方法 | |
US10313232B2 (en) | Network control device, network control method, and recording medium for program | |
Lee et al. | Constructing disjoint paths for failure recovery and multipath routing | |
Bogdanski | Optimized routing for fat-tree topologies | |
CN106656808B (zh) | 一种二级全连接互连网络的容错完全自适应路由方法 | |
Liu et al. | Fault-tolerance characteristics of data center network topologies using fault regions | |
Shao et al. | Policy-rich interdomain routing with local coordination | |
Bishnoi | Hybrid fault tolerant routing algorithm in NoC |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |