一种可变时间滑动窗口计算方法技术

技术编号:20850987 阅读:62 留言:0更新日期:2019-04-13 09:45
本发明专利技术提供一种可变时间滑动窗口计算方法,所述可变时间滑动窗口,是指计算机内存中一个先进先出的队列,此队列存储一个可变的时间段内,从接收站接收到的消息,在中心站服务器上,定义三个定时器,分别是Slidewin_Timer、DBsync_Timer、Logsync_Timer,通过控制三个计时器的触发方式,来解决多点接收等手段而导致的数据融合、数据去重负、大数据批量读写等问题。

【技术实现步骤摘要】
一种可变时间滑动窗口计算方法
本专利技术涉及民航船舶信息领域,具体涉及一种可变时间滑动窗口的计算方法。
技术介绍
传统的航海管制,主要使用一次雷达来监视船舶,存在不能提供目标船标识、不能提供目标船航行状态信息、易受海浪暴雨干扰、设备造价较高、监视盲区等问题。传统的航空管制,主要使用二次雷达来监视航空器,存在目标信息量少、信息更新不即时、设备造价较高、监视盲区等问题。在新航行管制中,为了克服传统的航空管制、航海管制存在的种种问题,使用广播式自动相关监视ADS-B技术监视航空器,使用船舶自动识别系统AIS技术监视船舶。为了提高ADS-B或AIS无线信号的接收成功率,克服地理监视盲区,避免单台接收机故障,需要采用多台分布在多个地方的ADS-B或AIS接收机。
技术实现思路
针对上述成本高准确率不够的问题,本专利技术提供一种可变时间滑动窗口算法,用来解决多点接收等手段而导致的数据融合、数据去重负、大数据批量读写等问题。一种可变时间滑动窗口计算方法,所述可变时间滑动窗口,是指计算机内存中一个先进先出的队列,此队列存储一个可变的时间段内,从接收站接收到的消息,在中心站服务器上,定义三个定时器,分别是Slidewin_Timer、DBsync_Timer、Logsync_Timer。优选的,所述可变的时间段为当前时刻到过去一个时刻之间的时间片段,包括如下处理步骤:S1,对接收到的信息进行循环冗余检查校验,校验失败丢弃,校验成功进一步处理;过期的消息,即可变的时间段之外的消息,从队列中删除;S2,预处理后的信息,查看“滑动窗口队列”数据中是否有重复的消息,若消息重复,将消息插入“滑动窗口队列”的尾部;若消息不重复,a将消息发给应用系统,b同时将消息插入到“滑动窗口队列”的尾部,c并插入到“去重复队列”的尾部;S3,DBsync_Timer定时器触发后,Slidewin_DBsync进程开始执行:“去重复队列”的信息从队列尾到队列头顺序写入数据库,写入数据库后的消息从“去重复队列”中删除;S4,Slidewin_Timer定时器触发后,Slidewin_Check进程开始执行:检查滑动窗口队列,当消息的接收时间戳过去Slidewin_Timer毫秒时,将超时的消息写到日志缓冲区,然后将超时的消息从滑动窗口队列中删除;S5,Logsync_Timer定时器触发后,Slidewin_Logsync进程开始执行:将日志缓冲区中的消息,周期性的写入日志文件;写入日志文件后的消息,从日志缓冲区中删除。优选的,所述滑动窗口队列”的数据存储包含:消息接收时间戳、接收站IP地址和ADS-B/AIS消息本体内容。优选的,所述“去重复队列”的数据存储包含:消息接收时间戳、接收站IP地址和ADS-B/AIS消息本体内容。优选的,所述ADS-B/AIS消息本体内容为飞机船舶导航系统数据。有益效果:在新航空管制中,提高ADS-B无线信号的接收成功率、接收地理范围,防止单点接收故障;在新航海管制中,提高AIS无线信号的接收成功率、接收地理范围,防止单点接收故障,解决多点接收ADS-B/AIS信号,在两个领域实现数据融合、数据去重负、大数据批量读写。附图说明图1是可变时间滑动窗口算法的处理过程图。具体实施方式下面结合附图对本专利技术作进一步的描述,以下实施例显示和描述了本专利技术的基本计算方法,在不脱离本专利技术保护范围的前提下,还会有各种变化和改进,这些变化和改进都落入要求保护的本专利技术范围内。可变时间滑动窗口算法的应用场景包括如下:1)航空器或船舶等发射站,以无线广播方式,周期性的发射数字化消息,报告自己的实时位置、状态等信息;2)接收站采用多点接收等技术手段,来提高消息的截获概率,克服监视盲区;3)因为多点接收,同一条消息可能被多个接收站接收到,多个接收站又将同一条消息多次发给中心站;4)在中心站,同一条消息被多次接收;因为网络时延不同,导致消息到达中心站的时间各不相同,到达的时间差在100ms左右;5)在中心站,可变时间滑动窗口算法用来解决数据融合、数据去重复、大数据批量读写等难题;以上场景,基于数据的接受,都可以使用本专利技术提供的一种可变时间滑动窗口计算方法,所述可变时间滑动窗口,是指计算机内存中一个先进先出的队列,此队列存储一个可变的时间段内,从接收站接收到的消息,在中心站服务器上,定义三个定时器,分别是Slidewin_Timer、DBsync_Timer、Logsync_Timer。优选的,所述可变的时间段为当前时刻到过去一个时刻之间的时间片段,包括如下处理步骤:S1,对接收到的信息进行循环冗余检查校验,校验失败丢弃,校验成功进一步处理;过期的消息,即可变的时间段之外的消息,从队列中删除;S2,预处理后的信息,查看“滑动窗口队列”数据中是否有重复的消息,若消息重复,将消息插入“滑动窗口队列”的尾部;若消息不重复,a将消息发给应用系统,b同时将消息插入到“滑动窗口队列”的尾部,c并插入到“去重复队列”的尾部;S3,DBsync_Timer定时器触发后,Slidewin_DBsync进程开始执行:“去重复队列”的信息从队列尾到队列头顺序写入数据库,写入数据库后的消息从“去重复队列”中删除;S4,Slidewin_Timer定时器触发后,Slidewin_Check进程开始执行:检查滑动窗口队列,当消息的接收时间戳过去Slidewin_Timer毫秒时,将超时的消息写到日志缓冲区,然后将超时的消息从滑动窗口队列中删除;S5,Logsync_Timer定时器触发后,Slidewin_Logsync进程开始执行:将日志缓冲区中的消息,周期性的写入日志文件;写入日志文件后的消息,从日志缓冲区中删除。优选的,所述滑动窗口队列”的数据存储包含:消息接收时间戳、接收站IP地址和ADS-B/AIS消息本体内容。优选的,所述“去重复队列”的数据存储包含:消息接收时间戳、接收站IP地址和ADS-B/AIS消息本体内容。实施例1在中心站服务器上:运行五个进程:Pre_Process进程、Slidewin_Receive进程、Slidewin_Check进程、Slidewin_DBsync进程、Slidewin_Logsync进程,定义三个定时器:Slidewin_Timer、DBsync_Timer、Logsync_Timer。2Pre_Process进程负责执行数据接收和“消息预处理策略”,可以包含以下预处理策略:(1)对ADS-B/AIS消息执行CRC校验,校验失败则丢弃消息,校验成功则继续处理。(2)对消息时间字段进行预处理,如时间超时则丢弃消息,否则继续处理。(3)执行其他预处理策略。3Slidewin_Receive进程负责数据融合、数据去重负。消息经过Pre_Process进程处理成功后,被转发给Slidewin_Receive进程。Slidewin_Receive收到一个消息时,查看“滑动窗口队列”中是否有重复的消息,如果有重复消息,则将消息插入“滑动窗口队列”的尾部;如果没有重复消息,则将消息发给应用系统进行业务处理,同时将消息插入到“滑动窗口队列”的尾部、插入到“去重复队列”的尾部。4DBsync_Timer定时器触发后,Slidewin_DBsync进本文档来自技高网...

