星地间数据传输方法及装置转让专利

申请号 : CN202010065077.2

文献号 : CN111277319A

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 王燕敏马天琦李斌任鹏王超陆洲

申请人 : 中国电子科技集团公司电子科学研究院中国电子科技集团公司第二十九研究所

摘要 :

本发明提出了一种星地间数据传输方法及装置,可以用于低轨微小卫星与地面站之间基于同一发送与接收过程实现多可靠性等级的综合数据传输,传输复杂度低。方法包括:根据卫星与地面站间需传输的应用数据类型以及星上发送缓存区大小,确定数据包与控制包结构;卫星/地面站基于不同类型数据可靠性要求与优先级,进行数据包封装,按需设置重传标志,统一存储到发送缓存区并发送;地面站/卫星接收数据包并解析,检测获取需重传丢失数据包信息;卫星/地面站发送缓存区中所有数据包全部发出后,启动自适应确认与重传过程;地面站/卫星随之启动自适应确认与重传过程,并基于需重传丢失数据包信息,与发端配合完成数据包自适应确认与重传。

权利要求 :

1.一种星地间数据发送方法,其特征在于,包括:根据预设要求,确定待发送数据的包结构并进行数据封装;

将封装后的所述待发送数据存储到发送缓存区并发送;

其中,所述数据发送方法基于统一的发送和接收处理过程,在进行数据封装时,包括设置所述待发送数据的重传标志,以基于所述重传标志对所述待发送数据中丢失的数据包进行确认与重传。

2.根据权利要求1所述的星地间数据发送方法,其特征在于,所述根据预设要求,确定待发送数据的包结构并进行数据封装,包括:根据所述待发送数据的类型和所述发送缓存区的容量,确定所述待发送数据的数据包和控制包的包结构,所述包结构采用多层次的数据包编号信息字段;

基于所述数据包的包结构以及所述待发送数据的可靠性和优先级要求,对所述待发送数据进行封装,以形成所述数据包。

3.根据权利要求2所述的星地间数据发送方法,其特征在于,所述将封装后的所述待发送的数据存储到发送缓存区并发送包括:将封装后的所述数据包存储至所述发送缓存区;

按顺序发送所述数据包,当所述数据包全部发出后,生成所述控制包并发送。

4.一种星地间数据发送装置,其特征在于,包括:发送控制子模块,用于根据预设要求,确定待发送数据的包结构;

数据包封装子模块:用于基于所述包结构对所述待发送数据进行数据封装;

数据包发送子模块,用于将封装后的所述待发送数据存储到发送缓存区并发送;

其中,数据发送方法基于统一的发送和接收处理过程,在所述数据包封装子模块对所述待发送数据进行数据封装时,所述发送控制子模块用于设置所述待发送数据的重传标志,以基于所述重传标志对所述待发送数据中丢失的数据包进行确认与重传。

5.根据权利要求4所述的星地间数据发送装置,其特征在于,所述发送控制子模块,用于根据所述待发送数据的类型和所述发送缓存区的容量,确定所述待发送数据的数据包和控制包的包结构,所述包结构采用多层次的数据包编号信息字段;

所述数据包封装子模块,用于基于所述数据包的包结构和所述待发送数据的可靠性和优先级要求,对所述待发送数据进行封装,以形成所述数据包。

6.根据权利要求5所述的星地间数据发送装置,其特征在于,所述发送控制子模块具体用于:将封装后的所述数据包存储至所述发送缓存区;

按顺序发送所述数据包,当所述数据包全部发出后,生成所述控制包并发送。

7.一种星地间数据接收方法,其特征在于,所述数据接收方法基于统一的发送和接收处理过程,所述接收方法包括:接收数据包;

解析所述数据包,基于所述数据包中设置的重传标志获取重传丢失数据包信息,以基于所述重传丢失数据包信息对所述数据包中丢失的数据包进行确认与重传;

将解析所述数据包获取的应用数据发送至应用系统。

8.根据权利要求7所述的星地间数据接收方法,其特征在于,所述数据包根据待发送数据的类型和发送缓存区的容量确定的包结构,所述包结构采用多层次的数据包编号信息字段。

9.一种星地间数据接收装置,其特征在于,数据接收方法基于统一的发送和接收处理过程,所述接收装置包括:数据包接收子模块,用于接收数据包;

数据包解析子模块,用于解析所述数据包,基于所述数据包中设置的重传标志获取重传丢失数据包信息;

接收控制子模块,用于基于所述重传丢失数据包信息对所述数据包中丢失的数据包进行确认与重传;

数据分发子模块,用于将解析所述数据包获取的应用数据发送至应用系统。

