专利名称:并行计算系统中的可适应路径选择的制作方法
技术领域:
本发明涉及一个并行计算系统中的数据处理问题,更具体地说,本发明对于通过一个具有多条互连通路的互连网络在并行计算单元之间传送数据是一种有效的方法(如在多维环形网中)。
本发明要解决的问题是当今并行计算机中所遇到的报文处理等待时间较长的问题。这样一个计算机系统由大量通过一个高速通信网络互连的节点组成。通常在每个节点由一个处理器和存储器组成。这些节点独立工作,通过经由通信网络传送报文及数据块相互作用。
计算机通信网络使这些节点连接起来,但是因为节点数目可能非常大(如,数千)、所以在这样的系统中,每个节点都有一个专用的到其他各节点的链路是不切实际的,因此,通常采用一些互连链路的规则的拓扑结构,其中每个节点只到少数几个相邻节点有直接链路。在这样的网络中,为在没有直接链路的节点间传送信息,必须利用网内中介节点和桥链路建立一条通路。
在给定的这样一个环境下,当一个节点需向一个不相邻节点发送一个报文时,必须要有一个装置以确定要用的中介链路和节点,并且以最小延迟沿着这些中介链路发送此报文。在一个一般的网络中,及两个给定的节点间可能有许多可行的路径。本报文传送装置能从这样多可行的路径中选择一条路径,避开那些处于忙状态或断开状态的中介链路和节点。此外,本报文传递装置能够独立于每一中介节点的处理器工作。
本发明的网络拓扑结构可用于建立一个具有多节点且每个节点与其各个方向的相邻节点共享通讯链路的网络结构。这种类型拓扑结构的一个例子就是多维环形网络。
图1表示一个两维环形网的拓扑结构。每一方框-10代表一个节点,每条线-20表示一条通讯链路。图1中的20个节点以每5个节点一组被四个节点环面连接起来。一个三维环形网是许多二维网络在第三维方向上的逻辑堆叠。每一节点带有两条链路,一路连到二维网络上方对应的节点而另一路连向二维网络下方对应的节点。更大维数的环形网络也适用。
在以下的美国专利中可以找到有关并行计算系统的描述。其中转让给IBM的4636948号;给Tatsuo的4514807;给California Institut of Technology的4814980及4730322;给Princetou Univer-sity的4811214;给Teradata的4814979;4445171及4543630;给Jeumontschneider的4748660;给Thinking Machines Corp的4598400。这些专利描述了各种并行处理的体系结构,代表了类似于本发明的路径选择系统的早期发展情况。
本发明的目的是为满足下列需求,在此之前在并行处理环境中从未可能。一个关键的要求是在一多维网络中动态地寻找最短可用通路并由此通路从一个节点到其它任一节点发送一个报文的能力,无论两节点是否直接相连。此能力还兼有使得总传输时间比原始通信链路所需时间只低不多的功能。此通信链路还需具有动态地适应不断变化的、包括拥挤和不工作链路的网络条件而且在需要时使用备用路线。在没有中介节点缓冲情况下完成路径选择。这样就减少了花费且省去了当网络资源堵塞时的顺序搜索。最后,在报文的传送过程被暂时封锁时,任何网络资源必须被释放。
先有技术中没有满足上述要求的实例。下述几篇文献为先有技术。Dally,et al.,“环形网的路径选择芯片”-自《Distrihuted Computing》Springer Verlag,New York,1986;Chow et al.,“超立方计算机的超级开关网”-自《Conyurtr Architecture News》,Vol.16,No.2,May 1988。
“环形网路径选择芯片”一文描述了一个并行计算网络路径选择芯片,这种芯片专门用来在一个多维环形网中提供低等待时间的路径选择。此芯片预先建立一个序列,以此序列将报文通过中介节点发送到其目的地。这里采用了一种叫做“切入”(Cutthrough)路径选择的技术。这种技术使得一中介节点一收到每一字节便立刻将其转发。因此,总传输时间接近原始链路速度并且在中介节点不需要缓冲。在“A Framework for Adapting in Multicomputer Networks”(自《ACM Symposium on Parauel Algorithms and Architecture 1989》)一文中有关于“切入”路径选择更详细的叙述。
“环形网的路径选择芯片”一文,更确切地说“切入”路径选择的问题是预先建立的路径是静态的,它仅仅基于源节点和目的节点的相对位置。如果路径中的任何链路不能工作,即使能使用一个备用路径,报文也不能通过网络传送。此外,在对网络中的一些链路出现争用情况时,将暂时封锁一个或多个报文的发送过程。这可能轮流地封锁一个或多个报文发送过程。因为被封锁的报文不释放它们正使用的通路,以致这些报文的封锁轮番冲去其它报文。因此,如果一个报文的发送过程被暂时封锁后,没有办法释放网络资源。
“超立方计算机的超级开关网络”一文用于在一个超立方计算机中传送报文。超立方体是多维环面的一种特殊情况,其中在每一维的节点数总是等于2。超级开关网络实现适应路径选择。因此,在传送一个报文以前要搜索所有可能的路径,对路径加以标志从而避开拥挤和不工作的链路。这使得超级开关路径选择具有动态地适应不断变化的网络条件及不工作的链路。这种路径选择也不需要缓冲并且当在网络的初始搜索中检测出封锁时具有释放网络资源的功能。
以上提到的超级开关一文中叙述的功能仅适用于超立方体计算机这对于当今的多维网络的实现是个极大的限制。更进一步,在传送报文以前超级开关的顺序初始搜索也不大好。
本发明没有以上提到的问题和限制。
根据本发明,只要将许多完全相同的路径选择装置安装在系统的每一节点,就可以高效率地从节点到节点传送信息。每个路径选择装置都包含一个发送器/接收器对,它们通过一个普通的纵横(空间)开关配对。每个发送器/接收器对联合起来形成到其它邻接节点的双间通讯链路。每对发送器/接收器包含到其所在节点的处理器和存储器的专用链路。
使用一个由路径描述符位组织成的报文头从节点发送信息。当此信息到达目的节点时,每个节点的接收器/发送器对改变状态。报文消息同时在若干节点上传播,横贯这些节点很快到达目的节点。当完成最终节点的连接时,在网络上返回一个命令从而释放所有后续通信链路。
本发明具有在多维网中从任一节点到其它任意节点发送报文的功能,不论两节点是否直接相连。这种路径选择发生在总传输时间中,而点到点之间的传输链路所需时间接近总传输时间。
这种路径选择通过在需要时使用一条备用路径以及不采用报文缓冲来动态地适应不断变化的,包括拥挤及不工作链路的网路条件。这种路径选择的体系结构非常灵活,可以检测分块报文及动态地释放网络资源以减弱网络中的约束。
从下面对附图的详细描述,将对前述及本发明的其他的目的、方面和优点有更明确的了解。
图1显示了本发明中传统二维环形网的网络拓扑结构。
图2表示本发明的路径选择装置和节点间的关系。
图3表示本发明的路径选择装置的内部结构。
图4表示本发明的一个网络实例。
图5表示本发明的一个网络搜索实例。
图6表示本发明的另一个网络搜索实例。
图7表示本发明的又一网络搜索实例。
图8表示本发明的又一网络搜索实例。
图9是流程图,表示本发明的接收器和注入器组件的状态变化。
图10是流程图、表示本发明的发送器和析取器组件的空闲状态。
图11是流程图,表示本发明的接收器和析取器组件的搜索状态。
图12是流程图,表示本发明的发送器和析取器组件活动状态处理过程。
图13是流程图,表示本发明的发送器和析取器组件的延迟状态。
本发明利用了多个完全相同的路径选择装置,它们与系统中的每个节点一对一相连。参见图2,节点10,11,12,13间的通信链路直接与路径选择装置200,210,220,230相连。
这种通信链路可以是局部网络或者其它当今广泛用于节点间通信的标准的、规范的通信介质。路径选择装置中,处理器和存储器可选用普遍使用的各种处理器和存储器,如80386处理器和与之兼容的存储器。
在图2中,每一路径选择装置依次与相应节点的处理器或存储器100,110,120和130相连。节点10拥有四条分别被标号为21,22,23,24的通信链路。
该路径选择装置支持的链路数目是可变的并且依赖于网络的维数。为了简述本发明,设想一个类似于图1中所示的两维网络。在图1中,节点10通过一条通信链路20与其四个邻接节点相连。后面将讨论支持更大维数所需的附加条件。
图3显示了两维环形网的路径选择装置的内部结构。对一个两维环形网来说,每一个路径选择装置支持四条双向链路,包括到另外路径选择装置(在其他节点)的输入链路300和输出链路320及到其所在结点的处理器或存贮器的输入链路310和输出链路330。由于这些链路是双向的,所以需要5个接收器301,302,3303,304,311和5个发送器321,322,323,324,331。纵横开关350是作为用于各种链路间转换信息的硬件的一个例子来显示的。具体实现起来,可以用一个立体开关(Space Switch)来代替纵横开关。
每一链路按其发送数据的方向适当地加以标号。因此,标为W+301的接收器和W+321的发送器对应于图2中的通信链路21;W-302接收器和W-322发送器对应于通信链路22;接收器X+303和发送器X+323对应于通信链路23;X-304接收器和X-324发送器对应于通链路24。“注入器”311是个特殊的接收器,它仅从本节点的处理器或存储器而不从其他节点接收数据。“析取器”331是个特殊的发送器,它仅向本节点的处理器或存储器发送数据。
纵横开关350实现了由链路接收器301-311到链路发送器321-331的一对多转移。为了形成连接,每一个接收器301-311发一个选择掩码到纵横开关350,表示它要通过发送器321-331中那一个发送。仅当这个特定的发送器可用时,纵横开关350才形成连接。打开一条通路以后,一个发送器请求纵横开关释放先前连接的通信链路。
选择掩码由一个四位命令字构成且由每个接收器发送给纵横开关。如果选择掩码为全0,那么纵横开关建立一条从发送该掩码的接收器到析取器的路径。如果选择掩码为非0,那么其每一位用来表示是否有一条路线对相应的发送器打开。例如选择掩码0001告知纵横开关从发出该掩码的接收器,也就是接收器301,到W+321发送器开辟一条通路。选择掩码1010表示要申请二条通路,一条从接收器301到W-322发送器,另一条从接收器301到X-324发送器。当通过纵横开关开辟了一条通路,该接收器生成的每一字节被传送到所有相连的发送器。
图9为流程图,它表示了接收器和注入器的状态变化。每个接收器有两个初始状态-空闲(IDLE)和活动(ACTIVE)。在空闲状态时,通过某链路接收到的第一个字节在报文的开关加标记并使接收器进入活动状态。判定框900测试来自该链路或存储器的一个字节。如检测到一个字节,该接收器进入活动状态,否则,该接收器返回空闲状态。在功能框910中,接收器以第一个收到的字节的最低有效半字节(四位)作为一个发往纵横开关的选择掩码。当该掩码被发送到纵横开关时,它表示一组期望的到一个或多个发送器的通路。
判定框920测试发送器是否忙或不能工作。如果没有可用的发送器,则转向功能框960继续执行,在此通过链路返回一条关闭链路(LINK-CLOSE)命令。如果至少有一条通过纵横开关的通路可用,转向判定框940测试数据其它的字节。如果数据存在,如功能框950所示,它被通过纵横开关传送。如果其它的字节不存在,控制转向功能框960。
图10中,每个发送器有四种状态-空闲(IDLE)、搜索(SEARCHING),活动(ACTIVE),和延迟(DELAYED)。判定框8000表明;一个发送器开始于空闲状态,只要它没有通过纵横开关和任何接收器相连,它就一直停留在这个状态。处于该状态时,该发送器既不接收也不发送数据。当纵横开关将一个发送器连到一个接收器时,该发送器收到的第一个字节就是选择掩码。
功能框8010以选择掩码做为一个操作数,基于位屏弊的全同码做为另一操作数,然后将它们进行按位与运算。这一操作选择了一条过纵横开关350的路径。由上面操作可能得到的值及与其相关连的功能框如下所示。
1110对W+发送器(8020)1101对W-发送器(8030)1011对X+发送器(8040)0111对X-发送器(8050)0000对析取器(8055)然后,在功能框8060中,将上面操作得出的结果存入工作(WORK)寄存器中。然后在判定框8070判定该结果是否为0。如果非0,转向8090框继续执行,在那里将掩码字节丢弃,然后该发送器进入搜索状态。如果结果值为0,则丢弃掩码字节,发送器象析取器一样进入活动状态。
在搜索状态,发送器修改它收到的每一后续字节并将结果从链路送出。图11表示发送器和析取器使用的搜索状态逻辑。
判定框9100测试接收到的字节是不是链路关闭命令。
如果收到的字节是链路关闭命令,转向功能框9190,此时关闭通过纵横开关的通路且状态置为空闲。
如果收到的字节不是链路关闭命令,判定框9110判定来自纵横开关的其他字节是否可用。如果不可用,处理转向框9100;否则工作寄存器和接收的字节进行按位或运算-这在功能框9120中完成。
然后在判定框9130中,运算结果同0000,0011,1100,和1111相比较。如判定框9130的测试不成功(即检测不匹配),则转向功能框9140,在这里将运算结果送到下一个节点。如果检测匹配,功能框9150完成基于接收到的字节和工作寄存器的按位与运算。在功能框9160,结果成为工作寄存器的新值。
在判定框9170中,接收到的字节同0000进行比较。如果收到的字节为0000,则发送器进入延迟状态。否则转入判定框9180,将工作寄存器中的新值同0000相比。如果相等,则在功能框9200中,发送器丢弃接收到的字节进入活动状态。否则,转入9100框反复上述过程。
在活动状态和延迟状态中,不经修理就将接收到的每一字节送出发送器的链路。如果信息被指定送到析取器,就意味着该字节可直接用于本地节点的处理器和存储器。这两种状态的不同点是在延迟状态时,需要发送一个多余的字节以使得输入字节在工作寄存器延迟一个周期。
图12表示发送器和析取器组件的活动和延迟状态。在活动状态下,判定框1200判定收到的字节是否为链路关闭命令。如果是,转向功能框1270,此时关闭到此组件的纵横开关的路径。否则,转向判定框1210,判定后续字节存在与否。如果不存在转向框1200,否则在功能框1220将最近一个字节发往下一节点。
图13表示延迟状态处理过程。从判定框1230开始,在这里进行测试来判定接收到的字节是不是链路关闭命令。如果是,转向功能框1280执行关闭到此组件的纵横开关的通路。如果不是,转向判定框1240,判定是否存在一后续字节。如果没有,返回框1230;否则,转到功能框1250,将工作寄存器的内容发送到下一节点。在功能框1260中,存储收到的工作寄存器的字节。最后,在功能框1290丢弃收到的这个字节。
当发送器处于搜索、活动或延迟状度时,假如这个发送器正向某接收器发送数据(或者说,在链路的另一面的接收器),而该接收器又返回一条链路关闭命令,则此发送器终止参与那个报文的传输,通知纵横开关中断它和正向它发送数据的接收器间的连接,返回到空闲状态。
当连到某一接收器的所有发送器均返回到空闲状态时,马上通知该接收器;它不再与任何发送器连接且它应马上返回空闲状态。如果某条链路不工作,驱动该链路的发送器总处于空闲状态。如果驱动不工作链路的发送器通过纵横开关收到一个要发送的字节,则这个发送器立刻通知纵横开关中断这个连接(它到纵横开关的连接)就如同它收到一条链路关闭命令一样。最后,如果在传送中间一条链路变为不工作的,驱动该链路的发送器马上以同样方式中断连接。
除了数据,在每条链路上通过纵横开关还可以双向传送几条命令。这些命令作为独立的控制线或是数据中特殊的内部escape字符来实现。这种实现随链路设计的不同而不同。
链路关闭(LINK-CLOSF)命令通过某链路(以与数据流相反方向)从一节点的接收器返送到另一节点的发送器。如前所述,链路关闭命令使得发送器回到空闲状态并且关闭它通过纵横开关的连接。如果通过纵横开关仅有一条开放通路,该命令使得又一个链路关闭命令被发出,这次是通过到源点更近一级的链路传送的。
报文结束命令通过纵横开关在若干链路上与数据流方向一致从源节点传送到目的节点。中介接收器和发送器通过本系统把报文结束命令当作一个数据字节来发送。当目的节点收到报文结束命令时,检测该报文循环冗余校验码(CRC)。如果CRC是正确的,则返回一条确认(Acknowledge)命令,随后发一个链路关闭命令。如果CRC错,仅发送一条链路关闭命令。
确认命令在每一链路上逆数据流方向从接收器送回到发送器;且通过每个纵横开关从发送器回到接收器。仅在报文接收成功以后,才由目的节点产生此命令。每个中介路径选择装置向源节点返回确认命令而没有任何动作。在源节点,确认命令用来表明报文接收成功。
为了传送一个报文,源节点形成一个包含下列部分的数据流。(以传送顺序在下面列出)。该数据应以与网络中每一链路相同的速度送入源节点的路径选择装置的注入器。
1.一个路径选择报头(0或更多字节);
2.一个0字节(结束报头);
3.将要发送的报文(0个或多个字节);
4.报文的CRC码(不包括报头);
5.一条报文结束命令。
如果报文被正确地收到,源节点应该从它的注入器先收到一条确认命令。然后收到一条链路关闭命令。如果仅有后者而没有前者,源节点就知道报文没有收到且应当重新发送。
当一个报文到达其目的节点时,被传送的字节以与该网中链路相同的速度,按发送的顺序,从目的节点的路径选择装置的析取器中输出。报头(包括标志其结束的全0字节)不出现在目的地,析取器中仅有报文,CRC码,报文结束命令。
CRC码的校验和报文结束、确认、链路关闭命令的生成均由路径选择装置和本地节点的处理器或存储器之间的硬件来控制。因为在出现最终的链路关闭命令之前,路径选择装置将一直保持一条对源节点开放的通路,所以,报文结束命令和确认命令或链路关闭命令之间的延迟应尽量短。
报头由源节点生成且在报文前面发送,它说明报文将采用哪条或哪些条通路。在两维环形网络中,每一报头字节仅有最低有效四位被使用。报头的每个字节解释如下(0位为最低有效位)。
0位置为1表示在W+方向上移动一个链路。
1位置为1表示在W-方向上移动一个链路。
2位置为1表示在X+方向上移动一个链路。
3位置为1表示在X-方向上移动一个链路。
4~7位在两维网络中置为0。
为了生成一个最简单的报头,源节点确定它与目的节点在每一方向上的相对距离。报头的长度(以字节为单位)等于沿着最长的方向经过的距离加上一个全0字节。
将报头的字节组看成一个表,其中每个字为表中一行,每一列代表一个方向(如上所述)。在某方向上到目的节点移动了多少次,相应的那列就应填上多少。在每一列中,全0前面可能是任意值。因此报头的首字节有最多的置位,而最后一个字节为全0。
下面是个例子,从节点0,0到节点3,2发送一个报文,这须在W+方向移动3次,在X+方向上移动2次。代表这次移动的基本报文头有四个字节长,如下所述。
0000 0101 被发送的第一字节0000 01010000 00010000 报头结束当收到报头时,路径选择装置搜索所有的可能从源节点到目的节点的直接通路。每一路径被并行搜索。使用传到目的节点的第一个字节(在报文结束前保持开放)。所有其他的路径被丢弃(用链路关闭命令)-一旦他们没有到达目的地。
在上述例子里,下面的路径被并行地全部搜索。
1 0,0-0,1-0,2-1,2-2,2-3,22 0,0-0,1-1,1-1,2-2,2-3,23 0,0-0,1-1,1-2,1-2,2-3,24 0,0-0,1-2,0-2,1-3,1-3,25 0,0-1,0-1,1-1,2-2,2-3,26 0,0-1,0-1,1-2,1-2,2-3,27 0,0-1,0-1,1-2,1-3,1-3,28 0,0-1,0-2,0-2,1-2,2-3,29 0,0-1,0-2,0-2,1-3,1-3,210 0,0-1,0-2,0-3,0-3,1-3,2这可以在用报头的时候,通过显示被搜索网络子集来图示。图4中,源节点400标以“S”,目的节点401标以“D”。其它标以402的节点是在搜索期间被访问到的(除非有不工作链路)。
如果网络中一条或多条链路是忙的或不工作的,则沿着包含上述那些链路的通路传送的数据到达不了目的地。为增加至少搜索到一条到达目的地的通路的可能性,可以使用一种大规模的搜索模式。如果没有到达目的地的路径应把没有得到确认命令的一条链路关闭命令返回源节点。这样,源节点应尝试重新发送报文。
在搜索期间,对应于一个报文的多个数据流几乎同时汇合于中介节点和目的节点。当两个数据流到达同一节点时,两接收器发给纵横开关选择掩码申请同一个发送器。纵横开关在它的多个输入中做出抉择以保证每一发送器仅与一条输出链路相连。未被选中的接收器被告知没有发送器与之连接,然后返回链路关闭命令。
路径选择装置以报头中说明的方式搜索网络。没有无效的报头。通过改变前述的基本报头模式,被搜索的通路数目可以按要求增加或减少。
例如,通过报头用的字节数是到目的地的总移动次数(加1)且在每一报头中仅仅置1位,可以说明一条通路。图5中,报头500的路径选择是从(0,0)501到(1,2)502,这也是它的搜索模式。
在报头600的列中间插入附加0位可使通过许多节点的报文的搜索模式被压缩。图6中就是这样的例子。注意除最后一行外的每一行必须为非0。
通过将冗余移动(在同一维中的正向和负向)也包括进去,扩展搜索模式以包括图7中的700及图8中的800所示的备用路径是可能的。
下面二例将一维通路扩展成二维的。在这两种情况下,路径选择装置采用首先被找到且可用的直接通路。可以以各种方式扩展本发明的连接。扩展连接的最简单的方式是在一个两维以上的网络中使用本发明。为了增加维数,通过增加附加的接收器和发送器,可以扩展每一节点上的路径选择装置。如,下面是一个简短的表,列出了在四维环形网络中应用本发明所需改变的要点。
1.每个节点增加四条链路(Y+,Y-,Z+,Z-);
2.接收器的数目增加到8;
3.发送器的数目增加到8;
4.纵横开关加到9个端口;
5.每个报头字节的8位都被使用;
6.在目的节点要滤掉的报头表增加到16列(见搜索状态)。
在每一节点增加注入器和析取器的数目也可以增加本发明的连接。增加注入器的数量需要增加纵横开关的宽度。有多个注入器的节点可以同时发送多个报文。
增加了析取器数量的节点可以有一个编号或几个独立寻址的端口。为了增加析取器的数量,必须增加纵横开关的宽度。为对增加的析取器进行寻址,要使用通常可滤掉的报头值之一。
例如,下面列出了为在一个二维网络中加入第二对注入器/析取器所需要的附加改动。
1.增加一个附加的注入器。
2.增加一个附加的析取器。
3.纵横开关的宽度加1。
4.使用报头值0011来选择第二个析取器。当纵横开关收到选择掩码0011时,它不是把相应接收器连到W+和W-发送器;而是把这个接收器仅仅连到第二个析取器。
5.当一个发送器处于搜索状态且它刚刚收到字节0011,它就应当完成下面的步骤而不是通常的活动。
a.如果工作寄存器的值不是0000,0011,1100,1111,那末通过到下一节点的链路发出此值。
b.将刚收到的字节(0011)存到工作寄存器。
c.切换到延迟状态。
d.丢弃刚收到的字节。
用一对附加的注入器/析取器可以形成到本路径选择系统的外部连接。为此,可用此对附加的注入器/析取器做为一条附加双向链路的接收器和发送器。这种外部链路可以通过导线连到一个外部系统。象一个终端或广域网门路。当用一个外部链路把外部系统连到本网络(符合本发明的多维环形网等),此外部系统不论是否直接接到节点的路径选择装置,都能发送和接收到它的任何节点的报文。一条外路链路的另一用途是利用本发明将两个系统连在一起。通过把一个系统中某一节点的注入器/发送器对同另一系统中的任一节点的注入器/发送器对相连,可以把报文从一个系统的任一节点发送到另一系统的任一节点。在两系统之间发送的报文的报头由以下几部分组成1.在第一系统中发送报文到具有外部链路的节点的报头。
2.传送通过外部链路的0011字节。
3.在第二个系统中发送报文到相应的拥有外部链路的节点为目的地的节点的报头。
4.将0000字节发送到目的节点。
用来实现内部节点链路的技术可以改变。本发明仅要求这些链路是双向且其速度大约相同。例如两节点间的通信链路可以由相应控制链路的单字节并行总线组成。另一种实现方法是在每一方向上都有一对串行连接。这些链路可以使用各种通信协议及很多错误校验方法。
上面在一个特定的系统环境下,相当具体的阐述了本发明。这方面的专家可以看出本发明可以实现,只要在本发明的宗旨和附加要求的范围内,还可以在其它不同的操作系统下加以修改实现。
权利要求
1.在一个规则的具有当前网络信息的拓扑网络中的某个第一节点和某个第二节点之间传送信息的方法,其特征在于以下步骤(a)建立一个包含要发送的信息和当前网络信息的数据帧;(b)确定多条在通向第二个相连节点的路径上的传送链路;(c)保留在通向第二个相连节点的路径上的多条传送链路的一组;(d)在被保留的多条传送链路的每条上传送该数据帧;(e)在被保留的多条传送链路的每条上一份一份连续传送该数据帧直到这个数据帧中的信息发送完;(f)重复(b),(c),(d),(e)直到这个数据帧到达第二个节点。
2.根据权利要求1所述的在一个具有当前网络信息的规则拓扑网络中的某个第一节点和某第二节点之间传送信息的方法,其特征还在于包含以下步骤(a)搜索规则拓扑网以确定网络状态;(b)把这个状态标志存储于一个数据帧的报头;(c)利用这个状态值帮助每个中介节点选择一组合适的输出网络链路。
3.根据权力要求1所述的在一个具有当前网络信息的规则拓扑网络中的某个第一节点和某个第二节点之间传送信息的方法,其特征还在于包含下面的步骤保留具有足够带宽的多条传送链路的一组,连续广播信息。
4.根据权利要求1所述的在一个具有当前网络信息的规则拓扑网络中的某个第一节点和某个第二节点之间传送信息的方法,其特征还在于包含下面的步骤在多条传送链路的一组中的每一链路上以数据帧的完全包形式传送信息。
5.根据权利要求1所述的在一个具有当前网络信息的规则拓扑网络中的某个第一节点和某个第二个第二节点之间传送信息的方法其特征还在于包含以下步骤当该信息传送到下一条网络链路则马上释放本链路。
6.根据权利要求1所述的在一个具有当前网络信息的规则拓扑网络中的某个第一节点和某第二节点之间传送信息的方法其特征还在于包含以下步骤每当主路径已建立则马上释放所有次路径。
7.根据权利要求1所述的在一个具有当前网络信息的规则拓扑网络中的某个第一节点和某个第二节点之间传送信息的方法其特征还在于包含以下步骤(a)判定一条路径是否被封锁;(b)如果该路径被封锁,在传送中中止该节点的参与。
8.在一个具有当前网络信息的规则拓扑网络中的某第一节点和某第二节点传送信息的设备其特征在于(a)建立一个包含有要发送信息和当前网络信息的数据帧的装置;(b)确定多条在通向第二个相连节点的路径上的传送链路的装置;(c)保留在通向第二个相连节点的路径上的多条传送链路的一组的装置;(d)在被保留的传送链路的每条上传送该数据帧的装置;(e)在被保留的传送链路的每条上一份一份连续传送该数据帧直到这个数据帧中信息发送完的装置;(f)重复(b),(c),(d),(e)直到这个数据帧到达第二节点的装置。
9.根据权利要求8所述的在一个具有当前网络信息的规则拓扑网络中的某第一和某第二节点传送信息的设备其特征在于每一网络链路具有同时传送多路报文的装置。
10.根据权利要求8所述的在一个具有当前网络信息的规则拓扑网络中的某个第一节点和某个第二节点之间传送信息的设备,其特征还在于包括(a)搜索规则拓扑网以确定网络状态的装置;(b)把此状态存于一个数据帧的报头的装置;(c)利用这个状态值帮助每个中介节点选择一组合适的输出网络链路的装置。
11.根据权利要求8所述的在一个具有当前网络信息的规则拓扑网络中的某个第一节点和某第二节点之间传送信息的设备其特征还在于包含下面保留具有足够带宽的多条传送链路的一组连续广播信息的装置。
12.根据权利要求8所述的在一个具有与前网络信息的规则拓扑网络中的某个第一节点和某个第二节点之间传送信息的设备其特征还在于在多条传送链路的一组中的每一链路上以数据帧的完整包形式传送信息的装置。
13.根据权利要求8所述的在一个具有当前网络信息的规则拓扑网络中的某个第一节点和某第二节点之间传送信息的设备其特征还在于包含当该信息一传送到下一条网络链路则马上释放本链路的装置。
14.根据权利要求8所述的在一个具有当前网络信息的规则拓扑网络中的某个第一节点和某第二节点之间传送信息的设备其特征还在于包含存在于二个各自独立的规则拓扑网中的两个第一节点和第二节点通过共亨双向链路连接在一起的装置。
15.根据权利要求8所述的在一个具有当前网络信息的规则拓扑网络中的某个第一节点和某第二节点之间传送信息的设备其特征还在于包含第二个节点可以是一个通过一个附加节点的双向链路连接的外部互连的终端。
16.根据权利要求8所述的在一个具有当前网络信息的规则拓扑网络中的某个第一节点和某个第二节点之间传送信息的设备其特征还在于包含(a)判定一条通路是否被封锁的装置;(b)如果该通路被封锁,在传送中中止该节点的参与装置。
17.根据权利要求8所述的在一个具有当前网络信息的规则拓扑网络中的某个第一节点和某个第二节点之间传送信息的设备其特征还在于包含每当主路径已建立则马上释放所有次路径的装置。
全文摘要
本发明描述了一个多维的,多节点的路径选择装置,它使用一个由路径描述符位组组成的报头,从节点到节点发送信息。当信息传送到目的地节点时,每个节点的接收器/发送器对改变状态。报文同时在多个节点上传送很快地到达目的节点。当到达终节点时,所有备用通信链路都被释放。
文档编号G06F15/80GK1049066SQ9010331
公开日1991年2月6日 申请日期1990年6月27日 优先权日1989年7月27日
发明者朱尔·马克·古尔德, 小查理斯·马里恩·希金斯, 小亚历山大·汉密尔顿·弗雷 申请人:国际商业机器公司