【技术保护点】
1.一种可变时间滑动窗口计算方法,所述可变时间滑动窗口,是指计算机内存中一个先进先出的队列,其特征在于,此队列存储一个可变的时间段内,从接收站接收到的消息,在中心站服务器上,定义三个定时器,分别是Slidewin_Timer、DBsync_Timer、Logsync_Timer。

【技术特征摘要】
1.一种可变时间滑动窗口计算方法,所述可变时间滑动窗口,是指计算机内存中一个先进先出的队列,其特征在于,此队列存储一个可变的时间段内,从接收站接收到的消息,在中心站服务器上,定义三个定时器,分别是Slidewin_Timer、DBsync_Timer、Logsync_Timer。2.根据权利要求1所述的一种可变时间滑动窗口计算方法,其特征在于,所述可变的时间段为当前时刻到过去一个时刻之间的时间片段,包括如下处理步骤:S1,对接收到的信息进行循环冗余检查校验,校验失败丢弃,校验成功进一步处理;过期的消息,即可变的时间段之外的消息,从队列中删除;S2,预处理后的信息,查看“滑动窗口队列”数据中是否有重复的消息,若消息重复,将消息插入“滑动窗口队列”的尾部;若消息不重复,a将消息发给应用系统,b同时将消息插入到“滑动窗口队列”的尾部,c并插入到“去重复队列”的尾部;S3,DBsync_Timer定时器触发后,Slidewin_DBsync进程开始执行:“去重复队列”的信息从队列尾到队列头顺序写入数据库...

【专利技术属性】
技术研发人员:刘晓疆陈涛陈晓刘青李坤张新华杨泉林
申请(专利权)人:青岛民航凯亚系统集成有限公司
类型:发明
国别省市:山东,37

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1