一种多目的节点的消息转发方法
技术领域
本发明属于通信领域,更具体地说是一种多目的节点的消息转发方法。
背景技术
多目的节点消息转发是指多个目的节点同时向一个源节点发出消息请求;这种多目的节点消息转发往往存在源节点占用率过高,降低转发效率。
申请号“201310112512.2 ”发明名称:用于认知无线传感器网络中的节点不相交多路径路由方法,一种用于认知无线传感器网络中的节点不相交多路径路由方法,在路由的建立过程中,路由请求分组中记录着节点的可用信道信息,收到分组的节点回送一个路由应答分组,根据路由应答分组中的消息单元可以知道链路的频谱效用值,将频谱效用值与设定频谱效用门限值进行比较选择下一跳节点。如果两个路由请求分组中的传播路径仅仅彼此相交,则根据路由请求中的传播路径平均频谱效用再次进行选择。该路由方法将路由选择及信道选择同频谱效用结合在一起,各条路径除了源节点和目的节点之外没有任何共用节点,减少了冲突的发生,大大提高了路由的稳定性,本发明可以在多信道分布式认知无线传感器网络中得到广泛的应用。
申请号“201410383510.1 ”发明名称“一种多路径转发的方法及装置” 本发明实施例提供了一种多路径转发的方法及装置,涉及通信领域,用以在没有配置专用的支持ECMP路由的情况下,将相同目的地址的报文通过不同的转发出口转发,即实现多路径转发。该方法包括:建立以包括地址、匹配值和转发出口为转发表项的转发表;转发表中至少有两个转发表项的目的地址相同而匹配值和转发出口不同;接收报文,提取报文的特征值;报文中携带报文的目的地址;对报文的特征值进行哈希计算,获得特征哈希值;特征哈希值的位数不小于匹配值的位数;根据报文的目的地址和特征哈希值,从转发表中查找目标转发表项;将报文转发至目标转发表项对应的转发出口。
上述方法中使得各条路径除了源节点和目的节点之外没有任何共用节点,但这种方法无法解决源节点的占用率高的问题。
发明内容
本发明所要解决的技术问题是:提供一种多目的节点的消息转发方法,该方法先确定优选消息传递路径和优先目的节点,源节点按照优选消息传递路径将消息传递给优先目的节点,优先目的节点再将消息发送给与其直接通信的其他目的节点。
为了解决上述技术问题,本发明一种多目的节点的消息转发方法,包括以下步骤:
步骤1、构建节点间的通信网络拓扑图,图中用直线表示两个节点直接通信;
步骤2、当有多个目的节点同时向同一源节点发送请求消息时,执行步骤3;
步骤3、在通信网络拓扑图中查找源节点到每一个目的节点的所有路径;
步骤4、获取源节点到每一个目的节点的优选路径;
步骤5、在所有优选路径中选取一条最短路径作为优选消息传递路径,源节点将携带的消息按照该优选消息传递路径将消息传递给该目的节点,则该目的节点为优先目的节点;
步骤6、分别查找与或不与优先目的节点直接通信的其他目的节点,获取不与优先目的节点直接通信的其他目的节点后返回执行步骤3;获取与优先目的节点直接通信的其他目的节点数量为N,N为正整数,执行步骤7;
步骤7、优先目的节点构建至少N+1个消息副本数后,将消息转发给与其直接通信的目的节点。
进一步地优选方案,本发明多目的节点的消息转发方法中,步骤5中当所有优选路径中存在中间节点数最少的路径为两条或两条以上时,则选择一条优选路径作为优选消息传递路径。
进一步地优选方案,本发明多目的节点的消息转发方法中,一条优选路径的选择方式为任意选择。
进一步地优选方案,本发明多目的节点的消息转发方法中,获取源节点到每一个目的节点的优选路径,具体为:在源节点到每一个目的节点的所有路径中选取一条最短路径作为源节点到该目的节点的优选路径。
进一步地优选方案,本发明多目的节点的消息转发方法中,源节点携带的消息包括消息内容、源节点编号及消息长度。
与现有技术相比,本发明具有如下有益效果:该方法先通过构建节点间的通信网络拓扑图,在通信网络拓扑图中查找源节点到每一个目的节点的所有路径,获取源节点到每一个目的节点的优选路径在所有优选路径中选取一条最短路径作为优选消息传递路径,源节点将携带的消息按照该优选消息传递路径将消息传递给该目的节点,则该目的节点为优先目的节点,优先目的节点再将消息发送给与其直接通信的其他目的节点。该方法释放了源节点的资源,当优选目的节点接收到消息后,与优选目的节点直接通信的其他目的节点无需再经源节点进行消息传递,优选目的节点直接转发消息;这样既缩短了传递路径,也减少了资源的浪费。
附图说明
图1为实施例2中通信网络拓扑图。
具体实施方式
一种多目的节点的消息转发方法,包括以下步骤:
步骤1、构建节点间的通信网络拓扑图,图中用直线表示两个节点直接通信;
步骤2、当有多个目的节点同时向同一源节点发送请求消息时,执行步骤3;
步骤3、在通信网络拓扑图中查找源节点到每一个目的节点的所有路径;
步骤4、获取源节点到每一个目的节点的优选路径;
步骤5、在所有优选路径中选取一条最短路径作为优选消息传递路径,源节点将携带的消息按照该优选消息传递路径将消息传递给该目的节点,则该目的节点为优先目的节点;
步骤6、分别查找与或不与优先目的节点直接通信的其他目的节点,获取不与优先目的节点直接通信的其他目的节点后返回执行步骤3;获取与优先目的节点直接通信的其他目的节点数量为N,N为正整数,执行步骤7;
步骤7、优先目的节点构建至少N+1个消息副本数后,将消息转发给与其直接通信的目的节点。
该方法先通过构建节点间的通信网络拓扑图,在通信网络拓扑图中查找源节点到每一个目的节点的所有路径,获取源节点到每一个目的节点的优选路径在所有优选路径中选取一条最短路径作为优选消息传递路径,源节点将携带的消息按照该优选消息传递路径将消息传递给该目的节点,则该目的节点为优先目的节点,优先目的节点再将消息发送给与其直接通信的其他目的节点。
实施例1
一种多目的节点的消息转发方法,包括以下步骤:
步骤1、构建节点间的通信网络拓扑图,图中用直线表示两个节点直接通信;
步骤2、当有多个目的节点同时向同一源节点发送请求消息时,执行步骤3;
步骤3、在通信网络拓扑图中查找源节点到每一个目的节点的所有路径,;
步骤4、获取源节点到每一个目的节点的优选路径,具体为:在源节点到每一个目的节点的所有路径中选取一条最短路径作为源节点到该目的节点的优选路径;
步骤5、当所有优选路径中存在中间节点数最少的路径为两条或两条以上时选取一条最短路径作为优选消息传递路径,源节点将携带的消息按照该优选消息传递路径将消息传递给该目的节点,则该目的节点为优先目的节点;
步骤6、分别查找与或不与优先目的节点直接通信的其他目的节点,获取不与优先目的节点直接通信的其他目的节点后返回执行步骤3;获取与优先目的节点直接通信的其他目的节点数量为N,N为正整数,执行步骤7;
步骤7、优先目的节点构建至少N+1个消息副本数后,将消息转发给与其直接通信的目的节点。
实施例2
构建节点通信网络拓扑图如图1所示,目的节点C和目的节点F同时向源节点A发出消息请求,获取源节点A到目的节点C的所有路径:A-B-C;A-D-B-C;A-D-E-F-C;A-B-D-E-F-C;
源节点A到目的节点F的所有路径:A-D-E-F;A-B-C-F;A-B-D-E-F;A-D-B-C-F;
其中,源节点A到目的节点C的最短路径:A-B-C;源节点A到目的节点F的最短路径:A-D-E-F或A-B-C-F;
由于源节点A到目的节点C的最短路径和源节点A到目的节点F的最短路径中,A-B-C为优选消息传递路径,节点C为优先目的节点;
源节点A按照路径:A-B-C将消息传递给节点C;由于节点C与节点F直接通信,则节点C将消息传递给节点F。
显然,本发明的上述实施例仅是为清楚地说明本发明所作的举例,而并非是对本发明的实施方式的限定。对于所属领域的普通技术人员来说,在上述说明的基础上还可以做出其它不同形式的变化或变动。这里无需也无法对所有的实施方式予以穷举。而这些属于本发明的实质精神所引伸出 的显而易见的变化或变动仍属于本发明的保护范围。