一种对AOS遥测数据解析的网格化方法,该方法是将集中的数据解析过程拆分成独立的服务流程,根据AOS中虚拟信道特性,将不同虚拟信道的数据发送给不同的VCDU解析服务节点处理从而将串行过程转换为并行处理过程,其步骤如下:一、利用ICE设计服务接口;二、利用C++实现接口;三、动态分派调度算法;四、负载均衡算法。该方法,可以实现AOS遥测数据的并行处理,并可根据VCDU数据格式的特点进行动态任务派发调度与负载均衡。
【技术实现步骤摘要】
一种对AOS遥测数据解析的网格化方法
本专利技术涉及一种对AOS遥测数据解析的网格化方法,它是一种对航天器AOS遥测数据进行网格处理的方法。属于网格计算及卫星遥测数据处理领域。
技术介绍
现代卫星发展不断向深空化、高速率以及高可靠性等方向发展。为了适应空间技术的发展,空间数据系统咨询委员会(CCSDS)在提出常规分包遥测遥控系统的基础上又提出了灵活性更强,更多样化的数据处理业务——高等在轨数据系统,简称高等在轨系统(AOS)。该系统将有效载荷数据与航天器平台数据合一形成统一数据流(虚拟信道数据单元VCDU)。AOS遥测数据处理传统上采用集中式结构。当遥测下行速率较快时,这种结构存在性能上的瓶颈,会出现丢帧、阻塞等现象。网格是一个集成的计算与资源环境,或者说是一个计算资源池。网格能够充分吸纳各种计算资源,并将它们转化为一种随处可得的、可靠的、标准的同时还是经济的计算能力。网格计算并非简单指将不同计算机设备通过物理网络连接起来,而是所有计算资源的一种有机整合。针对AOS遥测数据格式特点,设计一种基于网格的遥测解析系统,将可以实现AOS遥测解析并行化,为航天器数管测试系统提供一套新思路、新方法。对于推动我国航天事业智能化和综合化发展有重要贡献!
技术实现思路
(一)要解决的技术问题传统的AOS遥测数据解析采用集中式结构,由一台计算机运行解析软件,该软件负责所有的解析任务。本专利技术的目的是克服传统集中式解析方法的局限性,解决处理高下行速率数据时阻塞,丢包,占用计算机资源过大等问题。(二)解决问题的技术方案为了实现所述目的,本专利技术设计了一种针对AOS遥测数据特点的网格处理方法。AOS遥测数据解析过程包含信道访问数据单元(CADU)、虚拟信道数据单元(VCDU)、多路协议数据单元(MPDU)及源包(EPDU)四种格式。CADU为接收到的最原始的数据;VCDU,由CADU解析而来,VCDU最多可有64个虚拟信道;MPDU由VCDU解析而来;EPDU由MPDU解析而来。该方法的核心是将集中的数据解析过程拆分成独立的服务流程,根据AOS中虚拟信道特性,将不同虚拟信道的数据发送给不同的VCDU解析服务节点处理从而将串行过程转换为并行处理过程。该方法的结构如图1。本专利技术一种对AOS遥测数据解析的网格化方法,该方法具体步骤如下:步骤一:利用ICE设计服务接口:ICE(InternetCommunicationsEngine)是ZeroC公司以及GNUGPL和专利许可授权的面向对象的中间件,它提供面向对象的远程调用、网格计算及发布/订阅机制;ICE可以运行在大多数主流操作系统上,如Linux,Solaris,Windows以及MacOSX,同时支持C++,Java,.NET语言(如C#或者VisualBasic),Objective-C,Python,PHP与Ruby;ICE应用程序可以部署在多种环境下,客户端和服务端可以使用不同的编程语言实现;同时它可以运行在不同的操作系统平台以及不同的硬件架构上,有效解决C/S模式兼容性差,开发成本高等问题;采用ICE开发网络通信应用的流程如图2;本专利技术为了处理高速下行的遥测数据,采用生产者消费者模型实现了一种异步的通信方式,解析服务与派发服务均包含一个缓冲队列以接收数据以及一个处理线程负责从队列中取出数据并进行处理;基于所有服务的共性以及ICE面向对象的特点,设计服务基类接口BaseDecoder,其内容如下:CADU解析服务接口如下:VCDU派发服务接口如下:VCDU解析服务接口如下:;步骤二:利用C++实现接口:通过ICE提供的slice编译器可以将接口文件编译为特定开发语言的接口文件,考虑到效率性能等因素,本专利技术采用C++作为开发语言,slice接口文件编译后的C++文件为抽象类,因此需要编写实现的子类;步骤三:动态分派调度算法:任务分派是网格计算的核心技术,也是网格应用的基础,高效的任务调度模型和算法可充分利用网格系统的硬件和软件资源,从而提高网格系统的性能;网格任务调度问题已被证明是一个NP完全问题,现已成为目前网格计算领域的一个研究焦点;对于分布式环境来说,节点的改变是常见的场景,比如由于机器故障等原因导致节点消失或者节点的复原、添加,这给分布式任务的分派造成了一定的困难,必须能够实现一种可靠且高效的动态任务分派算法,能够自动适应网格中节点的变化;常用的一种技术称为DHT(DistributedHashTable,分布式散列表);DHT技术主要应用于P2P场景,该场景中主要是同等节点之间的通信,这与本专利技术研究的场景具有比较大的差别;CCSDS遥测解析的串行转并行是在CADU转换为VCDU这一层的工作,根据不同的vcid将数据发送到不同的计算机节点进行解析,但是运行VCDU解析服务的节点之间并没有通信需求,数据传输主要是在分派器与VCDU解析服务之间进行,为一对多的模型;不过DHT依然具有一定的借鉴意义,在分布式环境下如果要动态适应节点数量的变化,哈希映射无疑是一种理想的办法;同时在处理一对多模型的通信方面,观察者模式不失为好的选择,因此为了解决动态分派问题,本专利技术采取了哈希取模与观察者设计模式相结合的办法,派发服务与VCDU解析服务的UML图如图3;步骤四:负载均衡算法:派发服务对VCDU解析服务的负载均衡控制原理与TCP协议的流量控制类似,即采用滑动窗口的方式;VCDU解析服务继承自BaseDecoder接口,派发服务可以调用解析服务的GetCacheSize与GetCacheMaxSize函数获得VCDU解析服务缓冲区中的当前数据量和能够容纳的最大数据量,根据二者的差值决定发送给解析服务的数据量。(三)本专利技术的优点和功效:采用本专利技术所述的方法,可以实现AOS遥测数据的并行处理,并可根据VCDU数据格式的特点进行动态任务派发调度与负载均衡。附图说明:图1AOS遥测数据解析网格系统整体架构图2采用ICE中间件开发网络应用程序流程图图3派发服务与VCDU解析服务UML图图4注册解析服务函数工作流程图图5重新映射函数流程图图6移除解析服务函数流程图图7派发服务负载均衡机制示意图具体实施方式本专利技术一种对AOS遥测数据解析的网格化方法,如图1所示,该方法具体步骤如下:1利用ICE设计服务接口ICE(InternetCommunicationsEngine)是ZeroC公司以及GNUGPL和专利许可授权的面向对象的中间件。它提供面向对象的远程调用、网格计算及发布/订阅机制。ICE可以运行在大多数主流操作系统上,如Linux,Solaris,Windows以及MacOSX,同时支持C++,Java,.NET语言(如C#或者VisualBasic),Objective‐C,Python,PHP与Ruby。ICE应用程序可以部署在多种环境下,客户端和服务端可以使用不同的编程语言实现;同时它可以运行在不同的操作系统平台以及不同的硬件架构上,有效解决C/S模式兼容性差,开发成本高等问题。采用ICE开发网络通信应用的流程如图2本专利技术为了处理高速下行的遥测数据,采用生产者消费者模型实现了一种异步的通信方式。解析服务与派发服务均包含一个缓冲队列以接收数据以及一个处理线程负责从队列中取出数据并进行处本文档来自技高网...
【技术保护点】
一种对AOS遥测数据解析的网格化方法,其特征在于:该方法是将集中的数据解析过程拆分成独立的服务流程,根据AOS中虚拟信道特性,将不同虚拟信道的数据发送给不同的VCDU解析服务节点处理从而将串行过程转换为并行处理过程,其具体步骤如下:步骤一:利用ICE设计服务接口:该ICE是面向对象的中间件,它提供面向对象的远程调用、网格计算及发布/订阅机制;ICE能运行在大多数主流操作系统上,同时支持C++,Java,.NET语言,Objective‑C,Python,PHP与Ruby;ICE应用程序能部署在多种环境下,客户端和服务端能使用不同的编程语言实现;同时它能运行在不同的操作系统平台以及不同的硬件架构上,有效解决C/S模式兼容性差,开发成本高问题;为了处理高速下行的遥测数据,采用生产者消费者模型实现了一种异步的通信方式,解析服务与派发服务均包含一个缓冲队列以接收数据以及一个处理线程负责从队列中取出数据并进行处理;基于所有服务的共性以及ICE面向对象的特点,设计服务基类接口BaseDecoder,其内容如下:CADU解析服务接口如下:VCDU派发服务接口如下:VCDU解析服务接口如下:;步骤二:利用C++实现接口:通过ICE提供的slice编译器能将接口文件编译为特定开发语言的接口文件,考虑到效率性能等因素,采用C++作为开发语言,slice接口文件编译后的C++文件为抽象类,因此需要编写实现的子类;步骤三:动态分派调度算法:任务分派是网格计算的核心技术,也是网格应用的基础,高效的任务调度模型和算法能充分利用网格系统的硬件和软件资源,从而提高网格系统的性能;网格任务调度问题已被证明是一个NP完全问题,现已成为目前网格计算领域的一个研究焦点;对于分布式环境来说,节点的改变是常见的场景,比如由于机器故障原因导致节点消失或者节点的复原、添加,这给分布式任务的分派造成了一定的困难,必须能够实现一种可靠且高效的动态任务分派算法,能够自动适应网格中节点的变化;常用的一种技术称为DHT分布式散列表;该DHT技术应用于P2P场景,该场景中主要是同等节点之间的通信,这与本研究的场景具有比较大的差别;CCSDS遥测解析的串行转并行是在CADU转换为VCDU这一层的工作,根据不同的vcid将数据发送到不同的计算机节点进行解析,但是运行VCDU解析服务的节点之间并没有通信需求,数据传输主要是在分派器与VCDU解析服务之间进行,为一对多的模型;不过DHT依然具有借鉴意义,在分布式环境下如果要动态适应节点数量的变化,哈希映射是一种理想的办法;同时在处理一对多模型的通信方面,观察者模式为好的选择,因此为了解决动态分派问题,采取了哈希取模与观察者设计模式相结合的办法,派发服务与VCDU解析服务的UML图;步骤四:负载均衡算法:派发服务对VCDU解析服务的负载均衡控制原理与TCP协议的流量控制类似,即采用滑动窗口的方式;VCDU解析服务继承自BaseDecoder接口,派发服务能调用解析服务的GetCacheSize与GetCacheMaxSize函数获得VCDU解析服务缓冲区中的当前数据量和能够容纳的最大数据量,根据二者的差值决定发送给解析服务的数据量。...
【技术特征摘要】
1.一种对AOS遥测数据解析的网格化方法,其特征在于:该方法是将集中的数据解析过程拆分成独立的服务流程,根据AOS中虚拟信道特性,将不同虚拟信道的数据发送给不同的VCDU解析服务节点处理从而将串行过程转换为并行处理过程,其具体步骤如下:步骤一:利用ICE设计服务接口:该ICE是面向对象的中间件,它提供面向对象的远程调用、网格计算及发布/订阅机制;ICE能运行在大多数主流操作系统上,同时支持C++,Java,.NET语言,Objective-C,Python,PHP与Ruby;ICE应用程序能部署在多种环境下,客户端和服务端能使用不同的编程语言实现;同时它能运行在不同的操作系统平台以及不同的硬件架构上,有效解决C/S模式兼容性差,开发成本高问题;为了处理高速下行的遥测数据,采用生产者消费者模型实现了一种异步的通信方式,解析服务与派发服务均包含一个缓冲队列以接收数据以及一个处理线程负责从队列中取出数据并进行处理;基于所有服务的共性以及ICE面向对象的特点,设计服务基类接口BaseDecoder,其内容如下:声明和定义BaseDecoder,定义DataProcess的输入输出接口,定义内存分配空间GetCacheSize和GetCacheMaxSize;CADU解析服务定义DataProcess的输入输出接口,并定义DecodeCADU的接口类型和存储空间VCDU派发服务定义输入输出接口,并定义DataProcess的输入输出,同时声明registDecoder的注册空间和removeDecoder的消除空间;VCDU解析服务定义输入输出接口,并定义DataProcess的输入输出,同时声明设置变量SetId和获取变量GetId;步骤二:利用C++实现接口:通过ICE提供的slice编译器能将接口文件编译为特定开发语言的接口文件,考虑到效率性能等因...
【专利技术属性】
技术研发人员:赵琦,张士龙,冯文全,朱楠,官秀梅,赵洪博,方勇,
申请(专利权)人:北京航空航天大学,
类型:发明
国别省市:北京;11
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。