面向LEO/GEO双层卫星网络的路由方法与流程

文档序号:17281916发布日期:2019-04-03 01:11阅读:532来源:国知局
面向LEO/GEO双层卫星网络的路由方法与流程
本发明涉及一种面向LEO/GEO双层卫星网络的路由方法,属于卫星通信
技术领域

背景技术
:随着卫星返回信道和星上处理技术的新近发展,现在的卫星已经能够提供和地面站的双向通信服务,并且能够提供广泛的地理区域的覆盖和远程地面网络的互联。但是,空间信息资源有限、卫星链路连接不稳定使得卫星在支持高质量QoS服务的业务中表现不足。另一方面,卫星网络具有高动态拓扑、地面用户分布不均匀等特点,网络负载容易失衡,会出现部分卫星拥塞而周围卫星未被充分利用的情况,增加了数据包的排队时延和丢失概率。本发明提出了一种面向LEO/GEO双层卫星网络的路由策略,在数据传输时根据链路的代价优先选择代价小的链路,同时加入了多等级用户多业务类型的概念,对高优先级的业务优先处理,保证了重要信息的及时传播。由于代价小的链路通常也是非拥塞区域的链路,因此本发明具有较好的网络流量平衡能力,减少了拥塞情况的发生。在以低轨卫星和高轨卫星组成的卫星网络体系架构中,低轨卫星具有处理能力有限、覆盖范围较小,与地面数据传输时延小的特点;高轨卫星相对低轨卫星虽然有较大的覆盖范围的优势,但也有传播时延较大的劣势。因此,如何有效合理的分配网络流量,如何结合LEO和GEO卫星各自的优势达到整个网络流量的平衡,提高卫星网络的吞吐量,对卫星网络通信具有重要意义。技术实现要素:为解决现有技术存在的问题,本发明提供一种面向LEO/GEO双层卫星网络的路由方法,有效合理的分配网络流量,利用LEO和GEO各自的优势达到整个网络流量的平衡,提高卫星网络的吞吐量。本发明提供的面向LEO/GEO双层卫星网络的路由方法,包括以下步骤:步骤1:地面网络平台记录两LEO卫星节点链路代价最小的路由信息,以及两GEO卫星节点链路代价最小的路由信息,生成两卫星节点间的路由信息时,若其中一条链路已在选中的两条路由中出现,则确保之后选取的路由中不包含该链路;步骤2:对路由表中的LEO卫星路由信息计算出链路代价总和并从低到高对路由信息进行排序,对路由表中的GEO卫星路由信息计算出链路代价总和并从低到高对路由信息进行排序,链路代价总和低的路由的优先级高;步骤3:当数据包进入LEO卫星后,查看LEO卫星路由中最高优先级路由的路由信息,若该路由信息中的所有链路负载均不大于阈值θ1,则选择最优路径传输,其中,当链路负载大于θ1时为链路高负载,当链路负载高于θ2时为链路拥塞,θ2>θ1,进入步骤8,否则,进入步骤4;步骤4:查看LEO卫星路由中最高优先级路由的路由信息中是否存在链路负载大于阈值θ2的链路,若均不大于阈值θ2且目前传输的是高优先级数据包,进入步骤5,否则进入步骤6;步骤5:高优先级的数据包优先使用最优路径进行发送,低优先级的数据包则排在等待使用最优路径的队列尾部等待发送;进入步骤8;步骤6:根据路由信息排列顺序,选择不包含链路负载大于阈值θ1的最高优先级路由,进行数据的发送;若不存在这样的路由或者等待使用链路代价总和最高的路由的数据包所需等待的业务数超过预设的阈值,进入步骤7,否则进入步骤8;步骤7:将数据包传输至GEO层进行数据发送,当层间链路的带宽占用超过预设的阈值时,低优先级数据则进行丢包操作;在GEO层中进行传输时选择最高优先级路由进行传输,若继续出现链路高负载的情况时则对低优先级数据直接丢包,其他数据使用次优路由进行传输,进入步骤8;步骤8:进行数据包传输工作,传输完后,若一个周期tp结束,返回步骤1,否则,返回步骤3。优选地,数据包的优先级关系为2A>1A>2B>1B>2C>1C,其中1表示用户为普通用户,2表示用户为高级用户,A、B、C分别表示时延敏感性业务、带宽敏感性业务和尽最大努力传输业务。优选地,所述步骤4中,先读取数据包的业务类型信息,若均不大于阈值θ2且目前传输的是A类语音业务数据包,则进入步骤5。优选地,所述步骤5中,先读取数据包的用户等级信息,高级用户的数据包优先使用最优路径进行发送,普通用户的数据包则排在等待使用最优路径的队列尾部等待发送。优选地,所述步骤5中,若等待业务数超过阈值ε则选择次优路径发送。本发明根据每条链路的地域影响因子α和时域影响因子β进行链路代价计算,具体包括以下步骤:步骤1a:获取每颗LEO卫星的位置信息,根据每条路由信息中的每条链路所处的时域、地域情况,得到每条链路的地域影响因子α和时域影响因子β,其中,LEO卫星节点的纬度为latv,latc表示的北半球的热点区域的中心纬度,0<latc<90,β是根据24小时卫星网络使用情况使用高斯函数拟合得到的每一时刻的值,β的取值范围为[0,1];步骤1b:根据公式η=α·β计算出总影响因子η;步骤1c:根据公式计算出每条链路的链路负载Tb(t),其中Tb(t)=η·ρ,在每个tp时间段对链路进行负载计算,λ是该时间段内需要从该链路传输的数据量;是该链路在该时间段内的平均队列长度,平均队列长度是在tp时间段内,对tp进行更小的时间段划分tq,取n个时间段的瞬时队列长的平均值;kq是该队列的缩减率;γ是该链路的目标利用率;C是链路的数据发送能力,即带宽;步骤1d:根据链路代价公式Cost=w1*Td(t)+w2*Tb(t)+w3*N计算出每条链路的代价,其中Td(t)为传输时延、Tb(t)为链路负载、N为传输跳数,w1、w2、w3为权重系数,且w1+w2+w3=1。所述步骤1中,利用连接代价公式对每条链路进行权重赋值,使用Dijkstra算法,记录两LEO卫星节点链路代价最小的路由信息,以及两GEO卫星节点链路代价最小的路由信息。优选地,所述步骤7中,当层间链路的带宽占用超过90%时,低优先级数据则进行丢包操作。优选地,当层间链路的带宽占用超过90%时,C类业务则进行丢包操作;在GEO层中进行传输时选择最高优先级路由进行传输,若继续出现链路高负载的情况时则对C类业务直接丢包,B类业务使用次优路由进行传输。本发明具有以下有益效果:卫星上的路由负载均衡要求机制简单,容易实现。在一般的负载均衡算法中,主要通过邻接节点通告来调整数据包的发送,一旦当前节点的某条链路发生负载,将数据包转发到空闲的邻接节点上进行重路由,这些对系统的消耗较大,只在局部区域的负载有效,对整个网络的提升并不明显。本发明考虑到时间空间流量的不均衡性,对时空流量热点问题进行了研究处理,对流量进行了均衡,减少了热点区域卫星的负载。基于多用户的考虑,保证了高级用户网络资源的优先占用,保证了高级用户重要信息的传输。数据的传输会根据不同业务类别的特性选择合适的链路,既可以满足时延敏感性用户的服务质量,又可以保证整个网络的吞吐量的提升。LEO/GEO双层卫星网络的设计,使得LEO层卫星传输时延小、地面终端所需能耗低和GEO层卫星覆盖区域大的优点较好发挥出来,便于地面用户接入网络。附图说明图1是全球热点区域分布图;图2是卫星网络需求图;图3是体系结构示意图;图4是方法流程图。具体实施方式本发明在相同业务前提下,保证了高等级用户数据包的优先发送;在相同等级用户的前提下,保证了高等级业务数据包的优先发送。设计了地域时域的热点影响因子,引导流量向非热点区域转移,实现了流量的负载均衡,减轻了热点区域卫星的压力,提高了网络的吞吐量。1、业务分类和用户等级业务分为A、B、C三类,其中A为时延敏感性业务,如语音业务;B类带宽敏感性业务,为具有一定时间容忍性,但要求高吞吐量的业务,如视频图像业务;C类为尽最大努力传输的业务,如邮件业务。时延敏感型业务对数据包端到端时延和时延抖动要求较高,而对带宽要求要低些,甚至可以容忍少量的丢包。带宽敏感型业务对带宽要求较高,时延和时延抖动要求则次之,只要带宽指标满足业务要求即可,不必过于强调选择时延短和跳数少的路由。尽最大努力传输的业务则完全没有时延和带宽的需求。用户Y分为两级,Y=1表示用户为普通用户,Y=2表示用户为高级用户。一般而言,多业务时,业务的优先级是A>B>C。当和用户等级相结合时,我们定义综合优先级为2A>1A>2B>1B>2C>1C。2、时间和空间的流量均衡由于地球上人口分布和经济发展的差异,使得卫星的流量负载不均衡,某些区域流量过于集中,卫星负载很大,我们称这些区域为热点。如果不进行流量均衡处理就会出现热点区域卫星资源被过分占用,链路的带宽占用多大,数据包的时延和时延抖动增加,而非热点区域的卫星资源却处于空闲状态。这不仅导致了资源的浪费,还使得业务的QoS质量下降。如图1所示,整个南半球均为非热点区域;北半球有3个热点区域,区域1:北美NorthAmerica、区域2:欧洲-中东Europe-MiddleEast和区域3:东亚EasternAsia,北半球的其他区域均为非热点区域。我们算法的目的是尽量避免使用热点区域的卫星链路,将热点区域的流量向非热点区域转移。对于地域空间,我们考虑卫星所处的纬度,设卫星节点v的纬度为latv,则该卫星的轨内星际链路代价调节因子α如下所示:其中latc表示的北半球的热点区域的中心纬度,因此有0<latc<90。根据卫星纬度latv的定义域,可知α的值域为因为各热点区域的中心纬度存在差异,为所有的热点区域设置同样的中心纬度是不合理。基于3个热点区域的分布情况,将热点区域使用经度进行了划分并分别设置了3个中心纬度。热点区域的分割参数见表1。名称覆盖范围中心纬度中心经度EasternAsia60°E-180°E35°N120°ENorthAmerica50°W-180°W35°N115°WEurope-MiddleEast50°W-60°E45°N5°E表1热点区域划分参数同时我们也不该忽略时间对于网络需求造成的影响,通过对卫星网络用户24小时需求分布的调研,我们可以在图2中明显的看出,深夜的网络需求明显低于中午时刻。根据参考的24小时网络需求图,进行高斯函数的拟合操作,得到关于时间和网络需求的函数,如下:f(x)=a1*exp(-((x-b1)/c1)^2)+a2*exp(-((x-b2)/c2)^2)+a3*exp(-((x-b3)/c3)^2)+a4*exp(-((x-b4)/c4)^2)+a5*exp(-((x-b5)/c5)^2)+a6*exp(-((x-b6)/c6)^2)+a7*exp(-((x-b7)/c7)^2)+a8*exp(-((x-b8)/c8)^2)其中时间为自变量x,网络需求为因变量f(x),并将该网络需求的值作为时间影响因子设为β,取值范围为[0,1]。当卫星网络流量较多时,我们希望将热点区域的流量转移到非热点区域,此时β的值较大;当流量较少时,则没必要进行流量的转移,此时β的值较小。因此我们将空间影响因子和时间影响因子的积α·β设为总影响因子η,则有η=α·β,当卫星的纬度一定时,该影响因子随着β的增大而增大。高斯函数参数表见下表:表2高斯函数参数表3、链路代价DSP卫星路由算法进行最短路径计算的时候,首先进行链路代价搜集来进行路由计算。这里是以链路的端到端的时延作为链路代价的,我们将它称之为时延代价。算法在路径选择的时候,仅仅选择最短的路径,不会考虑到链路拥塞的情况,导致数据滞留和丢失。选择合适的链路进行数据包的传输对链路优化策略的性能影响很大,以此需要设计合适的链路代价计算公式。我们综合考虑数据包的传输时延、链路负载和传输跳数,给出链路代价计算公式Cost=w1*Td(t)+w2*Tb(t)+w3*N,w1、w2、w3为权重系数,其中w1+w2+w3=1,系数值的选取需要通过仿真而定。Td(t)为传输时延,为传输起始点间链路距离总和除以传输速度的值。N为传输时的跳数,经过几个卫星节点则为几跳。Tb(t)为链路负载,我们采用的虚拟拓扑策略,拓扑发生变化的周期为tp。基于此我们设链路基础负载为每个tp时间段对链路进行负载计算,λ是该时间段内需要从该链路传输的数据量;是该链路在该时间段内的平均队列长度,平均队列长度是在tp时间段内,对tp进行更小的时间段划分tq,取n个时间段的瞬时队列长的平均值;kq是该队列的缩减率;γ是该链路的目标利用率;C是链路的数据发送能力,即带宽。将时间空间的影响因子和链路负载公式融合,得到我们的链路负载公式Tb(t)=η·ρ。当链路负载大于θ1时为链路高负载,当链路负载高于θ2时为链路拥塞,其中θ2>θ1。当链路负载高于θ1时,此时如果有数据选择经过该链路的路由则有会触发数据包绕行机制。4、数据包绕行原则在卫星网络开始运行时,地面网络平台根据卫星网络节点的拓扑结构,结合前面提出的链路代价公式为每条链路进行权重赋值,使用Dijkstra算法,记录某两卫星节点链路代价最小的6条路由信息,记为S1、S2、S3、S4、S5、S6,在路由表中依据链路代价总和从低到高排序。由于可能会出现某条链路在多条路由信息中重复出现的情况,我们称这种重复出现的链路为关键链路。在生成某两卫星节点间的路由信息时,若某链路已在选中的两条路由中出现,则需保证在之后选取的路由中不包含该链路。如两卫星间的路由S1、S2都包含链路j,则在S3、S4、S5、S6中需确保链路j不再出现。由于涉及到了高优先级的业务可以抢占低优先级业务的服务资源,如业务2A抢占业务1B的资源,所以我们需要在卫星上设置队列空间,每个数据包会记录自己在队列中的位置i,i表示需要等待的业务数目。当需要等待的业务数目大于预设的阈值ε时会进行流量的绕行,有两种情况:①业务在队列的初始位置i0大于ε,②出现业务的抢占,等待的业务总数目大于阈值ε。在这两种情况下若当前选择的路由是S1,则业务会采用次优路由S2(假设不包含S1中拥塞链路)进行流量的绕行,以降低该业务的传输时延,均衡流量。比如第②种情况中阈值为ε,初始目标业务处于位置i0,当前面的业务处理完目标业务位置为i1时,出现业务抢占,目标业务位置变化到i2,此时须等待的业务总数为i0+i2-2i1>ε,故直接将目标业务绕行转发,且该业务会在同类业务中拥有较高优先级,以降低转发的时延。A类业务对时延比较敏感。若当前路由中链路负载均不大于θ1时,选择最优路径S1进行传输;若当前路由中存在链路负载大于θ1而小于θ2时,继续选择最优路径S1进行传输,优先传输高级用户的业务2A,低级用户业务1A排在队列后传输。若在选择路由S1时,排在队列后的业务所需等待的业务数目超过阈值则选用不包含S1中拥塞链路的次优路径S2(假设不包含S1中拥塞链路)转发。若链路负载大于θ2时,A类业务不再选择最优路径S1,而是选择不包含该链路的次优路径。B类业务对带宽有要求。若当前路由中链路负载均不大于θ1时,选择最优路径S1进行传输;当链路负载大于θ1时,即出现链路高负载或拥塞时进行链路绕行,选择不包含该链路的次优路由绕开高负载链路。当有高级用户业务2B时,低级用户业务1B排在队列后传输。当选用路由S3时,排在队列后的业务所需等待业务数超过阈值时,①若S4不包含S3中拥塞链路,则选用S4进行业务转发分流;②若S4包含S3中的拥塞链路,且路由S5、S6也不适用,即在路由表中找不到合适的LEO层路由,则传输至上层通过GEO卫星进行转发。GEO卫星采用和LEO层相同的传输方式,区别在于GEO层某两卫星节点的路由信息只有两条,两条路由中没有重复的链路,根据链路代价从小到大排序分为最优路由和次优路由。高优先级的业务排在队列前优先传输,低优先级业务排在队列后传输或选择次优路由传输。C类业务是尽最大努力传输的业务。若当前路由中链路负载均不大于θ1时,选择最优路径S1进行传输;当出现链路高负载或拥塞时直接进行链路绕行,选择不包含该链路的次优路由绕开高负载链路,若不存在不包含该链路的路由,则传输至上层通过GEO卫星进行转发,当层间链路的带宽占用在90%以上时,C类业务则进行丢包操作。在GEO层中进行传输时选择最优路径进行传输,若继续出现链路高负载的情况时则直接丢包,保证B类业务的传输。在同类别的数据传输时,高级用户的数据会抢占普通用户的资源,排在等待传输队列的靠前位置,优先发送,以确保高级用户(如政府、军方)业务的传输时延较小。如图3所示,本发明提供的面向LEO/GEO双层卫星网络的路由方法用LEO/GEO双层卫星系统来进行数据通信,由于LEO星座系统轨道很低,星地之间的传播时延非常小,链路传播损耗小,所以主要用LEO作为主干网进行数据传输,而由GEO来配合进行时延不敏感型业务的分流。本发明是在卫星虚拟拓扑策略的基础上,对拓扑快照进行LEO层链路代价转换和分层分流。因此,利用卫星星座运行的可预测性和周期性,将系统运行时间划分为若干个相同的时间段,并在每个时间段各分n个间隙tp,每个时隙tp内对星间链路进行链路判断,具体步骤如下:步骤1:获取每颗LEO卫星的位置信息,根据每条路由信息中的每条链路的所处的时域、地域情况,得到每条链路的地域影响因子α和时域影响因子β;步骤2:总影响因子η,根据公式η=α·β计算出大小;步骤3:计算出每条链路的链路负载Tb(t);步骤4:根据链路代价公式计算出每条链路的代价;步骤5:地面网络平台根据卫星网络节点的拓扑结构,结合设计的链路代价公式为每链路条路进行权重赋值,使用Dijkstra算法,记录某两LEO卫星节点链路代价最小的6条路由信息,某两GEO卫星节点链路代价最小的2条路由信息。在生成某两卫星节点间的路由信息时,若某链路已在选中的两条路由中出现,则需保证在之后选取的路由中不包含该链路;步骤6:对路由表中的6条LEO路由信息依据链路代价公式计算出链路代价总和并从低到高排序,记为S1、S2、S3、S4、S5、S6,对2条GEO路由信息依据链路代价公式计算出链路代价总和并从低到高排序,记为S1’,S2’;步骤7:数据包进入相应的LEO卫星;步骤8:查看该LEO卫星路由S1中的链路,若该路由信息中的所有链路负载均不大于阈值θ1,则选择最优路径传输,转到步骤13,反之,转步骤9;步骤9:读取数据包的业务类型信息并查看S1中是否存在某条链路负载大于阈值θ2,若均不大于阈值θ2且目前传输的是A类语音业务数据包,转步骤10,反之转步骤11;步骤10:读取数据包的用户等级信息,若是高级用户则优先使用最优路径S1进行发送;若是普通用户则排在等待使用路径S1的队列尾部等待发送,若等待业务数超过阈值ε则选择次优路径S2发送。转到步骤13;步骤11:数据包根据路由信息排列顺序,选择不包含负载大于阈值θ1的最高优先级路由,进行数据的发送。若不存在这样的路由或者等待使用S6的数据包所需等待的业务超过预设的阈值,转步骤12,反之转步骤13;步骤12:将数据包传输至GEO层进行数据发送,当层间链路的带宽占用在90%以上时,C类尽最大努力传输业务则进行丢包操作。在GEO层中进行传输时选择最优路径S1’进行传输,若继续出现链路高负载的情况时则对C类业务直接丢包,B类带宽敏感性业务使用备用路由S2’进行传输,转步骤13;步骤13:进行数据包相应的传输工作,传输完后,若一个周期tp结束,转入步骤14,反之回到步骤7;步骤14:完成循环,转到步骤1。当前第1页1 2 3 
当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1