基于分组数据预存储和分段传输的双层卫星网络路由方法与流程

文档序号:11460042阅读:208来源:国知局
基于分组数据预存储和分段传输的双层卫星网络路由方法与流程

本发明属于卫星通信技术领域,涉及一种双层卫星网络的路由方法,具体涉及一种基于分组数据预存储和分段传输的双层卫星网络路由方法,可用于双层卫星通信网络。



背景技术:

卫星通信在通信领域具有全天候、近实时、不受地理环境的限制、不受地域远近的限制等优势,随着卫星星上处理技术和交换技术的发展,现在的卫星已经能够提供星间和星地的双向通信服务,并且能够在广阔区域甚至全球范围内获取和快速传递大容量信息。因此,具有星间链路的卫星网络可以为未来航天、导航、远洋通信、应急救援等重大应用提供大容量、高质量、高可靠性和多样化的通信服务。目前卫星组网主要有基于单层布星和多层布星的两种组网方式,基于单层布星的卫星网络是依靠单一轨道上的卫星构成的单层卫星网络,而基于多层布星的卫星网络是依靠不同轨道高度上的卫星构成的多层卫星网络,包括leo/meo双层卫星网络、leo/geo双层卫星网络、meo/geo双层卫星网络、leo/meo/geo三层卫星网络。其中双层卫星网络是由具有不同轨道高度的双层卫星星座组成的网络,结合了不同轨道高度卫星的通信优势,因此卫星网络中数据信息在经过不同层的卫星进行信息传输转发时,其性能会存在差异。而星间路由决定了卫星网络中数据信息传输的路径,因此对双层卫星网络星间路由的研究成为双层卫星网络有效通信首要解决的核心问题。路由是指在网络中快速准确寻找源节点到目的节点之间最佳通信路径并建立通信连接的技术,双层卫星网络星间路由是指在双层卫星网络中确定通信传输最佳路径的技术,主要涉及以何种方法解决卫星网络拓扑时变问题。

北京邮电大学在申请公布号为cn105471493a,名称为“一种适用于双层卫星网络的多测度路由方法”的专利申请中,提出一种采用分组的思想进行虚拟拓扑划分的路由方法,该方法对leo卫星进行基于meo卫星覆盖性的分组划分,同时将各meo卫星分别作为各个leo组的管理者,负责收集leo组的拓扑状态信息和集中式的路由计算。该路由方法存在的不足之处是,首先,该路由方法需要逐层收集整个网络的拓扑信息之后,才进行路由计算与各网络节点的路由表建立,收集整个网络的拓扑信息需要耗费大量的时间;其次,由于不同层卫星之间存在相对运动,使得层间链路频繁切换,从而导致网络分组的动态性变化,在卫星网络中有一个分组发生变化后,才进行分组的动态更新,难以适应多层卫星网络层间链路切换频繁的特点,可能造成路由表无法及时更新,使得信息转发的丢包率增大;同时,由各卫星实现对分组进行划分,会带来卫星计算量大的问题,使卫星负担加重。



技术实现要素:

本发明的目的在于克服上述现有技术的不足,提出了一种基于分组数据预存储和分段传输的双层卫星网络路由方法,用于解决现有技术中存在的因无法适应卫星网络拓扑频繁变化导致的信息传输时延大和丢包率高的技术问题。

为实现上述目的,本发明采取的技术方案包括如下步骤:

(1)卫星网络地面控制中心获取分组预存储数据:卫星网络地面控制中心对低层卫星进行分组划分,并将各低层卫星节点分组划分数据分别储存在各低层卫星节点中,同时将各高层卫星节点管理权限数据分别储存在各高层卫星节点中;

(2)各低层卫星节点划分其所属的低层卫星组:各低层卫星节点利用步骤(1)得到的低层卫星节点分组划分数据,将分组发生变动时刻的分组号添加到节点属性中,得到多个低层卫星组;

