发明内容
本发明的目的在于提供一种动态路径规划方法、动态路径规划系统及存储介质,以解决现有紫外光通信网络通信稳定性能差的技术问题。
为了解决上述问题,本发明提供了一种动态路径规划方法,其应用于紫外光通信网络,该方法包括如下步骤:
步骤S1,源节点根据预设路径规划策略规划出到达目标节点的第一网络路径,并获取第一网络路径的第一所需跳数;
步骤S2,源节点根据第一网络路径向目标节点传输通信数据信息;
步骤S3,每一个接收到通信数据信息的中继从节点均按照第一网络路径对通信数据信息进行转发,并且,中继从节点在接收到通信数据信息后,还会记录直接前驱节点并记录动态跳数,动态跳数=第一所需跳数-已传跳数;
步骤S4,当中继从节点连接不上下一跳节点时,中继从节点检测目标节点是否在自身的通信覆盖范围以内;
步骤S5,当目标节点在通信覆盖范围以内时,中继从节点根据预设路径规划策略规划出第二网络路径,并获取第二网络路径的第二所需跳数;
步骤S6,中继从节点判断第二所需跳数是否大于限制跳数,其中,限制跳数=动态跳数+预设跳数值;
步骤S7,当第二所需跳数小于或等于限制跳数时,中继从节点根据第二网络路径向目标节点传输通信数据信息。
作为本发明的进一步改进,中继从节点检测目标节点是否在自身的通信覆盖范围以内的步骤之后,还包括:
当目标节点未在通信覆盖范围以内时,动态跳数+1且反馈至直接前驱节点;
直接前驱节点执行步骤S4-步骤S7,直至将通信数据信息传输至目标节点。
作为本发明的进一步改进,中继从节点判断第二所需跳数是否大于限制跳数的步骤之后,还包括:
当第二所需跳数大于限制跳数时,动态跳数+1且反馈至直接前驱节点;
直接前驱节点执行步骤S4-步骤S7,直至将通信数据信息传输至目标节点。
作为本发明的进一步改进,中继从节点根据第二网络路径向目标节点传输通信数据信息的步骤之后,还包括:
中继从节点合并第一网络路径和第二网络路径,以获得第三网络路径;
目标节点根据第三网络路径发送反馈信息至源节点。
作为本发明的进一步改进,该方法还包括:
源节点获取并记录通信数据信息中的规定达到时间;
源节点周期性获取当前时间;
在当前时间达到规定达到时间之后,源节点判断是否接收到反馈信息;
当未接收到反馈信息时,源节点根据预设路径规划策略重新规划网络路径。
作为本发明的进一步改进,中继从节点根据预设路径规划策略规划出第二网络路径,并获取第二网络路径的第二所需跳数的步骤包括:
中继从节点获取并记录通信数据信息中的规定规划时长;
中继从节点根据预设路径规划策略规划第二网络路径,并记录当前规划时长;
当当前规划时长未超过规定规划时长时,中继从节点判断是否根据预设路径规划策略规划出第二网络路径;
若根据预设路径规划策略规划出第二网络路径,则获取第二网络路径的第二所需跳数后,执行步骤S6;
若根据预设路径规划策略未规划出第二网络路径,则中继从节点停止路径规划操作,且反馈通信情况信息至源节点。
作为本发明的进一步改进,源节点根据预设路径规划策略规划出到达目标节点的第一网络路径的步骤,包括:
源节点发送获取网络中节点的直系亲属信息的广播信息,直系亲属信息包括该节点以及与该节点具有连线关系的其他节点的节点标识信息;
源节点接收任一节点的包含该节点的直系亲属信息的回传信息;
源节点根据每一个节点的直系亲属信息生成网络拓扑;
源节点根据网络拓扑规划出达到目标节点的跳数最少的第一网络路径,并获取第一网络路径的第一所需跳数。
作为本发明的进一步改进,源节点接收任一节点的包含该节点的直系亲属信息的回传信息的步骤,包括:
在预设的第三时间阈值内接收回传消息,当超过第三时间阈值时,则不再接收回传消息,而是将已接收到的所有回传消息进行处理。
为了解决上述问题,本发明还提供了一种动态路径规划系统,其包括源节点和至少一个从节点,源节点和每一个从节点均包括发送端、控制端、接收端和存储器,存储器上存储有可在控制端上运行的动态路径规划程序,动态路径规划程序被控制端执行时,实现上述动态路径规划方法的步骤。
为了解决上述问题,本发明还提供了一种存储介质,其存储有动态路径规划程序,动态路径规划程序可被至少一个控制端执行,以实现上述动态路径规划方法的步骤。
与现有技术相比,本发明中继从节点的下一跳节点脱离紫外光通信网络时,若目标节点在中继从节点的通信覆盖范围以内,中继从节点直接根据预设路径规划策略重新规划网络路径,以致通信数据信息传输至目标节点,既提升了数据传输速率,也提升了通信稳定性能。
具体实施方式
为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用来限定本发明。
需要说明的是,在本发明中涉及“第一”、“第二”等的描述仅用于描述目的,而不能理解为指示或暗示其相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”的特征可以明示或者隐含地包括至少一个该特征。另外,各个实施例之间的技术方案可以相互结合,但是必须是以本领域普通技术人员能够实现为基础,当技术方案的结合出现相互矛盾或无法实现时应当认为这种技术方案的结合不存在,也不在本发明要求的保护范围之内。
参阅图1所示,是本发明实施例一可选的应用环境示意图。
本发明可应用于包括,但不仅限于紫外光无线通信网络。在本申请实施例中,应用的环境为包括紫外光无线通信网络,该紫外光无线通信网络包括一个源节点1和至少一个从节点。在本实施例中,包含4个从节点:从节点20为中继从节点,从节点31为目标节点,从节点32为中继从节点下一跳节点,则从节点21为直接前驱节点。
在本申请实施例中,该源节点1和从节点可包括,但不仅限于,可通过有线方式或者无线方式相互通信连接发送端40、控制端41、接收端42和存储器43。其中,存储器43中存储有动态路径规划程序44。需要指出的是,图2仅示出了具有组件40-43的节点,但是应理解的是,并不要求实施所有示出的组件,可以替代的实施更多或者更少的组件。
其中,存储器43至少包括一种类型的可读存储介质,可读存储介质包括闪存、硬盘、多媒体卡、卡型存储器(例如,SD或DX存储器等)、随机访问存储器(RAM)、静态随机访问存储器(SRAM)、只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)、可编程只读存储器(PROM)、磁性存储器、磁盘、光盘等。在一些实施例中,存储器43可以是源节点1或从节点的内部存储单元,例如:源节点1或从节点的硬盘或内存。在另一些实施例中,存储器43也可以是源节点1或从节点的外部存储设备,例如:源节点1或从节点上配备的插接式硬盘,智能存储卡(Smart Media Card,SMC),安全数字(Secure Digital,SD)卡,闪存卡(Flash Card)等。当然,存储器43还可以既包括源节点1或从节点的内部存储单元也包括其外部存储设备。本实施例中,存储器43通常用于存储安装于源节点1或从节点的操作系统和各类应用软件,例如:动态路径规划程序44的程序代码等。此外,存储器43还可以用于暂时地存储已经输出或者将要输出的各类数据。
控制端41在一些实施例中可以是中央处理器(Central Processing Unit,CPU)、控制器、微控制器、微处理器、或其他数据处理芯片。该控制端41通常用于控制源节点1或从节点的总体操作,例如执行与从节点进行数据交互或者通信相关的控制和处理等。本实施例中,控制端41用于运行存储器43中存储的程序代码或者处理数据,例如:动态路径规划程序44等。
发送端40包括但不限于包括:将电信号调制成光信号的调制单元,加密单元,信号增益或者放大单元。发送端40通常用于将源节点1或从节点需要发送的信息进行编码调制,并以光信号的形式发射出去。
接收端42包括但不限于包括:信号增益或者放大单元,将光信号调制成电信号的解调单元,解密单元。接收端42通常用于将源节点1或从节点发送的光信号进行解调和解码从而获得原始信息。
在本申请实施例中,当源节点或至少一个从节点内均安装并运行动态路径规划程序44时,当动态路径规划程序44运行时,源节点1通过第一网络路径1->21->20->32->31将通信数据信息传输至目标节点31,并根据网络路径31->32->20->21->1将反馈信息传输至源节点1。
当中继从节点20连接不上下一跳从节点32时,若中继从节点20检测目标节点31在中继从节点20的通信覆盖范围以内,则中继从节点20重新规划出第二网络路径20->40->31,以将通信数据信息传输至目标节点31,并根据合并第一网络路径和第二网络路径得到的第三网络路径31->40->20->21->1将反馈信息传输至源节点1。
在本申请实施例中,中继从节点20连接不上下一跳节点32的技术方案可以为:中继从节点20发送连接请求至下一跳节点32,并记录当前连接时长,其中,该连接请求包括规定连接时长;若当前连接时长未超过规定连接时长,中继从节点20接收到下一跳节点32的反馈信息,则中继从节点20与下一跳节点32连接成功;若当前连接时长超过规定连接时长,中继从节点20未接收到下一跳节点32的反馈信息,则中继从节点20连接不上下一跳从节点32。
进一步地,在本申请实施例中,当中继从节点20连接不上下一跳从节点32时,若中继从节点20检测目标节点31不在中继从节点20的通信覆盖范围以内,反馈至直接前驱节点21,该直接前驱节点21重新规划出第四网络路径21->41->40->31,以将通信数据信息传输至目标节点31,并根据合并第一网络路径和第四网络路径得到的第五网络路径31->40->41->21->1将反馈信息传输至源节点1。
在本申请实施例中,中继从节点20检测目标节点31是否在中继从节点20的通信覆盖范围以内的技术方案可以为:中继从节点20获取并记录通信数据信息中的规定检测时长;中继从节点20检测是否能够建立通信链路至目标节点31,且记录当前检测时长;若当前检测时长未超过规定检测时长,能建立通信链路至目标节点31,则目标节点31在中继从节点20的通信覆盖范围以内。若当前检测时长超过规定检测时长,未能建立通信链路至目标节点31,则目标节点31不在中继从节点20的通信覆盖范围以内。
至此,已经详细介绍了本发明实施例的应用环境和相关设备的硬件结构和功能。下面,将基于上述应用环境和相关设备,提出本发明的各个实施例。
首先,本发明提出了一种动态路径规划方法。
参阅图3所示,是本发明动态路径规划方法一实施例的流程示意图。在本申请实施例中,根据不同的需求,图3所示的流程图中的步骤的执行顺序可以改变,某些步骤可以省略。具体地,该动态路径规划方法应用于紫外光通信网络,此外,该动态路径规划方法包括如下步骤:
步骤S1,源节点根据预设路径规划策略规划出到达目标节点的第一网络路径,并获取第一网络路径的第一所需跳数。
具体地,在本申请实施例的基础上,其他实施例中,参阅图4,该步骤S1包括:
步骤S10,源节点发送获取网络中节点的直系亲属信息的广播信息,直系亲属信息包括该节点以及与该节点具有连线关系的其他节点的节点标识信息。
具体地,源节点发送获取网络中节点的直系亲属信息的广播信息,直系亲属信息包括该节点以及与该节点具有连线关系的其他节点的节点标识信息。
在申请实施例中,广播消息为包括有编号信息、第一控制命令信息以及第一中继节点信息的预设的格式广播消息。预设的格式,可以认为是紫外光无线通信网络中规定的广播帧格式,或者兼容的现有无线通信网络协议的广播帧格式。其中,广播消息中预先增加有编号信息、第一控制命令信息以及第一中继节点信息。增加的方法可以在广播消息对应的广播帧的预留位中设置对应于编号信息、第一控制命令信息以及第一中继节点信息的数据位。
第一控制命令信息用于控制接收到广播消息的节点在接收到广播消息后将该节点的标识信息写入到第一中继节点信息后进行继续广播。与此同时,第一控制命令信息还用于控制接收到广播消息的节点将该节点的节点标识信息及与该节点具有连线关系的其他节点的节点标识信息写入到预设的回传消息作为回传消息的节点直系亲属信息,及将广播消息中的第一中继节点信息写入到回传消息作为第二中继节点信息,并将回传消息进行回传。
其中,收到广播消息的节点获取与该节点具有连线关系的其他节点的标识信息时,会在预设的第一时间阈值进行,当超过第一时间阈值,则不再获取与该节点具有连线关系的其他节点的标识信息,而是将已获取的与该节点具有连线关系的其他节点写入到预设的回传消息作为回传消息的节点直系亲属信息。
第一控制命令信息还用于控制接收到广播消息的节点记录广播消息的编号,然后在后续接收到相同编号的广播消息时,不进行继续广播和回传。
这里要说明的是,回传消息的预设的格式,也可以认为是紫外光无线网络中规定的广播帧格式,或者兼容的现有无线通信网络协议的广播帧格式,但是回传消息预先设置有直系亲属信息,第二中继节点信息和第二控制命令信息。其中,第二控制命令信息则是控制接收到该回传消息之后,根据第二中继节点信息中记录的中继节点的顺序反向传送。
步骤S11,源节点接收任一节点的包含该节点的直系亲属信息的回传信息。
值得注意的是,在接收其他节点的包含该节点的直系亲属信息的回传消息时,会在预设的第三时间阈值进行,当超过第三时间阈值,则不再接收回传消息,而是将已接收到的所有回传消息做后续的处理。
步骤S12,源节点根据每一个节点的直系亲属信息生成网络拓扑。
具体地,在接收到紫外光无线网络中的所有节点的包含自身节点及与自身节点具连线关系的其他节点的节点信息之后,则可以统计出整个紫外光无线网络中的任意一个节点与其他连线节点的关系,因此可以根据所有节点的直系亲属信息将每一个节点与其他节点的连线关系统计出来,从而以表格或者图示的形式生成一个网络拓扑。
步骤S13,源节点根据网络拓扑规划出达到目标节点的跳数最少的第一网络路径,并获取第一网络路径的第一所需跳数。
根据步骤S12生成的网络拓扑,可以直接统计出任意一个节点到其他任一节点的所有通路路径,因此就可以在所有的通路路径中选择最优路径,即跳数最少的网络路径。
也就是说,本实施例所提出的动态路径规划方法,可以通过获取网络中的其他节点的自身节点及与自身节点具连线关系的其他节点信息,从而生成一个网络拓扑,再根据网络拓扑规划出一个最佳的传输网络路径,实现再紫外光无线网络中的路径最优规划。例如,在本申请实施例中,根据以上步骤规划出到达目标节点的第一网络路径为1->21->20->32->31。
步骤S2,源节点根据第一网络路径向目标节点传输通信数据信息。
在本申请实施例中,通信数据信息经第一网络路径1->21->20->32->31进行传输。
步骤S3,每一个接收到通信数据信息的中继从节点均按照第一网络路径对通信数据信息进行转发,并且,中继从节点在接收到通信数据信息后,还会记录直接前驱节点并记录动态跳数,动态跳数=第一所需跳数-已传跳数。
在本申请实施例中,中继从节点20按照第一网络路径1->21->20->32->31对通信数据信息进行转发,并且转发通信数据信息后,记录直接前驱节点21以及动态跳数。
其中,已传跳数可以为传输过程中已经过的中继从节点的个数,则在本实施例中已传跳数为2,根据该第一网络路径1->21->20->32->31可以获知第一所需跳数为4,因此,动态跳数为2=4-2。
步骤S4,当中继从节点连接不上下一跳节点时,中继从节点检测目标节点是否在自身的通信覆盖范围以内。当目标节点在通信覆盖范围以内时,执行步骤S5。
在本申请实施例中,中继从节点20连接不上下一跳节点32的技术方案可以为:中继从节点20发送连接请求至下一跳节点32,并记录当前连接时长,其中,该连接请求包括规定连接时长;若当前连接时长未超过规定连接时长,中继从节点20接收到下一跳节点32的反馈信息,则中继从节点20与下一跳节点32连接成功;若当前连接时长超过规定连接时长,中继从节点20未接收到下一跳节点32的反馈信息,则中继从节点20连接不上下一跳从节点32。
进一步地,在本申请实施例中,中继从节点20检测目标节点31是否在中继从节点20的通信覆盖范围以内的技术方案可以为:中继从节点20获取并记录通信数据信息中的规定检测时长;中继从节点20检测是否能够建立通信链路至目标节点31,且记录当前检测时长;若当前检测时长未超过规定检测时长,能建立通信链路至目标节点31,则目标节点31在中继从节点20的通信覆盖范围以内。若当前检测时长超过规定检测时长,未能建立通信链路至目标节点31,则目标节点31不在中继从节点20的通信覆盖范围以内。
步骤S5,中继从节点根据预设路径规划策略规划出第二网络路径,并获取第二网络路径的第二所需跳数。
在本申请实施例中,当目标节点31在中继从节点20的覆盖范围以内时,重新规划出第二网络路径20->40->31,该第二网络路径的第二所需跳数为2。
步骤S6,中继从节点判断第二所需跳数是否大于限制跳数,其中,限制跳数=动态跳数+预设跳数值。当第二所需跳数小于或等于限制跳数时,执行步骤S7。
在本申请实施例中,假设预设跳数值为3,则限制跳数为5=动态跳数2+预设跳数值3。因此,在本申请实施例中,第二所需跳数2<限制跳数5。
步骤S7,中继从节点根据第二网络路径向目标节点传输通信数据信息。
在本申请实施例中,中继从节点20根据该第二网络路径20->40->31将通信数据信息传输至目标节点31。
在本申请实施例中,由于第二所需跳数2<限制跳数5,所以,中继从节点20根据该第二网络路径向目标节点31传输通信数据信息。
本实施例中继从节点的下一跳节点脱离紫外光通信网络时,若目标节点在中继从节点的通信覆盖范围以内,中继从节点直接根据预设路径规划策略重新规划网络路径,以致通信数据信息传输至目标节点,既提升了数据传输速率,也提升了通信稳定性能。
参阅图5所示,是本发明动态路径规划方法又一实施例的流程示意图。在本申请实施例中,该动态路径规划方法包括:
步骤S20,源节点根据预设路径规划策略规划出到达目标节点的第一网络路径,并获取第一网络路径的第一所需跳数。
该步骤与步骤S1类似,具体可参照步骤S1的描述,在此不再赘述。
步骤S21,源节点根据第一网络路径向目标节点传输通信数据信息。
该步骤与步骤S2类似,具体可参照步骤S2的描述,在此不再赘述。
步骤S22,每一个接收到通信数据信息的中继从节点均按照第一网络路径对通信数据信息进行转发,并且,中继从节点在接收到通信数据信息后,还会记录直接前驱节点并记录动态跳数,动态跳数=第一所需跳数-已传跳数。
该步骤与步骤S3类似,具体可参照步骤S3的描述,在此不再赘述。
步骤S23,当中继从节点连接不上下一跳节点时,中继从节点检测目标节点是否在自身的通信覆盖范围以内。当目标节点在通信覆盖范围以内时,执行步骤S24。当目标节点未在通信覆盖范围以内时,执行步骤S29。
该步骤与步骤S4类似,具体可参照步骤S4的描述,在此不再赘述。
步骤S24,中继从节点根据预设路径规划策略规划出第二网络路径,并获取第二网络路径的第二所需跳数。
该步骤与步骤S5类似,具体可参照步骤S5的描述,在此不再赘述。
进一步地,在本申请实施例的基础上,其他实施例中,为了避免长时间进行第二网络路径的规划操作,但是不能规划出第二网络路径,以致通信数据信息不能传输至目标节点。在第二网络路径规划过程中,该动态路径规划方法还包括:中继从节点获取并记录通信数据信息中的规定规划时长;中继从节点根据预设路径规划策略规划第二网络路径,并记录当前规划时长;当当前规划时长未超过规定规划时长时,中继从节点判断是否根据预设路径规划策略规划出第二网络路径;若根据预设路径规划策略规划出第二网络路径,则获取第二网络路径的第二所需跳数后,执行步骤S25;若根据预设路径规划策略未规划出第二网络路径,则中继从节点停止路径规划操作,且反馈通信情况信息至源节点。具体地,中继从节点20根据通信路径20->21->1将通信情况信息反馈至源节点。
本实施例在预设时间段内,不能规划出通信路径时,即时将通信情况信息反馈至源节点,以便源节点快速制定处理策略,从而提升了通信处理速率。
步骤S25,中继从节点判断第二所需跳数是否大于限制跳数,其中,限制跳数=动态跳数+预设跳数值。当第二所需跳数小于或等于限制跳数时,执行步骤S26。当第二所需跳数大于限制跳数时,执行步骤S29。
该步骤与步骤S6类似,具体可参照步骤S6的描述,在此不再赘述。
步骤S26,中继从节点根据第二网络路径向目标节点传输通信数据信息。
该步骤与步骤S7类似,具体可参照步骤S7的描述,在此不再赘述。
步骤S27,中继从节点合并第一网络路径和第二网络路径,以获得第三网络路径。
在本申请实施例中,合并第一网络路径和第二网络路径得到的第三网络路径31->40->20->21->1。
步骤S28,目标节点根据第三网络路径发送反馈信息至源节点。
在本申请实施例中,目标节点31通过第三网络路径31->40->20->21->1将反馈信息传输至源节点1。
步骤S29,动态跳数+1且反馈至直接前驱节点。该直接前驱节点作为新的中继从节点,执行步骤S23-步骤S28,直至将通信数据信息传输至目标节点。
在本申请实施例的基础上,其他实施例中,为了避免长时间重复执行步骤S23-步骤S28,但是却不能将通信数据信息传输至目标节点。该动态路径规划方法还包括:源节点获取并记录通信数据信息中的规定达到时间;源节点周期性获取当前时间;在当前时间达到规定达到时间之后,源节点判断是否接收到反馈信息;当未接收到反馈信息时,源节点根据预设路径规划策略重新规划网络路径。
具体地,假设到规定达到时间为8:30pm,则源节点检测到当前时间达到8:30pm时,仍未获取到反馈信息,则源节点根据预设路径规划策略重新规划网络路径。
本实施例的目标节点不在中继从节点的覆盖范围以内时,反馈至中继从节点的直接前驱节点,以供该直接前驱节点进行路径规划,重复步骤S23-步骤S28操作,直至将通信数据信息传输至目标节点,从而进一步提升了紫外光无线通信网络的通信稳定性能。
其次,本发明提出了一种动态路径规划系统。
参阅图6所示,是本发明动态路径规划系统一实施例的流程示意图。在本申请实施例中,该动态路径规划系统包括源节点50、至少一个中继从节点51和一个目标节点52。其中,该源节点50包括第一路径规划模块500、第一发送模块501和第一接收模块502;中继从节点51包括记录模块510、检测模块511、第二路径规划模块512、跳数判断模块513、第二发送模块514、第二接收模块515、路径合并模块516和前驱反馈模块517。目标节点52包括第三接收模块520和第三发送模块521。
其中,第一路径规划模块500,用于根据预设路径规划策略规划出到达目标节点52的第一网络路径,并获取第一网络路径的第一所需跳数。
具体地,在上述实施例的基础上,其他实施例中,参阅图7,该第一路径规划模块500包括广播信息传输单元5001、回传信息接收单元5002、网络拓扑生成单元5003和网络路径规划单元5004。
广播信息传输单元5001,用于发送获取网络中节点的直系亲属信息的广播信息,直系亲属信息包括该节点以及与该节点具有连线关系的其他节点的节点标识信息。
具体地,广播信息传输单元5001发送获取网络中节点的直系亲属信息的广播信息,直系亲属信息包括该节点以及与该节点具有连线关系的其他节点的节点标识信息。
在申请实施例中,广播消息为包括有编号信息、第一控制命令信息以及第一中继节点信息的预设的格式广播消息。预设的格式,可以认为是紫外光无线通信网络中规定的广播帧格式,或者兼容的现有无线通信网络协议的广播帧格式。其中,广播消息中预先增加有编号信息、第一控制命令信息以及第一中继节点信息。增加的方法可以在广播消息对应的广播帧的预留位中设置对应于编号信息、第一控制命令信息以及第一中继节点信息的数据位。
第一控制命令信息用于控制接收到广播消息的节点在接收到广播消息后将该节点的标识信息写入到第一中继节点信息后进行继续广播。与此同时,第一控制命令信息还用于控制接收到广播消息的节点将该节点的节点标识信息及与该节点具有连线关系的其他节点的节点标识信息写入到预设的回传消息作为回传消息的节点直系亲属信息,及将广播消息中的第一中继节点信息写入到回传消息作为第二中继节点信息,并将回传消息进行回传。
其中,收到广播消息的节点获取与该节点具有连线关系的其他节点的标识信息时,会在预设的第一时间阈值进行,当超过第一时间阈值,则不再获取与该节点具有连线关系的其他节点的标识信息,而是将已获取的与该节点具有连线关系的其他节点写入到预设的回传消息作为回传消息的节点直系亲属信息。
第一控制命令信息还用于控制接收到广播消息的节点记录广播消息的编号,然后在后续接收到相同编号的广播消息时,不进行继续广播和回传。
这里要说明的是,回传消息的预设的格式,也可以认为是紫外光无线网络中规定的广播帧格式,或者兼容的现有无线通信网络协议的广播帧格式,但是回传消息预先设置有直系亲属信息,第二中继节点信息和第二控制命令信息。其中,第二控制命令信息则是控制接收到该回传消息之后,根据第二中继节点信息中记录的中继节点的顺序反向传送。
回传信息接收单元5002,用于接收任一节点的包含该节点的直系亲属信息的回传信息。
值得注意的是,在接收其他节点的包含该节点的直系亲属信息的回传消息时,会在预设的第三时间阈值进行,当超过第三时间阈值,则不再接收回传消息,而是将已接收到的所有回传消息做后续的处理。
网络拓扑生成单元5003,用于根据每一个节点的直系亲属信息生成网络拓扑。
具体地,在接收到紫外光无线网络中的所有节点的包含自身节点及与自身节点具连线关系的其他节点的节点信息之后,则可以统计出整个紫外光无线网络中的任意一个节点与其他连线节点的关系,因此可以根据所有节点的直系亲属信息将每一个节点与其他节点的连线关系统计出来,从而以表格或者图示的形式生成一个网络拓扑。
网络路径规划单元5004,用于源节点根据网络拓扑规划出达到目标节点的跳数最少的第一网络路径,并获取第一网络路径的第一所需跳数。
根据网络拓扑生成模块5003生成的网络拓扑,可以直接统计出任意一个节点到其他任一节点的所有通路路径,因此就可以在所有的通路路径中选择最优路径,即跳数最少的网络路径。
也就是说,本实施例所提出的动态路径规划方法,可以通过获取网络中的其他节点的自身节点及与自身节点具连线关系的其他节点信息,从而生成一个网络拓扑,再根据网络拓扑规划出一个最佳的传输网络路径,实现再紫外光无线网络中的路径最优规划。
第一发送模块501,用于根据第一网络路径向目标节点52传输通信数据信息。
在本申请实施例中,通信数据信息经第一网络路径1->21->20->32->31进行传输。
第二接收模块515,用于接收上一跳节点发送的通信数据信息。记录模块510,用于在接收到通信数据信息后,记录直接前驱节点并记录动态跳数,动态跳数=第一所需跳数-已传跳数。
在通信数据信息的转发过程中,记录直接前驱节点并记录动态跳数,动态跳数=第一所需跳数-已传跳数。
检测模块511,用于当连接不上下一跳节点时,检测目标节点52是否在自身的通信覆盖范围以内。在本申请实施例中,当中继从节点51连接不上下一跳时,中继从节点51检测目标节点52是否在自身的覆盖范围以内。
在本申请实施例中,中继从节点51连接不上下一跳节点的技术方案可以为:中继从节点51发送连接请求至下一跳节点,并记录当前连接时长,其中,该连接请求包括规定连接时长;若当前连接时长未超过规定连接时长,中继从节点51接收到下一跳节点的反馈信息,则中继从节点51与下一跳节点连接成功;若当前连接时长超过规定连接时长,中继从节点51未接收到下一跳节点的反馈信息,则中继从节点51连接不上下一跳从节点。
在本申请实施例中,中继从节点51检测目标节点52是否在中继从节点51的通信覆盖范围以内的技术方案可以为:中继从节点51获取并记录通信数据信息中的规定检测时长;中继从节点51检测是否能够建立通信链路至目标节点52,且记录当前检测时长;若当前检测时长未超过规定检测时长,能建立通信链路至目标节点52,则目标节点52在中继从节点51的通信覆盖范围以内。若当前检测时长超过规定检测时长,未能建立通信链路至目标节点52,则目标节点52不在中继从节点51的通信覆盖范围以内。
前驱反馈模块517,用于当目标节点52不在中继从节点51的覆盖范围以内时,发送反馈信息至直接前驱节点。该直接前驱节点重复执行检测模块511、第二路径规划模块512、跳数判断模块513、第二发送模块514、第二接收模块515和路径合并模块516,直至将通信数据信息发送至目标节点。
第二路径规划模块512,用于当目标节点52在通信覆盖范围以内时,根据预设路径规划策略规划出第二网络路径,并获取第二网络路径的第二所需跳数。在本申请实施例中,当目标节点52在中继从节点51的覆盖范围以内时,重新规划出第二网络路径。
跳数判断模块513,用于判断第二所需跳数是否大于限制跳数,其中,限制跳数=动态跳数+预设跳数值。第二发送模块514,用于当第二所需跳数小于或等于限制跳数时,根据第二网络路径向目标节点52传输通信数据信息。
为了避免长时间进行第二网络路径的规划操作,但是不能规划出第二网络路径,以致通信数据信息不能传输至目标节点。因此,在上述实施例的基础上,其他实施例中,当第二所需跳数大于限制跳数时,参阅图8,该中继从节点还包括规定规划时长获取模块600、路径规划模块601、规划结果检测模块602和路径规划失败处理模块603。
其中,规定规划时长获取模块600,用于获取并记录通信数据信息中的规定规划时长;路径规划模块601,用于根据预设路径规划策略规划第二网络路径,并记录当前规划时长;规划结果检测模块602,用于当当前规划时长未超过规定规划时长时,中继从节点判断是否根据所述预设路径规划策略规划出第二网络路径;用于若根据预设路径规划策略规划出第二网络路径,获取第二网络路径的第二所需跳数且执行第二发送模块514,路径规划失败处理模块603,用于若根据预设路径规划策略未规划出第二网络路径,则中继从节点停止路径规划操作,且反馈通信情况信息至源节点。
第三接收模块520,用于接收通信数据信息。路径合并模块516,用于合并第一网络路径和第二网络路径,以获得第三网络路径;第三发送模块521,用于根据第三网络路径发送反馈信息至源节点。
为了避免长时间重复执行路径规划操作,但是却不能将通信数据信息传输至目标节点。因此,在上述实施例的基础上,其他实施例中,参阅图8,该源节点包括规定时间获取模块700、当前时间获取模块701、反馈情况判断模块702和重新规划模块703。
其中,规定时间获取模块700,用于获取并记录通信数据信息中的规定达到时间;当前时间获取模块701,用于周期性获取当前时间;反馈情况判断模块702,用于在当前时间达到规定达到时间之后,判断是否接收到所述反馈信息;重新规划模块703,用于当未接收到反馈信息时,根据预设路径规划策略重新规划网络路径。
在上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述或记载的部分,可以参见其它实施例的相关描述。
本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、或者计算机软件和电子硬件的结合来实现。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本申请的范围。
在本申请所提供的实施例中,应该理解到,所揭露的动态路径规划系统和动态路径规划方法,可以通过其它的方式实现。例如,以上所描述的紫外光网络的动态路径规划系统实施例仅仅是示意性的,例如,模块或单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通讯连接可以是通过一些接口,装置或单元的间接耦合或通讯连接,可以是电性,机械或其它的形式。
另外,在本申请各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
最后,本申请实施例还提供了一种存储介质,用于存储计算机程序,其包含用于执行本申请上述动态路径规划方法实施例所设计的程序数据。通过执行该存储介质中存储的计算机程序,可以实现本申请提供的动态路径规划方法。
集成的模块/单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请实现上述实施例方法中的全部或部分流程,也可以通过计算机程序来指令相关的硬件来完成,计算机程序可存储于一计算机可读存储介质中,该计算机程序在被处理器执行时,可实现上述各个方法实施例的步骤。其中,计算机程序包括计算机程序代码,计算机程序代码可以为源代码形式、对象代码形式、可执行文件或某些中间形式等。计算机可读介质可以包括:能够携带计算机程序代码的任何实体或装置、记录介质、U盘、移动硬盘、磁碟、光盘、计算机存储器、只读存储器(ROM,Read-0nly Memory)、随机存取存储器(RAM,Random Access Memory)、电载波信号、电信信号以及软件分发介质等。需要说明的是,计算机可读介质包含的内容可以根据司法管辖区内立法和专利实践的要求进行适当的增减,例如在某些司法管辖区,根据立法和专利实践,计算机可读介质不包括是电载波信号和电信信号。
以上对发明的具体实施方式进行了详细说明,但其只作为范例,本发明并不限制与以上描述的具体实施方式。对于本领域的技术人员而言,任何对该发明进行的等同修改或替代也都在本发明的范畴之中,因此,在不脱离本发明的精神和原则范围下所作的均等变换和修改、改进等,都应涵盖在本发明的范围内。