通信与网络 Communications&Networks 基于SIP协议的模拟电台语音通信系统设计 Design of simulators radio voice communication system based on SIP protoco 牟健何波贤岳明王岩 92724(山东青岛266108) 摘要:为了提高模拟电台训练系统的仿真程度,在模拟电台语音通信系统中以计算机网络通信技术为核心,构建一种基于 s1P协议的语音通信技术 经过实验测试,在多部电台模拟器之间相互构建语音组网通信时延小 ̄200rns,音质清晰,能够 清楚分辨出发话人的语音特征,满足了设计的要求 关键词:SIP协议;模拟电台;语音通信 DOI:1 O.3969/j.issn.1 00S・551 7.201 7.1.01 2 牟健(1988一),男, 页士,研究方向:无线电通信;何波贤,男,讲师,研究方向:无线电通信 引言 当前大部分模拟电台训I练系统基于电台界面的操作,对 语音通信交互及组网的构建存在一定的缺陷,随着计算机技 术及仿真技术的飞速发展,以局域网为依托,利用计算机技 及网络电话设备,极大地推进了SlP协议技术的发展。 1 SIP协议 SIP(Session Initiation Protoco1)是一个基于IP应用层控制 术,基于SIP协议的多线程即时语音通信技术,构建模拟仿真 电台一对一、一对多、多对多的即时语音通信组网效果,以 适应当前开展多元化、现代化的仿真模}L ̄UJII练需求。 SIP协议是一种网络电话协议,可以在局域网络中即时构 协议,继承了互联网通信一些设计理念,它高效、稳定、简 单、扩展方便而又不缺乏灵活性,可以在几分钟之内构建出一 个可以在多系统平台运行的服务器和客户端。主要功能是以服 务器为中心,即时建立、调整、撤消客户端的呼叫与会话,同 时可进行用户定位、用户交换、呼叫建立、处理等,构建完整 的语音通信网络系统。 P代理客户端 ̄E]SIP服务 SIP协议采用了C/S模式 包括SI器。其中,代理客户端是一个 交互的系统接口,又分为负责 发起SIP呼叫请求的用户代理客 户端和负责对呼叫请求做出响 应的用户代理服务器。而SIP ̄E 建一对一、一对多、多对多参与者之间的语音交互通信。由 于SIP协议开源、简单、快捷、灵活、扩展性强等特点,当前 国内外企业研制出很多基于SIP协议的视频语音会议解决方案 务器主要包括注册、代理、位 置、重定向服务器,它们之间 — ]・ SIP注册 -r 可以共存于一个设备当中,也 可以分布在整个物理实体中 S l P服务器并不依赖硬件系统, 完全是基于软件实现的文本协 SIP信息处理 图1总体框图 图2 SIP注册流程 5 6 ELECTRONIC ENGINEERING&PRODUCT WORLD 201 7 责任编辑:王金旺 其中,SIP注册是认证各电台模拟训练器子系统组网的状态: 语音处理模块包括语音采集、播放、编码和解码过程:实时语 音传输主要包括SIP线程、发送线程、接收线程和网络状态反 馈线程;SIP信息处理主要记录各模拟电台通信组网状态,发 起或拆除语音系统组网以及相对应的消息处理,实时调整处于 不同组别电台模拟训练器的组网连接状态。 3模块具体实现 3.1 SIP注册 SIP服务器设置在主控计算机上,主控计算机lP地址设置 为:168.192.1.1,端口为:5060;每一台电台模拟器在系统 中充当SIP客户端,设置的lP地址为:1 68.1 92.1.(2—1 2),端口 图3语音处理流程 为5061—5071。根据C/S模式把主控SIP ̄E务器、电台模拟器进 行组网连接,如图5所示,并依次分配 IP、端口地址、用户名字,以及设定 的密码。此系统第一次使用时,需要 取tile务器的注册认证,否则无法进 行组网通信,SIP的注册过程如图2所 不O 第一步,首次启动语音通信时, 图4语音传输流程 图5邀请加入组网流程 SIP客户端先通过局域网向安装在主控 计算机上的SIPIE务器发起REGISTER 注册申请: 议,主要负责接收和处理用户端请求、注册、鉴权、认证、处 理呼叫相关信令的网络等服务。 SIP作为一个开源的协议栈,编码方式是采用扩展的 B N F范式来规定的,不是一个垂直集成的通讯系统,本身不 提供服务,往往与实时数据传输协议(RTP)、实时流协议 (RSTP)、媒体网关控制协议、会话描述协议(SDP)等协 同合作,来实现不同的网络通信服务,构造完整的多媒体网络 通信架构。同时,SIP的技术核心是采用了标准C语言编写开 源的0SIP协议栈,并可在VC6.0编译器中运行,并为语音通信 提供了一些解析消息的API和事物处理状态机。 第二步,SIPJ ̄E务器对SIP客户端进行查询并认证该客户的 信息,确保这名客户信息是一个新的用户,服务器对该用户返 回401 Unauthorized质询信息及所需的安全认证令牌; 第三步,用户根据服务器的提示,输入相应的标识及用 户信息,再次向服务器发出REGISTER ̄j息请求; 第四步,服务器收到请求后,检查用户信息的正确性, 质询信息验证用户的合法性,若是用户信息错误,返回失败, 若是户信息合法,把用户信息保存到数据库当中,最后返回成 功的相应消息200 OK。 2设计思路 SIP协议的语音通信模块设计的目的是把分布在计算机局 域网内的半实物电台模拟器实时构建语音通信网,该语音通信 网络的设计主要采用模块设计,各模块之间松耦合且相对独 立.主要的模块包括:SIP注册模块、语音处理模块、实时语 3.2语音处理模块 当客户端完成注册验证之后,由主控计算机选择相应的 电台模拟训l练器进行组网,构建SlP语音会议通信系统。语音 的采集是由模拟电台训练器终端负责语音采集,语音处理的流 程如图3所示,首先判断手咪的PTT按键是否触发,若是没有 被触发,该电台模拟训l练器处于接收语音状态,即时对语音信 音传输模块、SIP ̄J息处理模块。模块的总体框图如图1所示。 www.eepw.com.ca 201 7.1 5 7 通信与网络Communications&Networks 息进行解码 主控计算机 端发送相对应的会议号,各电台模拟器终端根据接收到的会议 号,向主控发送I NVITEi ̄息,请求加入相对应的会议号,具 体的流程如图5所示。首先主控SIP ̄JE务器根据创建的会议号向 模拟器客户端提出邀请INVITE消息,带有新的协商信息;然 后模拟器客户端回复200 OK,并将协商后的信息带回;最后服 务器发送ACK给模拟器客户端进行答复,成功邀请新的成员 加入组网,即时可进行语音通信。 退出组网模式是基于电台模拟器工作参数的改变,当某 电台的工作参数发生改变时,该电台模拟器需要向主控服务器 发送BYE消息进行申请退出当前会议号,服务器接收 ̄UBYE请 求后,对该模拟器语音通信链路进行切断。 当系统内所有模拟器的工作参数不相同或退出组网模拟 及播放:若 是被触发, 该电台模拟 训练器进行 语音采集, … 初始化语音 存储的数据 电台模拟训练器1 训练器2 图6系统的框架结构 _iJll练器n 结构.调用 录音设备 并根据电台设定的电磁干扰类型的强度,对语音信息进行编 码,当保存数据的缓冲区满时,对语音数据进行打包,并发送 到会议系统中进行组播。 时,组网结束,主控服务器会向所有模拟器终端发送BYE请 求,中断所有的组网。 3.3语 传输模块 语音传输模块包括SIP线程、发送线程、接收线程和网络 状态反馈线程四个线程,为了满足建立多线程 ̄9c/s模型和严 格的异常处理机制,局域网中采用UDP协议进行传输。UDP 协议传输是一种单向的传输方式,事前不必与对方进行连接, 直接发送数据,例如微信,不用担心对方是否在线,都可以向 对方发送数据,不仅可以实现一 多点的数据广播,还可以进 4系统测试 电台模拟器训练系统主要有主控计算机、局域网、电台模 拟训练器组成,如图6所示。其中把SlP的注册服务器、代理服 务器、位置服务器及重定向服务器安装在一台主控计算上,每 一行用户分组通信,具有通信效率高,占用网络资源少等特点。 然而UDP协议存在的缺点是存在数据的丢包现象,不能完全确 保对方接收到完整的数据包。为了解决这种问题,采用了三个 UDP控件,如图4所示,MUUDP1负责SIP线程及网络转状态反 台电台模拟训练器都是基于ARM11的嵌入式SIP客户终端, 以局域网技术为依托,构建电台模拟训练系统强大的语音交互 网。在模拟电台通信过程中 主控计算机周期扫描模拟电台训I 练器的工作参数,用模拟器工作参数相同的组合构建实B-,JB ̄语 音通信网,经过测试,通信延时小于200ms,音质清晰,能够 清楚分辨出发话人的语音特征,满足了设计的要求。 馈线程,MUUDP2负责语音发送线程,MUUDP3负责语音接 收线程,这样可以有效地解决传输信息存在的丢包现象。 3.4 SIP信息处理模块 当主控在进行组网语音通信时,根据当前所有电台模拟 器设置的工作参数进行组网,在主控服务器中生成模拟器会话 会议号,例如根据1号、5号、8号电台模拟器设置的工作参数 一5结论 本文基于局域网通信技术,利用SIP协议,构建了电台模 拟训练系统的语音通信系统,并在VC6.0平台上编译通过,实 致,建立组网号1 86001,1、5、8号电台模拟器就可以在 现了多台电台模拟训练器之间的组网语音通信,通信效果良 好,对电台模拟器的语音仿真训练具有很强的 网、加入组网、退出组网、结束组网等步骤。 创建组网方式采用即时会议的形式进行,首先主控服务 实际参考价值。 构建的网络内进行语音交互通信。组网的过程一般包括创建组 器对每台电台模}1:.tkill练器工作参数进行周期扫描,并进行匹配 对比,若发现电台的工作参数有相同的组合,则即时生成新的 参考文献: 会议号进行组网。 l j 器 肇, 籍 鲥 “ d。 加入组网方式采用Cal Iln方式,当建立组网完成之后, 主控利用即时消息的方式向具有相同工作参数的电台模拟器终 【3】杨俊智.基于lP的可视电话中H 263+编码器的买现及其优化【D】浙江大学.2003 _44] Wind River Systems lnc Tornado API Guide 1 0 1[z】Alameda.CA.2002 5 8 ELECTRONIC ENGINEERING&PRODUCT WORLD 201 7.1