(3)多个低层卫星组组内的各卫星节点建立低层卫星节点路由表:

(3a)多个低层卫星组组内的各卫星节点建立低层卫星节点初始化路由表,得到多个低层卫星节点初始化路由表;

(3b)多个低层卫星组组内的各卫星节点创建低层卫星节点路由信令:多个低层卫星组组内的各卫星节点将自身的节点地址、轨道面号、分组号和路由表中各路由表项的路由信息进行组合,得到多个低层卫星节点的路由信令;

(3c)多个低层卫星组组内的各卫星节点之间交互路由信令:多个低层卫星组组内的各卫星节点向其相邻卫星节点发送路由信令,同时接收相邻卫星节点发送的路由信令,并判断接收到的路由信令是否有效,若是,执行步骤(3d),否则,删除该路由信令;

(3d)多个低层卫星组组内的各卫星节点对自身的初始化路由表进行添加和更新:多个低层卫星组组内的各卫星节点依次判断自身初始化路由表中的各路由表项是否含有其接收路由信令中携带的多条路由信息中的各目的地址,若是,对到达该目的地址的路径进行最优路径的选择,将该路径替代自身初始化路由表对应的路由表项,否则,将含有该目的地址的路由信息添加到自身初始化路由表中,得到多个低层卫星节点路由表;

(4)各高层卫星节点获取低层卫星组信息:各高层卫星节点利用步骤(1)得到的高层卫星节点管理权限数据,在管理的低层卫星组信息发生变动时,将新加入的低层卫星的信息添加到其管理的低层卫星组信息内,同时将离开的低层卫星的信息从其管理的低层卫星组信息中删除,得到多个低层卫星组信息;

(5)各高层卫星节点建立高层卫星节点路由表:

(5a)各高层卫星节点根据低层卫星组信息建立初始化路由表,得到多个高层卫星节点初始化路由表;

(5b)各高层卫星节点创建高层卫星节点路由信令:各高层卫星节点将自身的节点地址、轨道面号和路由表中各路由表项的路由信息进行组合,得到多个高层卫星节点的路由信令;

(5c)各高层卫星节点之间交互路由信令:各高层卫星节点向其相邻卫星节点发送路由信令,同时接收相邻卫星节点发送的路由信令,并判断接收到的路由信令是否有效,若是,执行步骤(5d),否则,删除该路由信令;

(5d)各高层卫星节点对初始化路由表进行添加和更新:各高层卫星节点依次判断自身初始化路由表中的各路由表项是否含有其接收路由信令中携带的多条路由信息中的各目的地址,若是,对到达该目的地址的路径进行最优路径的选择,将该路径替代自身初始化路由表对应的路由表项,否则,将含有该目的地址的路由信息添加到自身初始化路由表中,得到多个高层卫星节点路由表;

(6)各卫星网络用户向其接入的低层卫星节点发送业务数据包;

(7)各低层卫星节点对业务数据包进行路由转发:各低层卫星节点接收用户业务数据包,并在自身的路由表中查找接收到的用户业务数据包的目的地址,如果查找成功,按照该目的地址对应的路由表项,将业务数据包转发到该路由表项下一跳地址标识的低层卫星节点,否则,转发给高层卫星节点,并执行步骤(8);

(8)各高层卫星节点对业务数据包进行路由转发:各高层卫星节点接收用户业务数据包,并在自身的路由表中查找接收到的用户业务数据包的目的地址,如果查找成功,按照该目的地址对应的路由表项,将业务数据包转发到该路由表项下一跳地址标识的卫星节点,否则,丢弃该业务数据包。

本发明与现有技术相比,具有以下优点:

第一、本发明采用了各卫星节点利用其预存储的数据对自身分组划分或管理权限划分情况进行更新,克服了现有技术中在分组发生变化后,才由各卫星节点重新计算分组,带来路由表不能及时更新造成的丢包率高的问题,降低了信息传输的丢包率,与现有技术相比有效地提高了信息转发的准确性;

