对讲系统设计中的移动网络论文

时间:2022-01-30 10:27:58

对讲系统设计中的移动网络论文

1功能设计

移动网络对讲系统的基本功能是通过移动终端实时对讲,即像传统对讲机一样,当调节到相同频道后,实现一人发送多人收听的功能。另外,移动网络对讲系统还应该包括以下辅助功能:用户管理、频道管理和对讲管理三大部分。

(1)用户管理:实现用户的注册、登录和资料维护等功能。

(2)频道管理:建立频道,删除频道等功能。

(3)对讲管理:对讲内容,对讲内容收听,对讲内容重听,删除对讲内容等功能。

2系统概要设计

网络对讲系统的所有功能中,如何实现实时语音对讲是系统开发的难点和关键。一般说来可以通过Socket编程,自定义应用层协议,通过服务器中转语音发送的办法,实现一对多的语音广播。但是,这种实现方法的有如下缺点:

(1)需要使用长连接。长连接指客户端和服务器长时间保持着连接,以便随时收发对方消息。长连接的方式客户端的数据流量和功耗要求非常高,不太适合应用与移动终端的开发。

(2)开发难度大。要全完自定义应用层协议,需要考虑很多因素和解决很多问题,实现困难。

(3)开发的时间成本高。

(4)系统的耦合性高,不利于系统的扩展和维护。那么,有没有一种已有的协议实现一对多的数据推送呢?答案是肯定的,那就是MQTT协议。MQTT协议:(MessageQueuingTelemetryTransport,消息队列遥测传输)是IBM开发的一个即时通讯协议,有可能成为物联网的重要组成部分。该协议支持所有平台,几乎可以把所有联网物品和外部连接起来,它被用来当做传感器和致动器的通信协议。该协议是为大量计算能力有限,且工作在低带宽、不可靠网络的远程传感器和控制设备通讯而设计的协议。

MQTT协议具有以下主要的几项特性:(1)使用/订阅消息模式。(2)对负载内容屏蔽的消息传输。(3)使用TCP/IP提供网络连接。(4)有三种消息服务质量。“至多一次”,消息完全依赖底层TCP/IP网络。会发生消息丢失或重复。这一级别可用于如下情况,环境传感器数据,丢失一次读记录无所谓,因为不久后还会有第二次发送。“至少一次”,确保消息到达,但消息重复可能会发生。“只有一次”,确保消息到达一次。这一级别可用于如下情况,在计费系统中,消息重复或丢失会导致不正确的结果。(5)小型传输,开销很小(固定长度的头部是2字节),协议交换最小化,以降低网络流量。(6)使用LastWill和Testament特性通知有关各方客户端异常中断的机制。目前,MQTT协议被大量用在移动终端客户程序的消息推送领域,相关的技术资料比较丰富。基于以上特点,在开发基于移动终端对讲系统时,使用MQTT协议作为服务器和终端的消息广播协议是非常好的选择。当然,只是MQTT协议是不够的,为实现本系统的功能还要用到其他技术包括:HTTP协议、移动终端开发技术和服务器开发技术。

3系统架构设计

移动网络对讲系统,采用松散的系统结构,整个系统由Web服务器、MQTT服务器、移动终端和PC端四部分构成。其中,Web服务器负责数据库管理、语音文件存储、提供语音下载、向MQTT服务器推送语音描述信息等功能。MQTT服务器负责语音文件描述信息;移动终端负责语音的采集与编码,语音上传,数据更新请求的发送,用户交互界面呈现等;PC终端主要负责通过服务器的管理平台,对数据进行管理,对磁盘进行优化等工作。系统各部分应用的协议和数据收发关系,Web服务器也作为MQTT的一个终端和移动端共同关注MQTT服务器的某个主题(频道),当Web服务器收到移动端上传的语音后,生成包含语音长度,语音存储地址,发送人等基本信息的描述信息,然后以JSON格式发送到MQTT服务器,MQTT服务器自动将收到的语音描述信息下发到每一个移动端,从而实现语音描述信息的广播。在系统的实际工作中,系统各部分进行传递的数据格式在实际的应用开发过程中,可以使用XML来替代JSON和HTML。移动网络对讲系统的主要工作流程如下:某移动端采集语音并上传给Web服务器,Web服务器存储语音文件并在数据库中记录语音信息,然后使用MQTT协议将语音描述信息发送给MQTT服务器的指定频道,MQTT服务器将该描述信息广播给全体关注了该频道的所有移动端,移动端收到语音描述信息后,根据描述内容到Web服务器下载语音文件并播放语音。综上所述,利用MQTT的关注/机制可以很好的实现一对多的语音文件描述消息群发,大大降低系统的开发难度。

4结束语

在基于MQTT的移动网络对讲系统架构设计过程中,由于采用标准的互联网协议,具有各部分之间的结构松散、耦合性低,移植性好、扩展性强、开发风险小、开发难度低等特点。本系统架构可以广泛的应用于网络语音对讲,视频对讲系统的开发。本系统架构设计对各类即时通信软件开发具有一定的参考价值。。

作者:张翼单位:黑龙江东方学院