一种基于卫星网络的路由确定方法与流程

文档序号:12490252阅读:122来源:国知局
一种基于卫星网络的路由确定方法与流程
本发明涉及卫星通信
技术领域
,特别涉及一种基于卫星网络的路由确定方法。
背景技术
:随着科技的不断发展,卫星网络因其能够实现全球覆盖以及提供较宽带宽,已经应用于环境科学、应急救援、军事控制等各种
技术领域
。在卫星网络中,确定出高效、可靠和灵活的路由是影响卫星网络通信性能的重要方面。基于卫星网络的路由确定方法通常包括:获取卫星网络中各卫星的地址信息;根据所获取的地址信息,计算各卫星之间的路由信息。应用上述方案,如果卫星网络出现拥塞或者节点故障,需要重新获取卫星的地址信息,重新计算各卫星之间的路由信息。也就是说,即使一个卫星的地址信息变更,也要重新计算卫星网络中的全部路由信息,计算量大。技术实现要素:本发明实施例的目的在于提供一种基于卫星网络的路由确定方法,以降低确定路由信息的计算量。为达到上述目的,本发明实施例公开了一种基于卫星网络的路由确定方法,应用于卫星网络,所述方法包括:所述卫星网络中的源卫星根据目的卫星的地址,为N个测试数据包设置初始转移概率,并按照所述初始转移概率,将所述N个测试数据包发送至各自对应的下一跳卫星;其中,所述N大于1,所述转移概率包括测试数据包到达各个下一跳卫星的概率;接收到测试数据包的每个下一跳卫星根据所述目的卫星的地址,为所接收到的测试数据包设置新的转移概率,并按照所述新的转移概率,将所接收到的测试数据包发送至各自对应的下一跳卫星,直至达到所述目的卫星;所述目的卫星根据每个测试数据包所记录的到达每个下一跳卫星及目的卫星的时刻,确定所述测试数据包经过的路径及路径的适应度值;根据所确定的每条路径及其适应度值,确定从所述源卫星到达所述目的卫星的路由信息。可选的,所述目的卫星根据每个测试数据包所记录的到达每个下一跳卫星及目的卫星的时刻,确定所述测试数据包经过的路径及路径的适应度值的步骤,可以包括:所述目的卫星根据每个测试数据包所记录的到达每个下一跳卫星及目的卫星的时刻、以及所述每个下一跳卫星及目的卫星对应的链路剩余带宽,确定所述测试数据包经过的路径及路径的适应度值。可选的,所述目的卫星根据所确定的每条路径及其适应度值,确定从所述源卫星到达所述目的卫星的路由信息的步骤,可以包括:所述目的卫星根据路径的适应度值,对所确定的各条路径进行排序;根据排序结果,选择M条目标路径,所述M条目标路径组成从所述源卫星到达所述目的卫星的路由信息;其中,所述M小于所确定的路径的数量。可选的,所述目的卫星确定从所述源卫星到达所述目的卫星的路由信息的步骤,可以包括:所述目的卫星判断所确定的每条路径中,是否存在交叉卫星;如果是,将所述交叉卫星对应的至少两条路径进行重组,得到至少一条新路径;确定所述新路径的适应度值;针对所述交叉卫星对应的每条路径,判断其适应度值是否小于所述新路径的适应度值;如果是,将该路径替换为所述新路径。可选的,在所述目的卫星确定从所述源卫星到达所述目的卫星的路由信息的步骤之后,还可以包括:所述目的卫星将接收到的测试数据包确定为反向测试数据包,并根据所述源卫星的地址,发送所述反向测试数据包;每个下一跳卫星或者源卫星接收到所述反向测试数据包后,根据所述反向测试数据包中携带的所述路由信息,更新自身存储的路由信息。可选的,所述目的卫星根据所述源卫星的地址,发送所述反向测试数据包的步骤,可以包括:所述目的卫星确定一个第一随机数值;当所述第一随机数值小于第一预设值时,根据所述路由信息,确定下一跳卫星的地址,将所述反向测试数据包发送至所确定的地址;当所述第一随机数值大于等于所述第一预设值时,确定反向测试数据包对应的转移概率,按照所对应的转移概率,发送所述反向测试数据包;每个下一跳卫星接收到所述反向测试数据包后,确定一个第二随机数值;当所述第二随机数值小于第二预设值时,根据所述路由信息,确定下一跳卫星的地址,将所述反向测试数据包发送至所确定的地址;当所述第二随机数值大于等于所述第二预设值时,确定反向测试数据包对应的转移概率,按照所对应的转移概率,发送所述反向测试数据包。可选的,在所述目的卫星确定从所述源卫星到达所述目的卫星的路由信息的步骤之后,还可以包括:所述源卫星确定待传输数据对应的目标路由信息;根据预设的约束条件,在所述目标路由信息中选择传输路径;其中,所述约束条件包括:路径的适应度值、路径的链路剩余带宽、路径的时延中至少一种;利用所述传输路径,传输所述待传输数据。为达到上述目的,本发明实施例还公开了一种卫星网络,包括源卫星、下一跳卫星和目的卫星,其中,所述源卫星,用于根据目的卫星的地址,为N个测试数据包设置初始转移概率,并按照所述初始转移概率,将所述N个测试数据包发送至各自对应的下一跳卫星;其中,所述N大于1,所述转移概率包括测试数据包到达各个下一跳卫星的概率;所述下一跳卫星,用于在接收到测试数据包后,根据所述目的卫星的地址,为所接收到的测试数据包设置新的转移概率,并按照所述新的转移概率,将所接收到的测试数据包发送至各自对应的下一跳卫星,直至达到所述目的卫星;所述目的卫星,用于根据每个测试数据包所记录的到达每个下一跳卫星及目的卫星的时刻,确定所述测试数据包经过的路径及路径的适应度值;根据所确定的每条路径及其适应度值,确定从所述源卫星到达所述目的卫星的路由信息。应用本发明实施例,源卫星发送N个测试数据包至目的卫星,目的卫星根据接收到的、测试数据包记录的到达每个下一跳卫星及目的卫星的时刻,确定测试数据包经过的路径及路径的适应度值;根据所确定的每条路径及其适应度值,确定从所述源卫星到达所述目的卫星的路由信息。由此可见,应用本方案,在卫星网络出现拥塞或者节点故障时,不需要重新计算卫星网络中的全部路由信息,降低了确定路由信息的计算量。当然,实施本发明的任一产品或方法必不一定需要同时达到以上所述的所有优点。附图说明为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。图1为本发明实施例提供的一种卫星网络结构示意图;图2为本发明实施例提供的基于卫星网络的路由确定方法的第一种流程示意图;图3为本发明实施例提供的基于卫星网络的路由确定方法的第二种流程示意图;图4为本发明实施例提供的基于卫星网络的路由确定方法的第三种流程示意图。具体实施方式下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。为了解决上述技术问题,本发明实施例提供了一种基于卫星网络的路由确定方法,该方法可以应用于该卫星网络。卫星网络可以如图1所示,包含多个卫星:卫星101、卫星102……卫星X。下面首先对本发明实施例提供的一种基于卫星网络的路由确定方法进行详细说明。图2为本发明实施例提供的基于卫星网络的路由确定方法的第一种流程示意图,包括:S201:卫星网络中的源卫星根据目的卫星的地址,为N个测试数据包设置初始转移概率,并按照所述初始转移概率,将所述N个测试数据包发送至各自对应的下一跳卫星。其中,所述N大于1,所述转移概率包括测试数据包到达各个下一跳卫星的概率。假设需要确定图2中卫星101—卫星306的路由信息,则卫星101为源卫星,卫星306为目的卫星。卫星101可以预先获取卫星网络中其他卫星的地址,并根据所获取的各卫星的地址,确定从卫星101到卫星306的跳转次数。假设确定出多条路径,比如,路径1:卫星101—卫星102—卫星202—卫星302—卫星306;路径2:卫星101—卫星201—卫星301—卫星306;路径3:卫星101—卫星304—卫星306……路径1中,从卫星101到卫星306的跳转次数为4;路径2中,从卫星101到卫星306的跳转次数为3;路径3中,从卫星101到卫星306的跳转次数为2。可以根据算式1,确定转移概率:其中,i表示当前卫星,k表示下一跳卫星,pik表示从当前卫星i到达下一跳卫星k的转移概率,hopkd表示从下一跳卫星k到达目的卫星d的跳转次数,{n1,n2,n3,n4}表示当前卫星i的全部下一跳卫星的集合。对于卫星101来说,将其确定的转移概率称之为初始转移概率。为了简化说明,假设只确定出上述3条路径,计算初始转移概率:路径1中的下一跳卫星为卫星102,从当前卫星i(卫星101)到达下一跳卫星k(卫星102)的转移概率=(1/3)/(1/3+1/2+1/1)=2/11;路径2中的下一跳卫星为卫星201,从当前卫星i(卫星101)到达下一跳卫星k(卫星201)的转移概率=(1/2)/(1/3+1/2+1/1)=3/11;路径3中的下一跳卫星为卫星304,从当前卫星i(卫星101)到达下一跳卫星k(卫星304)的转移概率=(1/1)/(1/3+1/2+1/1)=6/11。在本实施例中,可以利用蜂群优化策略,卫星101发送N个前向蜜蜂,也就是N个测试数据包。具体的,可以按照卫星101计算出的初始转移概率,将这N个测试数据包发送至各自对应的下一跳卫星。举个简单的例子,假设N=11,则可以将2个测试数据包发送给卫星102,将3个测试数据包发送给卫星201,将6个测试数据包发送给卫星304。需要说明的是,卫星101按照初始转移概率发送N个前向蜜蜂可以是随机的,也就是说,该2、3、6都是约数。在本实施例中,可以为前向蜜蜂(也就是测试数据包)设定生存时长,如果前向蜜蜂在达到该生存时长之前,未能到达下一跳卫星,则该前向蜜蜂自动销毁。另外,前向蜜蜂中可以携带路由表,该路由表中可以如表1所示,需要说明的是,表1可以仅为路由表中的部分内容,并不对前向蜜蜂携带的信息构成限定。比如,前向蜜蜂中还可以携带有离开及到达各个卫星的时刻等其他信息。表1S202:接收到测试数据包的每个下一跳卫星根据所述目的卫星的地址,为所接收到的测试数据包设置新的转移概率,并按照所述新的转移概率,将所接收到的测试数据包发送至各自对应的下一跳卫星,直至达到所述目的卫星。延续上述例子,下一跳卫星102、201、304都可能接收到卫星101发送的测试数据包。以卫星201(路径2)为例进行说明:卫星201接收到测试数据包后,可以根据测试数据包中携带的目的卫星的地址,为其设置新的转移概率。仍根据上述算式1进行计算,这里假设卫星201的下一跳卫星集合中包括卫星301、卫星302和卫星303,从卫星201(当前卫星i)到达卫星301、卫星302和卫星303(下一跳卫星k)的转移概率分别为1/7、2/7、4/7。这里将下一跳卫星确定的转移概率称之为新的转移概率。这样,前向蜜蜂(测试数据包)中携带的路由表可以增加如下内容:表2卫星201将所接收到的前向蜜蜂发送至再下一跳卫星。具体的,可以按照卫星201计算出的新的转移概率,将这些测试数据包发送至各自对应的下一跳卫星。举例来说,假设接收到7个测试数据包,则可以将1个测试数据包发送给卫星301,将2个测试数据包发送给卫星302,将4个测试数据包发送给卫星303。需要说明的是,卫星201按照新的转移概率发送前向蜜蜂可以是随机的,也就是说,该1、2、4都是约数。也就是说,测试数据包每到达一个下一跳卫星,该下一跳卫星为其设置新的转移概率,并按照新的转移概率发送这些测试数据包,直至测试数据包到达目的卫星。S203:目的卫星根据每个测试数据包所记录的到达每个下一跳卫星及目的卫星的时刻,确定所述测试数据包经过的路径及路径的适应度值;根据所确定的每条路径及其适应度值,确定从所述源卫星到达所述目的卫星的路由信息。需要说明的是,测试数据包每到达一个卫星时,记录到达该卫星的时刻,每离开一个卫星时,记录离开该卫星的时刻。假设上述路径1中的测试数据包记录的内容包括:离开卫星101的时刻:2016年12月20日10:00;到达卫星102的时刻:2016年12月20日10:01;离开卫星102的时刻:2016年12月20日10:02;到达卫星202的时刻:2016年12月20日10:03;离开卫星202的时刻:2016年12月20日10:04;到达卫星302的时刻:2016年12月20日10:05;离开卫星302的时刻:2016年12月20日10:06;到达卫星306的时刻:2016年12月20日10:07。假设上述路径2中的测试数据包记录的内容包括:离开卫星101的时刻:2016年12月20日10:00;到达卫星201的时刻:2016年12月20日10:01;离开卫星201的时刻:2016年12月20日10:02;到达卫星301的时刻:2016年12月20日10:03;离开卫星301的时刻:2016年12月20日10:05;到达卫星306的时刻:2016年12月20日10:06。假设上述路径3中的测试数据包记录的内容包括:离开卫星101的时刻:2016年12月20日10:00;到达卫星304的时刻:2016年12月20日10:01;离开卫星304的时刻:2016年12月20日10:02;到达卫星306的时刻:2016年12月20日10:03。根据上述时刻信息,目的卫星便可以确定出测试数据包经过的路径:路径1:卫星101—卫星102—卫星202—卫星302—卫星306;路径2:卫星101—卫星201—卫星301—卫星306;路径3:卫星101—卫星304—卫星306。目的卫星计算每条路径的时延,具体的,可以根据算式2,计算路径的时延:Delaypath(s,d)=∑i∈path(s,d)delay(i,i+1),其中,path(s,d)表示从源卫星s到目的卫星d的路径,Delaypath(s,d)表示从源卫星s到目的卫星d的路径的时延,delay(i,i+1)表示从当前卫星到当前卫星的下一跳卫星的时延。另外,本实施例中的时延可以包括传播时延和排队时延,还可以根据算式3,计算路径的时延:其中,Pd(i,i+1)表示从当前卫星到当前卫星的下一跳卫星的传播时延,Qdi表示等待下一跳卫星接收或处理该测试数据包的排队时延。作为一种实施方式,可以根据路径的时延,确定路径的适应度值,具体的,可以根据算式4,计算路径的适应度值:fitpath(s,d)=1/Delaypath(s,d)其中,path(s,d)表示从源卫星s到目的卫星d的路径,Delaypath(s,d)表示从源卫星s到目的卫星d的路径的时延,fitpath(s,d)表示从源卫星s到目的卫星d的路径的适应度值。或者,作为另一种实施方式,目的卫星可以根据每个测试数据包所记录的到达每个下一跳卫星及目的卫星的时刻、以及所述每个下一跳卫星及目的卫星对应的链路剩余带宽,确定所述测试数据包经过的路径及路径的适应度值。也就是说,可以结合路径的时延及路径的链路剩余带宽,计算路径的适应度值。路径中包含的每一跳子路径(比如路径3中,从卫星101到卫星304,从卫星304到卫星306都可以理解为一跳子路径)对应一个剩余带宽,也可以称之为卫星对应的链路剩余带宽。也就是说,从卫星101到卫星304这一跳子路径对应的剩余带宽,也可以称之为卫星304对应的链路剩余带宽。路径的链路剩余带宽可以由路径中包含的最小的链路剩余带宽决定,具体的,可以利用算式5,确定路径的链路剩余带宽:bik=min{j∈path(s,i)|bj,j+1}其中,bik表示从当前卫星i到下一跳卫星k的链路剩余带宽,path(s,i)表示从源卫星s到当前卫星i的路径,j表示从源卫星s到当前卫星i的路径中任一卫星,bj,j+1表示从卫星j到卫星j的下一跳卫星j+1的链路剩余带宽。可以理解的是,路径适应度值可以反应路径质量,本实施例中,路径适应度值越高,路径质量越好,或者也可以相反,具体不做限定。作为一种实施方式,目的卫星可以根据路径的适应度值,对所确定的各条路径进行排序;根据排序结果,选择M条目标路径,所述M条目标路径组成从所述源卫星到达所述目的卫星的路由信息;其中,所述M小于所确定的路径的数量。举例来说,假设上述3条路径中,路径1的适应度值为40,路径2的适应度值为50,路径3的适应度值为90,对这3条路径进行排序,具体的,可以按照适应度值从大到小的顺序进行排序,或者,也可以相反,具体不做限定。如果按照适应度值从大到小的顺序进行排序,可以选择排在前面的M条路径作为目标路径。M可以为全部路径数量的一半,也就是说,可以选择排在前面的一半路径作为目标路径,或者,M也可以为其他,比如全部路径数量的1/3等,具体不做限定。该M条目标路径组成从源卫星到达目的卫星的路由信息,这样便获得了从卫星101到卫星306的路由信息。应用本发明图2所示实施例,源卫星发送N个测试数据包至目的卫星,目的卫星根据接收到的、测试数据包记录的到达每个下一跳卫星及目的卫星的时刻,确定测试数据包经过的路径及路径的适应度值;根据所确定的每条路径及其适应度值,确定从所述源卫星到达所述目的卫星的路由信息。由此可见,应用本方案,在卫星网络出现拥塞或者节点故障时,不需要重新计算卫星网络中的全部路由信息,降低了确定路由信息的计算量。另外,在图1所示实施例中,结合路径中包含的跳转次数、路径时延、链路剩余带宽,可以确定出更高质量的路由信息。作为一种实施方式,目的卫星确定从所述源卫星到达所述目的卫星的路由信息的具体流程可以如图3所示,包括:S301:目的卫星判断所确定的每条路径中,是否存在交叉卫星。如果是,执行S302。根据上面描述,目的卫星可以根据测试数据包中携带的时刻信息,确定出测试数据包经过的路径。假设目的卫星确定出的路径包括路径4和路径5,路径4:卫星101—卫星102—卫星202—卫星302—卫星303—卫星304—卫星404—卫星405—卫星406—卫星306;路径5:卫星101—卫星201—卫星301—卫星401—卫星402—卫星302—卫星303—卫星304—卫星305—卫星306。其中,路径4和路径5中存在交叉卫星302,执行S302:将所述交叉卫星对应的至少两条路径进行重组,得到至少一条新路径。将路径4和路径5进行重组,具体的,可以为交叉卫星为分界点,将每条路径切分为两个路径片段,也就是得到了4个路径片段,将得到的这4个路径片段进行重组,可以得到一条新的路径:卫星101—卫星102—卫星202—卫星302—卫星303—卫星304—卫星305—卫星306。path(s,d)_4S:101102202302303304404405406D:306path(s,d)_5S:101201301401402302303304305D:306path(s,d)_new:S:101102202302303304305D:306S303:确定所述新路径的适应度值。具体的,可以利用上述算式4计算该新路径的适应度值。S304:针对所述交叉卫星对应的每条路径,判断其适应度值是否小于所述新路径的适应度值;如果是,执行S305。S305:将该路径替换为所述新路径。假设路径4的适应度值为60,路径5的适应度值为70,计算得到该新路径的适应度值为80;该新路径的适应度值大于路径4和路径5的适应度值,将该新路径替换掉路径4和路径5。也就是说,在确定的从卫星101到卫星306的路由信息中,将路径4和路径5删除,并增加该新路径。应用本发明图3所示实施例,在所确定出的路径中进行重组筛选,能够确定出高质量的路由信息。图4为本发明实施例提供的基于卫星网络的路由确定方法的第三种流程示意图,本发明图4所示实施例在本发明图2所示实施例的基础上,在S203之后,增加如下步骤:S204:目的卫星将接收到的测试数据包确定为反向测试数据包,并根据所述源卫星的地址,发送所述反向测试数据包。S205:每个下一跳卫星或者源卫星接收到所述反向测试数据包后,根据所述反向测试数据包中携带的所述路由信息,更新自身存储的路由信息。利用蜂群优化策略,前向蜜蜂到达目的卫星后,目的卫星将接收到的前向蜜蜂作为反向蜜蜂发送回源卫星。反向蜜蜂中携带目的卫星确定出的路由信息,反向蜜蜂每到达一个卫星,该卫星根据反向蜜蜂携带的路由信息更新自身存储的路由信息。这样,卫星网络中的卫星能够及时更新路由信息。作为一种实施方式,目的卫星可以在确定出的路由信息中选择路径,对反向蜜蜂进行路径设定,使反向蜜蜂按照为目的卫星为其确定的路径返回源卫星。应用这种实施方式,可能导致多个反向蜜蜂到达同一个下一跳卫星,进而导致网络拥堵。因此,也可以采用另一种实施方式:目的卫星确定一个第一随机数值;当所述第一随机数值大于等于第一预设值时,根据所述路由信息,确定下一跳卫星的地址,将所述反向测试数据包发送至所确定的地址;当所述第一随机数值小于所述第一预设值时,确定反向测试数据包对应的转移概率,按照所对应的转移概率,发送所述反向测试数据包;每个下一跳卫星接收到所述反向测试数据包后,确定一个第二随机数值;当所述第二随机数值大于等于第二预设值时,根据所述路由信息,确定下一跳卫星的地址,将所述反向测试数据包发送至所确定的地址;当所述第二随机数值小于所述第二预设值时,确定反向测试数据包对应的转移概率,按照所对应的转移概率,发送所述反向测试数据包。为了区分描述,这里将目的卫星确定的随机数值称为第一随机数值,将下一跳卫星确定的随机数值称为第二随机数值,将第一随机数值对应的预设值称为第一预设值,将第二随机数值对应的预设值称为第二预设值。举例来说,假设目的卫星接收到前向蜜蜂(测试数据包)A,前向蜜蜂A从源卫星到达目的卫星的路径为:卫星101—卫星304—卫星306。目的卫星将前向蜜蜂A确定为反向蜜蜂(反向测试数据包)A1。目的卫星确定第一预设数值为常数R0,目的卫星确定第一随机数值为R:如果R<R0,则目的卫星根据前向蜜蜂A从源卫星到达目的卫星的路径,确定反向蜜蜂A1的下一跳卫星的地址为卫星304的地址,将反向蜜蜂A1发送至该地址,也就是发送至卫星304。如果R≥R0,则目的卫星确定反向蜜蜂A1对应的转移概率,也就是前向蜜蜂A中携带的转移概率,根据该转移概率,发送反向蜜蜂A1。假设卫星304接收到反向蜜蜂A1,卫星304确定第二预设数值为常数P0,卫星304确定第二随机数值为P:如果P<P0,则卫星304根据前向蜜蜂A从源卫星到达目的卫星的路径,确定反向蜜蜂A1的下一跳卫星的地址为卫星101的地址,也就是源卫星的地址,将反向蜜蜂A1发送至该地址,也就是发送至源卫星101。如果P≥P0,则卫星304确定反向蜜蜂A1对应的转移概率,也就是前向蜜蜂A中携带的转移概率,根据该转移概率,发送反向蜜蜂A1。应用这种实施方式,可以避免多个反向蜜蜂到达同一个下一跳卫星,也就避免了网络拥堵。应用上述实施例确定出路由信息后,可以利用确定出的路由信息进行数据传输:源卫星确定待传输数据对应的目标路由信息;根据预设的约束条件,在所述目标路由信息中选择传输路径;其中,所述约束条件包括:路径的适应度值、路径的链路剩余带宽、路径的时延中至少一种;利用所述传输路径,传输所述待传输数据。可以理解的是,应用上述实施例,可以确定出各卫星之间的路由信息,假设现在需要将数据从卫星101传输至卫星306,确定待传输数据对应的目标路由信息,也就是从卫星101到卫星306的路由信息。根据上面描述,路由信息中包括多条路径。从这多条路径中选择传输路径。约束条件可以包括路径的适应度值、路径的链路剩余带宽、路径的时延中至少一种,这里假设包含这三种,作为一种实施方式,约束条件可以如算式7所示:max{fitpath(s,d)}Delaypath(s,d)≤Dthmin{i∈path(s,d)|Bw(i,i+1)}≥Bth算式7表示,选择的传输路径要满足三个条件:1、在目标路径信息的所有路径中,适应度值最大;2、时延小于等于预设值Dth,Dth可以根据实际情况进行设定,比如,可以为可容忍的最大时延;3、链路剩余带宽大于等于预设值Bth,Bth可以根据实际情况进行设定,比如,可以为进行数据传输所需的最小带宽。利用选择出的传输路径,将待传输数据从卫星101传输至卫星306。应用本方案,在卫星网络出现拥塞或者节点故障时,不需要重新计算卫星网络中的全部路由信息,降低了确定路由信息的计算量。另外,在本方案中,结合路径中包含的跳转次数、路径时延、链路剩余带宽,可以确定出更高质量的路由信息。本发明实施例还提供一种卫星网络,如图1所示,包含多个卫星:卫星101、卫星102……卫星X。假设需要确定图2中卫星101-卫星306的路由信息,则卫星101为源卫星,卫星306为目的卫星。源卫星,用于根据目的卫星的地址,为N个测试数据包设置初始转移概率,并按照所述初始转移概率,将所述N个测试数据包发送至各自对应的下一跳卫星;其中,所述N大于1,所述转移概率包括测试数据包到达各个下一跳卫星的概率。下一跳卫星,用于在接收到测试数据包后,根据所述目的卫星的地址,为所接收到的测试数据包设置新的转移概率,并按照所述新的转移概率,将所接收到的测试数据包发送至各自对应的下一跳卫星,直至达到所述目的卫星;目的卫星,用于根据每个测试数据包所记录的到达每个下一跳卫星及目的卫星的时刻,确定所述测试数据包经过的路径及路径的适应度值;根据所确定的每条路径及其适应度值,确定从所述源卫星到达所述目的卫星的路由信息。在本实施例中,目的卫星,还可以用于根据每个测试数据包所记录的到达每个下一跳卫星及目的卫星的时刻、以及所述每个下一跳卫星及目的卫星对应的链路剩余带宽,确定所述测试数据包经过的路径及路径的适应度值。在本实施例中,目的卫星,还可以用于根据路径的适应度值,对所确定的各条路径进行排序;根据排序结果,选择M条目标路径,所述M条目标路径组成从所述源卫星到达所述目的卫星的路由信息;其中,所述M小于所确定的路径的数量。在本实施例中,目的卫星,还可以用于判断所确定的每条路径中,是否存在交叉卫星;如果是,将所述交叉卫星对应的至少两条路径进行重组,得到至少一条新路径;确定所述新路径的适应度值;针对所述交叉卫星对应的每条路径,判断其适应度值是否小于所述新路径的适应度值;如果是,将该路径替换为所述新路径。在本实施例中,目的卫星,还可以用于将接收到的测试数据包确定为反向测试数据包,并根据所述源卫星的地址,发送所述反向测试数据包;下一跳卫星或者源卫星,还用于接收到所述反向测试数据包后,根据所述反向测试数据包中携带的所述路由信息,更新自身存储的路由信息。在本实施例中,目的卫星,还可以用于确定一个第一随机数值;当所述第一随机数值小于第一预设值时,根据所述路由信息,确定下一跳卫星的地址,将所述反向测试数据包发送至所确定的地址;当所述第一随机数值大于等于所述第一预设值时,确定反向测试数据包对应的转移概率,按照所对应的转移概率,发送所述反向测试数据包;下一跳卫星,还可以用于在接收到所述反向测试数据包后,确定一个第二随机数值;当所述第二随机数值小于第二预设值时,根据所述路由信息,确定下一跳卫星的地址,将所述反向测试数据包发送至所确定的地址;当所述第二随机数值大于等于所述第二预设值时,确定反向测试数据包对应的转移概率,按照所对应的转移概率,发送所述反向测试数据包。在本实施例中,源卫星,还可以用于确定待传输数据对应的目标路由信息;根据预设的约束条件,在所述目标路由信息中选择传输路径;其中,所述约束条件包括:路径的适应度值、路径的链路剩余带宽、路径的时延中至少一种;利用所述传输路径,传输所述待传输数据。应用本发明图1所示实施例,源卫星发送N个测试数据包至目的卫星,目的卫星根据接收到的、测试数据包记录的到达每个下一跳卫星及目的卫星的时刻,确定测试数据包经过的路径及路径的适应度值;根据所确定的每条路径及其适应度值,确定从所述源卫星到达所述目的卫星的路由信息。由此可见,应用本方案,在卫星网络出现拥塞或者节点故障时,不需要重新计算卫星网络中的全部路由信息,降低了确定路由信息的计算量。另外,在图1所示实施例中,结合路径中包含的跳转次数、路径时延、链路剩余带宽,可以确定出更高质量的路由信息。需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。本说明书中的各个实施例均采用相关的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于装置实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。本领域普通技术人员可以理解实现上述方法实施方式中的全部或部分步骤是可以通过程序来指令相关的硬件来完成,所述的程序可以存储于计算机可读取存储介质中,这里所称得的存储介质,如:ROM/RAM、磁碟、光盘等。以上所述仅为本发明的较佳实施例而已,并非用于限定本发明的保护范围。凡在本发明的精神和原则之内所作的任何修改、等同替换、改进等,均包含在本发明的保护范围内。当前第1页1 2 3 
当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1