第二、本发明采用了对用户业务信息传输分段的方式,依据信息传输距离的不同,将信息的传输转发分成小范围内信息转发和大范围内信息转发,传输距离在一个低层卫星组转发范围内时,通过低层卫星组进行信息的路由转发,否则,由高层卫星进行中继,克服了现有技术中传输距离不同的信息占据同一段传输路径,带来链路拥塞造成的传输时延大的问题,降低了信息传输的时延,与现有技术相比有效地提高了信息转发的速度;

第三、本发明采用了地面控制中心获取分组预存储数据,并将其存储在各卫星节点中,克服了现有技术中由各卫星对分组进行划分带来的卫星计算量大的问题,节省了卫星的计算量。

附图说明

图1为本发明的实现流程图;

图2为本发明低层卫星节点的路由信令结构图;

图3为本发明高层卫星节点的路由信令结构图;

图4为本发明的端到端时延随着仿真时间变化的仿真图;

图5为现有技术的端到端时延随着仿真时间变化的仿真图;

图6为本发明的丢包率随着仿真时间变化的仿真图;

图7为现有技术的丢包率随着仿真时间变化的仿真图。

具体实施方式

下面结合附图和具体实施例,对本发明作进一步的详细描述:

参照图1,基于分组数据预存储和分段传输的双层卫星网络路由方法,包括如下步骤:

步骤1,卫星网络地面控制中心获取分组预存储数据:卫星网络地面控制中心对低层卫星进行分组划分,并将得到的不同时刻的各低层卫星节点分组划分数据分别储存在各低层卫星节点中,同时将得到的不同时刻的各高层卫星节点管理权限数据分别储存在各高层卫星节点中;

卫星网络地面控制中心采用了持续时间最长切换策略,对低层卫星进行分组划分,从而获取分组预存储数据,持续时间最长切换策略如下:在层间链路断开时,各低层卫星节点选择与可以提供最长通信连接保持的高层卫星节点建立层间链路,并将该高层卫星节点作为其管理者,拥有相同管理者的低层卫星属于同一个低层卫星组,因此,得到了两部分数据,第一部分是不同时刻的各低层卫星节点分组划分数据,第二部分是不同时刻的各高层卫星节点管理权限数据;

持续时间最长切换策略利用了系统星座运行先验知识,延长了所接入卫星对呼叫的服务时间,可以有效地降低切换请求到达率,减少由切换引起的分组重新划分频率;

采用地面控制中心获取分组预存储数据,并将其存储在各卫星节点中,克服了现有技术中由各卫星对分组进行划分带来的卫星计算量大的问题,使得本发明具有节省了卫星计算量的优点;

步骤2,各低层卫星节点划分其所属的低层卫星组:各低层卫星节点利用步骤1得到的不同时刻低层卫星节点分组划分数据,将分组发生变动时刻的分组号添加到节点属性中,得到多个低层卫星组;

低层卫星节点中存储的分组划分数据包括:每一次发生分组重新划分的时间点,每一次分组重新划分后属于哪一颗高层卫星的管理权限内;

步骤3,多个低层卫星组组内的各卫星节点建立低层卫星路由表:

步骤3a,多个低层卫星组组内的各卫星节点建立低层卫星节点初始化路由表,得到多个低层卫星节点初始化路由表;

步骤3b,多个低层卫星组组内的各卫星节点创建低层卫星节点路由信令:多个低层卫星组组内的各卫星节点将自身的节点地址、轨道面号、分组号和路由表中各路由表项的路由信息进行组合,得到多个低层卫星节点的路由信令;

低层卫星节点的路由信令的结构如图2所示,其结构中包括:节点标识、节点轨道面标识、节点分组标识、节点的路由信息,其中节点的路由信息携带两部分信息,一是低层卫星节点自身的节点标识信息,二是低层卫星节点路由表中所有的路由信息;

