面向物联网体系的海上通信云平台

2015-12-20 03:50王晓岩
舰船科学技术 2015年6期
关键词:分布式计算进程消息

王晓岩

(四平职业大学,吉林 四平136002)

0 引 言

云计算平台是现代信息技术发展的产物,也是大数据时代最热门的研究方向之一。其利用分布式计算、虚拟技术及并行网格计算技术,能够有效融合不同地区、不同硬件结构的计算资源并且有效地划分利用。不仅极大地提高了系统的数据存储容量[1-2],同时提高了计算效率。

随着海洋开发的不断深入,基于物联网体系的海上电子通信系统应用越来越多,如海上视频监控系统、气象传感网络及目标探测系统,所有这些系统都需要进行大量数据的传输及信息处理。而现有的海上通信平台,其带宽、信息处理效率及数据存储量越来越不能满足海上信息系统扩展,成为海上各种应用系统性能的瓶颈。所以,如何有效提升现有海上通信系统的存储容量、信息处理效率及信息传输速率已成为当前海上通信系统的热点研究方向,而基于云平台的海上通信系统又是其中的方向之一。

本文在研究现有海上通信系统及云平台技术基础上,基于私有云设计了海上数据信息传输平台,提出了面向物联网体系的海上通信平台,并进行仿真。

1 海上通信平台及云计算平台模型

1.1 云计算平台及通信

一个完整的云计算通信平台主要包括云通信处理系统及服务器系统。而云通信处理系统是由一系列软硬件构成,如并行文件、共享数据库系统及分布式硬件架构。

所有云平台都基于并行分布式的文件系统[3],相比较于现有的存储架构,其存储量及性能都有很大提升,并行文件系统架构如图1 所示。

图1 并行文件系统架构图Fig.1 The parallel file system architecture diagram

云计算平台中的分布式并行文件系统运行在多个Linux 计算机中,其中文件控制进程分为主节点与多个块节点。所有存储设备按逻辑划分为统一大小的块存储单元,并挂载在Linux 操作系统下,由Linux 操作系统统一管理。

主节点控制程序对所有块存储单元进行逻辑与物理控制,包括数据访问,控制信息,文件列表,单元映射,数据的合并、删除与恢复等。当并行文件控制程序开始工作时,主节点控制进程向各个块节点发送握手信息,握手信息包含需要处理的动作。在现有并行文件系统中,块以64 M 大小进行划分,最大限度提高磁盘利用率。

1.2 云通信平台架构

基于云的通信平台重点需要解决2 个问题:1)构建不同硬件平台下的进程通信架构;2)不同应用程序之间消息交互及数据传输的接口。

其通信平台的功能如图2 所示。

图2 海上通信平台功能图Fig.2 The function chart of maritime communication platform

基于云的通信平台包含4 个主要模块:心跳包探测模块、消息传输模块、目的地管理模块及日志模块。

消息管理模块[4]是整个通信平台最核心的组件,负责整个通信平台消息的传输和接收,并且模块接口对用户进程开放,可实现任意2 个用户进程之间的数据交互。

心跳包探测模块为进程间通信进行探测的辅助模块,由于现有基于云计算的架构由多个节点组成,一个用户程序进程在不同的节点之间进行分布式计算,心跳包探测模块能够有效地判别分布式计算节点的运行状态,如是否宕机﹑计算进程是否死掉等异常情况。

目的地管理模块为用户配置好消息传送地址,并提供接口给用户调用。

日志模块主要对云通信平台运行中的状态进行记录,有利于问题定位。

2 云通信平台中的消息模块实现

2.1 面向消息的云通信平台架构

本文利用私有云进行平台设计,通过消息机制进行云平台中不同节点之间的通信,可以有效地解决系统的私密性及耦合性,同时有利于实现不同用户程序以及同一用户程序不同进程之间的同步问题,并可进行封装,有利于用户直接调用。

利用消息中间件构建分布式节点之间的消息传递,可以进行不同平台之间的通信,而尽量避免由于网络协议不同导致传输中断。此模型中,需要部署一个消息处理服务器,不同节点﹑不同进程之间的消息接收与发送都需要经过消息处理服务器进行。服务器将所有节点的信息放置于自己的消息队列中,并进行不同协议消息的转化。

图3 为基于私有云的消息传输系统。

图3 私有云的消息传输系统模型Fig.3 Message transmission system model based on the private cloud

其中,ClientA,ClientB 进程为消息发送端,ClientC,ClientD,ClientE,ClientF 为接收端。

ClientA,ClientC,ClientD 之间的消息传输是点对点方式,消息发送至服务器端的消息中,而这个消息只能被一个接收进程所得到。消息队列中保存消息的源地址和目的地址。此种方式的优点是逻辑清晰,缺点是消息处理占用带宽较大。

ClientB,ClientE,ClientF 之间的消息传输通过广播方式[5]进行传输。消息发送端把需要传输的消息发送至服务器的订阅队列中,接收端进程可以根据自身需要来向服务器端订阅所需消息。把消息发布者Publisher 与接收者Subscriber 进行一对多的对应,他们之间并不需要知道发送端和接收端的地址,而是通过在服务器端注册需要的主题号进行消息的异步传输,是一种松耦合关系。

