CN117041150B - 路由方法、路由终端及数据传输系统 - Google Patents
路由方法、路由终端及数据传输系统 Download PDFInfo
- Publication number
- CN117041150B CN117041150B CN202311296420.4A CN202311296420A CN117041150B CN 117041150 B CN117041150 B CN 117041150B CN 202311296420 A CN202311296420 A CN 202311296420A CN 117041150 B CN117041150 B CN 117041150B
- Authority
- CN
- China
- Prior art keywords
- node
- routing
- target
- label
- value
- 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.)
- Active
Links
- 238000000034 method Methods 0.000 title claims abstract description 57
- 230000005540 biological transmission Effects 0.000 title claims abstract description 36
- 230000015654 memory Effects 0.000 claims description 28
- 238000012423 maintenance Methods 0.000 claims description 11
- 238000004891 communication Methods 0.000 claims description 2
- 239000000758 substrate Substances 0.000 claims 1
- 239000003550 marker Substances 0.000 description 6
- 238000010586 diagram Methods 0.000 description 5
- 230000006870 function Effects 0.000 description 3
- 230000000977 initiatory effect Effects 0.000 description 3
- 230000007246 mechanism Effects 0.000 description 3
- 230000008569 process Effects 0.000 description 3
- 230000000903 blocking effect Effects 0.000 description 2
- 238000004364 calculation method Methods 0.000 description 2
- 238000010276 construction Methods 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 239000007787 solid Substances 0.000 description 2
- 230000002457 bidirectional effect Effects 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 239000004973 liquid crystal related substance Substances 0.000 description 1
- 238000010295 mobile communication Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 238000004321 preservation Methods 0.000 description 1
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/74—Address processing for routing
- H04L45/745—Address table lookup; Address filtering
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/50—Queue scheduling
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L49/00—Packet switching elements
- H04L49/90—Buffering arrangements
- H04L49/9015—Buffering arrangements for supporting a linked list
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本发明涉及数据传输技术领域,公开了路由方法、路由终端及数据传输系统,其中该方法包括:接收路由请求,路由请求中包括数据包、数据包的源终端节点标号和数据包的目标终端节点标号;在预先建立的匹配链表中确定与路由请求对应的目标节点对,匹配链表用于记录不同的节点对分别对应的路由节点,节点对中包括源终端节点标号和目标终端节点标号;根据匹配链表中与目标节点对对应的路由节点标志位的值,确定路由请求对应的目标路由节点,目标路由节点用于传输数据包。若一个源终端节点向同一个目标终端节点发送多个数据包,则通过本发明可以确定唯一的路由节点,路由节点按照顺序依次转发数据包,从而目标终端节点可以按正确的顺序接收数据包。
Description
技术领域
本发明涉及数据传输技术领域,具体涉及路由方法、路由终端及数据传输系统。
背景技术
传统的路由实现方案中,终端节点向其对应的目标终端节点发起多个数据包的数据传输请求时,由于网络拓扑结构的路径多样性,不同的数据包可能会匹配到不同的路由路径进行路由传输不同的路由,在不同的路由路径中,参与转发数据包的路由节点不同,由于不同路由节点的阻塞程度不同,所以数据包经由不同的路由节点传送至目标终端节点的顺序无法控制,这就导致在源终端节点发起的多包数据传输,无法按照其起始对应的先后顺序依次达到目标终端节点,即出现数据的乱序现象,导致数据传输出错。
发明内容
有鉴于此,本发明提供了一种路由方法、路由终端及数据传输系统,以解决源终端节点发起的多包数据传输,无法按照其起始对应的先后顺序依次达到目标终端节点的问题。
第一方面,本发明提供了一种路由方法,该方法包括:接收路由请求,路由请求中包括数据包、数据包的源终端节点标号和数据包的目标终端节点标号;根据路由请求中的源终端节点标号和目标终端节点标号,在预先建立的匹配链表中确定与路由请求对应的目标节点对,匹配链表用于记录不同的节点对分别对应的路由节点,节点对中包括源终端节点标号和目标终端节点标号;根据匹配链表中与目标节点对对应的路由节点标志位的值,确定路由请求对应的目标路由节点,目标路由节点用于传输数据包。
本发明实施例提供的路由方法,预先建立了匹配链表,匹配链表中记录了多个不同的节点对,各节点对分别对应唯一的路由节点,其中,节点对中包括源终端节点标号和目标终端节点标号,通过匹配链表可以确定,将数据包从一个源终端节点发送到一个目标终端节点时,需要通过哪个路由节点转发。在接收到路由请求后,根据路由请求中的源终端节点标号和目标终端节点标号,可以在匹配链表中确定一个唯一的目标节点对,从而确定唯一的路由节点,因此,执行本发明实施例提供的路由方法时,若一个源终端节点向同一个目标终端节点发送了多个数据包,则根据各数据包对应的路由请求可以确定唯一的目标节点对,从而确定唯一的路由节点,即,多个路由请求采用同一个路由节点进行数据包的转发,路由节点在发送数据包时,是按照接收到的顺序依次转发的,从而目标终端节点接收到各数据包的顺序与源终端节点发出各数据包的顺序是相同的,保证了目标终端节点接收到的数据为正确数据,避免了因为数据的乱序现象所导致的数据接收错误。
在一种可选的实施方式中,在根据匹配链表中与目标节点对对应的路由节点标志位的值,确定路由请求对应的目标路由节点的步骤之后,方法还包括:将路由请求中的数据包加入目标路由节点对应的任务队列中,以使目标路由节点按照任务队列传输数据包。
在一种可选的实施方式中,根据匹配链表中与目标节点对对应的路由节点标志位的值,确定路由请求对应的目标路由节点,包括:若匹配链表中与目标节点对对应的路由节点标志位的值不为空,将路由节点标志位的值对应的路由节点确定为目标路由节点。
在一种可选的实施方式中,各路由节点分别对应一个标识符,将路由节点标志位的值对应的路由节点确定为目标路由节点,包括:确定路由节点标志位的值对应的目标标识符;将目标标识符对应的路由节点确定为目标路由节点。
在一种可选的实施方式中,若匹配链表中与目标节点对对应的路由节点标志位的值为空,为路由请求匹配目标路由节点。
在一种可选的实施方式中,在为路由请求匹配目标路由节点的步骤之后,该方法还包括:根据目标路由节点更新目标节点对对应的路由节点标志位的值。
本发明实施例提供的方法,匹配链表中各节点对分别对应有各自的路由节点标志位,若路由请求对应的目标节点对所对应的路由节点标志位的值不为空时,根据目标节点对对应的路由节点标志位的值确定路由请求的目标路由节点,不仅可以避免执行路由匹配方法,减少了计算量,提高了路由匹配效率,并且,可以保证一个源终端节点向另一个目标终端节点发出的多个数据包能够被同一个路由节点转发,目标终端节点接收到各数据包的顺序与源终端节点发出各数据包的顺序是相同的,保证了目标终端节点接收到的数据为正确数据,避免了因为数据的乱序现象所导致的数据接收错误。
在一种可选的实施方式中,各路由节点分别对应一个标识符,根据目标路由节点更新目标节点对对应的路由节点标志位的值,包括:将目标节点对对应的路由节点标志位的值替换为目标路由节点的标识符。
在一种可选的实施方式中,一个目标节点对对应有一个或多个路由请求,当目标路由节点将所有的待转发数据包传输完成后,将匹配链表中与目标节点对对应的路由节点标志位的值设为空,待转发数据包为目标节点对对应的各路由请求中的数据包。
在一种可选的实施方式中,若目标路由节点对应的任务队列中的最后一个数据包被读出,判定目标路由节点将所有的待转发数据包传输完成。
在一种可选的实施方式中,匹配链表中还包括锁定标志位,一个节点对对应一个锁定标志位。
在一种可选的实施方式中,若匹配链表中与目标节点对对应的路由节点标志位的值不为空,在将路由节点标志位的值对应的路由节点确定为目标路由节点的步骤之前,该方法还包括:判断匹配链表中目标节点对对应的锁定标志位的值是否为第一预设值;若目标节点对对应的锁定标志位的值为第一预设值,执行将路由节点标志位的值对应的路由节点确定为目标路由节点的步骤,锁定标志位的值为第一预设值表征目标节点对对应的路由节点标志位的值有效。
在一种可选的实施方式中,若匹配链表中与目标节点对对应的路由节点标志位的值为空,为路由请求匹配目标路由节点的步骤包括:根据匹配链表中锁定标志位为第一预设值的节点对对应的路由节点标志位的值,确定锁定路由节点;结合锁定路由节点为路由请求匹配目标路由节点,目标路由节点与锁定路由节点不同。
在一种可选的实施方式中,在结合锁定路由节点为路由请求匹配目标路由节点的步骤之后,方法还包括:将匹配链表中与目标节点对对应的锁定标志位的值更新为第一预设值。
在一种可选的实施方式中,一个目标节点对对应有一个或多个路由请求,当目标路由节点将所有的待转发数据包传输完成后, 将匹配链表中与目标节点对对应的锁定标志位的值更新为第二预设值。
第二方面,本发明提供了一种路由终端,包括:路由匹配模块和匹配链表维护模块,匹配链表维护模块中存储有预先建立的匹配链表,路由匹配模块用于接收路由请求,路由请求中包括数据包、数据包的源终端节点标号和数据包的目标终端节点标号根据路由请求中的源终端节点标号和目标终端节点标号,在预先建立的匹配链表中确定与路由请求对应的目标节点对,匹配链表用于记录不同的节点对分别对应的路由节点,节点对中包括源终端节点标号和目标终端节点标号;根据匹配链表中与目标节点对对应的路由节点标志位的值,确定路由请求对应的目标路由节点,目标路由节点用于传输数据包。
在一种可选的实施方式中,该装置还包括数据转发模块,数据转发模块用于将路由请求中的数据包加入目标路由节点对应的任务队列中,以使目标路由节点按照任务队列传输数据包。
在一种可选的实施方式中,若匹配链表中与目标节点对对应的路由节点标志位的值为空,路由匹配模块用于为路由请求匹配目标路由节点;匹配链表维护模块用于根据目标路由节点更新匹配链表中与目标节点对对应的路由节点标志位的值。
第三方面,本发明提供了一种数据传输系统,包括:多个终端节点、多个第一级路由终端和多个第二级路由终端,一个终端连接有一个第一级路由终端,一个第一级路由终端至少连接有一个第二级路由终端,终端节点用于向与终端节点连接的第一级路由终端发送路由请求,路由请求中包括数据包、数据包的源终端节点标号和数据包的目标终端节点标号;第一级路由终端用于接收路由请求;根据路由请求中的源终端节点标号和目标终端节点标号,在预先建立的匹配链表中确定与路由请求对应的目标节点对,匹配链表用于记录不同的节点对分别对应的路由节点,节点对中包括源终端节点标号和目标终端节点标号;根据匹配链表中与目标节点对对应的路由节点标志位的值,确定路由请求对应的目标路由节点,目标路由节点为第二级路由终端;将路由请求中的数据包发送给目标路由节点,以使目标路由节点转发数据包。
第四方面,本发明提供了一种计算机设备,包括:存储器和处理器,存储器和处理器之间互相通信连接,存储器中存储有计算机指令,处理器通过执行计算机指令,从而执行上述第一方面或其对应的任一实施方式的路由方法。
第五方面,本发明提供了一种计算机可读存储介质,该计算机可读存储介质上存储有计算机指令,计算机指令用于使计算机执行上述第一方面或其对应的任一实施方式的路由方法。
附图说明
为了更清楚地说明本发明具体实施方式或现有技术中的技术方案,下面将对具体实施方式或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施方式,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是根据本发明实施例的数据传输系统示意图;
图2是根据本发明实施例的路由方法的流程示意图;
图3是根据本发明实施例的源终端节点0的数据包路由顺序示例;
图4是根据本发明实施例的路由终端的示意图;
图5是本发明实施例的计算机设备的硬件结构示意图。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
计算机网络拓扑结构存在着节点度的幂律分布特点,越来越多的模型构建都是从幂律分布特点中的优先连接和优化生长的特点入手,通过这种优先连接和优先生长的规律不断地加入新节点,使得网络的发展变得越来越复杂,其性能越来越可靠,从而也促使了许多网络拓扑连接规则的出现,即网络拓扑结构形成机制的构建。
计算机网络的拓扑结构是指网络中包括计算机在内的各种网络设备(如路由器、交换机等)实现网络互连所展现出来的抽象连接方式。计算机网络拓扑结构是由节点和链路所组成的,其中的节点主要是指网络中连接的各种有源设备。
传统的路由实现方案中,源终端节点向其对应的目标终端节点发起多个数据包的数据传输请求时,由于网络拓扑结构的路径多样性,不同的数据包可能会匹配到不同的路由路径进行路由,在不同的路由路径中,参与转发数据包的路由节点不同,由于不同路由节点的阻塞程度不同,所以数据包经由不同的路由节点传送至目标终端节点的顺序无法控制,这就导致在源终端节点发起的多包数据传输,无法按照其起始对应的先后顺序依次达到目标终端节点,即出现数据的乱序现象,导致数据传输出错。
示例性地,如图1所示为两级双向clos拓扑结构,图中的每根连线都为双向的,该拓扑结构中第一级路由节点中含有8个路由节点0~7,第一级路由节点中的每个路由节点连接4个终端节点(路由节点0连接终端节点0~3,路由节点1连接终端节点4~7…路由节点7连接终端节点28~31),第二级路由节点中共有4个路由节点0~3,第二级的每个路由节点分别与第一级的8个路由节点相连,32个终端节点可作为数据发起方向其他终端节点发起数据传输。
假设源终端节点0向目标终端节点31发送3包数据,这3包数据在源终端节点0发起传输时的顺序为数据包1→数据包2→数据包3,由于拓扑的路由多样性,数据包1可能会选择路径:源终端节点0→第一级路由节点0→第二级路由节点0→第一级路由节点7→目标终端节点31;数据包2可能会选择路径:源终端节点0→第一级路由节点0→第二级路由节点1→第一级路由节点7→目标终端节点31;数据包3可能会选择路径:源终端节点0→第一级路由节点0→第二级路由节点2→第一级路由节点7→目标终端节点31。
由于三条路径中的差别在于第二级路由节点的选择,数据包1选择二级路由节点0、数据包2选择二级路由节点1、数据包3选择二级路由节点2,由于互联结构中数据路由错综复杂,各二级路由节点会有不同路径的数据在此进行路由转发,即,各二级路由节点的“繁忙”程度存在差异,这样就可能导致数据包1选择的二级路由节点0“最繁忙”,数据包2选择的二级路由节点1“较繁忙”,数据包3选择的二级路由节点2“空闲”的状态,也就是说,首先到达二级路由节点0的数据包1因为二级路由节点0的“最繁忙”状态,需等待较长的时间进行排队,待排在其前面的任务结束,才能将数据包1从二级路由节点0转发输出;而最后到达二级路由节点2的数据包3,因为二级路由节点2的“空闲”状态,可立即将数据包3转发输出;数据包2因为二级路由节点1的“较繁忙”状态,将早于数据包1从二级路由节点路由输出。那么,以起始顺序数据包1→数据包2→数据包3发送的数据到达相同目标终端节点时的顺序变成了数据包3→数据包2→数据包1,这将导致目标终端节点出现数据乱序错误。
为了保证源终端节点在发送多个数据包时,目标终端节点能够按顺序依次接收到各数据包,在本实施例中提供了一种路由方法,可用于上述的第一级路由节点,图2是根据本发明实施例的路由方法的流程图,如图2所示,该流程包括如下步骤:
步骤S101,接收路由请求,路由请求中包括数据包、数据包的源终端节点标号和数据包的目标终端节点标号。
在一可选实施例中,本发明实施例提供的路由方法应用于与终端节点直接连接的第一级路由节点,路由请求是由与第一级路由节点连接的终端节点发出的。
在一可选实施例中,源终端节点标号是指发出数据包的终端节点的标号,目标终端节点标号是指接收该数据包的终端节点的标号。
步骤S102,根据路由请求中的源终端节点标号和目标终端节点标号,在预先建立的匹配链表中确定与路由请求对应的目标节点对,匹配链表用于记录不同的节点对分别对应的路由节点,节点对中包括源终端节点标号和目标终端节点标号。
在一可选实施例中,若一个节点对中的源终端节点标号与路由请求中的源终端节点标号相同,且,该节点对中的目标终端节点标号与路由请求中的目标终端节点标号相同,则将该节点对确定为与路由请求相对应的目标节点对。
在一可选实施例中,匹配链表是根据网络拓扑结构建立的,网络拓扑结构中包括多个终端节点,一个终端节点对应一个匹配链表。将一个终端节点作为源终端节点,依次将网络拓扑结构中的其余各终端节点作为目标终端节点,形成多个节点对,一个节点对对应一个路由节点标志位,路由节点标志位的值为有效值时,通过该有效值可以确定一个路由节点,当数据包的源终端节点和目标终端节点与一个节点对中的源终端节点和目标终端节点相同,则通过该节点对对应的路由节点转发数据包。
在一可选实施例中,在初始状态下,匹配链表中各节点对对应的路由节点标志位的值可以为预先设置的值,即,预先为不同的节点对匹配路由节点,使得与一个节点对相对应的多个路由请求,均采用同一个预先设定的路由节点进行数据包的转发。
在一可选实施例中,在初始状态下,匹配链表中各节点对对应的路由节点标志位的值可以为空,当接收到路由请求后,为路由请求匹配路由节点,并根据路由节点更新与该路由请求对应的节点对的路由节点标志位的值。在本发明实施例中,若已经为一个节点对匹配了路由节点,则在该路由节点将节点对对应的数据包全部转发完成前,不会对该节点对对应的路由节点标志位的值进行更改,并且,在此期间,该节点对对应的路由节点也不会被分配给其他节点对。从而保证多个源终端节点相同且目标终端节点相同的数据包被同一个路由节点按顺序发送。
步骤S103,根据匹配链表中与目标节点对对应的路由节点标志位的值,确定路由请求对应的目标路由节点,目标路由节点用于传输数据包。
在一可选实施例中,在确定目标路由节点后,将该路由请求对应的数据包和目标终端节点标号发送给目标路由节点,以使目标路由节点向目标终端节点发送该数据包。
本发明实施例提供的路由方法,预先建立了匹配链表,匹配链表中记录了多个不同的节点对,各节点对分别对应唯一的路由节点,其中,节点对中包括源终端节点标号和目标终端节点标号,通过匹配链表可以确定,将数据包从一个源终端节点发送到一个目标终端节点时,需要通过哪个路由节点转发。在接收到路由请求后,根据路由请求中的源终端节点标号和目标终端节点标号,可以在匹配链表中确定一个唯一的目标节点对,从而确定唯一的路由节点,因此,执行本发明实施例提供的路由方法时,若一个源终端节点向同一个目标终端节点发送了多个数据包,则根据各数据包对应的路由请求可以确定唯一的目标节点对,从而确定唯一的路由节点,即,多个路由请求采用同一个路由节点进行数据包的转发,路由节点在发送数据包时,是按照接收到的顺序依次转发的,从而目标终端节点接收到各数据包的顺序与源终端节点发出各数据包的顺序是相同的,保证了目标终端节点接收到的数据为正确数据,避免了因为数据的乱序现象所导致的数据接收错误。
在一可选实施例中,在执行上述步骤S103确定路由请求对应的目标路由节点后,本发明实施例提供的方法还包括:
将路由请求中的数据包加入目标路由节点对应的任务队列中,以使目标路由节点按照任务队列传输数据包。
在一可选实施例中,不同的路由节点对应有各自的任务队列,当有数据包需要路由节点转发时,将数据包加入至该路由节点对应的任务队列中,使得路由节点能够按顺序依次转发各数据包。
在一可选实施例中,在确定目标路由节点后,可以将数据包存储至目标路由节点的缓冲区中,并将存储位置标识写入任务队列中,目标路由节点在按照任务队列发送数据包时,通过任务队列中记载的存储位置标识从缓冲区中提取数据包,并转发数据包。
在一可选实施例中,上述步骤S103具体包括如下步骤:
若匹配链表中与目标节点对对应的路由节点标志位的值不为空,则,将路由节点标志位的值对应的路由节点确定为目标路由节点。
若匹配链表中与目标节点对对应的路由节点标志位的值为空,则为路由请求匹配目标路由节点。
在本发明实施例中,匹配链表中各节点对对应的路由节点标志位的初始值为空,若与目标节点对应的路由节点标志位的值不为空,则表示在此之前已经为目标节点对匹配了路由节点,将该路由节点作为目标路由节点即可保证一个源终端节点向另一个目标终端节点发出的多个数据包能够被同一个路由节点转发;
反之,若与目标节点对对应的路由节点标志位的值为空,则表示还没有为该目标节点对匹配路由节点,因此无法根据匹配链表为路由请求确定目标路由节点,需要采用预设的匹配规则为路由请求匹配目标路由节点。
在一可选实施例中,不同的路由节点对应有不同的标识符,匹配链表中路由节点标志位的值是根据路由节点的标识符确定的,路由节点标志位的值与路由节点的标识符是一一对应的。
若匹配链表中目标节点标志位的值不为空,则根据目标节点标志位的值确定对应的目标标识符,然后将该目标标识符对应的路由节点确定为目标路由节点,通过目标节点标志位的一个值可以确定唯一的目标标识符,通过目标标识符可以确定唯一的目标路由节点。
若匹配链表中与目标节点对对应的路由节点标志位的值为空,为路由请求匹配目标路由节点后,根据目标路由节点更新目标节点对对应的路由节点标志位的值,当再接收到其他与该目标节点对对应的路由请求时,可以根据更新后的路由节点标志位的值为该路由请求匹配目标路由节点。示例性地,在根据目标路由节点更新目标节点对对应的路由节点标志位的值时,可以将目标节点对对应的路由节点标志位的值替换为目标路由节点的标识符。
本发明实施例提供的方法,匹配链表中各节点对分别对应有各自的路由节点标志位,若路由请求对应的目标节点对所对应的路由节点标志位的值不为空时,根据目标节点对对应的路由节点标志位的值确定路由请求的目标路由节点,不仅可以避免执行路由匹配方法,减少了计算量,提高了路由匹配效率,并且,可以保证一个源终端节点向另一个目标终端节点发出的多个数据包能够被同一个路由节点转发,目标终端节点接收到各数据包的顺序与源终端节点发出各数据包的顺序是相同的,保证了目标终端节点接收到的数据为正确数据,避免了因为数据的乱序现象所导致的数据接收错误。
在一可选实施例中,当一个源终端节点向一个目标终端节点发送多个数据包时,每个数据包分别对应一个路由请求,此时各路由请求中的源终端节点标号和目标终端节点标号是相同的,从而多个路由请求对应一个目标节点对,且多个路由请求对应一个目标路由节点,当目标路由节点将所有的待转发数据包传输完成后,将匹配链表中与目标节点对对应的路由节点标志位的值设为空,待转发数据包为目标节点对对应的各路由请求中的数据包。
即,在本发明实施例中,当目标路由节点将所有待转发数据包传输完成后,表示源终端节点向同一个目标终端节点发送的多个数据包已在目标路由节点处完成转发,目标终端节点可以按顺序依次接收到各数据包,不会存在乱序现象,此时可以将目标节点对对应的节点标志位的值设为空,从而释放目标路由节点,目标路由节点可以转发其他路由请求中的数据包。
在一具体实施例中,若目标路由节点是按照任务队列按序转发数据包,则当目标路由节点对应的任务队列中的最后一个数据包被读出后,判定目标路由节点将所有的待转发数据包传输完成,此时将目标节点对对应的路由节点标志位的值设为空。
在一可选实施例中,匹配链表中还包括锁定标志位,一个节点对对应一个锁定标志位,锁定标志位用于表征路由节点标志位的值是否为有效值。
在一可选实施例中,当锁定标志位的值为第一预设值时,表示该节点对对应的路由节点标志位的值为有效值,当锁定标志位的值为第二预设值时,表示该节点对对应的路由节点标志位的值不是有效值。
由于程序编码本身的特性,即使将路由节点标志位的值设为空,标志位中也可能会填充有一个默认值,若根据默认值确定目标路由节点,会导致目标路由节点匹配错误,因此,本发明实施例中在匹配链表中设置了锁定标志位,通过锁定标志位可以表征当前节点对对应的路由节点标志位的值是否有效,使得根据匹配链表确定匹配的目标路由节点更加可靠。
在一可选实施例中,在匹配链表中包含锁定标志位的基础上,若匹配链表中与目标节点对对应的路由节点标志位的值不为空,在将路由节点标志位的值对应的路由节点确定为目标路由节点的步骤之前,还需判断匹配链表中目标节点对对应的锁定标志位的值是否为第一预设值,若目标节点对对应的锁定标志位的值为第一预设值,执行将路由节点标志位的值对应的路由节点确定为目标路由节点的步骤。
若虽然匹配链表中与目标节点对对应的路由节点标志位的值不为空,但是目标节点对对应的锁定标志位的值为第二预设值,此时判定路由节点标志位的值无效,需要采用预设的匹配算法为目标节点对重新匹配目标路由节点,并在匹配目标路由节点后,根据目标路由节点更新路由节点标志位的值,并将锁定标志位的值更新为第一预设值。
在一可选实施例中,在匹配链表中包含锁定标志位的基础上,若匹配链表中与目标节点对对应的路由节点标志位的值为空,则为路由请求匹配目标路由节点的步骤包括:
首先,根据匹配链表中锁定标志位为第一预设值的节点对对应的路由节点标志位的值,确定锁定路由节点。
然后,结合锁定路由节点为路由请求匹配目标路由节点,目标路由节点与锁定路由节点不同。
在本发明实施例中,在为路由请求匹配目标路由节点时,需要先根据匹配链表中锁定标志位为第一预设值的节点对确定锁定路由节点,锁定路由节点中还存在未传输完成的数据,为了保证一个源终端节点向同一个目标终端节点传输的多个数据包能够尽快传输至目标终端节点,当路由节点已被锁定时,不再接收其他路由请求。
在一可选实施例中,在路由请求匹配目标路由节点后,将路由请求对应的节点对的锁定标志为的值设为第一预设值。
在一可选实施例中,一个目标节点对对应有多个路由请求时,目标节点对对应的目标路由节点将各路由请求分别对应的待转发数据包均传输完成后, 不仅将匹配链表中目标节点对对应的路由节点标志位的值设为空,还将匹配链表中与目标节点对对应的锁定标志位的值更新为第二预设值。
为更加清楚地解释本发明提供的路由方法,本发明实施例中提供了一个具体实例,下面以图1拓扑结构中的源终端节点0(方框表示终端节点)为例,详细阐述该方案的执行过程。
初始状态时,源终端节点0对应的匹配链表如表1所示。图1的拓扑结构中,共有32个输入/目标终端节点,即源终端节点0对应的目标终端节点有32个,所以终端节点0对应的匹配链表共有32行,也即共有32个节点对,用于记录源终端节点0与32个目标终端节点的匹配状态。初始状态时,源终端节点0未与任何二级路由节点进行匹配,所以该表1中第一列的匹配关系锁定标志位全为0,并且无任何二级路由节点匹配记录,最后一列路由节点标志位的值为 “NA”,“NA”表示当前值为空。
表1
假设,源终端节点0发起7包数据路由任务,如图3所示。
包含有数据包1的路由请求的源终端节点标号为0,目标终端节点标号为31,通过查询匹配链表,与路由请求对应的目标节点对的路由节点标志位的值为“NA”,此时需要为路由请求进行路由节点匹配,若数据包1匹配到目标路由节点0,匹配关系确定,将表1的初始匹配链表进行更新,得到如表2所示的匹配链表,将该匹配链表的最后一行,即目标终端节点标号31所对应的行进行更新,将输入端口锁定标志位置1,并且将目标路由节点的标号0更新于匹配链表。
表2
此时,更新匹配链表的同时,根据该匹配关系将数据包1路由至目标路由节点0,紧随其后的数据包2发起路由请求,根据数据包2所携带的信息(源终端节点标号0及目的终端节点标号31)对匹配链表进行查询,比中表2中的32行,并且此时该行的锁定标志位为1。那么,对于数据包2则不需要再进行路由重新匹配,而是按照数据包1对应的路径(匹配目标路由节点0),紧随数据包1进行数据转发。同理,数据包3、数据包4因其所携带信息与数据包1及数据包2相同,故数据包3、数据包4也不需要进行路由重新匹配,继续按照数据包1所匹配的路径进行数据转发,数据包1、2、3、4对应数据按照输入顺序依次写入二级路由节点0对应的缓存中。当数据包4(该组任务队列的最后1个任务)对应的数据从目标路由节点0对应缓存中被读出,同时该缓存此时为清空状态,此时则认为,数据包1、2、3、4已按照初始顺序发送至最后一级路由节点,不再会出现乱序问题,此时将该路径的锁定标志位清除更新,如表3所示,将32行对应的锁定标志位清0,以接收随后的数据转发任务请求。
表3
随后,终端节点0收到数据包5对应的数据传输请求,此时根据数据包5所携带的信息(源终端节点标号0及目的终端节点标号25)对表3匹配链表进行查询,无比中结果,此时为数据包对应的路由请求进行路由节点匹配,设定数据包5匹配到二级路由节点3,匹配关系确定,将匹配链表进行更新,如表4所示,将源终端节点标号0及目的终端节点标号25所在行的锁定标志为置1,并且将匹配到的二级路由节点标号3更新于匹配链表。
表4
此时,根据该匹配关系将数据包5对应路由至二级路由节点3,紧随其后的数据包6发起路由请求,根据数据包6所携带的信息(源终端节点标号0及目的终端节点标号25)对匹配链表进行查询,比中表4中的26行,并且此时该行的锁定标志位的值为1。那么,对于数据包6则不需要再进入路由匹配模块进行路由重新匹配,而是按照数据包5对应的路径(匹配二级路由节点3),紧随数据包5进行数据转发,数据包5、6对应数据按照输入顺序依次写入二级路由节点3对应的缓存中,当数据包6(该组任务队列的最后1个任务)对应的数据从二级路由节点3对应的缓存中被读出,同时该缓存为清空状态,此时则认为,数据包5、6已按照初始顺序发送至最后一级路由节点,不再会出现乱序问题,此时将该路径的锁定标志位清除更新,如表5所示,将26行对应的锁定标志位清0,以接收随后的数据转发任务请求。
表5
紧接着终端节点0收到数据包7对应的数据传输请求,此时根据数据包7所携带的信息(源终端节点标号0及目的终端节点标号28)对表5匹配链表进行查询,无比中结果,此时将数据包7请求进入路由匹配模块进行二级路由节点匹配,设定数据包7匹配到二级路由节点2,匹配关系确定,将匹配链表进行更新,如表6所示,将源终端节点标号0及目的终端节点标号28所在行的锁定标志为的值置1,并且将匹配到的二级路由节点标号2进行更新。
表6
当数据包7对应的所有数据从二级路由节点2对应的缓存输出时更新匹配列表,将列表中第29行锁定标志位清0,以接收随后的数据传输任务。
以上描述是以32端口两级双向clos拓扑结构源终端节点0为例,具体阐述了基于匹配链表查询方式数据保序方案的执行过程,该方案引入匹配链表查询机制,能够保证相同源终端节点及相同目标终端节点的连续路由请求,按照该任务队列队首的匹配路径进行路由,实现了路径的统一,即可实现数据的保序。同时,链表查询机制实现相同输入输出端口任务队列按照统一锁定路径进行路由,不再需要每个单独数据包进行通道重新匹配,能够大幅度减少因输入输出匹配而造成的时间延时,提升系统的运行效率。
在本实施例中还提供了一种路由终端,该路由终端用于实现上述实施例及优选实施方式,已经进行过说明的不再赘述。如以下所使用的,术语“模块”可以实现预定功能的软件和/或硬件的组合。尽管以下实施例所描述的装置较佳地以软件来实现,但是硬件,或者软件和硬件的组合的实现也是可能并被构想的。
本实施例提供一种路由终端,如图4所示,包括:路由匹配模块和匹配链表维护模块,匹配链表维护模块中存储有预先建立的匹配链表,
路由匹配模块用于接收路由请求,路由请求中包括数据包、数据包的源终端节点标号和数据包的目标终端节点标号根据路由请求中的源终端节点标号和目标终端节点标号,在预先建立的匹配链表中确定与路由请求对应的目标节点对,匹配链表用于记录不同的节点对分别对应的路由节点,节点对中包括源终端节点标号和目标终端节点标号;根据匹配链表中与目标节点对对应的路由节点标志位的值,确定路由请求对应的目标路由节点,目标路由节点用于传输数据包。
在一可选实施例中,路由终端还包括数据转发模块,数据转发模块用于将路由请求中的数据包加入目标路由节点对应的任务队列中,以使目标路由节点按照任务队列传输数据包。
在一可选实施例中,若匹配链表中与目标节点对对应的路由节点标志位的值为空,路由匹配模块用于为路由请求匹配目标路由节点;匹配链表维护模块用于根据目标路由节点更新匹配链表中与目标节点对对应的路由节点标志位的值。
在一可选实施例中,在路由匹配模块中,根据匹配链表中与目标节点对对应的路由节点标志位的值,确定路由请求对应的目标路由节点的步骤包括:若匹配链表中与目标节点对对应的路由节点标志位的值不为空,将路由节点标志位的值对应的路由节点确定为目标路由节点。
在一可选实施例中,各路由节点分别对应一个标识符,在路由匹配模块中,将路由节点标志位的值对应的路由节点确定为目标路由节点的步骤包括:确定路由节点标志位的值对应的目标标识符;将目标标识符对应的路由节点确定为目标路由节点。
在一可选实施例中,在路由匹配模块中,若匹配链表中与目标节点对对应的路由节点标志位的值为空,为路由请求匹配目标路由节点。
在一可选实施例中,各路由节点分别对应一个标识符,在匹配链表维护模块中,根据目标路由节点更新目标节点对对应的路由节点标志位的值的步骤包括:将目标节点对对应的路由节点标志位的值替换为目标路由节点的标识符。
在一可选实施例中,一个目标节点对对应有一个或多个路由请求,当目标路由节点将所有的待转发数据包传输完成后,匹配链表维护模块将匹配链表中与目标节点对对应的路由节点标志位的值设为空,待转发数据包为目标节点对对应的各路由请求中的数据包。
在一可选实施例中,若目标路由节点对应的任务队列中的最后一个数据包被读出,判定目标路由节点将所有的待转发数据包传输完成。
在一可选实施例中,匹配链表中还包括锁定标志位,一个节点对对应一个锁定标志位。
在一可选实施例中,若匹配链表中与目标节点对对应的路由节点标志位的值不为空,在将路由节点标志位的值对应的路由节点确定为目标路由节点的步骤之前,路由匹配模块判断匹配链表中目标节点对对应的锁定标志位的值是否为第一预设值;若目标节点对对应的锁定标志位的值为第一预设值,路由匹配模块执行将路由节点标志位的值对应的路由节点确定为目标路由节点的步骤,锁定标志位的值为第一预设值表征目标节点对对应的路由节点标志位的值有效。
在一可选实施例中,若匹配链表中与目标节点对对应的路由节点标志位的值为空,在路由匹配模中,为路由请求匹配目标路由节点的步骤包括:根据匹配链表中锁定标志位为第一预设值的节点对对应的路由节点标志位的值,确定锁定路由节点;结合锁定路由节点为路由请求匹配目标路由节点,目标路由节点与锁定路由节点不同。
在一可选实施例中,在路由匹配模块结合锁定路由节点为路由请求匹配目标路由节点之后,匹配链表维护模块将匹配链表中与目标节点对对应的锁定标志位的值更新为第一预设值。
在一可选实施例中,一个目标节点对对应有一个或多个路由请求,当目标路由节点将所有的待转发数据包传输完成后, 匹配链表维护模块将匹配链表中与目标节点对对应的锁定标志位的值更新为第二预设值。
上述各个模块的更进一步的功能描述与上述对应实施例相同,在此不再赘述。
本实施例提供一种数据传输系统,如图1所示,包括:多个终端节点、多个第一级路由终端和多个第二级路由终端,一个终端连接有一个第一级路由终端,一个第一级路由终端至少连接有一个第二级路由终端,
终端节点用于向与终端节点连接的第一级路由终端发送路由请求,路由请求中包括数据包、数据包的源终端节点标号和数据包的目标终端节点标号。
第一级路由终端用于接收路由请求;根据路由请求中的源终端节点标号和目标终端节点标号,在预先建立的匹配链表中确定与路由请求对应的目标节点对,匹配链表用于记录不同的节点对分别对应的路由节点,节点对中包括源终端节点标号和目标终端节点标号;根据匹配链表中与目标节点对对应的路由节点标志位的值,确定路由请求对应的目标路由节点,目标路由节点为第二级路由终端;将路由请求中的数据包发送给目标路由节点,以使目标路由节点转发数据包。
图5是本发明可选实施例提供的一种计算机设备的结构示意图,如图5所示,该计算机设备包括:一个或多个处理器10、存储器20,以及用于连接各部件的接口,包括高速接口和低速接口。各个部件利用不同的总线互相通信连接,并且可以被安装在公共主板上或者根据需要以其它方式安装。处理器可以对在计算机设备内执行的指令进行处理,包括存储在存储器中或者存储器上以在外部输入/输出装置(诸如,耦合至接口的显示设备)上显示GUI的图形信息的指令。在一些可选的实施方式中,若需要,可以将多个处理器和/或多条总线与多个存储器和多个存储器一起使用。同样,可以连接多个计算机设备,各个设备提供部分必要的操作(例如,作为服务器阵列、一组刀片式服务器、或者多处理器系统)。图5中以一个处理器10为例。
处理器10可以是中央处理器,网络处理器或其组合。其中,处理器10还可以进一步包括硬件芯片。上述硬件芯片可以是专用集成电路,可编程逻辑器件或其组合。上述可编程逻辑器件可以是复杂可编程逻辑器件,现场可编程逻辑门阵列,通用阵列逻辑或其任意组合。
其中,存储器20存储有可由至少一个处理器10执行的指令,以使至少一个处理器10执行实现上述实施例示出的方法。
存储器20可以包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需要的应用程序;存储数据区可存储根据一种小程序落地页的展现的计算机设备的使用所创建的数据等。此外,存储器20可以包括高速随机存取存储器,还可以包括非瞬时存储器,例如至少一个磁盘存储器件、闪存器件、或其他非瞬时固态存储器件。在一些可选的实施方式中,存储器20可选包括相对于处理器10远程设置的存储器,这些远程存储器可以通过网络连接至该计算机设备。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。
存储器20可以包括易失性存储器,例如,随机存取存储器;存储器也可以包括非易失性存储器,例如,快闪存储器,硬盘或固态硬盘;存储器20还可以包括上述种类的存储器的组合。
该计算机设备还包括输入装置30和输出装置40。处理器10、存储器20、输入装置30和输出装置40可以通过总线或者其他方式连接,图5中以通过总线连接为例。
输入装置30可接收输入的数字或字符信息,以及产生与该计算机设备的用户设置以及功能控制有关的键信号输入,例如触摸屏、小键盘、鼠标、轨迹板、触摸板、指示杆、一个或者多个鼠标按钮、轨迹球、操纵杆等。输出装置40可以包括显示设备、辅助照明装置(例如,LED)和触觉反馈装置(例如,振动电机)等。上述显示设备包括但不限于液晶显示器,发光二极管,显示器和等离子体显示器。在一些可选的实施方式中,显示设备可以是触摸屏。
本发明实施例还提供了一种计算机可读存储介质,上述根据本发明实施例的方法可在硬件、固件中实现,或者被实现为可记录在存储介质,或者被实现通过网络下载的原始存储在远程存储介质或非暂时机器可读存储介质中并将被存储在本地存储介质中的计算机代码,从而在此描述的方法可被存储在使用通用计算机、专用处理器或者可编程或专用硬件的存储介质上的这样的软件处理。其中,存储介质可为磁碟、光盘、只读存储记忆体、随机存储记忆体、快闪存储器、硬盘或固态硬盘等;进一步地,存储介质还可以包括上述种类的存储器的组合。可以理解,计算机、处理器、微处理器控制器或可编程硬件包括可存储或接收软件或计算机代码的存储组件,当软件或计算机代码被计算机、处理器或硬件访问且执行时,实现上述实施例示出的方法。
虽然结合附图描述了本发明的实施例,但是本领域技术人员可以在不脱离本发明的精神和范围的情况下做出各种修改和变型,这样的修改和变型均落入由所附权利要求所限定的范围之内。
Claims (17)
1.一种路由方法,其特征在于,所述方法包括:
接收路由请求,所述路由请求中包括数据包、所述数据包的源终端节点标号和所述数据包的目标终端节点标号;
根据所述路由请求中的源终端节点标号和目标终端节点标号,在预先建立的匹配链表中确定与所述路由请求对应的目标节点对,所述匹配链表用于记录不同的节点对分别对应的路由节点,节点对中包括源终端节点标号和目标终端节点标号;若一个节点对中的源终端节点标号与路由请求中的源终端节点标号相同,且,该节点对中的目标终端节点标号与路由请求中的目标终端节点标号相同,则将该节点对确定为与路由请求相对应的目标节点对;源终端节点标号是指发出数据包的终端节点的标号,目标终端节点标号是指接收该数据包的终端节点的标号;
根据所述匹配链表中与所述目标节点对对应的路由节点标志位的值,确定所述路由请求对应的目标路由节点,所述目标路由节点用于传输所述数据包;
在所述根据所述匹配链表中与所述目标节点对对应的路由节点标志位的值,确定所述路由请求对应的目标路由节点的步骤之后,所述方法还包括:
将所述路由请求中的数据包加入所述目标路由节点对应的任务队列中,以使所述目标路由节点按照所述任务队列传输所述数据包;
一个目标节点对对应有一个或多个路由请求,
当所述目标路由节点将所有的待转发数据包传输完成后,将所述匹配链表中与所述目标节点对对应的路由节点标志位的值设为空,所述待转发数据包为所述目标节点对对应的各路由请求中的数据包。
2.根据权利要求1所述的方法,其特征在于,所述根据所述匹配链表中与所述目标节点对对应的路由节点标志位的值,确定所述路由请求对应的目标路由节点,包括:
若所述匹配链表中与所述目标节点对对应的路由节点标志位的值不为空,
将所述路由节点标志位的值对应的路由节点确定为所述目标路由节点。
3.根据权利要求2所述的方法,其特征在于,各路由节点分别对应一个标识符,所述将所述路由节点标志位的值对应的路由节点确定为所述目标路由节点,包括:
确定所述路由节点标志位的值对应的目标标识符;
将所述目标标识符对应的路由节点确定为所述目标路由节点。
4.根据权利要求2所述的方法,其特征在于,
若所述匹配链表中与所述目标节点对对应的路由节点标志位的值为空,
为所述路由请求匹配目标路由节点。
5.根据权利要求4所述的方法,其特征在于,在所述为所述路由请求匹配目标路由节点的步骤之后,所述方法还包括:
根据所述目标路由节点更新所述目标节点对对应的路由节点标志位的值。
6.根据权利要求5所述的方法,其特征在于,各路由节点分别对应一个标识符,所述根据所述目标路由节点更新所述目标节点对对应的路由节点标志位的值,包括:
将所述目标节点对对应的路由节点标志位的值替换为所述目标路由节点的标识符。
7.根据权利要求1所述的方法,其特征在于,还包括:
若所述目标路由节点对应的任务队列中的最后一个数据包被读出,判定所述目标路由节点将所有的所述待转发数据包传输完成。
8.根据权利要求4所述的方法,其特征在于,所述匹配链表中还包括锁定标志位,一个节点对对应一个锁定标志位。
9.根据权利要求8所述的方法,其特征在于,若所述匹配链表中与所述目标节点对对应的路由节点标志位的值不为空,在所述将所述路由节点标志位的值对应的路由节点确定为所述目标路由节点的步骤之前,所述方法还包括:
判断所述匹配链表中所述目标节点对对应的锁定标志位的值是否为第一预设值;
若所述目标节点对对应的锁定标志位的值为第一预设值,执行所述将所述路由节点标志位的值对应的路由节点确定为所述目标路由节点的步骤,所述锁定标志位的值为第一预设值表征所述目标节点对对应的路由节点标志位的值有效。
10.根据权利要求8所述的方法,其特征在于,若所述匹配链表中与所述目标节点对对应的路由节点标志位的值为空,所述为所述路由请求匹配目标路由节点的步骤包括:
根据所述匹配链表中锁定标志位为第一预设值的节点对对应的路由节点标志位的值,确定锁定路由节点;
结合所述锁定路由节点为所述路由请求匹配目标路由节点,所述目标路由节点与所述锁定路由节点不同。
11.根据权利要求10所述的方法,其特征在于,在所述结合所述锁定路由节点为所述路由请求匹配目标路由节点的步骤之后,所述方法还包括:
将所述匹配链表中与所述目标节点对对应的锁定标志位的值更新为所述第一预设值。
12.根据权利要求9-11任一项所述的方法,其特征在于,一个目标节点对对应有一个或多个路由请求,
当所述目标路由节点将所有的待转发数据包传输完成后, 将所述匹配链表中与所述目标节点对对应的锁定标志位的值更新为第二预设值。
13.一种路由终端,其特征在于,包括:路由匹配模块和匹配链表维护模块,所述匹配链表维护模块中存储有预先建立的匹配链表,
所述路由匹配模块用于接收路由请求,所述路由请求中包括数据包、所述数据包的源终端节点标号和所述数据包的目标终端节点标号根据路由请求中的源终端节点标号和目标终端节点标号,在预先建立的匹配链表中确定与所述路由请求对应的目标节点对,所述匹配链表用于记录不同的节点对分别对应的路由节点,节点对中包括源终端节点标号和目标终端节点标号;根据所述匹配链表中与所述目标节点对对应的路由节点标志位的值,确定所述路由请求对应的目标路由节点,所述目标路由节点用于传输所述数据包;若一个节点对中的源终端节点标号与路由请求中的源终端节点标号相同,且,该节点对中的目标终端节点标号与路由请求中的目标终端节点标号相同,则将该节点对确定为与路由请求相对应的目标节点对;源终端节点标号是指发出数据包的终端节点的标号,目标终端节点标号是指接收该数据包的终端节点的标号;
所述路由终端还包括数据转发模块,
所述数据转发模块用于将所述路由请求中的数据包加入所述目标路由节点对应的任务队列中,以使所述目标路由节点按照所述任务队列传输所述数据包;
一个目标节点对对应有一个或多个路由请求,
当所述目标路由节点将所有的待转发数据包传输完成后,所述匹配链表维护模块将所述匹配链表中与所述目标节点对对应的路由节点标志位的值设为空,所述待转发数据包为所述目标节点对对应的各路由请求中的数据包。
14.根据权利要求13所述的路由终端,其特征在于,
若所述匹配链表中与所述目标节点对对应的路由节点标志位的值为空,所述路由匹配模块用于为所述路由请求匹配目标路由节点;
所述匹配链表维护模块用于根据所述目标路由节点更新所述匹配链表中与所述目标节点对对应的路由节点标志位的值。
15.一种数据传输系统,其特征在于,包括:多个终端节点、多个第一级路由终端和多个第二级路由终端,一个终端连接有一个第一级路由终端,一个第一级路由终端至少连接有一个第二级路由终端,
终端节点用于向与所述终端节点连接的第一级路由终端发送路由请求,所述路由请求中包括数据包、所述数据包的源终端节点标号和所述数据包的目标终端节点标号;
所述第一级路由终端用于接收所述路由请求;根据所述路由请求中的源终端节点标号和目标终端节点标号,在预先建立的匹配链表中确定与所述路由请求对应的目标节点对,所述匹配链表用于记录不同的节点对分别对应的路由节点,节点对中包括源终端节点标号和目标终端节点标号,若一个节点对中的源终端节点标号与路由请求中的源终端节点标号相同,且,该节点对中的目标终端节点标号与路由请求中的目标终端节点标号相同,则将该节点对确定为与路由请求相对应的目标节点对,源终端节点标号是指发出数据包的终端节点的标号,目标终端节点标号是指接收该数据包的终端节点的标号;根据所述匹配链表中与所述目标节点对对应的路由节点标志位的值,确定所述路由请求对应的目标路由节点,所述目标路由节点为所述第二级路由终端;将所述路由请求中的数据包加入所述目标路由节点对应的任务队列中,以使所述目标路由节点转发所述数据包;一个目标节点对对应有一个或多个路由请求,当所述目标路由节点将所有的待转发数据包传输完成后,将所述匹配链表中与所述目标节点对对应的路由节点标志位的值设为空,所述待转发数据包为所述目标节点对对应的各路由请求中的数据包。
16.一种计算机设备,其特征在于,包括:
存储器和处理器,所述存储器和所述处理器之间互相通信连接,所述存储器中存储有计算机指令,所述处理器通过执行所述计算机指令,从而执行权利要求1至12中任一项所述的路由方法。
17.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储有计算机指令,所述计算机指令用于使计算机执行权利要求1至12中任一项所述的路由方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311296420.4A CN117041150B (zh) | 2023-10-09 | 2023-10-09 | 路由方法、路由终端及数据传输系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311296420.4A CN117041150B (zh) | 2023-10-09 | 2023-10-09 | 路由方法、路由终端及数据传输系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN117041150A CN117041150A (zh) | 2023-11-10 |
CN117041150B true CN117041150B (zh) | 2024-01-23 |
Family
ID=88645314
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202311296420.4A Active CN117041150B (zh) | 2023-10-09 | 2023-10-09 | 路由方法、路由终端及数据传输系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN117041150B (zh) |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1152383A (zh) * | 1994-04-14 | 1997-06-18 | 麦垂考姆公司 | 为数据分组选择路由的方法和系统 |
CN101471841A (zh) * | 2007-12-29 | 2009-07-01 | 华为技术有限公司 | 路由表维护方法及装置 |
CN102088752A (zh) * | 2011-03-10 | 2011-06-08 | 张毅昆 | 用于无线多跳网络的锁定路由方法 |
CN108810873A (zh) * | 2017-05-03 | 2018-11-13 | 中兴通讯股份有限公司 | 锁定移动终端的方法、移动终端及计算机可读存储介质 |
CN116321349A (zh) * | 2023-03-21 | 2023-06-23 | 中科华军(北京)科技发展有限公司 | 一种用于无线自组网的单播数据传输方法 |
-
2023
- 2023-10-09 CN CN202311296420.4A patent/CN117041150B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1152383A (zh) * | 1994-04-14 | 1997-06-18 | 麦垂考姆公司 | 为数据分组选择路由的方法和系统 |
CN101471841A (zh) * | 2007-12-29 | 2009-07-01 | 华为技术有限公司 | 路由表维护方法及装置 |
CN102088752A (zh) * | 2011-03-10 | 2011-06-08 | 张毅昆 | 用于无线多跳网络的锁定路由方法 |
CN108810873A (zh) * | 2017-05-03 | 2018-11-13 | 中兴通讯股份有限公司 | 锁定移动终端的方法、移动终端及计算机可读存储介质 |
CN116321349A (zh) * | 2023-03-21 | 2023-06-23 | 中科华军(北京)科技发展有限公司 | 一种用于无线自组网的单播数据传输方法 |
Also Published As
Publication number | Publication date |
---|---|
CN117041150A (zh) | 2023-11-10 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US9535867B2 (en) | Method, device, system and storage medium for implementing packet transmission in PCIE switching network | |
JP6383805B2 (ja) | プレフィックスアウェア加重コスト多重径路グループの減縮 | |
US9215172B2 (en) | Hashing-based routing table management | |
US9197539B2 (en) | Multicast miss notification for a distributed network switch | |
US8139490B2 (en) | Deadlock prevention in direct networks of arbitrary topology | |
KR101434375B1 (ko) | 플로우 통신 시스템 | |
US11838211B2 (en) | System and method to determine optimal path(s) and use load balancing in an interconnect | |
US8989193B2 (en) | Facilitating insertion of device MAC addresses into a forwarding database | |
US10826823B2 (en) | Centralized label-based software defined network | |
KR101604970B1 (ko) | 서비스 지향 아키텍쳐 네트워크 내 서비스들의 검색 방법 | |
JP2010218364A (ja) | 情報処理システム、通信制御装置および方法 | |
EP3136662B1 (en) | Construction method, device and system for multi-path forwarding rules | |
US20160359729A1 (en) | Multi-destination packet handling at overlay virtual network tunneling endpoints | |
US9729350B1 (en) | Maintaining packet order in network flows over an autonomous network | |
CN117041150B (zh) | 路由方法、路由终端及数据传输系统 | |
CN105027502A (zh) | 控制信息管理装置、控制信息呈现方法和程序 | |
US10585725B2 (en) | System and method of hitless reconfiguration of a data processing pipeline | |
US10832370B2 (en) | System and method of hitless reconfiguration of a data processing pipeline with standby pipeline | |
CN114363246A (zh) | 众核的片上网络数据传输方法、装置、设备及介质 | |
CN108390780B (zh) | 用于处理信息的方法和装置 | |
JP2016225729A (ja) | ネットワークシステム、データ転送制御方法及び制御装置 | |
US20200341968A1 (en) | Differential Update of Local Cache from Central Database | |
CN117155843B (zh) | 数据传输方法、装置、路由节点、计算机网络及介质 | |
US20230099903A1 (en) | System and method for editing a network-on-chip (noc) | |
ZhuanSun et al. | Multipath routing algorithm for application‐specific wormhole NoCs |
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 |