本发明涉及卫星通信,特别是涉及一种数据传输方法、装置、电子设备及存储介质。
背景技术:
1、无线低轨卫星网络中包括多个处于低轨且高速运动的卫星,无线低轨卫星网络与地面移动网络相比具有非常鲜明的特色,例如,无线低轨卫星网络中的各个卫星均处于高速运动状态。由于卫星的周期运动、地球自转和星地相对运动等原因,导致无线低轨卫星网络的拓扑结构也在高速动态变化,卫星与地面的连接关系也在动态变化,进而,导致无线低轨卫星通信技术上存在卫星之间的路由设计复杂、路由不稳定等问题。因此,尽管地面移动网络路由技术已经非常成熟,现有的地面移动网络中的路由技术仍无法直接应用于无线低轨卫星网络。
2、相关技术中,针对无线低轨卫星网络中的每一卫星,该卫星按照接收数据包的时间顺序,从接收到的数据包中确定出待转发的数据包,根据待转发的数据包的目的卫星,确定该卫星至目的卫星的传输路径中的下一跳卫星。然后,如果该卫星至下一跳卫星之间的链路处于非拥塞状态,向下一跳卫星转发待转发的数据包。如果该卫星至下一跳卫星之间的链路处于拥塞状态,则将待转发的数据包存储至公共等待队列中。然后,该卫星再次按照接收数据包的时间顺序,从接收到的数据包中确定出待转发的数据包,并对本次确定出的待转发的数据包进行转发。
3、然而,当无线低轨卫星网络的链路拥塞严重时,该卫星与下一跳卫星之间的链路可能较长时间处于拥塞状态,则再次确定该数据包为待转发的数据包时,该卫星与下一跳卫星之间的链路可能仍处于拥塞状态,则该数据包需要一直等待传输,进而降低网络服务性能。
技术实现思路
1、本发明实施例的目的在于提供一种数据传输方法、装置、电子设备及存储介质,以提高网络服务性能。具体技术方案如下:
2、第一方面,为了达到上述目的,本发明实施例提供了一种数据传输方法,所述方法应用于通信系统中的卫星,所述方法包括:
3、从该卫星接收到的数据包中,确定业务优先级最高的第一数据包;
4、根据所述第一数据包的目的卫星,确定从该卫星至所述目的卫星的主选传输路径和备选传输路径;
5、获取该卫星与所述主选传输路径中的主选下一跳卫星之间的第一链路状态,以及该卫星与所述备选传输路径中的备选下一跳卫星之间的第二链路状态;其中,该卫星与其他卫星之间的链路状态与星间链路传输时延有关;
6、基于所述第一链路状态和所述第二链路状态,从所述主选下一跳卫星和所述备选下一跳卫星中,确定出目标下一跳卫星,并向所述目标下一跳卫星发送所述第一数据包。
7、可选的,在所述获取该卫星与所述主选传输路径中的主选下一跳卫星之间的第一链路状态,以及该卫星与所述备选传输路径中的备选下一跳卫星之间的第二链路状态之前,所述方法还包括:
8、向该卫星的相邻卫星发送测试消息,并从所述相邻卫星接收响应消息;
9、基于所述响应消息,确定该卫星与相邻卫星之间的应答信息;
10、向卫星运控中心发送该卫星与相邻卫星之间的应答信息,以使所述卫星运控中心根据该卫星与相邻卫星之间的应答信息,确定该卫星与相邻卫星之间的链路状态;向该卫星发送确定出的链路状态;
11、接收该卫星与相邻卫星之间的链路状态。
12、可选的,所述基于所述第一链路状态和所述第二链路状态,从所述主选下一跳卫星和所述备选下一跳卫星中,确定出目标下一跳卫星,包括:
13、如果所述第一链路状态和所述第二链路状态相同,且均不是重载状态,确定所述主选下一跳卫星为目标下一跳卫星;
14、如果所述第一链路状态与所述第二链路状态不同,确定不是重载状态的下一跳卫星作为目标下一跳卫星。
15、可选的,所述如果所述第一链路状态与所述第二链路状态不同,确定不是重载状态的下一跳卫星作为目标下一跳卫星,包括:
16、如果所述第一链路状态与所述第二链路状态不同,且其中一个为轻载状态,确定轻载状态对应的下一跳卫星作为目标下一跳卫星;
17、如果所述第一链路状态与所述第二链路状态不同,且其中一个为中载状态,另一个为重载状态,确定中载状态对应的下一跳卫星作为目标下一跳卫星。
18、可选的,在所述获取该卫星与所述主选传输路径中的主选下一跳卫星之间的第一链路状态,以及该卫星与所述备选传输路径中的备选下一跳卫星之间的第二链路状态之后,所述方法还包括:
19、如果所述第一链路状态和所述第二链路状态均为重载状态,将所述第一数据包存储至预设缓存队列;
20、根据所述预设缓存队列中的数据包的业务优先级,从所述预设缓存队列中的数据包中,确定业务优先级最高的第一数据包,并返回执行根据所述第一数据包的目的卫星,确定从该卫星至所述目的卫星的主选传输路径和备选传输路径的步骤。
21、可选的,在所述从该卫星接收到的数据包中,确定业务优先级最高的第一数据包之前,所述方法还包括:
22、基于该卫星接收到的数据包的业务类型和预设优先级划分规则,确定该数据包的业务优先级。
23、可选的,所述从该卫星接收到的数据包中,确定业务优先级最高的第一数据包,包括:
24、如果业务优先级最高的数据包为一个,确定该数据包为第一数据包;
25、如果业务优先级最高的数据包为多个,从业务优先级最高的多个数据包中,确定接收时间最早的数据包为第一数据包。
26、可选的,一个数据包括的业务优先级越高,该数据包的传输时延越小。
27、可选的,在所述根据所述第一数据包的目的卫星,确定从该卫星至所述目的卫星的主选传输路径和备选传输路径之前,所述方法还包括:
28、接收主选传输路径和备选传输路径;其中,该卫星至其他卫星的主选路径和备选传输路径分别为:该卫星至其他卫星的多个传输路径中最短的传输路径,以及除所述主选传输路径之外最短的传输路径;该卫星至其他卫星的多个传输路径为:卫星运控中心确定与该卫星之间的距离最近的预设虚拟节点为该卫星对应的预设虚拟节点,并根据该卫星对应的预设虚拟节点的位置、其他卫星对应的预设虚拟节点的位置,以及各卫星之间的链路状态确定的。
29、第二方面,为了达到上述目的,本发明实施例提供了一种数据传输方法,所述方法应用于通信系统中的卫星运控中心,所述通信系统还包括多个卫星,所述方法包括:
30、获取每一卫星与其他卫星之间的应答时间;
31、根据所述应答时间和星间链路传输时延,确定该卫星与其他卫星之间的链路状态;
32、向每一卫星发送该卫星与其他卫星之间的链路状态,以使该卫星在从接收到的数据包中确定出业务优先级最高的第一数据包后,基于该卫星与其他卫星之间的链路状态对所述第一数据包进行转发。
33、可选的,所述根据所述应答时间和星间链路传输时延,确定该卫星与其他卫星之间的链路状态,包括:
34、如果所述应答时间小于第一阈值,确定该卫星与相邻卫星之间的链路状态为轻载状态;其中,所述第一阈值为星间链路传输时延的两倍;
35、如果所述应答时间位于所述第一阈值与第二阈值之间,确定该卫星与相邻卫星之间的链路状态为中载状态;其中,所述第二阈值为星间链路传输时延的四倍;
36、如果所述应答时间大于所述第二阈值,确定该卫星与相邻卫星之间的链路状态为重载状态。
37、可选的,在所述根据所述应答时间和星间链路传输时延,确定该卫星与其他卫星之间的链路状态之后,所述方法还包括:
38、确定与该卫星之间的距离最近的预设虚拟节点为该卫星对应的预设虚拟节点;
39、根据该卫星对应的预设虚拟节点的位置、其他卫星对应的预设虚拟节点的位置,以及各卫星之间的链路状态,确定从该卫星至其他卫星的多个传输路径;
40、从所述多个传输路径中确定最短的传输路径,作为主选传输路径,以及确定除所述主选传输路径之外最短的传输路径为备选传输路径;
41、向该卫星发送所述主选传输路径和备选传输路径。
42、第三方面,为了达到上述目的,本发明实施例提供了一种数据传输装置,所述装置应用于通信系统中的卫星,所述装置包括:
43、数据包确定模块,用于从该卫星接收到的数据包中,确定业务优先级最高的第一数据包;
44、传输路径确定模块,用于根据所述第一数据包的目的卫星,确定从该卫星至所述目的卫星的主选传输路径和备选传输路径;
45、链路状态确定模块,用于获取该卫星与所述主选传输路径中的主选下一跳卫星之间的第一链路状态,以及该卫星与所述备选传输路径中的备选下一跳卫星之间的第二链路状态;其中,该卫星与其他卫星之间的链路状态与星间链路传输时延有关;
46、数据包转发模块,用于基于所述第一链路状态和所述第二链路状态,从所述主选下一跳卫星和所述备选下一跳卫星中,确定出目标下一跳卫星,并向所述目标下一跳卫星发送所述第一数据包。
47、可选的,所述装置还包括:
48、测试消息发送模块,用于在所述链路状态确定模块执行获取该卫星与所述主选传输路径中的主选下一跳卫星之间的第一链路状态,以及该卫星与所述备选传输路径中的备选下一跳卫星之间的第二链路状态之前,执行向该卫星的相邻卫星发送测试消息,并从所述相邻卫星接收响应消息;
49、应答信息确定模块,用于基于所述响应消息时,确定该卫星与相邻卫星之间的应答信息;
50、应答信息发送模块,用于向卫星运控中心发送该卫星与相邻卫星之间的应答信息,以使所述卫星运控中心根据该卫星与相邻卫星之间的应答信息,确定该卫星与相邻卫星之间的链路状态;向该卫星发送确定出的链路状态;
51、链路状态接收模块,用于接收该卫星与相邻卫星之间的链路状态。
52、可选的,所述数据包转发模块,具体用于如果所述第一链路状态和所述第二链路状态相同,且均不是重载状态,确定所述主选下一跳卫星为目标下一跳卫星;
53、如果所述第一链路状态与所述第二链路状态不同,确定不是重载状态的下一跳卫星作为目标下一跳卫星。
54、可选的,所述数据包转发模块,具体用于如果所述第一链路状态与所述第二链路状态不同,且其中一个为轻载状态,确定轻载状态对应的下一跳卫星作为目标下一跳卫星;
55、如果所述第一链路状态与所述第二链路状态不同,且其中一个为中载状态,另一个为重载状态,确定中载状态对应的下一跳卫星作为目标下一跳卫星。
56、可选的,所述装置还包括:
57、数据包存储模块,用于在所述链路状态确定模块执行获取该卫星与所述主选传输路径中的主选下一跳卫星之间的第一链路状态,以及该卫星与所述备选传输路径中的备选下一跳卫星之间的第二链路状态之后,执行如果所述第一链路状态和所述第二链路状态均为重载状态,将所述第一数据包存储至预设缓存队列;
58、数据包选择模块,用于根据所述预设缓存队列中的数据包的业务优先级,从所述预设缓存队列中的数据包中,确定业务优先级最高的第一数据包,并触发所述传输路径确定模块执行根据所述第一数据包的目的卫星,确定从该卫星至所述目的卫星的主选传输路径和备选传输路径的步骤。
59、可选的,所述装置还包括:
60、业务优先级确定模块,用于在所述数据包确定模块执行从该卫星接收到的数据包中,确定业务优先级最高的第一数据包之前,执行基于接收到的数据包的业务类型和预设优先级划分规则,确定该数据包的业务优先级。
61、可选的,所述数据包确定模块,具体用于如果业务优先级最高的数据包为一个,确定该数据包为第一数据包;
62、如果业务优先级最高的数据包为多个,从业务优先级最高的多个数据包中,确定接收时间最早的数据包为第一数据包。
63、可选的,一个数据包括的业务优先级越高,该数据包的传输时延越小。
64、可选的,所述装置还包括:
65、传输路径接收模块,用于在所述传输路径确定模块执行根据所述第一数据包的目的卫星,确定从该卫星至所述目的卫星的主选传输路径和备选传输路径之前,执行接收主选传输路径和备选传输路径;其中,该卫星至其他卫星的主选路径和备选传输路径分别为:该卫星至其他卫星的多个传输路径中最短的传输路径,以及除所述主选传输路径之外最短的传输路径;该卫星至其他卫星的多个传输路径为:卫星运控中心确定与该卫星之间的距离最近的预设虚拟节点为该卫星对应的预设虚拟节点,并根据该卫星对应的预设虚拟节点的位置、其他卫星对应的预设虚拟节点的位置,以及各卫星之间的链路状态确定的。
66、第四方面,为了达到上述目的,本发明实施例提供了一种数据传输装置,所述装置应用于通信系统中的卫星运控中心,所述通信系统还包括多个卫星,所述装置包括:
67、应答时间获取模块,用于获取每一卫星与其他卫星之间的应答时间;
68、链路状态确定模块,用于根据所述应答时间和星间链路传输时延,确定该卫星与其他卫星之间的链路状态;
69、链路状态发送模块,用于向每一卫星发送该卫星与其他卫星之间的链路状态,以使该卫星在从接收到的数据包中确定出业务优先级最高的第一数据包后,基于该卫星与其他卫星之间的链路状态对所述第一数据包进行转发。
70、可选的,链路状态确定模块,具体用于如果所述应答时间小于第一阈值,确定该卫星与相邻卫星之间的链路状态为轻载状态;其中,所述第一阈值为星间链路传输时延的两倍;
71、如果所述应答时间位于所述第一阈值与第二阈值之间,确定该卫星与相邻卫星之间的链路状态为中载状态;其中,所述第二阈值为星间链路传输时延的四倍;
72、如果所述应答时间大于所述第二阈值,确定该卫星与相邻卫星之间的链路状态为重载状态。
73、可选的,所述装置还包括:
74、预设虚拟节点确定模块,用于在所述链路状态确定模块执行根据所述应答时间和星间链路传输时延,确定该卫星与其他卫星之间的链路状态之后,执行确定与该卫星之间的距离最近的预设虚拟节点为该卫星对应的预设虚拟节点;
75、传输路径确定模块,用于根据该卫星对应的预设虚拟节点的位置、其他卫星对应的预设虚拟节点的位置,以及各卫星之间的链路状态,确定从该卫星至其他卫星的多个传输路径;
76、传输路径选择模块,用于从所述多个传输路径中确定最短的传输路径,作为主选传输路径,以及确定除所述主选传输路径之外最短的传输路径为备选传输路径;
77、传输路径发送模块,用于向该卫星发送所述主选传输路径和备选传输路径。
78、本发明实施例还提供了一种电子设备,包括处理器、通信接口、存储器和通信总线,其中,处理器,通信接口,存储器通过通信总线完成相互间的通信;
79、存储器,用于存放计算机程序;
80、处理器,用于执行存储器上所存放的程序时,实现上述任一所述的数据传输方法步骤。
81、本发明实施例还提供了一种计算机可读存储介质,所述计算机可读存储介质内存储有计算机程序,所述计算机程序被处理器执行时实现上述任一所述的数据传输方法步骤。
82、本发明实施例还提供了一种包含指令的计算机程序产品,当其在计算机上运行时,使得计算机执行上述任一所述的数据传输方法。
83、本发明实施例有益效果:
84、本发明实施例提供的一种数据传输方法,应用于通信系统中的卫星,从该卫星接收到的数据包中,确定业务优先级最高的第一数据包;根据第一数据包的目的卫星,确定从该卫星至目的卫星的主选传输路径和备选传输路径;获取该卫星与主选传输路径中的主选下一跳卫星之间的第一链路状态,以及该卫星与备选传输路径中的备选下一跳卫星之间的第二链路状态;其中,该卫星与其他卫星之间的链路状态与星间链路传输时延有关;基于第一链路状态和第二链路状态,从主选下一跳卫星和备选下一跳卫星中,确定出目标下一跳卫星,并向目标下一跳卫星发送第一数据包。
85、基于上述处理,卫星可以确定业务优先级最高的第一数据包,并基于该卫星与其他卫星之间的链路状态对第一数据包进行转发,也就是可以先处理业务优先级高的数据包,即可以先处理对时延要求较高的数据包,则可以避免对时延要求较高的数据包一直等待传输的情况,可以提高网络服务性能。并且,卫星可以根据该卫星与主选传输路径中的主选下一跳卫星之间的第一链路状态,以及该卫星与备选传输路径中的备选下一跳卫星之间的第二链路状态,确定目标下一跳卫星,也就可以从该卫星至目的卫星的主选传输路径和备选传输路径中,确定出不拥塞的传输路径进行数据传输,可以避免第一数据包等待较长时间被传输的情况,进一步提高网络服务性能。
86、当然,实施本发明的任一产品或方法并不一定需要同时达到以上所述的所有优点。
1.一种数据传输方法,其特征在于,所述方法应用于通信系统中的卫星,所述方法包括:
2.根据权利要求1所述的方法,其特征在于,在所述获取该卫星与所述主选传输路径中的主选下一跳卫星之间的第一链路状态,以及该卫星与所述备选传输路径中的备选下一跳卫星之间的第二链路状态之前,所述方法还包括:
3.根据权利要求1所述的方法,其特征在于,所述基于所述第一链路状态和所述第二链路状态,从所述主选下一跳卫星和所述备选下一跳卫星中,确定出目标下一跳卫星,包括:
4.根据权利要求3所述的方法,其特征在于,所述如果所述第一链路状态与所述第二链路状态不同,确定不是重载状态的下一跳卫星作为目标下一跳卫星,包括:
5.根据权利要求3所述的方法,其特征在于,在所述获取该卫星与所述主选传输路径中的主选下一跳卫星之间的第一链路状态,以及该卫星与所述备选传输路径中的备选下一跳卫星之间的第二链路状态之后,所述方法还包括:
6.根据权利要求1所述的方法,其特征在于,在所述从该卫星接收到的数据包中,确定业务优先级最高的第一数据包之前,所述方法还包括:
7.根据权利要求6所述的方法,其特征在于,所述从该卫星接收到的数据包中,确定业务优先级最高的第一数据包,包括:
8.根据权利要求6所述的方法,其特征在于,一个数据包括的业务优先级越高,该数据包的传输时延越小。
9.根据权利要求1所述的方法,其特征在于,在所述根据所述第一数据包的目的卫星,确定从该卫星至所述目的卫星的主选传输路径和备选传输路径之前,所述方法还包括:
10.一种数据传输方法,其特征在于,所述方法应用于通信系统中的卫星运控中心,所述通信系统还包括多个卫星,所述方法包括:
11.根据权利要求10所述的方法,其特征在于,所述根据所述应答时间和星间链路传输时延,确定该卫星与其他卫星之间的链路状态,包括:
12.根据权利要求10所述的方法,其特征在于,在所述根据所述应答时间和星间链路传输时延,确定该卫星与其他卫星之间的链路状态之后,所述方法还包括:
13.一种数据传输装置,其特征在于,所述装置应用于通信系统中的卫星,所述装置包括:
14.根据权利要求13所述的装置,其特征在于,所述装置还包括:
15.根据权利要求13所述的装置,其特征在于,所述数据包转发模块,具体用于如果所述第一链路状态和所述第二链路状态相同,且均不是重载状态,确定所述主选下一跳卫星为目标下一跳卫星;
16.根据权利要求15所述的装置,其特征在于,所述数据包转发模块,具体用于如果所述第一链路状态与所述第二链路状态不同,且其中一个为轻载状态,确定轻载状态对应的下一跳卫星作为目标下一跳卫星;
17.根据权利要求15所述的装置,其特征在于,所述装置还包括:
18.根据权利要求13所述的装置,其特征在于,所述装置还包括:
19.根据权利要求18所述的装置,其特征在于,所述数据包确定模块,具体用于如果业务优先级最高的数据包为一个,确定该数据包为第一数据包;
20.根据权利要求18所述的装置,其特征在于,一个数据包括的业务优先级越高,该数据包的传输时延越小。
21.根据权利要求13所述的装置,其特征在于,所述装置还包括:
22.一种数据传输装置,其特征在于,所述装置应用于通信系统中的卫星运控中心,所述通信系统还包括多个卫星,所述装置包括:
23.根据权利要求22所述的装置,其特征在于,链路状态确定模块,具体用于如果所述应答时间小于第一阈值,确定该卫星与相邻卫星之间的链路状态为轻载状态;其中,所述第一阈值为星间链路传输时延的两倍;
24.根据权利要求22所述的装置,其特征在于,所述装置还包括:
25.一种电子设备,其特征在于,包括处理器、通信接口、存储器和通信总线,其中,处理器,通信接口,存储器通过通信总线完成相互间的通信;
26.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质内存储有计算机程序,所述计算机程序被处理器执行时实现权利要求1-9,或者权利要求10-12任一所述的方法步骤。