一种改进的激光-微波混合星间路由方法

文档序号:30452600发布日期:2022-06-18 02:20阅读:229来源:国知局
一种改进的激光-微波混合星间路由方法

1.本发明涉及低地球轨道卫星应用技术领域,尤其涉及一种改进的激光-微波混合星间路由方法。


背景技术:

2.卫星通信有很多地面通信难以具备的优势,如通信网络抗毁性高,不受地震、火灾、海啸等自然灾害影响;全球无缝覆盖,可以为沙漠、海洋、森林等偏远地区提供低价宽带服务。leo卫星通信网络需要巨大的网络负载能力、信息处理能力以承载全球通信流量,当大量信息涌入星上资源池和星间链路时,没有合理的传播路径会造成网络拥堵路由信息无法广播的问题。


技术实现要素:

3.本发明的目的在于提供一种改进的激光-微波混合星间路由方法,提高leo星间链路的信道容量,从而增加网络负载能力,利用改进的q-routing算法来寻找最有路径,解决大规模卫星网络中路由信息无法广播的问题。
4.为实现上述目的,本发明提出了一种改进的激光-微波混合星间路由方法,包括下列步骤:
5.建立基于同轨激光和异轨微波的星间链路结构;
6.建立多cpu调度星上处理器;
7.数据包进入星座后以改进的q-routing算法对数据包进行路由;
8.星座进入下一时间切片,重复改进的q-routing算法进行路由。
9.其中,所述基于同轨激光和异轨微波的星间链路结构包括若干个卫星和地面基站,其中同轨道卫星使用激光链路进行通信,异轨道卫星使用微波链路进行通信,卫星与地面基站间使用微波链路进行通信。
10.其中,每个所述卫星设置有5个通信端,其中4个负责与相邻4颗卫星通信,剩下一个负责与地面基站通信,5条信号通道中2条激光链路负责收发同轨道卫星的信号,3条微波链路负责异轨道和地面信息的收发。
11.其中,所述卫星使用光电转换器接收同轨光信号,使用电光转换器发射光信号,使用射频天线接收和发射异轨或地面的电磁波信号,并通过排队论计算排队时延。
12.其中,所述多cpu调度星上处理器内包括5个cpu计算单元,数据包进入卫星后依次排队计算,若在一个数据包到达时,5个cpu计算单元都被占用,则进入缓存器内缓存。
13.其中,数据包进入星座后以改进的q-routing算法对数据包进行路由的过程,包括以下步骤:
14.在所有时间切片内预先用dijkstra算法计算最短路径;
15.在每一卫星节点随机选用q-routing算法或dijkstra算法对数据包的下一跳进行选择。
16.其中,每次选择完数据包的下一跳后检查是否超时,若超时,则丢弃数据包;若到达目的地,则停止该数据包的路由。
17.本发明提出了一种改进的激光-微波混合星间路由方法,首先建立基于同轨激光、异轨微波的星间链路结构,建立多cpu调度星上处理器,并利用排队论对光电转换器、电光转换器、cpu处理器处产生的时延进行建模,其次星座利用改进的q-routing算法对当前时间切片下进入星座的数据包进行路由以寻找时延最短路径,最后星座进入下一时间切片,重复改进的q-routing算法进行路由,本发明通过同轨道激光、异轨道微波的混合型星间链路以增加链路容量,通过星上cpu集中调度方式以提高计算资源利用率,采用改进的q-routing算法解决大规模卫星网络中路由信息无法广播的问题。
附图说明
18.为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
19.图1是本发明的一种改进的激光-微波混合星间路由方法的流程示意图。
20.图2是本发明的星间链路示意图。
21.图3是本发明的微波-激光通信示意图。
22.图4是本发明的星上处理过程示意图。
23.图5是本发明的改进q-routing算法的流程示意图。
24.图6是本发明的路由时延对比图。
25.图7是本发明的路由跳数对比图。
6具体实施方式
26.下面详细描述本发明的实施例,所述实施例的示例在附图中示出,其中自始至终相同或类似的标号表示相同或类似的元件或具有相同或类似功能的元件。下面通过参考附图描述的实施例是示例性的,旨在用于解释本发明,而不能理解为对本发明的限制。
27.请参阅图1,本发明提出了一种改进的激光-微波混合星间路由方法,包括下列步骤:
28.s1:建立基于同轨激光和异轨微波的星间链路结构;
29.s2:建立多cpu调度星上处理器;
30.s3:数据包进入星座后以改进的q-routing算法对数据包进行路由;
31.s4:星座进入下一时间切片,重复改进的q-routing算法进行路由。
32.所述基于同轨激光和异轨微波的星间链路结构包括若干个卫星和地面基站,其中同轨道卫星使用激光链路进行通信,异轨道卫星使用微波链路进行通信,卫星与地面基站间使用微波链路进行通信。
33.所述卫星使用光电转换器接收同轨光信号,使用电光转换器发射光信号,使用射频天线接收和发射异轨或地面的电磁波信号,并通过排队论计算传播时延。
34.所述多cpu调度星上处理器内包括5个cpu计算单元,数据包进入卫星后依次排队
计算,若在一个数据包到达时,5个cpu计算单元都被占用,则进入缓存器内缓存。
35.数据包进入星座后以改进的q-routing算法对数据包进行路由的过程,包括以下步骤:
36.在所有时间切片内预先用dijkstra算法计算最短路径;
37.在每一卫星节点随机选用q-routing算法或dijkstra算法对数据包的下一跳进行选择。
38.每次选择完数据包的下一跳后检查是否超时,若超时,则丢弃数据包;若到达目的地,则停止该数据包的路由。
39.以下结合具体步骤与附图作进一步说明:
40.s1:建立基于同轨激光和异轨微波的星间链路结构;
41.由于异轨道卫星的相对运动非常大,相距上千公里的两颗卫星实现厘米级对准相当困难;而同轨道的相对运动较小,实现激光通信相对容易。在现有技术条件下,可以做到同轨道卫星使用激光链路,异轨道卫星使用微波链路。卫星接收到激光信号后,需要将光信号转换成电信号进行处理,因此卫星使用“光电转换器”接收同轨光信号,使用“电光转换器”发射光信号,使用“射频天线”接收和发射异轨和地面端电磁波信号。转换器使用排队论计算其时延。
42.设单位时间内到达接收端的数据包数量服从泊松分布,同时,离开发送端的数据包数量也服从泊松分布。单位时间内接收端的输入均值为λ
1i
(i∈1,2,3,4,5)离开速率的均值为μ
1i
。激光链路接收端服从m/m/1/n/∞模型,微波链路接收端服从m/m/1/∞/∞模型;发送端每个端口数据包到来的速率为λ
3j
(j∈1,2,3,4,5),离开的速率假设为μ
3j
,排队模型为m/m/1/∞/∞。
43.其中,m/m/1/∞/∞模型的排队时延为:
[0044][0045]
m/m/1/n/∞模型的排队时延为:
[0046][0047]
式中式中ls是系统中顾客的总个数,p0表示从0时刻到当前时刻没有数据包发来的概率。
[0048]
m/m/c/∞/∞模型的排队时延为:
[0049][0050]
式中c表示服务台个数。
[0051]
请参阅图2,本发明的星间距离示意图,传输时延的计算在每一拓扑切片都要计算一次,该计算利用dijkstra算法,计算出传输时延最小的路径。
[0052]
如图3所示,每个所述卫星设置有5个通信端,其中4个负责与相邻4颗卫星通信,剩下一个负责与地面基站通信,5条信号通道中2条激光链路负责收发同轨道卫星的信号,3条微波链路负责异轨道和地面信息的收发。
[0053]
s2:建立多cpu调度星上处理器;
[0054]
请参阅图4,五个接收端的数据包进入卫星后在同一缓存队列内排队,经过cpu处理器计算后被传递到需要的发送端。cpu的处理器内有数个cpu计算单元,第一个数据包到达时,进入一个cpu计算单元进行路径规划等一系列星上操作,第二数据包到达时,如果第一个还没有计算完毕,则进入第二计算单元,以此类推;如果一个数据包到达时,五个计算单元都被占用,则进入缓存器内缓存。出口处将电信号转化成光信号或微波信号,因此转换器都是对电信号进行处理,缓存容量设为无限。
[0055]
由于几个相互独立的泊松过程的和仍是泊松过程,且合并后泊松过程的强度等于之前所有泊松过程强度的和,因此数据包进入卫星后的合并强度为之前所有泊松过程强度的和,因此数据包进入卫星后的合并强度为处理器每个处理单元的平均处理速度均为μ2。资源池的排队模型服从m/m/c/n/∞。
[0056]
s3:数据包进入星座后以改进的q-routing算法对数据包进行路由;
[0057]
本步骤在卫星拓扑图切片的基础上,使用改进的q-routing算法计算路由。在拓扑切片中,每一个切片近似代替一段时间内连续变化的拓扑,只要拓扑划分得合理,因近似产生的传输时延误差对路由的影响便可忽略不计。然而此拓扑虽是固定的,但负载是动态的。因此传统静态算法不再适用,可以使用实时考虑动态负载的路由算法来寻找路径。本文使用的算法能够动态考虑排队时延的q-routing,并使用传统dijkstra算法加速了收敛。
[0058]
具体又分为两个步骤:
[0059]
1、数据预处理
[0060]
在所有时间切片内预先用dijkstra算法计算最短路径。每一颗卫星分别用dijkstra算法计算本卫星到其他所有卫星的最短路径,然后将路由表存放在本卫星内。本步骤得到的是传输时延最短的路径,单个传输时延的计算是基于ui、u
i+1
两星的经纬度。计算方法如下:
[0061][0062]
式中ξ表示卫星ui、u
i+1
与地心o组成的∠uiou
i+1
,λ、分别表示卫星经纬度。由余弦定理可得,卫星ui与u
i+1
之间的距离为:
[0063][0064]
式中r表示卫星ui与u
i+1
的轨道高度。综上所述,星间链路传输时延t
l
如下,其中c为光速:
[0065][0066]
2、改进的q-routing算法
[0067]
在每一卫星节点随机选用q-routing算法或dijkstra算法对数据包的下一跳进行选择以此类推。本发明在卫星拓扑图切片的基础上,使用改进的q-routing算法计算路由。在拓扑切片中,每一个切片近似代替一段时间内连续变化的拓扑,只要拓扑划分得合理,因近似产生的传输时延误差对路由的影响便可忽略不计。然而此拓扑虽是固定的,但负载是
动态的。因此传统静态算法不再适用,可以使用实时考虑动态负载的路由算法来寻找路径。本文使用的算法能够动态考虑排队时延的q-routing,并使用传统dijkstra算法加速了收敛。
[0068]
以下是q-routing算法中q值的表示形式:
[0069][0070]
该值表示ui卫星估计的将数据包从邻居卫星u
i+1
发到需要的代价。
[0071]
卫星ui将数据包发送给q值最小的卫星u
i+1
,u
i+1
收到数据包后立刻向ui报告其最小发送代价以及路径时延t
l
(ui,u
i+1
)以及排队时延,然后ui对估计值进行迭代。迭代方式如下:
[0072][0073]
α是学习速率,决定了这次学习所获得的经验在以后的决定中占的比例,为邻居卫星到所有q值的最小值。应当注意,由于这一过程在ui的cpu内完成,因此排队时延ws(ui)应为如下形式:
[0074]ws
(ui)=w
s2
(ui)+w
s3
(ui)+w
s1
(u
i+1
)
[0075]
其中,w
s2
(ui)、w
s3
(ui)、w
s1
(u
i+1
)分别表示卫星ui星上资源处和出口处的排队时延、卫星u
i+1
入口处的排队时延。
[0076]
如同其他智能算法一样,q-routing算法也具有收敛速度慢的特点,因此使用传统算法对q-routing进行指引,可使算法加速收敛。
[0077]
由于每张拓扑的路径时延是不变的,因此利用dijkstra算法预计算可以提供目的卫星的大致方向。但在卫星时间切片中只有网络拓扑是固定的,网络负载是动态的,所以利用解决静态问题的传统算法就不再适合;强化学习算法可以利用不断的反馈、学习、迭代找到动态问题的近似最优解。两种算法相结合,得到快速收敛的动态算法。改进的q-routing算法对数据包的每一跳随机使用q-routing算法或dijkstra算法进行路由,以此达到加速收敛的目的。
[0078]
每次选择完下一跳后检查是否超时,若超时,则丢弃数据包;若到达目的地,则停止该数据包的路由。
[0079]
s4:星座进入下一时间切片,重复改进的q-routing算法进行路由。
[0080]
本发明还使用python建立星座进行仿真,仿真卫星参数和网络参数设置如表1所示。
[0081]
表1:卫星参数设置
[0082]
轨道倾角87.9
°
轨道高度1200km轨道平面数18每平面卫星个数40
[0083]
如图5所示,在每一个拓扑切片上,卫星依照此流程图对数据包进行路由,下一拓扑切片时,重复此过程,具体步骤如下:
[0084]
(1)建立卫星架构
[0085]
1)建立星间链路。一颗卫星需要与5个网络节点进行通信,其中包括4颗相邻卫星和一个地面基站。其中同轨道卫星使用激光链路,异轨道卫星使用微波链路。值得注意的是,处于反向缝两侧的异轨卫星不能通信;处于极地附近的异轨卫星,由于巨大的多普勒频移,也不能通信。
[0086]
2)建立多cpu星上处理器。
[0087]
(2)数据包进入星座,每颗卫星以改进q-routing算法对数据包进行路由。
[0088]
1)预处理。在每个时间切片之前,每颗卫星利用存储在内存中该时间段内的星座拓扑,计算得出该切片内时延最短路径。该计算不占用数据包路由时延。
[0089]
2)改进的q-routing算法。数据包进入一颗卫星后,根据改进的q-routing算法路由,步骤如下:
[0090]
i.生成随机数α;
[0091]
ii.根据随机数α的大小来判断使用q-routing算法或者dijkstra算法路由;
[0092]
iii.若使用q-routing算法路由,则需要下一个卫星返回迭代数据;否则不需要;
[0093]
iv.若有数据返回,当前卫星更新当前动作状态的q值,并记录在q表中;
[0094]
v.当该数据包到达终点时,此次训练结束;
[0095]
vi.重复训练,直到网络的所有路由时延收敛。
[0096]
(3)星座进入下一时间切片,重复改进的q-routing算法进行路由。
[0097]
该仿真例具体作用在于测试在本发明的性能机制,亦即改进q-routing算法在所提卫星架构下的性能。
[0098]
图6是数据包在表1所示网络中路由的结果。由图可见,dijsktra算法找到的路径时延非常大。因为dijkstra算法在寻找路径时仅能考虑静态的路径时延,对于动态参数如排队情况无法提前考虑,可以估计,这种缺陷在网络负载大时更加明显。与此同时,单纯使用q-routing算法的收敛速度非常慢,用dijkstra算法进行指引会加速q-routing的收敛。图6说明改进q-routing所用时间低于dijkstra算法,收敛速度低于q-routing算法。
[0099]
图7是改进q-routing算法减少时延所用的代价。图7显示,dijsktra算法的跳数是最少的,q-routing、改进q-routing算法其次。然而从时延仿真来看,其时延的大小顺序正好相反,因此可以推断出,智能算法所得到的低时延是通过增加跳数来实现的,它使数据包绕开高排队时延的路径,达到总时延减小的目的。
[0100]
与现有技术相比,本发明的有益效果:通过同轨道激光、异轨道微波的混合型星间链路以增加链路容量,星上cpu集中调度方式以提高计算资源利用率;以排队论对光电转换器、电光转换器、cpu处理器处产生的时延进行建模;采用q-routing算法解决大规模卫星网络中路由信息无法广播的问题;利用dijkstra算法预计算加速算法收敛。
[0101]
以上所揭露的仅为本发明一种较佳实施例而已,当然不能以此来限定本发明之权利范围,本领域普通技术人员可以理解实现上述实施例的全部或部分流程,并依本发明权利要求所作的等同变化,仍属于发明所涵盖的范围。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1