10.根据权利要求9所述的星地间数据接收装置,其特征在于,所述数据包根据待发送数据的类型和发送缓存区的容量确定包结构,所述包结构采用多层次的数据包编号信息字段。

说明书 :

星地间数据传输方法及装置

技术领域

[0001] 本发明涉及通信技术领域,尤其涉及一种星地间数据传输方法及装置。

背景技术

[0002] 目前星地数据传输主要是基于CCSDS(Consultative Committee for Space Data System)、TCP/IP等协议标准进行。
[0003] 其中,CCSDS空间链路传输协议标准是针对各类航天器数据传输需求制定的。在CCSDS协议标准中,CFDP(CCSDS File Delivery Protocol)协议是针对文件传输应用提出的,能够实现可靠的文件传输及“尽力交付”的不可靠文件传输功能。与不可靠文件传输模式相比,CFDP可靠文件传输模式通过增加确认重传机制实现文件的可靠传输。
[0004] TCP/IP是目前互联网使用的最基本的通信协议标准。通过引入相关增强或加速技术,TCP/IP协议可适应空间链路特点,实现基于空间链路的数据传输。在TCP/IP协议标准中,TCP协议与UDP协议分别实现可靠数据传输与“尽力交付”的不可靠数据传输功能。其中,TCP协议也是基于确认重传机制实现的可靠数据传输。
[0005] 在面向微小卫星综合数据星地传输需求时,上述技术方案存在以下缺陷:
[0006] 1)在CCSDS与TCP/IP协议标准中,可靠传输模式与“尽力交付”的不可靠传输模式独立设计,为实现可靠性要求不同的多类型数据的传输,需针对不同类型数据分别进行发送管理,处理复杂度较高,这对于星上资源有限的微小卫星而言,会挤占其宝贵的处理资源;
[0007] 2)为对不同类型数据分别进行发送管理,需要为不同类型数据分配独立的发送处理和缓存区资源,由于各类数据的产生具有一定的随机性,基于独立在轨运行的微小卫星平台做到预先设定的资源调度策略与各类数据传输需求完全匹配难度较大,影响星上资源利用效率及微小卫星平台整体效能的提升。

发明内容

[0008] 本发明要解决的技术问题是如何提高星地之间数据传输的整体性能,本发明提出了一种星地间数据传输方法及装置。
[0009] 根据本发明实施例的星地间数据发送方法,包括:
[0010] A10,根据预设要求,确定待发送数据的包结构并进行数据封装;
[0011] A20,将封装后的所述待发送数据存储到发送缓存区并发送;
[0012] 其中,所述数据发送方法基于统一的发送和接收处理过程,在进行数据封装时,包括设置所述待发送数据的重传标志,以基于所述重传标志对所述待发送数据中丢失的数据包进行确认与重传。
[0013] 根据本发明实施例的星地间数据发送方法,可以有选择性地针对可靠性要求高的应用数据丢失数据包进行标记与重传,实现多可靠性等级星地综合数据传输,提高了星地间数据传输的可靠性。
[0014] 根据本发明的一些实施例,所述根据预设要求,确定待发送数据的包结构并进行数据封装,包括:
[0015] 根据所述待发送数据的类型和所述发送缓存区的容量,确定所述待发送数据的数据包和控制包的包结构,所述包结构采用多层次的数据包编号信息字段;
[0016] 基于所述数据包的包结构以及所述待发送数据的可靠性和优先级要求,对所述待发送数据进行封装,以形成所述数据包。
[0017] 在本发明的一些实施例中,所述将封装后的所述待发送的数据存储到发送缓存区并发送包括:
[0018] 将封装后的所述数据包存储至所述发送缓存区;
[0019] 按顺序发送所述数据包,当所述数据包全部发出后,生成所述控制包并发送。
[0020] 根据本发明实施例的星地间数据发送装置,包括:
[0021] 发送控制子模块,用于根据预设要求,确定待发送数据的包结构;
[0022] 数据包封装子模块:用于基于所述包结构对所述待发送数据进行数据封装;
[0023] 数据包发送子模块,用于将封装后的所述待发送数据存储到发送缓存区并发送;
[0024] 其中,数据发送方法基于统一的发送和接收处理过程,在所述数据包封装子模块对所述待发送数据进行数据封装时,所述发送控制子模块用于设置所述待发送数据的重传标志,以基于所述重传标志对所述待发送数据中丢失的数据包进行确认与重传。
[0025] 根据本发明实施例的星地间数据发送装置,可以有选择性地针对可靠性要求高的应用数据丢失数据包进行标记与重传,实现多可靠性等级星地综合数据传输,提高了星地间数据传输的可靠性。
[0026] 根据本发明的一些实施例,所述发送控制子模块,用于根据所述待发送数据的类型和所述发送缓存区的容量,确定所述待发送数据的数据包和控制包的包结构,所述包结构采用多层次的数据包编号信息字段;
[0027] 所述数据包封装子模块,用于基于所述数据包的包结构和所述待发送数据的可靠性和优先级要求,对所述待发送数据进行封装,以形成所述数据包。
[0028] 在本发明的一些实施例中,所述发送控制子模块具体用于:
[0029] 将封装后的所述数据包存储至所述发送缓存区;
[0030] 按顺序发送所述数据包,当所述数据包全部发出后,生成所述控制包并发送。
[0031] 根据本发明实施例的星地间数据接收方法,所述数据接收方法基于统一的发送和接收处理过程,所述接收方法包括:
[0032] B10,接收数据包;
[0033] B20,解析所述数据包,基于所述数据包中设置的重传标志获取重传丢失数据包信息,以基于所述重传丢失数据包信息对所述数据包中丢失的数据包进行确认与重传;
[0034] B30,将解析所述数据包获取的应用数据发送至应用系统。
[0035] 根据本发明实施例的星地间数据接收方法,可以有选择性地针对可靠性要求高的应用数据丢失数据包进行标记与重传,实现多可靠性等级星地综合数据传输,提高了星地间数据传输的可靠性。
[0036] 根据本发明的一些实施例,所述数据包根据待发送数据的类型和发送缓存区的容量确定的包结构,所述包结构采用多层次的数据包编号信息字段
[0037] 根据本发明实施例的星地数据接收装置,数据接收方法基于统一的发送和接收处理过程,所述接收装置包括:
[0038] 数据包接收子模块,用于接收数据包;
[0039] 数据包解析子模块,用于解析所述数据包,基于所述数据包中设置的重传标志获取重传丢失数据包信息;
[0040] 接收控制子模块,用于基于所述重传丢失数据包信息对所述数据包中丢失的数据包进行确认与重传;
[0041] 数据分发子模块,用于将解析所述数据包获取的应用数据发送至应用系统。
[0042] 根据本发明实施例的星地数据接收装置,可以有选择性地针对可靠性要求高的应用数据丢失数据包进行标记与重传,实现多可靠性等级星地综合数据传输,提高了星地间数据传输的可靠性。
[0043] 根据本发明的一些实施例,所述数据包根据待发送数据的类型和发送缓存区的容量确定包结构,所述包结构采用多层次的数据包编号信息字段

