CN115297054A - 一种信息传输方法、装置、终端及存储介质 - Google Patents
一种信息传输方法、装置、终端及存储介质 Download PDFInfo
- Publication number
- CN115297054A CN115297054A CN202210810034.1A CN202210810034A CN115297054A CN 115297054 A CN115297054 A CN 115297054A CN 202210810034 A CN202210810034 A CN 202210810034A CN 115297054 A CN115297054 A CN 115297054A
- Authority
- CN
- China
- Prior art keywords
- path
- information
- jump
- node
- target
- 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.)
- Pending
Links
Images
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
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
- H04L67/104—Peer-to-peer [P2P] networks
- H04L67/1074—Peer-to-peer [P2P] networks for supporting data block transmission mechanisms
- H04L67/1078—Resource delivery mechanisms
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本申请适用于区块链技术领域,提供一种信息传输方法、装置、终端及存储介质,其中方法包括:获取待传递信息对应的目的节点与当前节点间的节点连接关系;在所述节点连接关系为非直连关系时,判断路径表中是否存储有与所述当前节点及所述目的节点对应的目标跳转路径;在确定所述路径表中存储有与所述当前节点及所述目的节点对应的目标跳转路径时,依照所述目标跳转路径将所述待传递消息传输至所述目的节点。该方案能够实现非全连接网络中节点间信息的点对点单播传递。
Description
技术领域
本申请属于区块链技术领域,尤其涉及一种信息传输方法、装置、终端及存储介质。
背景技术
在由多机构参与的联盟链部署场景里,各机构对应的物理网络类型和网络安全等级不尽相同,打通物理网络对于部分IT能力比较弱的机构来说比较困难,物理网络打通过程沟通成本较大、耗时较长,导致联盟链组网成本较大。且随着联盟组织的扩张,要求加入联盟链中的所有机构节点之间均实现两两网络打通更加不太现实。
这就使得联盟链中各机构节点之间最终形成的可能是一个非全连接网络拓扑。但是,在联盟链系统中,通常很多消息的传递是需要点对点单播来实现的,例如在联盟链共识机制里,主节点需要给从节点发送心跳信息等等。
因此如何在联盟链处于非全连接网络状态下,实现消息的点对点单播是需要解决的一个问题。
发明内容
本申请实施例提供了一种信息传输方法、装置、终端及存储介质,以在联盟链处于非连接网络状态下,实现消息的点对点单播。
本申请实施例的第一方面提供了一种信息传输方法,包括:
获取待传递信息对应的目的节点与当前节点间的节点连接关系;
在所述节点连接关系为非直连关系时,判断路径表中是否存储有与所述当前节点及所述目的节点对应的目标跳转路径;其中,所述路径表中存储有区块链中其他节点将信息传递至当前节点的信息跳转路径,所述信息跳转路径中包含对信息的跳转路由节点依次记录生成的路径信息;所述其他节点中包括与所述当前节点为非直连关系的节点;
在确定所述路径表中存储有与所述当前节点及所述目的节点对应的目标跳转路径时,依照所述目标跳转路径将所述待传递消息传输至所述目的节点。
本申请实施例的第二方面提供了一种信息传输装置,包括:
获取模块,用于获取待传递信息对应的目的节点与当前节点间的节点连接关系;
路径选取模块,用于在所述节点连接关系为非直连关系时,判断路径表中是否存储有与所述当前节点及所述目的节点对应的目标跳转路径;其中,所述路径表中存储有区块链中其他节点将信息传递至当前节点的信息跳转路径,所述信息跳转路径中包含对信息的跳转路由节点依次记录生成的路径信息;所述其他节点中包括与所述当前节点为非直连关系的节点;
信息传输模块,用于在确定所述路径表中存储有与所述当前节点及所述目的节点对应的目标跳转路径时,依照所述目标跳转路径将所述待传递消息传输至所述目的节点。
本申请实施例的第三方面提供了一种终端,包括存储器、处理器以及存储在所述存储器中并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现如第一方面所述方法的步骤。
本申请实施例的第四方面提供了一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,所述计算机程序被处理器执行时实现如第一方面所述方法的步骤。
本申请的第五方面提供了一种计算机程序产品,当所述计算机程序产品在终端上运行时,使得所述终端执行上述第一方面所述方法的步骤。
由上可见,本申请实施例中,通过获取待传递信息的目的节点与当前节点间的节点连接关系,在确定节点连接关系为非直连关系时,从存储有信息由其他节点传递至当前节点的信息跳转路径的路径表中选取与当前节点及目的节点对应的目标跳转路径,以能够获取到当前节点至目的节点的信息跳转路径,进而基于该目标跳转路径中包含的对信息的跳转路由节点依次记录生成的路径信息,将待传递消息传输至目的节点。该过程中不需要使用额外的路由消息来构建信息传递的网络拓扑,通过对其他信息在传递过程中的跳转路由节点依次记录生成的路径信息构建路径表,以能基于该路径表进行信息传递的路径选择,在从路径表中选取出目标跳转路径后,即可基于该目标跳转路径实现待传递消息向目的节点的传递,实现非全连接网络中节点间信息的点对点单播传递。
附图说明
为了更清楚地说明本申请实施例中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本申请实施例提供的一种信息传输方法的流程图一;
图2是本申请实施例提供的节点间进行信息传递的过程示意图;
图3是本申请实施例提供的一种信息传输方法的流程图二;
图4是本申请实施例提供的一种信息传输装置的结构图;
图5是本申请实施例提供的一种终端的结构图。
具体实施方式
以下描述中,为了说明而不是为了限定,提出了诸如特定系统结构、技术之类的具体细节,以便透彻理解本申请实施例。然而,本领域的技术人员应当清楚,在没有这些具体细节的其它实施例中也可以实现本申请。在其它情况中,省略对众所周知的系统、装置、电路以及方法的详细说明,以免不必要的细节妨碍本申请的描述。
应当理解,当在本说明书和所附权利要求书中使用时,术语“包括”指示所描述特征、整体、步骤、操作、元素和/或组件的存在,但并不排除一个或多个其它特征、整体、步骤、操作、元素、组件和/或其集合的存在或添加。
还应当理解,在此本申请说明书中所使用的术语仅仅是出于描述特定实施例的目的而并不意在限制本申请。如在本申请说明书和所附权利要求书中所使用的那样,除非上下文清楚地指明其它情况,否则单数形式的“一”、“一个”及“该”意在包括复数形式。
还应当进一步理解,在本申请说明书和所附权利要求书中使用的术语“和/或”是指相关联列出的项中的一个或多个的任何组合以及所有可能组合,并且包括这些组合。
如在本说明书和所附权利要求书中所使用的那样,术语“如果”可以依据上下文被解释为“当...时”或“一旦”或“响应于确定”或“响应于检测到”。类似地,短语“如果确定”或“如果检测到[所描述条件或事件]”可以依据上下文被解释为意指“一旦确定”或“响应于确定”或“一旦检测到[所描述条件或事件]”或“响应于检测到[所描述条件或事件]”。
应理解,本实施例中各步骤的序号的大小并不意味着执行顺序的先后,各过程的执行顺序应以其功能和内在逻辑确定,而不应对本申请实施例的实施过程构成任何限定。
为了说明本申请所述的技术方案,下面通过具体实施例来进行说明。
参见图1,图1是本申请实施例提供的一种信息传输方法的流程图一。如图1所示,一种信息传输方法,该方法包括以下步骤:
步骤101,获取待传递信息对应的目的节点与当前节点间的节点连接关系。
其中,当前节点为联盟链中任一存在信息传输需求的节点。该当前节点具体为在节点存在信息传输需求时,执行本申请实施例中信息传输方法实现信息传输的节点本身。
当信息需要在节点间进行点对点的单播传递时,可以先确定出待传递信息需要传输至的目的节点。
但在联盟链中各机构节点之间最终形成的是非全连接网络状态下,节点与节点之间的连接关系可能为非直连关系。
这里,需要对待传递信息的目的节点与当前节点间的节点连接关系进行确定。
节点连接关系具体为直连关系,或者非直连关系。其中直连关系是指目的节点与当前节点之间具有直接的网络连接关系;非直连关系是指目的节点与当前节点之间不具有直接的网络连接关系。
其中,在一个具体的实施方式中,目的节点与当前节点为联盟链中的两个节点。目的节点与当前节点分别属于联盟链中的不同机构中,即,目的节点与当前节点为联盟链中不同机构下的机构节点。
步骤102,在所述节点连接关系为非直连关系时,判断路径表中是否存储有与所述当前节点及所述目的节点对应的目标跳转路径。
其中,所述路径表中存储有区块链中其他节点将信息传递至当前节点的信息跳转路径,所述信息跳转路径中包含对信息的跳转路由节点依次记录生成的路径信息;所述其他节点中包括与所述当前节点为非直连关系的节点。
上述的其他节点形成为将信息传递至当前节点的源节点。
上述的跳转路由节点中包含信息从源节点传输至当前节点所经过的所有节点。更具体地,跳转路由节点中包含源节点、当前节点及位于源节点与当前节点之间的跳转途经节点。基于跳转路由节点及各个跳转路由节点之间的信息跳转顺序,形成不同的信息跳转路径。其中,在对信息的跳转路由节点依次记录时,可以通过依次记录的处理动作实现对各个跳转路由节点之间的信息跳转顺序进行获取。
具体实施时,可以是依照信息跳转顺序对信息的跳转路由节点依次记录得到前述的节点信息。
该目标跳转路径为与目的节点及当前节点对应的信息跳转路径。目标跳转路径确保信息从当前节点向目的节点的跳转传递,实现非直连关系的两个节点之间的信息单播传递。
具体地,路径表中存储的信息跳转路径的获取可以利用联盟链系统中本来就需要发送的消息来携带路径信息,进而使不同的节点在获取到该消息时,能够获取到消息传递过程中的路径信息。
在联盟链中也会存在消息通过广播或组播的方式进行传递。无论是广播消息也好,亦或是组播消息也好,消息每经过一个节点,就将该节点的信息加入到消息的路径信息的最后一跳中发送出去,那么途中经由的每一个节点都能够获取自己到消息源节点的路径信息。
结合图2所示,由节点node1分别向node2和node3发送消息时,该消息中会携带源节点的节点信息,形成msg(node1),当源节点node1将msg(node1)传输至node2后,若node2又将该消息传输至node4,则该消息中会携带node2的信息,并依照信息跳转顺序对信息的跳转路由节点依次记录,形成信息跳转路径node1→node2,并在信息中进行携带,得到信息msg(node1→node2),将该信息msg(node1→node2)传输至node4;同样地,当源节点node1将msg(node1)传输至node3后,若node3又将该消息传输至node4,则该消息中会携带node3的信息,并依照信息跳转顺序对信息的跳转路由节点依次记录,形成信息跳转路径node1→node3,并在信息中进行携带,得到信息msg(node1→node3),将该信息msg(node1→node3)传输至node4。
当node4接收到msg(node1→node2)及msg(node1→node3)后,又会分别将自身的节点信息写入至信息中进行携带,分别得到msg(node1→node2→node4)及msg(node1→node3→node4),并将该两个信息分别传输至下一节点node5。而node4也可以从msg(node1→node2)及msg(node1→node3)分别提取得到本节点node4与源节点node1之间存在的两条信息跳转路径node1→node2及node1→node3,可以将该两条路径存储至节点node4本地。
同样地,当node5接收到该两个信息时,即可以从信息msg(node1→node2→node4)中提取得到当前消息到达node5节点所采用的信息跳转路径为node1→node2→node4,及从信息msg(node1→node3→node4)中提取得到当前消息到达node5节点所采用的信息跳转路径为node1→node3→node4。得到本节点node5与源节点node1之间存在的两条信息跳转路径,可以将该两条路径存储至节点node5本地形成路径表。
该过程中,因为广播消息和组播消息基本上都是覆盖全网的,所以在一轮或者两轮消息的广播或者组播传递之后,节点基本上都能获取到本节点与不同的源节点之间的可行信息跳转路径。
通过对该些信息跳转路径进行本地保存,形成路径表。
在后续信息需要在节点间进行点对点的单播传递时,能够利用路径表中存储的信息跳转路径进行信息传递的路径选择。
其中,路径表中的信息跳转路径的获取,也可以在节点连接关系为非直连关系下的信息单播传递过程中获取节点自身与源节点间的信息传递路径,不仅限于节点间的信息广播与组播传递过程。
因此,在本申请实施例中,并不需要使用额外的路由消息来构建信息传递的网络拓扑,相反的,通过使用联盟链系统中本来就需要发送的消息进行路径信息携带,即可获取到消息传递所需的路径信息。
进一步地,基于待传递信息的目的节点,获取所述目的节点与当前节点间的节点连接关系之后,确定目的节点与当前节点间的节点连接关系为直连关系时,则直接将待传递信息通过直连线路传输至目的节点即可。
以在信息单播过程中,能够基于目的节点与当前节点间的不同节点连接关系,实施不同的信息传递策略。
步骤103,在确定所述路径表中存储有与所述当前节点及所述目的节点对应的目标跳转路径时,依照所述目标跳转路径将所述待传递消息传输至所述目的节点。
在从路径表中选取出目标跳转路径后,即可基于该目标跳转路径实现待传递消息向目的节点的传递。
其中,可选地,该基于所述目标跳转路径,将所述待传递消息传输至所述目的节点,包括:
基于所述目标跳转路径,确定将所述待传递消息由当前节点传输至所述目的节点所需的首个跳转途经节点;
将所述目标跳转路径封装至所述待传递消息的结构体中,将封装后的所述待传递消息传输至所述首个跳转途经节点,其中所述待传递消息经由所述目标跳转路径中的各个跳转路由节点跳转传输至所述目的节点。
其中,目标跳转路径为与当前节点及目的节点对应的路径。因此可以基于该目标跳转路径从位于当前节点与所述目的节点之间的节点中确定出将待传递消息由当前节点传输至目的节点所需的首个跳转途经节点。
将封装后的待传递消息传输至该首个跳转途经节点,实现将待传递消息由当前节点传输至目的节点过程中的第一跳。
将封装后的待传递消息传输至该首个跳转途经节点后,该首个跳转途经节点即可以根据待传递消息中封装的目标跳转路径,获取下一跳转节点为哪个,首个跳转途经节点继续将该待传递消息向下一跳转途经节点发送,依次类推,直至待传递消息在目标跳转路径中的各个跳转路由节点间跳转传输至目的节点,实现待传递消息在当前节点向目的节点的单播传输。
上述各步骤,在具体应用过程中,在当前节点需要发送消息时,首先判断当前节点和目的节点是否有直接的连接,如果没有直接的连接,那么就需要其他节点帮忙转发消息,否则,使用直接连接直接发送消息即可。
当当前节点和目的节点间没有直接的连接,需要其他节点进行转发消息时,那么首先判断当前节点本地路径表中是否已经存储了信息跳转路径,如果没有存储,那么此时使用组播的方式将待传递消息发送出去至其他节点。
当前节点本地路径表中已经存储了信息跳转路径,则需要选取一条最优路径作为目标跳转路径,将该路径放入消息结构体中,使待传递信息能够依照该目标跳转路径实现向目的节点的传输。
本申请实施例中,通过获取待传递信息的目的节点与当前节点间的节点连接关系,在确定节点连接关系为非直连关系时,从存储有信息由其他节点传递至当前节点的信息跳转路径的路径表中选取与当前节点及目的节点对应的目标跳转路径,以能够获取到当前节点至目的节点的信息跳转路径,进而基于该目标跳转路径中包含的对信息的跳转路由节点依次记录生成的路径信息,将待传递消息传输至目的节点。该过程中不需要使用额外的路由消息来构建信息传递的网络拓扑,通过对其他信息在传递过程中的跳转路由节点依次记录生成的路径信息构建路径表,以能基于该路径表进行信息传递的路径选择,在从路径表中选取出目标跳转路径后,即可基于该目标跳转路径实现待传递消息向目的节点的传递,实现非全连接网络中节点间信息的点对点单播传递。
本申请实施例中还提供了信息传输方法的不同实施方式。
参见图3,图3是本申请实施例提供的一种信息传输方法的流程图二。如图3所示,一种信息传输方法,该方法包括以下步骤:
步骤301,获取所述区块链中与所述当前节点为直连关系的第一节点发送的目标信息。
其中,目标信息为由所述区块链中与所述当前节点为非直连关系的第二节点作为源节点及所述第一节点为一个跳转途经节点发送的信息。
所述目标信息中携带有所述目标信息由所述源节点传递至当前节点的第一信息跳转路径,所述第一信息跳转路径中包含对所述目标信息的跳转路由节点依次记录生成的路径信息。
步骤302,从所述目标信息中提取所述第一信息跳转路径,将所述第一信息跳转路径存储至所述路径表中。
上述步骤301及302,实现了对路径表中信息跳转路径的收集处理。
在联盟链中会存在消息通过广播或组播的方式进行传递。无论是广播消息也好,亦或是组播消息也好,消息每经过一个节点,就将该节点的信息加入到消息的路径信息的最后一跳中发送出去,那么途中经由的每一个节点都能够基于信息中携带的信息跳转路径,获取自己到消息源节点的路径信息。
其中,路径表中可存储的信息跳转路径具有上限阈值。同时还可以在获取到新的信息跳转路径时,对路径表中已存储的信息跳转路径进行更新替换。
对应地,作为一可选的实施方式,将所述第一信息跳转路径存储至所述路径表中,包括:
判断所述路径表中已存储的信息跳转路径的数量是否达到阈值;
在所述数量未达到阈值时,依照路径跳转代价的大小将所述第一信息跳转路径与所述已存储的信息跳转路径进行排序,得到所述第一信息跳转路径对应的排列次序;其中,所述路径跳转代价的大小与信息跳转路径中涉及的所述跳转路由节点的数量正相关;
基于所述排列次序,将所述第一信息跳转路径存储至所述路径表中。
即,当获取到新的信息跳转路径时,首先判断路径表中已存储的信息跳转路径的数量是否达到上限,若没有达到上限,则依照每一信息跳转路径对应的路径跳转代价,将新的信息跳转路径与已经存储的信息跳转路径进行排序,依照排序得到的次序,将新的信息跳转路径写入至路径表中。
具体地,路径跳转代价的大小可以基于信息跳转路径中的跳转路由节点的数量来确定,当信息跳转路径中的跳转路由节点数量比较多时,则其对应的路径跳转代价则较大,当信息跳转路径中的跳转路由节点数量比较少时,则其对应的路径跳转代价则较小。
不同地,下面结合具体的实施方式,对判断路径表中已存储的信息跳转路径的数量达到阈值的情况下,对第一信息跳转路径的处理方法进行说明。
作为第一个可选的实施方式,当判断路径表中已存储的信息跳转路径的数量达到阈值时,若所述第一信息跳转路径的路径跳转代价小于所述已存储的信息跳转路径中路径的最大路径跳转代价,则从所述已存储的信息跳转路径中选取被标记为路径失效次数最多的第二信息跳转路径;将所述第二信息跳转路径从所述路径表中剔除,将所述第一信息跳转路径存储至所述路径表中。
即,当路径表中已存储的信息跳转路径的数量已经达到阈值,此时需要将新的信息跳转路径与已存储的信息跳转路径进行比较判断,确定是否需要对路径表中已存储的信息跳转路径进行剔除,以将新的信息跳转路径存储至路径表中。
具体地,这里,当第一信息跳转路径的路径跳转代价小于路径表中已存储的信息跳转路径中路径的最大路径跳转代价时,则可以认为新的信息跳转路径具备更短的信息传递跳数,可以将该新的信息跳转路径写入至路径表中,此时则需要从路径表中选取一个已存储的信息跳转路径进行删除。本实施方式中,具体是将路径表中已存储的信息跳转路径中选取出被标记为路径失效次数最多的信息跳转路径进行删除,腾出信息跳转路径的写入空间,将第一信息跳转路径存储至所述路径表中。
作为第二个可选的实施方式,在判断路径表中已存储的信息跳转路径的数量达到阈值时,若所述第一信息跳转路径的路径跳转代价小于所述已存储的信息跳转路径中路径的最大路径跳转代价,则从所述已存储的信息跳转路径中选取被标记为路径失效次数最多的第三信息跳转路径;
若所述第三信息跳转路径为多条,则从所述路径表中选取路径跳转代价最大的所述第三信息跳转路径进行剔除,将所述第一信息跳转路径存储至所述路径表中。
即,在第一个可选的实施方式基础上,当从已存储的信息跳转路径中选取被标记为路径失效次数最多的信息跳转路径为多条时,从中选取路径跳转代价最大的一条信息跳转路径进行剔除即可。
作为第三个可选的实施方式,在判断路径表中已存储的信息跳转路径的数量达到阈值时,若所述第一信息跳转路径的路径跳转代价小于所述已存储的信息跳转路径中路径的最大路径跳转代价,且所述已存储的信息跳转路径均未被标记为路径失效时,从所述已存储的信息跳转路径中选取时间戳最小的第四信息跳转路径;
将所述第四信息跳转路径从所述路径表中剔除,将所述第一信息跳转路径存储至所述路径表中。
其中,所述路径表中所述已存储的信息跳转路径在定期探活后对确定出的失效路径进行路径失效标记。
这里的定期探活是一种主动探测行为。定期探活具体例如通过定期的探测手段确定端口是否存活,又或者通过定期的探测手段探测接口返回值是否符合预期等等。通过定期探活来确定目标对象最终是否可达或者是否可以连接。定期探活的探测手段例如为发送心跳包。
可以通过定期探活实现对路径的通断及是否可达的探测,以确定路径是否失效。
具体地,在当前节点获取到其他节点发送的目标信息后,由于携带有第一信息跳转路径的该目标消息有可能是过时的消息,所以所携带的路径并不一定是最新的,有可能已经失效了,且对于当前节点的路径表中已存储的信息跳转路径也有可能会因为网络波动或者信息过期等原因导致路径失效。所以对于路径表中已经存储的路径信息,还需要定期的发送心跳消息进行检测,如果某一次检测发现两个节点之间已经没有路径可达了,那么视为两个节点不可通。
探测时,从存储的第一条路径开始探测,直到探测到一条可达的路径为止,每次探测完成之后需要对于路径的时间戳进行更新,由于可能某一次检测发现某条路径不可达,有可能只是当前网络有波动,后续可以马上恢复,所以当路径检测到一次不可达时不会立马删除该路径,而是标记为失效,当标记次数达到一定次数时,才会把该路径删除。而当有新的路径被发现,这些被标记为失效的路径也可能会被替换出去。
其中,每一所述已存储的信息跳转路径在生成时赋予时间戳,所述已存储的信息跳转路径每被探活一次,所述时间戳对应更新一次。
即,上述过程中,可以定期对路径表中存储的信息跳转路径进行探活,不论探活结果为有效路径或是无效路径,都会更新信息跳转路径的时间戳,以标注路径有效性探活的最新时间。
该时间戳具体对应于能确定信息跳转路径为有效路径或无效路径的最新时刻。其中,时间戳最小则表明该信息跳转路径的最近一次探活时间距离当前时间最久远。
其中,当第一信息跳转路径的路径跳转代价小于路径表中已存储的信息跳转路径中路径的最大路径跳转代价时,确认新的信息跳转路径具备更短的信息传递跳数,如果此时路径表中已存储的信息跳转路径均未被标记为路径失效,即路径均处于有效状态时,需要从已存储的信息跳转路径中选取时间戳最小的信息跳转路径进行剔除,以确保路径表中存储的信息跳转路径保持更短的信息传递跳数及更新的路径有效性。
作为第四个可选的实施方式,在判断路径表中已存储的信息跳转路径的数量达到阈值时,若所述第一信息跳转路径的路径跳转代价大于所述已存储的信息跳转路径中路径的最大路径跳转代价,且所述第一信息跳转路径的时间戳大于所述已存储的信息跳转路径中的第五信息跳转路径的时间戳,则将所述第五信息跳转路径从所述路径表中剔除,将所述第一信息跳转路径存储至所述路径表中。
而当所述第一信息跳转路径的时间戳不大于所述已存储的信息跳转路径中的第五信息跳转路径的时间戳时,则不从所述路径表中剔除第五信息跳转路径,第一信息跳转路径也不存储至路径表中。
其中,所述第五信息跳转路径为所述已存储的信息跳转路径中路径跳转代价最大的路径。
即,当新的信息跳转路径的路径跳转代价大于路径表中所有的已存储的信息跳转路径,但该新的信息跳转路径的时间戳比路径表中路径跳转代价最大的那个已存储的信息跳转路径大,则此时可以选择将路径表中路径跳转代价最大的那个已存储的信息跳转路径进行剔除,将该新的信息跳转路径存储至所述路径表中,否则不对路径表中已存储的信息跳转路径进行剔除。
以最大程度确保路径表中所存储的信息跳转路径的有效性。
其中,进一步地,上述第一个至第四个实施方式中,将第一信息跳转路径存储至所述路径表中时,具体可以是:
依照路径跳转代价的大小将所述第一信息跳转路径与所述路径表中剩余的已存储信息跳转路径进行排序,得到第一信息跳转路径对应的排列次序;基于所述排列次序,将所述第一信息跳转路径存储至所述路径表中。
其中,路径表中剩余的已存储信息跳转路径具体是指上述各个不同的实施方式中从路径表中的所述已存储的信息跳转路径中将选取出的信息跳转路径进行剔除后剩余的信息跳转路径。
具体地,结合例子,对上述各个实施方式中的信息跳转路径的处理过程进行说明。
其中,假设当前衡量路径跳转代价的因素是跳数,每个节点的路径表中路径存储上限阈值为五条。
假设节点1目前已经存储了四条到节点2的路径,分别为{{path:1,3,2price:3ts:0,invalidCnt:0},{path:1,3,5,2price:4ts:12,invalidCnt:0},{path:1,4,7,2price:4ts:15,invalidCnt:2},{path:1,4,8,9,2price:5ts:0,invalidCnt:0}};其中path是信息跳转路径信息,price是指路径跳转代价,ts是路径的时间戳,在探测时对应实时更新,invalidCnt为被标记为路径失效的次数。
当新获取到的一条目标消息中携带了一个节点1至节点2的新路径{path:1,4,8,6,2price:5ts:0,invalidCnt:0},由于路径表中目前还没存储满,那么直接依照路径跳转代价的大小值进行排序后存储即可。
存储完后,路径表中目前已经存储了五条路径。如果后续又获得一条新的路径,此时需要使用前述实施方式中的替换规则,剔除之前存储的五条路径之一,假设新的路径是{path:1,3,9,2price:4ts:0,invalidCnt:0},由上述的替换规则可知,该新的路径的跳转代价小于所有路径中的最大跳转代价(排序为最后一个的路径的跳转代价),此时需要替换掉被标记为路径失效的次数最多的路径,即{path:1,4,7,2price:4ts:15,invalidCnt:2},同时将新的路径存储至路径表中。
此外,如果进行了一次探活,从第一条路径开始探测,当第一条路径探测完,则路径信息更新为{{path:1,3,2price:3ts:20,invalidCnt:0},{path:1,3,5,2price:4ts:12,invalidCnt:0},{path:1,3,9,2price:4ts:0,invalidCnt:0},{path:1,4,8,9,2price:5ts:0,invalidCnt:0},{path:1,4,8,6,2price:5ts:0,invalidCnt:0}},更新完之后,第一条路径的时间戳变成5条路径中最大的那条,实现对路径有效性的定时探测与记录。
步骤303,获取待传递信息对应的目的节点与当前节点间的节点连接关系。
该步骤的实现过程与前述实施方式中的步骤101的实现过程相同,此处不再赘述。
其中,上述步骤301至步骤302与步骤303之间不限定执行顺序,可以先执行步骤303再执行步骤301至步骤302,也可以步骤301至步骤302与步骤303之间并行发生。
步骤304,在所述节点连接关系为非直连关系时,判断路径表中是否存储有与所述当前节点及所述目的节点对应的目标跳转路径。
其中,所述路径表中存储有区块链中其他节点将信息传递至当前节点的信息跳转路径,所述信息跳转路径中包含对信息的跳转路由节点依次记录生成的路径信息;所述其他节点中包括与所述当前节点为非直连关系的节点。
其中,所述路径表用于存储信息从区块链中源节点发送至当前节点的信息跳转路径,所述信息跳转路径中包含依照信息跳转顺序对信息的跳转路由节点依次记录得到的节点信息。
该步骤的实现过程与前述实施方式中的步骤102的实现过程相同,此处不再赘述。
在一个可选的实施方式中,该判断路径表中是否存储有与所述当前节点及所述目的节点对应的目标跳转路径,包括:
判断所述路径表中是否存在跳转路由节点中包含有所述目的节点的第六信息跳转路径;在判断为是时,基于所述第六信息跳转路径中涉及的跳转路由节点,得到由所述当前节点至所述目的节点的所述目标跳转路径。
具体地,在判断所述路径表中是否存在跳转路由节点中包含有所述目的节点的第六信息跳转路径时,可以将目的节点分别与路径表中存储的各个信息跳转路径所对应的跳转路由节点进行匹配。
在一种情况下,目的节点为一个信息跳转路径所涉及的跳转路由节点中的端点节点时,则直接基于该信息跳转路径中涉及的跳转路由节点,按照由当前节点至目的节点的节点跳转方向,得到当前节点及该目的节点对应的目标跳转路径。
在另一种情况下,目的节点为一个信息跳转路径所涉及的跳转路由节点中的中间节点(即跳转途经节点)时,则从该信息跳转路径中涉及的跳转路由节点中截取位于当前节点与目的节点之间的目标路由节点,基于该些目标路由节点,按照由当前节点至目的节点的节点跳转方向,得到当前节点及该目的节点对应的目标跳转路径。
进一步地,在一个可选的实施方式中,上述判断所述路径表中是否存在跳转路由节点中包含有所述目的节点的第六信息跳转路径的步骤,具体包括:
从所述路径表中选取未被标记为路径失效的第七信息跳转路径;
判断所述第七信息跳转路径中是否存在满足设定选取条件的信息跳转路径;其中,所述设定选取条件中包括被赋予第一选取权重的时间戳信息及被赋予第二选取权重的路径跳转代价信息;
在判断为是时,从满足所述设定选取条件的信息跳转路径中,判断是否存在跳转路由节点中包含有所述目的节点的所述第六信息跳转路径。
该过程,需要先从路径表中选取出有效的信息跳转路径,进一步地,还需要对有效的信息跳转路径进行二次筛选。
在二次筛选过程中,需要结合时间戳和路径跳转代价进行信息跳转路径筛选。具体地,可以给时间戳信息赋予较高选取权重,给路径跳转代价信息赋予较低选取权重。
例如可以给不同的选取权重赋予不同的选取优先级。
其中,第一选取权重对应第一选取优先级,第二选取权重对应第二选取优先级,第一优先级高于第二优先级。
则对应地,在判断所述第七信息跳转路径中是否存在满足设定选取条件的信息跳转路径时,包括:
基于所述第一选取优先级,判断所述第七信息跳转路径中是否存在所述时间戳信息处于设定时间范围内的第一路径;在判断为是时,基于所述第二选取优先级,判断所述第一路径中是否存在所述路径跳转代价信息处于设定代价范围内的第二路径;在判断为是时,将所述第二路径确定为与所述当前节点及所述目的节点对应的所述目标跳转路径。
即,根据选取权重对应的不同的优先级,优先以时间戳信息从第七信息跳转路径中选取满足条件的路径,再在随后以路径跳转代价从满足时间戳要求的路径中选取满足路径跳转代价条件的路径。
具体地,在一个可选的例子中,可以是优先基于时间戳信息从第七信息跳转路径中选取出时间戳最大的路径,再基于路径跳转代价信息从时间戳同时为最大的多个路径中选取路径跳转代价最小的路径作为目标跳转路径。以最大程度确保选取出的目标跳转路径具备路径有效性。
进一步地,或者,可以分别给时间戳信息及路径跳转代价信息赋予相应的选取权重系数,以选取权重系数均衡不同的信息跳转路径所对应的时间戳及路径跳转代价以进行路径性能评估,依据路径性能评估值,从第六信息跳转路径中选取出目标跳转路径,以最大程度确保选取出的目标跳转路径具备路径有效性的同时兼顾路径跳转代价。
进一步地,在一个实施方式中,若路径表中所有已存储的信息跳转路径均被标记为路径失效,那么可视为当前没有路径可以选择,此时将采用组播的方式将待传递信息发送出去,以最大程度确保待传递信息的有效发出。
步骤305,在确定所述路径表中存储有与所述当前节点及所述目的节点对应的目标跳转路径时,依照所述目标跳转路径将所述待传递消息传输至所述目的节点。
该步骤的实现过程与前述实施方式中的步骤103的实现过程相同,此处不再赘述。
本申请实施例中,通过对区块链中其他节点发送的目标信息中携带的信息跳转路径进行提取,实现对路径表中信息跳转路径的累积,在后续进而获取待传递信息的目的节点与当前节点间的节点连接关系,在确定节点连接关系为非直连关系时,从路径表中选取目标跳转路径,以能够获取到当前节点至目的节点的信息跳转路径,进而基于目标跳转路径中包含的依照信息跳转顺序对信息的跳转路由节点依次记录得到的节点信息,将待传递消息传输至目的节点,该过程中不需要使用额外的路由消息来构建信息传递的网络拓扑,通过利用路径表中存储的信息跳转路径进行信息传递的路径选择,在从路径表中选取出目标跳转路径后,即可基于该目标跳转路径实现待传递消息向目的节点的传递,实现非全连接网络中节点间信息的点对点单播传递。
参见图4,图4是本申请实施例提供的一种信息传输装置的结构图,为了便于说明,仅示出了与本申请实施例相关的部分。
所述信息传输装置400包括:
获取模块401,用于获取待传递信息对应的目的节点与当前节点间的节点连接关系;
路径选取模块402,用于在所述节点连接关系为非直连关系时,判断路径表中是否存储有与所述当前节点及所述目的节点对应的目标跳转路径;其中,所述路径表中存储有区块链中其他节点将信息传递至当前节点的信息跳转路径,所述信息跳转路径中包含对信息的跳转路由节点依次记录生成的路径信息;所述其他节点中包括与所述当前节点为非直连关系的节点;
信息传输模块403,用于在确定所述路径表中存储有与所述当前节点及所述目的节点对应的目标跳转路径时,依照所述目标跳转路径将所述待传递消息传输至所述目的节点。
其中,该装置还包括:
路径获取模块,用于获取所述区块链中与所述当前节点为直连关系的第一节点发送的目标信息,所述目标信息为由所述区块链中与所述当前节点为非直连关系的第二节点作为源节点及所述第一节点为一个跳转途经节点发送的信息;所述目标信息中携带有所述目标信息由所述源节点传递至当前节点的第一信息跳转路径,所述第一信息跳转路径中包含对所述目标信息的跳转路由节点依次记录生成的路径信息;从所述目标信息中提取所述第一信息跳转路径,将所述第一信息跳转路径存储至所述路径表中。
其中,路径获取模块,具体用于:
判断所述路径表中已存储的信息跳转路径的数量是否达到阈值;
在所述数量未达到阈值时,依照路径跳转代价的大小将所述第一信息跳转路径与所述已存储的信息跳转路径进行排序,得到所述第一信息跳转路径对应的排列次序;其中,所述路径跳转代价的大小与信息跳转路径中涉及的跳转路由节点的数量正相关;
基于所述排列次序,将所述第一信息跳转路径存储至所述路径表中。
其中,路径获取模块,还具体用于:
在所述数量达到阈值时,若所述第一信息跳转路径的路径跳转代价小于所述已存储的信息跳转路径中路径的最大路径跳转代价,则从所述已存储的信息跳转路径中选取被标记为路径失效次数最多的第二信息跳转路径;
将所述第二信息跳转路径从所述路径表中剔除,将所述第一信息跳转路径存储至所述路径表中;或者,
在所述数量达到阈值时,若所述第一信息跳转路径的路径跳转代价小于所述已存储的信息跳转路径中路径的最大路径跳转代价,则从所述已存储的信息跳转路径中选取被标记为路径失效次数最多的第三信息跳转路径;
若所述第三信息跳转路径为多条,则从所述路径表中选取路径跳转代价最大的所述第三信息跳转路径进行剔除,将所述第一信息跳转路径存储至所述路径表中;或者,
在所述数量达到阈值时,若所述第一信息跳转路径的路径跳转代价小于所述已存储的信息跳转路径中路径的最大路径跳转代价,且所述已存储的信息跳转路径均未被标记为路径失效时,从所述已存储的信息跳转路径中选取时间戳最小的第四信息跳转路径;
将所述第四信息跳转路径从所述路径表中剔除,将所述第一信息跳转路径存储至所述路径表中;或者,
在所述数量达到阈值时,若所述第一信息跳转路径的路径跳转代价大于所述已存储的信息跳转路径中路径的最大路径跳转代价,且所述第一信息跳转路径的时间戳大于所述已存储的信息跳转路径中的第五信息跳转路径的时间戳,则将所述第五信息跳转路径从所述路径表中剔除,将所述第一信息跳转路径存储至所述路径表中;
其中,所述第五信息跳转路径为所述已存储的信息跳转路径中路径跳转代价最大的路径;
其中,所述路径表中所述已存储的信息跳转路径在定期探活后对确定出的失效路径进行路径失效标记;每一所述已存储的信息跳转路径在生成时赋予时间戳,所述已存储的信息跳转路径每被探活一次,所述时间戳对应更新一次。
其中,路径选取模块402,具体用于:
判断所述路径表中是否存在跳转路由节点中包含有所述目的节点的第六信息跳转路径;
在判断为是时,基于所述第六信息跳转路径中涉及的跳转路由节点,得到由所述当前节点至所述目的节点的所述目标跳转路径。
其中,路径选取模块402,还具体用于:
从所述路径表中选取未被标记为路径失效的第七信息跳转路径;
判断所述第七信息跳转路径中是否存在满足设定选取条件的信息跳转路径;其中,所述设定选取条件中包括被赋予第一选取权重的时间戳信息及被赋予第二选取权重的路径跳转代价信息;
在判断为是时,从满足所述设定选取条件的信息跳转路径中,判断是否存在跳转路由节点中包含有所述目的节点的所述第六信息跳转路径。
其中,信息传输模块403,具体用于:
基于所述目标跳转路径,确定将所述待传递消息由当前节点传输至所述目的节点所需的首个跳转途经节点;
将所述目标跳转路径封装至所述待传递消息的结构体中,将封装后的所述待传递消息传输至所述首个跳转途经节点,其中所述待传递消息经由所述目标跳转路径中的各个跳转路由节点跳转传输至所述目的节点。
本申请实施例提供的信息传输装置能够实现上述信息传输方法的实施例的各个过程,且能达到相同的技术效果,为避免重复,这里不再赘述。
图5是本申请实施例提供的一种终端的结构图。如该图所示,该实施例的终端5包括:至少一个处理器50(图5中仅示出一个)、存储器51以及存储在所述存储器51中并可在所述至少一个处理器50上运行的计算机程序52,所述处理器50执行所述计算机程序52时实现上述任意各个方法实施例中的步骤。
所述终端5可以是桌上型计算机、笔记本、掌上电脑及云端服务器等计算设备。所述终端5可包括,但不仅限于,处理器50、存储器51。本领域技术人员可以理解,图5仅仅是终端5的示例,并不构成对终端5的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件,例如所述终端还可以包括输入输出设备、网络接入设备、总线等。
所述处理器50可以是中央处理单元(Central Processing Unit,CPU),还可以是其他通用处理器、数字信号处理器(Digital Signal Processor,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现场可编程门阵列(Field-Programmable Gate Array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。
所述存储器51可以是所述终端5的内部存储单元,例如终端5的硬盘或内存。所述存储器51也可以是所述终端5的外部存储设备,例如所述终端5上配备的插接式硬盘,智能存储卡(Smart Media Card,SMC),安全数字(Secure Digital,SD)卡,闪存卡(Flash Card)等。进一步地,所述存储器51还可以既包括所述终端5的内部存储单元也包括外部存储设备。所述存储器51用于存储所述计算机程序以及所述终端所需的其他程序和数据。所述存储器51还可以用于暂时地存储已经输出或者将要输出的数据。
所属领域的技术人员可以清楚地了解到,为了描述的方便和简洁,仅以上述各功能单元、模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能单元、模块完成,即将所述装置的内部结构划分成不同的功能单元或模块,以完成以上描述的全部或者部分功能。实施例中的各功能单元、模块可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中,上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。另外,各功能单元、模块的具体名称也只是为了便于相互区分,并不用于限制本申请的保护范围。上述系统中单元、模块的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
在上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述或记载的部分,可以参见其它实施例的相关描述。
本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、或者计算机软件和电子硬件的结合来实现。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本申请的范围。
在本申请所提供的实施例中,应该理解到,所揭露的装置/终端和方法,可以通过其它的方式实现。例如,以上所描述的装置/终端实施例仅仅是示意性的,例如,所述模块或单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通讯连接可以是通过一些接口,装置或单元的间接耦合或通讯连接,可以是电性,机械或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本申请各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
所述集成的模块/单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请实现上述实施例方法中的全部或部分流程,也可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一计算机可读存储介质中,该计算机程序在被处理器执行时,可实现上述各个方法实施例的步骤。其中,所述计算机程序包括计算机程序代码,所述计算机程序代码可以为源代码形式、对象代码形式、可执行文件或某些中间形式等。所述计算机可读介质可以包括:能够携带所述计算机程序代码的任何实体或装置、记录介质、U盘、移动硬盘、磁碟、光盘、计算机存储器、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、电载波信号、电信信号以及软件分发介质等。需要说明的是,所述计算机可读介质包含的内容可以根据司法管辖区内立法和专利实践的要求进行适当的增减,例如在某些司法管辖区,根据立法和专利实践,计算机可读介质不包括电载波信号和电信信号。
本申请实现上述实施例方法中的全部或部分流程,也可以通过计算机程序产品来实现,当计算机程序产品在终端上运行时,使得所述终端执行时实现可实现上述各个方法实施例中的步骤。
以上所述实施例仅用以说明本申请的技术方案,而非对其限制;尽管参照前述实施例对本申请进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本申请各实施例技术方案的精神和范围,均应包含在本申请的保护范围之内。
Claims (10)
1.一种信息传输方法,其特征在于,包括:
获取待传递信息对应的目的节点与当前节点间的节点连接关系;
在所述节点连接关系为非直连关系时,判断路径表中是否存储有与所述当前节点及所述目的节点对应的目标跳转路径;其中,所述路径表中存储有区块链中其他节点将信息传递至当前节点的信息跳转路径,所述信息跳转路径中包含对信息的跳转路由节点依次记录生成的路径信息;所述其他节点中包括与所述当前节点为非直连关系的节点;
在确定所述路径表中存储有与所述当前节点及所述目的节点对应的目标跳转路径时,依照所述目标跳转路径将所述待传递消息传输至所述目的节点。
2.根据权利要求1所述的方法,其特征在于,所述在所述节点连接关系为非直连关系时,判断路径表中是否存储有与所述当前节点及所述目的节点对应的目标跳转路径之前,还包括:
获取所述区块链中与所述当前节点为直连关系的第一节点发送的目标信息,所述目标信息为由所述区块链中与所述当前节点为非直连关系的第二节点作为源节点及所述第一节点为一个跳转途经节点发送的信息;所述目标信息中携带有所述目标信息由所述源节点传递至当前节点的第一信息跳转路径,所述第一信息跳转路径中包含对所述目标信息的跳转路由节点依次记录生成的路径信息;
从所述目标信息中提取所述第一信息跳转路径,将所述第一信息跳转路径存储至所述路径表中。
3.根据权利要求2所述的方法,其特征在于,所述将所述第一信息跳转路径存储至所述路径表中,包括:
判断所述路径表中已存储的信息跳转路径的数量是否达到阈值;
在所述数量未达到阈值时,依照路径跳转代价的大小将所述第一信息跳转路径与所述已存储的信息跳转路径进行排序,得到所述第一信息跳转路径对应的排列次序;其中,所述路径跳转代价的大小与信息跳转路径中涉及的跳转路由节点的数量正相关;
基于所述排列次序,将所述第一信息跳转路径存储至所述路径表中。
4.根据权利要求3所述的方法,其特征在于,所述判断所述路径表中已存储的信息跳转路径的数量是否达到阈值之后,还包括:
在所述数量达到阈值时,若所述第一信息跳转路径的路径跳转代价小于所述已存储的信息跳转路径中路径的最大路径跳转代价,则从所述已存储的信息跳转路径中选取被标记为路径失效次数最多的第二信息跳转路径;
将所述第二信息跳转路径从所述路径表中剔除,将所述第一信息跳转路径存储至所述路径表中;或者,
在所述数量达到阈值时,若所述第一信息跳转路径的路径跳转代价小于所述已存储的信息跳转路径中路径的最大路径跳转代价,则从所述已存储的信息跳转路径中选取被标记为路径失效次数最多的第三信息跳转路径;
若所述第三信息跳转路径为多条,则从所述路径表中选取路径跳转代价最大的所述第三信息跳转路径进行剔除,将所述第一信息跳转路径存储至所述路径表中;或者,
在所述数量达到阈值时,若所述第一信息跳转路径的路径跳转代价小于所述已存储的信息跳转路径中路径的最大路径跳转代价,且所述已存储的信息跳转路径均未被标记为路径失效时,从所述已存储的信息跳转路径中选取时间戳最小的第四信息跳转路径;
将所述第四信息跳转路径从所述路径表中剔除,将所述第一信息跳转路径存储至所述路径表中;或者,
在所述数量达到阈值时,若所述第一信息跳转路径的路径跳转代价大于所述已存储的信息跳转路径中路径的最大路径跳转代价,且所述第一信息跳转路径的时间戳大于所述已存储的信息跳转路径中的第五信息跳转路径的时间戳,则将所述第五信息跳转路径从所述路径表中剔除,将所述第一信息跳转路径存储至所述路径表中;
其中,所述第五信息跳转路径为所述已存储的信息跳转路径中路径跳转代价最大的路径;
其中,所述路径表中所述已存储的信息跳转路径在定期探活后对确定出的失效路径进行路径失效标记;每一所述已存储的信息跳转路径在生成时赋予时间戳,所述已存储的信息跳转路径每被探活一次,所述时间戳对应更新一次。
5.根据权利要求1-4任一项所述的方法,其特征在于,所述判断路径表中是否存储有与所述当前节点及所述目的节点对应的目标跳转路径,包括:
判断所述路径表中是否存在跳转路由节点中包含有所述目的节点的第六信息跳转路径;
在判断为是时,基于所述第六信息跳转路径中涉及的跳转路由节点,得到由所述当前节点至所述目的节点的所述目标跳转路径。
6.根据权利要求5所述的方法,其特征在于,所述判断所述路径表中是否存在跳转路由节点中包含有所述目的节点的第六信息跳转路径,包括:
从所述路径表中选取未被标记为路径失效的第七信息跳转路径;
判断所述第七信息跳转路径中是否存在满足设定选取条件的信息跳转路径;其中,所述设定选取条件中包括被赋予第一选取权重的时间戳信息及被赋予第二选取权重的路径跳转代价信息;
在判断为是时,从满足所述设定选取条件的信息跳转路径中,判断是否存在跳转路由节点中包含有所述目的节点的所述第六信息跳转路径。
7.根据权利要求1所述的方法,其特征在于,所述依照所述目标跳转路径将所述待传递消息传输至所述目的节点,包括:
基于所述目标跳转路径,确定将所述待传递消息由当前节点传输至所述目的节点所需的首个跳转途经节点;
将所述目标跳转路径封装至所述待传递消息的结构体中,将封装后的所述待传递消息传输至所述首个跳转途经节点,其中所述待传递消息经由所述目标跳转路径中的各个跳转路由节点跳转传输至所述目的节点。
8.一种信息传输装置,其特征在于,包括:
获取模块,用于获取待传递信息对应的目的节点与当前节点间的节点连接关系;
路径选取模块,用于在所述节点连接关系为非直连关系时,判断路径表中是否存储有与所述当前节点及所述目的节点对应的目标跳转路径;其中,所述路径表中存储有区块链中其他节点将信息传递至当前节点的信息跳转路径,所述信息跳转路径中包含对信息的跳转路由节点依次记录生成的路径信息;所述其他节点中包括与所述当前节点为非直连关系的节点;
信息传输模块,用于在确定所述路径表中存储有与所述当前节点及所述目的节点对应的目标跳转路径时,依照所述目标跳转路径将所述待传递消息传输至所述目的节点。
9.一种终端,包括存储器、处理器以及存储在所述存储器中并可在所述处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时实现如权利要求1至7任一项所述方法的步骤。
10.一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现如权利要求1至7任一项所述方法的步骤。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210810034.1A CN115297054A (zh) | 2022-07-11 | 2022-07-11 | 一种信息传输方法、装置、终端及存储介质 |
PCT/CN2023/105647 WO2024012310A1 (zh) | 2022-07-11 | 2023-07-04 | 一种信息传输方法、装置、终端及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210810034.1A CN115297054A (zh) | 2022-07-11 | 2022-07-11 | 一种信息传输方法、装置、终端及存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN115297054A true CN115297054A (zh) | 2022-11-04 |
Family
ID=83821608
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210810034.1A Pending CN115297054A (zh) | 2022-07-11 | 2022-07-11 | 一种信息传输方法、装置、终端及存储介质 |
Country Status (2)
Country | Link |
---|---|
CN (1) | CN115297054A (zh) |
WO (1) | WO2024012310A1 (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2024012310A1 (zh) * | 2022-07-11 | 2024-01-18 | 杭州趣链科技有限公司 | 一种信息传输方法、装置、终端及存储介质 |
Family Cites Families (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR101068716B1 (ko) * | 2009-12-28 | 2011-09-28 | 경희대학교 산학협력단 | 센서 네트워크에서 패킷의 송신 경로를 역추적하는 방법 |
CN106535273B (zh) * | 2016-11-15 | 2018-04-03 | 希诺麦田技术(深圳)有限公司 | 时分多址自组织网络的路由方法和装置 |
CN108770031B (zh) * | 2018-03-21 | 2022-05-17 | 洪贵顺 | 动态路径规划方法、动态路径规划系统及存储介质 |
CN109951389A (zh) * | 2019-03-06 | 2019-06-28 | 篱笆墙网络科技有限公司 | 区块链离链数据的存储方法、装置、设备和存储介质 |
CN115297054A (zh) * | 2022-07-11 | 2022-11-04 | 杭州趣链科技有限公司 | 一种信息传输方法、装置、终端及存储介质 |
-
2022
- 2022-07-11 CN CN202210810034.1A patent/CN115297054A/zh active Pending
-
2023
- 2023-07-04 WO PCT/CN2023/105647 patent/WO2024012310A1/zh unknown
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2024012310A1 (zh) * | 2022-07-11 | 2024-01-18 | 杭州趣链科技有限公司 | 一种信息传输方法、装置、终端及存储介质 |
Also Published As
Publication number | Publication date |
---|---|
WO2024012310A1 (zh) | 2024-01-18 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US9331932B2 (en) | Network system | |
JP2019129408A (ja) | 障害検知方法、ノード装置、通信システム | |
CN111399756B (zh) | 一种数据存储方法、数据下载方法及装置 | |
JP2014168283A (ja) | 通信システム、ネットワーク監視装置、及びネットワーク監視方法 | |
CN110430135B (zh) | 一种报文处理方法和装置 | |
US20100271934A1 (en) | Method and apparatus to enable a hybrid synchronous/asynchronous routing protocol | |
CN113453229B (zh) | 一种远距离的无线安全自动化测试方法、装置及设备 | |
CN115297054A (zh) | 一种信息传输方法、装置、终端及存储介质 | |
CN111884875A (zh) | 一种离线设备确定方法及装置 | |
CN113179215B (zh) | 组网通信方法、系统、节点设备、存储介质和电子设备 | |
CN105049463B (zh) | 分散数据库、数据共享方法、用于分散数据库的装置 | |
CN111182522B (zh) | 一种团伙确定方法、装置、电子设备及计算机存储介质 | |
KR20140125223A (ko) | 정보 중심 네트워킹 기반의 콘텐츠 네트워크에서 관리 인터페이스를 이용한 정보 수집 방법, 콘텐츠 네트워크 관리 시스템 및 노드 장치 | |
CN114172830B (zh) | 网络时延检测方法、装置以及系统 | |
CN107547605A (zh) | 一种基于节点队列的消息读写方法及节点设备 | |
JP4249210B2 (ja) | 経路数監視装置及び経路数監視方法ならびに経路数監視プログラム | |
CN109617920A (zh) | 一种报文处理方法、装置、路由器及防火墙设备 | |
CN105245397A (zh) | 监视装置和监视方法 | |
EP3051919A1 (en) | Device and method for wireless communication used in wireless ad hoc network | |
CN113965492A (zh) | 一种数据流统计方法及装置 | |
CN109491699A (zh) | 应用程序的资源检查方法、装置、设备及存储介质 | |
CN114826867B (zh) | 处理数据的方法、装置、系统及存储介质 | |
CN115297126A (zh) | 基于区块链的信息传输方法、装置、终端及存储介质 | |
Kobusiński et al. | On Increasing Dependability of Web Services-an Approach to Design a Failure Detection Service | |
US20010034797A1 (en) | Data transferring method and communication network system |
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 |