2.2 消息传输与云计算系统框架

本文把私有云组件与消息传输平台进行融合,能够有效提高消息传输效率。云计算是基于分布式架构的平台,核心计算组件是Map Reduce。

用户在运行一个具体的任务时,需要对任务中所使用的文件进行维护,产生一个作业维护任务。在运行时,通过维护任务将文件中的数据传输至各个计算节点。所以基于云平台通信系统的核心是对文件的管理和管理分布式计算节点。

私有云处理系统框架如图4 所示。

基于私有云的通信处理系统有4 个功能模块:云作业管理模块﹑分布式计算模块﹑并行文件处理模块及出错处理模块。

1)云作业管理模块

图4 私有云处理系统框架Fig.4 The system frame of private cloud processing

在云平台中,作业功能划分由用户指定,并且一个作业可以分为多个进程。云平台控制各个进程的入口及出口接口,而各个进程之间的逻辑关系用户可以通过作业管理模块进行管理,最后通过管理模块生成作业处理文件。

2)分布式计算模块

一个作业又分为许多逻辑功能,每个功能称为一个进程,同时每个进程在云平台中需要分配一定的计算资源及存储资源。分布式计算模块根据每个进程所需要的资源进行节点分配,这样处理时作为用户并不需要关心整个云平台的硬件资源,而把资源分配交给分布式计算模块来处理。当一个硬件节点分到具体任务的具体进程后,则置自身的运行状态为1,并发送状态信息给分布式计算模块,当另一个用户进行作业时,分布式计算模块会选择空闲的计算节点资源。不同用户不需要进行资源的争夺,有利于整个云处理平台的稳定性,并减少了分布式系统的耦合性。

3)并行文件处理模块

并行文件处理模块作用是对用户作业的输入及输出文件进行维护,作业在运行中产生的临时文件也由此模块负责。同时前一时刻的临时文件也是后一时刻临时文件的输入。最终的文件则是临时文件的最终结果。文件管理模块会对中间态文件进行保存或删除。基于云平台的文件管理模块流程如图5所示。

4)错处处理模块

由于云平台是一个异构的分布式架构,中心管理节点需要对各分散的计算节点进行检查。出错管理模块负责监控系统中各分布式节点的状态,如空闲状态﹑运行状态及宕机状态。

图5 文件管理流程图Fig.5 The flow chart of file management

3 算法仿真

试验采用处于同一局域网的节点来测试云平台系统的消息传递速率及吞吐量。不同用户把具体的消息内容封装在消息体中,对消息服务器进行测试。

试验描述消息服务器在处理大批量消息时的效率及处理不同长度消息时的时效性。本文测试消息的最大长设为200 k。

表1 不同长度消息时效性Tab.1 Tab of message processing time

消息服务器处理不同长度的消息曲线图如图6所示。

图6 消息处理吞吐量曲线图Fig.6 Message processing throughput graph

4 结 语

随着海上通信业务的发展,原有架构的海上通信平台无论在处理速率、存储容量已经越来越不能满足日益扩展的应用需求。而云计算平台构建的虚拟化、分布式的通信信息处理系统能够有效地解决海上通信业务存在的性能瓶颈。

本文在研究现有的海上通信系统及云平台技术的基础上,提出了面向物联网体系的海上云通信平台,并进行仿真。

[1]MARK S,ADITYA A,MARC K.Thrift:scalable crosslanguage services implementation[EB/OL].Facebook,156 University Ave,Palo Alto,CA.

[2]SNIR M,OTTO S,STEVEN H L,et al.MPI:the complete reference[M].MIT Press Cambridge,MA,USA.ISBN 0-262 -69215 -5,1995.

[3]CHEN Kang,ZHENG Wei-min.Cloud computing:system instances and current research[J].Journal of Software,2009,20(5):1337 -1348.

[4]臧丽娜,郑艳娟,张宇敬.面向云计算的船舶生产信息平台建设[J].舰船科学技术,2014,36(12):107 -111.ZANG Li-na,ZHENG Yan-juan,ZHANG Yu-jing.Research on ship production information platform based on cloud computing[J].Ship Science and Technology,2014,36(12):107 -111.

[5]赵德福.基于云计算的船舶动态监控系统设计[J].舰船科学技术,2015,37(2):120 -124.ZHAO De-fu.Ship dynamic monitoring system design based on cloud computing[J].Ship Science and Technology,2014,36(12):120 -124.

猜你喜欢
分布式计算进程消息
一张图看5G消息
债券市场对外开放的进程与展望
改革开放进程中的国际收支统计
晚步见道旁花开
基于云计算的大数据处理与分析综述
基于云计算的移动学习平台设计与实现
云计算中MapReduce分布式并行处理框架的研究与搭建
社会进程中的新闻学探寻
俄罗斯现代化进程的阻碍