附图说明

[0044] 图1为根据本发明实施例的微小卫星星地间数据传输场景示意图;
[0045] 图2为根据本发明实施例的星地间数据发送方法流程图;
[0046] 图3为根据本发明实施例的星地间数据传输系统组成示意图;
[0047] 图4为根据本发明实施例的综合数据星地间传输方法的典型执行系统示意图;
[0048] 图5为根据本发明实施例的发送执行模块与接收执行模块组成示意图;
[0049] 图6为根据本发明实施例的星地间数据接收方法流程图;
[0050] 图7为根据本发明实施例的星地间数据传输的完整过程示意图;
[0051] 图8为根据本发明实施例的数据包结构示意图;
[0052] 图9为根据本发明实施例的NAK包结构示意图;
[0053] 图10为根据本发明实施例的丢失数据包位置的四种基本分布样式示意图;
[0054] 图11为根据本发明实施例的星地间数据传输场景示意图;
[0055] 图12为根据本发明实施例的星地数据传输过程示意图。

具体实施方式

[0056] 为更进一步阐述本发明为达成预定目的所采取的技术手段及功效,以下结合附图及较佳实施例,对本发明进行详细说明如后。
[0057] 目前把重量在百公斤级的卫星称为微小卫星。由于其成本低、研发周期短、支持灵活部署与快速更新换代的优势,微小卫星在教育、科研、遥感、环境监测等领域具有广泛的应用前景。为完成特定的任务,微小卫星平台需要与地面站进行数据交互,将在轨获取和生成的信息下发至地面站,并从地面站获取新的任务相关信息。
[0058] 如图1所示。微小卫星星地间数据传输可直接利用其与地面站之间的星地链路进行,也可以通过GSO(Geosynchronous Orbit)或其他中低轨卫星的中继链路进行。
[0059] 除通信专用的微小卫星外,在面向其他应用场景的微小卫星系统中,星地数据传输是保障微小卫星平台正常在轨完成特定应用任务(如监测、技术试验等)的一项必要功能。微小卫星平台向地面站传输的数据包括卫星状态信息、在轨获取与生成的各类任务数据(如监测数据、技术试验数据)等,地面站向微小卫星传输的数据包括卫星管理数据、更新的任务数据(如技术试验地面生成数据)等。由于体积、重量、功耗等限制,微小卫星平台配置的各类处理和存储资源往往比较有限,需要在各类功能间合理分配,尽量提高资源利用率,从而提升微小卫星系统整体效能。
[0060] 本发明的目的是面向低轨微小卫星的星地数据传输需求,基于低轨微小卫星成本低、研发周期短、星上资源有限的特点,提出一种自适应的星地间数据传输方法及装置,基于同一发送与接收过程实现多可靠性等级的星地综合数据传输。
[0061] 如图2所示,根据本发明实施例的星地间数据发送方法,包括:
[0062] A10,根据预设要求,确定待发送数据的包结构并进行数据封装;
[0063] A20,将封装后的待发送数据存储到发送缓存区并发送;
[0064] 其中,数据发送方法基于统一的发送和接收处理过程,在进行数据封装时,包括设置待发送数据的重传标志,以基于重传标志对待发送数据中丢失的数据包进行确认与重传。需要说明的是,重传标志可以用于表示数据包是否需要重传。
[0065] 根据本发明实施例的星地间数据发送方法,可以有选择性地针对可靠性要求高的应用数据丢失数据包进行标记与重传,实现多可靠性等级星地综合数据传输,提高了星地间数据传输的可靠性。
[0066] 根据本发明的一些实施例,根据预设要求,确定待发送数据的包结构并进行数据封装,包括:
[0067] 根据待发送数据的类型和发送缓存区的容量,确定待发送数据的数据包和控制包的包结构,包结构采用多层次的数据包编号信息字段;
[0068] 基于数据包的包结构以及待发送数据的可靠性和优先级要求,对待发送数据进行封装,以形成数据包。
[0069] 在本发明的一些实施例中,将封装后的待发送的数据存储到发送缓存区并发送包括:
[0070] 将封装后的数据包存储至发送缓存区;
[0071] 按顺序发送数据包,当数据包全部发出后,生成控制包并发送。
[0072] 需要说明的是,为实现不同可靠性等级的数据传输,在提出的综合数据星地传输方法中,一个完整的星地数据传输过程包含两个阶段,一是数据包传输过程,二是基于延时否定确认的自适应确认与重传过程,如图7所示。为完成自适应确认与重传过程,发送的控制包有NAK、EOF、ACK(EOF)、FIN与ACK(FIN)。NAK中包含丢失的数据包信息,EOF与ACK(EOF)、FIN与ACK(FIN)分别用于数据包传输过程结束确认、一个完整的星地数据传输过程结束确认。
[0073] 为实现星地间综合数据传输,如图8所示,数据包的包结构中的控制字段应包括数据类型、传输模式、数据包编号。其中,数据类型字段用于区分不同类型应用数据,该字段所占比特数由需传输应用数据类型的数量决定;传输模式用于区分不同等级可靠性要求,即丢失是否需要重传;数据包编号用于接收端应用数据恢复,以及丢失数据包信息检测等处理。传输模式字段取值主要包括两种:一是要求重传,二是不要求重传。
[0074] 数据包编号字段可以基于不同数据类型、不同可靠性要求以及发送缓存区大小,采用多层次结构。例如,数据包编号字段可以由下面5部分组成:
[0075] a)该数据包在所有发送数据包中的编号,称为A编号;
[0076] b)该数据包在同类型应用数据包中的编号,称为B编号;
[0077] c)该数据包在所有丢失需重传的数据包中的编号,称为C编号;
[0078] d)当前发送缓存区中所有数据包情况,包括当前缓存区第一个数据包的A编号及当前缓存区总的数据包个数,分别记为As、Nt;
[0079] e)当前发送缓存区中丢失需重传的数据包情况,包括当前缓存区第一个丢失需重传数据包的C编号及当前缓存区丢失需重传的总的数据包个数,分别记为Cs、Nr。
[0080] 其中,结合图7和图8所示,Nt、Nr所占比特数由发送缓存区大小决定。上述数据包结构中的d)、e)字段也可全部或部分转移到控制包(EOF包)中,以降低每个数据包的控制字段开销;或者d)、e)字段在每个数据包以及控制包(EOF包)中均加以标注,以应对极端恶劣信道条件。
[0081] 为完成自适应确认与重传,与上述数据包结构相配合,每一个NAK包中应标注需重传的丢失数据包信息,具体字段应包括需重传数据包的A编号取值区间[A1,A2],及该区间需重传数据包的个数信息R,如图9所示。
[0082] 如图5所示,根据本发明实施例的星地间数据发送装置,包括:发送控制子模块、数据包封装子模块和数据包发送子模块。
[0083] 其中,发送控制子模块用于根据预设要求,确定待发送数据的包结构;数据包封装子模块用于基于包结构对待发送数据进行数据封装;数据包发送子模块,用于将封装后的待发送数据存储到发送缓存区并发送;
[0084] 其中,数据发送方法基于统一的发送和接收处理过程,在数据包封装子模块对待发送数据进行数据封装时,发送控制子模块用于设置待发送数据的重传标志,以基于所述重传标志对所述待发送数据中丢失的数据包进行确认与重传。
[0085] 根据本发明实施例的星地间数据发送装置,可以有选择性地针对可靠性要求高的应用数据丢失数据包进行标记与重传,实现多可靠性等级星地综合数据传输,提高了星地间数据传输的可靠性。
[0086] 需要说明的是,为了完成星地间数据传输,星地数据传输系统需要完成数据发送功能和数据接收功能。按照OSI(Open System Interconnect)参考模型,星地数据传输系统可主要划分为物理层、链路层、网络层、传输层、应用层。如图1所示,微小卫星星地数据传输路径可抽象为点到点链路,基本不涉及网络层功能。因此,从横向和纵向两个维度划分,微小卫星星地数据传输系统组成如图3所示:
[0087] 1)横向:星地数据传输系统星上部分和地面部分均由发送模块、接收模块组成;
[0088] 2)纵向:发送模块与接收模块均由物理层子模块、链路层子模块、传输层子模块以及应用层子模块组成。
[0089] 在本发明的一些实施例中,发送控制子模块具体用于:将封装后的数据包存储至发送缓存区;按顺序发送数据包,当数据包全部发出后,生成控制包并发送。
[0090] 如图4所示。执行系统由发送执行模块和接收执行模块组成。其中,发送执行模块实现星地数据传输系统发送模块的传输层子模块功能及应用层子模块部分功能,接收执行模块实现星地数据传输系统接收模块的传输层子模块功能及应用层子模块部分功能。所提综合数据星地传输方法的发送执行模块与接收执行模块运行在物理层子模块与链路层子模块构成的下层传输通道上。
[0091] 本发明中,在自适应确认与重传机制中,仅有选择性地针对可靠性要求高的应用数据丢失数据包进行重传。
[0092] 具体地,在发送执行模块中,数据包封装子模块将数据获取子模块从应用系统获取的不同类型数据,基于可靠性要求与优先级,进行数据包封装,并依次统一存储在发送缓存区中。当发送缓存区存满时,由数据包发送子模块将缓存区中的数据包按顺序依次发送。在进行数据包封装时,数据包封装子模块根据来自发送控制子模块的控制信息,在数据包控制字段针对丢失需重传的数据包标注重传需求信息。发送缓存区所有数据包均发送完成后,发送控制子模块生成并发送EOF包,进入自适应确认与重传过程。
[0093] 根据本发明的一些实施例,发送控制子模块可以用于根据待发送数据的类型和发送缓存区的容量,确定待发送数据的数据包和控制包的包结构,包结构采用多层次的数据包编号信息字段;
[0094] 数据包封装子模块可以用于基于数据包的包结构和待发送数据的可靠性和优先级要求,对待发送数据进行封装,以形成数据包。
[0095] 整个星地传输过程以该传输过程启动时,发送缓存区中存储的数据包集合为操作对象。在微小卫星系统中,考虑到微小卫星平台资源的限制,发送缓存区大小以星上可为星地数据传输功能分配的发送缓存区资源为基准设置。
[0096] 如图6所示,根据本发明实施例的星地间数据接收方法,数据接收方法基于统一的发送和接收处理过程,接收方法包括:
[0097] B10,接收数据包;
[0098] B20,解析数据包,基于数据包中设置的重传标志获取重传丢失数据包信息,以基于所述重传丢失数据包信息对所述数据包中丢失的数据包进行确认与重传;
[0099] B30,将解析数据包获取的应用数据发送至应用系统。
[0100] 根据本发明实施例的星地间数据接收方法,可以有选择性地针对可靠性要求高的应用数据丢失数据包进行标记与重传,实现多可靠性等级星地综合数据传输,提高了星地间数据传输的可靠性。
[0101] 根据本发明的一些实施例,数据包根据待发送数据的类型和发送缓存区的容量确定的包结构,包结构采用多层次的数据包编号信息字段
[0102] 需要说明的是,数据包信息是基于数据包编号进行的。具体地,需重传丢失数据包信息主要借助数据包A编号和C编号相关信息获取。
[0103] 丢失数据包位置的基本分布样式包括4种,如图10中(a)、(b)、(c)、(d)所示,其他样式均可分解为多种4种基本分布样式的组合。需要注意的是,图10中的丢失数据包不一定是需重传的数据包,而所提方法中主要检测并反馈需重传的丢失数据包信息,但需重传丢失数据包信息的检测与反馈可借助图10进行。
[0104] 需重传丢失数据包信息的检测及反馈方法具体如下:
[0105] a)根据数据包解析结果,统计接收数据包的A编号和C编号相关信息;
[0106] b)基于所有接收到的数据包的A编号、C编号以及As、Nt、Cs、Nr,检测本次数据包传输过程所有需重传的丢失数据包,并判定所有需重传丢失数据包依次形成的基本位置分布样式P1,P2,…,Pm,…,PM,以及每个位置分布样式中所包含的需重传丢失数据包个数R1,R2,…,Rm,…,RM;
[0107] c)分别针对P1,P2,…,Pm,…,PM,生成M个NAK包,其中,第m个NAK包中标注的需重传丢失数据包信息为:
[0108] Pm中包含的需重传丢失数据包A编号取值区间[Am1,Am2];
[0109] Pm中包含的需重传的丢失数据包个数Rm。
[0110] 注意到,类似Nr,Rm所占比特数也由发送缓存区大小决定。
[0111] 如图5所示,根据本发明实施例的星地数据接收装置,数据接收方法基于统一的发送和接收处理过程,接收装置包括:数据包接收子模块、数据包解析子模块和数据分发子模块。
[0112] 其中,数据包接收子模块用于接收数据包;
[0113] 数据包解析子模块用于解析数据包,基于数据包中设置的重传标志获取重传丢失数据包信息;
[0114] 接收控制子模块,用于基于所述重传丢失数据包信息对所述数据包中丢失的数据包进行确认与重传;
[0115] 数据分发子模块用于将解析数据包获取的应用数据发送至应用系统。
[0116] 根据本发明实施例的星地数据接收装置,可以有选择性地针对可靠性要求高的应用数据丢失数据包进行标记与重传,实现多可靠性等级星地综合数据传输,提高了星地间数据传输的可靠性。
[0117] 根据本发明的一些实施例,所述数据包根据待发送数据的类型和发送缓存区的容量确定包结构,所述包结构采用多层次的数据包编号信息字段
[0118] 需要说明的是,在接收执行模块中,数据包解析子模块对数据包接收子模块接收到的数据包进行解析,并检测需重传的丢失数据包信息,将信息报送给接收控制子模块。当接收到EOF包时,接收控制子模块生成并发送ACK(EOF)包,之后基于需重传丢失数据包信息生成并发送NAK包,与对端发送执行模块配合,完成自适应确认与重传过程。
[0119] 下面参照附图详细描述根据本发明的星地间数据传输方法及装置。值得理解的是,下述描述仅是示例性描述,而不是对本发明的具体限制。
[0120] 如图3所示,卫星和地面站均设有发送模块和接收模块。发送模块与接收模块均由物理层子模块、链路层子模块、传输层子模块以及应用层子模块组成。如图4所示,在卫星和地面站之间进行数据传输时,执行系统由发送执行模块和接收执行模块组成。
[0121] 结合图5所示,发送执行模块与接收执行模块分别由4个子模块组成。组成发送执行模块的4个子模块分别为数据获取子模块、数据包封装子模块、数据包发送子模块、发送控制子模块。组成接收执行模块的4个子模块分别为数据包接收子模块、数据包解析子模块、数据分发子模块、接收控制子模块。
[0122] 发送执行模块各组成子模块功能为:
[0123] 数据获取子模块:从微小卫星平台/地面站应用系统获取各类型待传输数据;
[0124] 数据包封装子模块:基于不同类型数据可靠性要求及优先级,将各类待传输数据按照设定的数据包结构封装成数据包,并依次统一存储到发送缓存区中;
[0125] 数据包发送子模块:将发送缓存区中的数据包依次通过下层传输通道发送;
[0126] 发送控制子模块:根据各类型数据的可靠性要求及优先级设置,通过控制重传标志设置及各类型数据对应的数据包封装顺序与存储到发送缓存区的顺序,实现对不同等级可靠性及优先级实现流程的控制。
[0127] 接收执行模块各组成子模块功能为:
[0128] 数据包接收子模块:从地面站/微小卫星平台下层传输通道接收对端发送的数据包;
[0129] 数据包解析子模块:对接收到的数据包进行解析,检测获取需重传丢失数据包信息;
[0130] 数据分发子模块:将接收到的各类应用数据交付给地面站/微小卫星平台应用系统;
[0131] 接收控制子模块:基于需重传丢失数据包信息,与对端发送执行模块配合,实现对不同等级可靠性传输流程的控制。
[0132] 星地间数据交互方法流程如下:
[0133] 1)基于卫星与地面站需传输的应用数据类型以及星上可用发送缓存区大小,确定数据包结构与控制包结构;
[0134] 2)卫星/地面站发送执行模块中数据获取子模块、数据包封装子模块、发送控制子模块相互配合,基于各类数据的可靠性要求与优先级,持续进行数据包封装缓存,并将数据包存储至发送缓存区,直至发送缓存区存满;
[0135] 3)卫星/地面站发送执行模块中数据包发送子模块将缓存区中的数据包按顺序依次发送;
[0136] 4)地面站/卫星接收执行模块中数据包接收子模块、数据包解析子模块、数据分发子模块、接收控制子模块相互配合,进行数据包接收与解析,并检测需重传丢失数据包信息;
[0137] 5)重复步骤3)~4)直至卫星/地面站发送缓存区所有数据包均发送完成,发送执行模块中发送控制子模块生成并发送EOF包,启动自适应确认与重传过程;
[0138] 6)地面站/卫星接收执行模块中接收控制子模块接收到EOF包后,反馈ACK(EOF)包;
[0139] 7)地面站/卫星接收执行模块中接收控制子模块基于需重传丢失数据包信息,生成并发送携带需重传数据包信息的NAK包;
[0140] 8)卫星/地面站发送执行模块中发送控制子模块每接收到一个NAK包,根据NAK包中需重传数据包信息[Am1,Am2]与Rm,在发送缓冲区中A编号为Am1~Am2的数据包中搜索出全部Rm个丢失需重传数据包,通过数据包发送子模块依次发送;
[0141] 9)重复步骤7)~8),直至地面站/卫星接接收执行模块接收到卫星/地面站发送缓存区中所有的丢失需重传数据包;
[0142] 10)地面站/卫星接收执行模块中接收控制子模块生成并发送FIN包,卫星/地面站发送执行模块中发送控制子模块接收到FIN包后生成并发送ACK(FIN),自适应确认与重传过程结束;
[0143] 11)卫星/地面站发送执行模块清空发送缓存区;
[0144] 12)重复执行步骤2)~11)。
[0145] 综上所述,本发明基于统一的发送与接收处理过程,采用自适应确认与重传机制,通过有选择性地针对可靠性要求高的应用数据丢失数据包进行确认与重传,实现多可靠性等级星地综合数据传输;与自适应确认与重传机制相配合,在数据包结构中基于不同数据类型、不同可靠性要求以及发送缓存区大小设置多层次的数据包编号信息字段;基于丢失数据包位置分布基本样式,进行需重传丢失数据包信息在接收端的检测与向发送端的反馈,实现丢失数据包选择性确认与重传。
[0146] 下面以一个具体的实施例描述根据本发明的星地间数据传输方法:
[0147] 如图11所示,假设微小卫星运行在600km圆轨道上,微小卫星与地面站之通过星地直接链路进行数据传输。
[0148] 微小卫星地面站建设采用局部布站方式,因此星地数据传输需基于分散的星地可见时间窗口进行。为利用分散的星地可见时间窗口实施本发明所提的星地综合数据传输方法,可在发送控制模块和接收控制模块中增加星地可见时间窗口监测功能。通过存储星地数据传输过程状态参数,也可基于所提方法实现中断容忍的星地数据传输,即在星地可见窗口即将结束时,存储星地数据传输过程状态相关参数,并在下一个星地可见窗口开始时,基于过程状态参数恢复尚未结束的星地数据传输过程。
[0149] 本发明的数据传输方法支持微小卫星与地面站之间的单向、双向数据传输。不失一般性,在本实施例中,仅考虑微小卫星到地面站方向的数据传输。
[0150] 1)数据包与控制包结构设置
[0151] 设微小卫星需要向地面站传输的数据包括T1、T2、T3及T4等4类。相应地,数据包中数据类型字段长度至少为2比特。传输模式分为重传和非重传两种,因此长度为1比特。
[0152] 星上可分配给星地数据传输功能的发送缓存区大小是1M字节。为提高数据包发送效率,星上将1M字节缓存区分为两块,每块为512K字节。在数据包封装存储与发送过程中分时交替使用。数据包总长度设为256字节,因此一块缓存区中最多可存放2048个数据包。相应地,当前缓存区总的数据包个数Nt与当前缓存区丢失需重传的总的数据包个数Nr,长度至少为11比特。
[0153] 本实施例中采用的数据包和控制包结构分别如表1、表2所示。其中A编号、B编号、C编号字段长度均设置为3个字节,采用循环编号方式。从星上载荷第一次在轨开机运行时刻算起,A编号、B编号按照0~(224-1)顺序分别在各自操作数据包对象范围内对所有数据包进行依次循环编号;C编号则按照1~(224-1)顺序对所有丢失需重传的数据包进行依次循环编号,所有丢失不需重传的数据包的C编号均设置为0。
[0154] 表1实施例数据包结构
[0155]
[0156]
[0157] 表2实施例数据包结构
[0158]
[0159] 数据包以及NAK、EOF、ACK(EOF)、FIN、ACK(FIN)包对应的包类型字段分别填写000、001、010、011、100。与T1、T2、T3、T4等4类应用数据相对应,数据类型字段分别填写00、01、
10、11。在数据包中,数据区填充应用数据;在EOF包中,数据区标注As、Nt、Cs、Nr信息;在NAK包中,数据区标注需重传的数据包信息[A1,A2]及R;其他控制包的数据区可填写某一固定比特序列。
[0160] 2)星地综合数据传输过程:
[0161] 在图11所示的星地数据传输场景实例中,按照地面站接入微小卫星的最小仰角为20度计算,则星地数据传输距离最大为1400km。相应地,星地往返延时为9.4ms。
[0162] 为防止传输过程中关键控制包丢失,在发送控制包时可设置重发定时,超时未有反馈,则重发相应控制包。超时时间依据星地往返时延与控制包处理时延设置,在本实施例中可设置为10ms。
[0163] 相应地,星地数据传输过程如图12所示。本实施例中针对EOF包、NAK包以及FIN包设置重发定时。
[0164] 本实施例中,所提星地综合数据传输方法的具体实施步骤如下:
[0165] 1)从星上两块发送缓存区中选出一块标记为缓存区1,另一块则作为缓存区2;
[0166] 2)卫星发送执行模块中数据获取子模块、数据包封装子模块、发送控制子模块相互配合,基于各类数据可靠性要求与优先级,持续进行数据包封装,并将数据包存储至缓存区1,直至缓存区1存满;(同时转步骤2-1)与步骤3))
[0167] 2-1)(本步骤与步骤3)~13)并行,若步骤13)结束时,缓存区2仍未存满,则本步骤随之停止)卫星发送执行模块中数据获取子模块、数据包封装子模块、发送控制子模块相互配合,基于各类数据可靠性要求与优先级,持续进行数据包封装,并将数据包存储至缓存区2,直至缓存区2存满;
[0168] 3)卫星发送执行模块中数据包发送子模块将缓存区1中的数据包按顺序依次发送;
[0169] 4)地面站接收执行模块中数据包接收子模块、数据包解析子模块、数据分发子模块、接收控制子模块相互配合,进行数据包接收与解析,并检测需重传丢失数据包信息;
[0170] 5)重复步骤3)~4),直至缓存区1中所有数据包均发送完成,发送执行模块中发送控制子模块生成并发送EOF包,并启动EOF定时;
[0171] 6)若卫星在EOF定时超时之前,未收到地面站发送的任何控制包,则重新发送EOF包;
[0172] 7)地面站接收执行模块中接收控制子模块接收到EOF包后,反馈ACK(EOF)包;
[0173] 8)地面站接收执行模块中接收控制子模块基于需重传丢失数据包信息,生成并发送携带需重传数据包信息的NAK包;
[0174] 9)卫星发送执行模块中发送控制子模块每接收到一个NAK包,根据NAK包中需重传数据包信息[Am1,Am2]与Rm,在发送缓冲区中A编号为Am1~Am2的数据包中搜索出全部Rm个丢失需重传的数据包,通过数据包发送子模块依次发送;
[0175] 10)重复步骤8)~9),直至地面站接收执行模块接收到星上缓存区1中所有的丢失需重传数据包;
[0176] 11)地面站接收执行模块中接收控制子模块生成并发送FIN包,并启动FIN定时;
[0177] 12)若地面站在FIN定时超时之前,未收到卫星反馈的ACK(FIN)包,则重新发送FIN包;
[0178] 13)卫星发送执行模块中发送控制子模块接收到FIN包后生成并发送ACK(FIN);
[0179] 14)卫星/地面站发送执行模块清空缓存区1,并将本缓存区1标记为缓存区2,将原缓存区2标记为缓存区1;
[0180] 15)重复执行步骤2)~14)。
[0181] 由此,通过采用采用自适应确认与重传机制,能够基于统一发送与接收过程,实现多可靠性等级的星地综合数据传输,处理复杂度较低;不同可靠等级的数据传输任务按需共享统一的处理与存储资源,可提升微小卫星平台的资源利用效率。
[0182] 通过具体实施方式的说明,应当可对本发明为达成预定目的所采取的技术手段及功效得以更加深入且具体的了解,然而所附图示仅是提供参考与说明之用,并非用来对本发明加以限制。