步骤3c,多个低层卫星组组内的各卫星节点之间交互路由信令:多个低层卫星组组内的各卫星节点向其相邻卫星节点发送路由信令,同时接收相邻卫星节点发送的路由信令,并判断接收到的路由信令是否有效,若是,执行步骤3d,否则,删除该路由信令;

判断接收到的路由信令是否有效的步骤如下:

步骤3c1,多个低层卫星组组内的各卫星节点根据接收到路由信令的分组标识,判断接收和发送该路由信令的节点是否属于同一组,若是,执行步骤3c2,否则,则接收到的路由信令无效;

步骤3c2,多个低层卫星组组内的各卫星节点根据预设轨道判断自身是否进入极区,若是,执行步骤3c3,否则,执行步骤3c4;

步骤3c3,多个低层卫星组组内的各卫星节点根据接收到路由信令的轨道面标识,判断接收和发送该路由信令的节点是否属于同一轨道面,若是,执行步骤3c4,否则,则接收到的路由信令无效;

步骤3c4,多个低层卫星组组内的各卫星节点根据接收到路由信令的轨道面标识,判断接收和发送该路由信令的节点是否分别位于反向缝,若是,则接收到的路由信令无效,否则,则接收到的路由信令有效;

步骤3d,多个低层卫星组组内的各卫星节点对自身的初始化路由表进行添加和更新:多个低层卫星组组内的各卫星节点依次判断自身初始化路由表中的各路由表项是否含有其接收路由信令中携带的多条路由信息中的各目的地址,若是,对到达该目的地址的路径进行最优路径的选择,将该路径替代自身初始化路由表对应的路由表项,否则,将含有该目的地址的路由信息添加到自身初始化路由表中,得到多个低层卫星节点路由表;

路由表中最主要的信息就是:到某个网络节点的最短距离,以及应经过的下一跳地址,本发明在进行最优路径的选择时,采用bellman-ford算法,该算法的要点如下:设x是节点a到b的最短路径上的一个节点,若把路径a到b拆成两段路径a到x和x到b,则每一段路径a到x和x到b也都分别是节点a到x和节点x到b的最短路径;

步骤4,各高层卫星节点获取低层卫星组信息:各高层卫星节点利用步骤1得到的高层卫星节点管理权限数据,在管理的低层卫星组信息发生变动时,将新加入的低层卫星的信息添加到其管理的低层卫星组信息内,同时将离开的低层卫星的信息从其管理的低层卫星组信息中删除,得到多个低层卫星组信息;

高层卫星节点中存储的管理权限数据包括:每一次管理权限发生变化的时间点,每一次管理权限发生变化后所管理的低层卫星组的变动情况;

步骤5,各高层卫星节点建立高层卫星节点路由表:

步骤5a,各高层卫星节点根据低层卫星组信息建立初始化路由表,得到多个高层卫星节点初始化路由表;

步骤5b,各高层卫星节点创建高层卫星节点路由信令:各高层卫星节点将自身的节点地址、轨道面号和路由表中各路由表项的路由信息进行组合,得到多个高层卫星节点的路由信令;

高层卫星节点的路由信令的结构如图3所示,其结构中包括:节点标识、节点轨道面标识、节点的路由信息,其中节点的路由信息携带两部分信息,一是高层卫星节点自身的节点标识信息,二是高层卫星节点路由表中所有的路由信息;

步骤5c,各高层卫星节点之间交互路由信令:各高层卫星节点向其相邻卫星节点发送路由信令,同时接收相邻卫星节点发送的路由信令,并判断接收到的路由信令是否有效,若是,执行步骤5d,否则,删除该路由信令;

判断接收到的路由信令是否有效,实现步骤为:

步骤5c1,各高层卫星节点根据预设轨道判断自身是否进入极区,若是,执行步骤5c2,否则,则接收到的路由信令有效;

