本发明属于无线通信技术领域,特别涉及一种飞机与地面站数据传输方法,可用于飞机与地面站间通信。
背景技术:
飞机与地面站数据传输系统进行数据传输前首先需要建立网络连接,而无线通信模块wcm是基于目前成熟的无线通信技术,可以实现飞机与地面间的网络连接,为数据的快速传输提供基础。在飞机舱门开启、轮载信号为触地状态的条件下,wcm将主动连接地面上的无线网络,如蜂窝网络、机场的无线路由器,建立飞机与地面间的网络连接。无线连接建立后,飞机上的网络服务器系统即可发起数据传输操作,实现飞机与地面站间数据的互传。而一般传输系统中,使用单无线网卡进行数据传输,单无线网卡传输由于只采用了一条路径进行数据传输,当此传输路径上的某个节点或某条链路出现重大问题时,会导致链路中断,数据传输终止,直到新的传输路径建立成功后数据传输才能恢复,因此单无线网卡传输其可靠性较低,因而会导致链路服务质量的下降。而多无线网卡可以提高传输的可靠性,并能够满足网络带宽不断增加的需求,多无线网卡并行传输机制大大提高了发送端和接收端的端到端可靠传输、降低了单个网络的负载、提高了整体网络的吞吐量。
从目前公开的资料来看,相关技术领域的现有的技术由于机场环境无线网络信号不稳定,且数据传输要支持飞机移动性的要求,对飞机与地面站间可靠、高效的数据传输形成挑战。例如,授权公告号为cn101079811b、名称为“飞机与地面系统数据传输方法及系统”的中国专利,公开了一种飞机与地面系统数据传输方法,封装接收到的原始数据,形成数据包;按接收先后顺序储存该数据包;将该数据包分为多个数据包队列;按数据包队列优先级顺序分别对数据包队列附上帧头、数据起始标志和校验码形成信息帧并发送该信息帧。但是该方法的不足之处在于未对机场无线网络状况进行实时检测,不能满足飞机与地面站可靠、高效的数据传输要求。
技术实现要素:
本发明的目的在于针对上面现有技术所存缺陷,提供一种基于多无线网卡的飞机与地面站数据传输方法,以对机场无线网络状况进行实时检测,实现飞机与地面站可靠、高效的数据传输。
为实现上述目的,本发明的技术方案包括如下:
(1)将机载数据传输设备中的多个无线网卡分别接入机场网络,建立多条无线链路连接;
(2)设定机载数据传输设备的定时时间,检测并获取每个无线网卡的状态信息;
(3)设定可用无线网卡信号阈值rpt,根据每一无线网卡接收信号强度指示rssi对应的信号强度r,获得可用无线网卡的数量n;
(4)机载数据传输设备对待发送文件进行处理并发送:
(4a)获取待发送文件的信息,得到文件名和文件大小,并选择任一可用无线网卡将其发送至地面站数据接收设备;
(4b)对文件进行分块,并对每一分块按照分块在文件中的先后顺序从小到大设置分块序号,得到多个有序分块;
(4c)对每一有序分块内的数据进行分组,按数据分组在每个有序分块中的先后顺序设置数据分组id;
(4d)用分组后的有序分块组成任务队列;
(4e)通过n个可用无线网卡并行发送任务队列中的数据至地面站数据接收设备;
(5)地面站数据接收设备对接收到的数据进行重组:
(5a)按照接收到的文件名及大小,创建相应的接收文件;
(5b)按照分块序号和数据分组id从小到大的顺序对接收到的数据排序,得到多个有序分块,并向机载数据传输设备的相应无线网卡返回相应块序号的ack包;
(5c)按照分块序号从小到大的顺序将有序分块写入接收文件,完成飞机与地面站的数据传输。
本发明与现有技术相比,具有如下优点:
1)本发明由于在机载数据传输设备中设定定时器时间,检测并获取机载数据传输设备的多个无线网卡的状态信息,根据获得的状态信息对数据发送进行调整,从而提高了传输无线链路的可靠性;同时由于对每个文件进行分块确认,提高了飞机与地面站传输数据的可靠性。
2)本发明由于采用机载数据传输设备的多个可用无线网卡对多个文件分块进行并行传输,且通过地面站数据接收设备对每个文件分块进行确认,减少了对文件分块中每个数据分组确认的时间,提高了飞机与地面站数据传输的传输速率,实现了飞机与地面站之间的高效数据传输。
附图说明
图1为本发明适用的数据传输系统的结构示意图;
图2为本发明的实现总流程图;
图3为本发明中通过机载数据传输设备处理文件的子流程图;
图4为本发明中并行发送任务队列中的数据子流程图。
具体实施方式
下面结合附图和具体实施例,对本发明作进一步的详细描述:
参照图1,本发明适用的数据传输系统,包括机载数据发送设备、机场网络和地面站数据接收设备,其中:
机载数据传输设备,包括机载数据处理模块和机载通信模块,该机载数据处理模块用于获取待发送的文件信息及机载通信模块各无线网卡的状态信息,并发送各待发送文件;该机载通信模块用于建立多条无线链路连接、发送数据帧到地面站数据接收模块并接收地面站数据接收模块返回的ack包,机载通信模块内的多个无线网卡包括移动/联通/电信的蜂窝模块和wifi通信模块。
机场网络,用于传输机载数据传输设备和地面站数据接收设备发送的数据。
地面站数据接收设备,包括地面站通信模块和地面站数据处理模块,该地面站通信模块用于接收机载通信模块发送的数据和发送ack包;该地面站数据处理模块用于重组地面站通信模块接收到的数据并生成ack包。
参照图2,本发明的实现步骤如下:
步骤1、建立多条无线链路连接。
机载数据传输设备中的机载通信模块包含多个无线网卡,当无线网卡进入机场网络覆盖范围时,会自动接入机场网络的相应接入点,建立多条无线链路连接,但由于地面不需要支持移动性的要求,所以,地面站数据接收设备与机场网络之间需要采用有线连接,即采用网络线缆将地面站通信模块接入机场网络的相应接入点,建立一条有线链路连接。
步骤2、检测并获取每个无线网卡的状态信息。
设定机载数据传输设备的定时时间t,每隔t的时间,机载数据传输设备进行一次对每个无线网卡的连接状态的检测并获取每个无线网卡的状态信息;
该状态信息,是指获得无线网卡的mac地址、网际协议ip地址和信号强度r。
步骤3、获得可用无线网卡的数量n。
由于数据无线传输环境中,信号强度低于-80dbm时,该无线网卡基本不可用,需要设定可用无线网卡信号阈值rpt,本实例设置rpt=-80dbm;
将每一无线网卡的信号强度r与信号阈值rpt进行比较,若r>=rpt,则对应的无线网卡可用,否则对应的无线网卡不可用;
将所有的可用无线网卡相加,获得可用无线网卡的数量n。
步骤4、机载数据传输设备对待发送文件进行处理并发送。
参考图3,本步骤的具体实现如下:
4a)获取待发送文件的信息,得到文件名和文件大小,并选择任一可用无线网卡将其发送至地面站数据接收设备;
4b)对文件进行分块,设置每个分块的大小为10mb,并对每一分块按照分块在文件中的先后顺序从小到大设置分块序号,得到多个有序分块;
4c)对每一有序分块内的数据进行分组,设置每个数据分组的大小为1mb,每个有序分块共包含10个数据分组,按数据分组在每个有序分块中的先后顺序设置数据分组id;
4d)用分组后的有序分块组成任务队列;
4e)通过n个可用无线网卡并行发送任务队列中的数据至地面站数据接收设备:
参考图4,本发明中并行发送任务队列的步骤如下:
4e1)建立一个最多含有n个活动线程的线程池,每个线程对应一个可用无线网卡;
4e2)从线程池中取出空闲的线程按任务队列中分块序号从小到大的顺序依次读取有序分块;
4e3)根据线程对应的无线网卡的信息对有序分块中的各数据分组进行封装,并通过相应无线网卡发送至地面站数据接收设备:
4e31)在原有开放式系统互联osi参考模型的用户数据报协议udp头部基础上添加各数据分组相应的分块序号和数据分组id,得到扩展udp头部;
扩展的udp消息格式如表1所示:
表1udp扩展消息格式
表1中,源端口号为发送进程的端口号;目的端口号为接收进程的端口号。
4e32)机载数据传输设备为各数据分组添加以太网头部、ip头部和扩展udp头部。
所述以太网头部,包括源mac地址和目的mac地址;该源mac地址是与线程对应的可用无线网卡的物理地址,该目的mac地址是与地面站数据接收设备相应的物理地址;
所述的ip头部,包括源ip地址和目的ip地址;该源ip地址是与线程对应的可用无线网卡的网际协议地址,该目的ip地址是与地面站数据接收设备相应的网际协议地址;
4e4)线程对应的无线网卡接收从地面站数据接收设备返回的ack包,并根据接收到的ack包,判断有序分块中的数据分组是否均发送成功,若是,此线程发送任务队列中的下一有序分块,否则,在线程中重传没有成功的数据分组,直到所有有序分块均发送成功。
步骤5、地面站数据接收设备对接收到的数据进行重组。
由于机载数据传输设备采用n个可用无线网卡并行发送任务队列中的有序分块至地面站数据接收设备,各可用无线网卡对应的无线链路传输速率不同,导致各有序分块及其数据分组不能按序到达地面站数据接收设备,所以需要对接收到的数据进行重组,其重组步骤如下:
(5a)按照接收到的文件名及大小,创建相应的接收文件;
(5b)按照分块序号和数据分组id从小到大的顺序对接收到的数据排序,得到多个有序分块,并向机载数据传输设备的相应无线网卡返回相应分块序号的ack包;
(5c)按照分块序号从小到大的顺序将有序分块写入接收文件,完成飞机与地面站的数据传输。
以上描述仅是本发明的一个具体实例,并未构成对本发明的任何限制,显然对于本领域的专业人员来说,在了解了本发明内容和原理后,都可能在不背离本发明原理、结构的情况下,进行形式和细节上的各种修改和改变,但是这些基于本发明的思想修正和改变仍在本发明的权利要求保护范围之内。