步骤5c2,各高层卫星节点根据接收到路由信令的轨道面标识,判断判断接收和发送该路由信令的节点是否属于同一轨道面,若是,则接收到的路由信令有效,否则,则接收到的路由信令无效;

步骤5d,各高层卫星节点对初始化路由表进行添加和更新:各高层卫星节点依次判断自身初始化路由表中的各路由表项是否含有其接收路由信令中携带的多条路由信息中的各目的地址,若是,对到达该目的地址的路径进行最优路径的选择,将该路径替代自身初始化路由表对应的路由表项,否则,将含有该目的地址的路由信息添加到自身初始化路由表中,得到多个高层卫星节点路由表;

路由表中最主要的信息就是:到某个网络节点的最短距离,以及应经过的下一跳地址,本发明在进行最优路径的选择时,采用bellman-ford算法,该算法的要点如下:设x是节点a到b的最短路径上的一个节点,若把路径a到b拆成两段路径a到x和x到b,则每一段路径a到x和x到b也都分别是节点a到x和节点x到b的最短路径;

步骤6,各卫星网络用户向其接入的低层卫星节点发送业务数据包;

步骤7,各低层卫星节点对业务数据包进行路由转发:各低层卫星节点接收用户业务数据包,并在自身的路由表中查找接收到的用户业务数据包的目的地址,如果查找成功,按照该目的地址对应的路由表项,将业务数据包转发到该路由表项下一跳地址标识的低层卫星节点,否则,发送给高层卫星节点,并执行步骤8;

步骤8,各高层卫星节点对业务数据包进行路由转发:各高层卫星节点接收用户业务数据包,并在自身的路由表中查找接收到的用户业务数据包的目的地址,如果查找成功,按照该目的地址对应的路由表项,将业务数据包转发到该路由表项下一跳地址标识的卫星节点,否则,丢弃该业务数据包。

以下结合仿真实验,对本发明的技术效果作进一步详细说明:

1.仿真条件和内容:

1.1)仿真条件,双层卫星网络节点总数138个,其中轨道高度554km的leo节点126个,采用walker星座,每个轨道上分布14颗卫星,均匀分布在9个轨道上,每一颗leo卫星维持四条星间链路,其中,两条星间链路连接到同轨道的两颗leo卫星,两条星间链路连接到相邻轨道上的两颗leo卫星;轨道高度10355km的meo节点12个,采用walker星座,每个轨道上分布4颗卫星,均匀分布在3个轨道上,每一颗meo卫星维持四条星间链路,其中,两条星间链路连接到同轨道的两颗meo卫星,两条星间链路连接到相邻轨道上的两颗meo卫星;仿真时间24h,仿真业务数据包采用固定长度为128byte,所采用的业务源是恒定的,每间隔1s进行业务数据包的发送。

1.2)仿真内容,包括对本发明的端到端时延性能的仿真,其结果如图4所示;

对sgrp星间路由协议的端到端时延性能的仿真,其结果如图5所示;

对本发明的丢包率性能的仿真,其结果如图6所示;

对sgrp星间路由协议的丢包率性能的仿真,其结果如图7所示。

2.仿真结果分析:

参照图4,本发明的平均端到端时延始终保持稳定在160ms上下;

参照图5,sgrp星间路由协议的平均端到端时延保持稳定在180ms上下;

结合图4和图5,分析得到,在相同仿真条件下,本发明相对现有sgrp星间路由协议,显著降低了网络的平均端到端时延,提高了信息传输转发的速度。

参照图6,本发明的路由协议丢包率最高为0.22%,大约稳定在0.15%;

参照图7,sgrp星间路由协议的丢包率最高为0.26%,大约稳定在0.22%;

结合图6和图7,分析得到,在相同仿真条件下,本发明相对现有sgrp星间路由协议,显著降低了网络的丢包率,提高了信息传输转发的准确性。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1