基于Ad Hoc网络的应急通信系统设计与实现
2015-04-25张衡阳毛玉泉肖蕾蕾
朱 庆,张衡阳,毛玉泉,肖蕾蕾
(空军工程大学 信息与导航学院,陕西 西安710077)
在一些复杂环境如军事、消防、抗震救灾等缺乏基础设施支持的情况下对语音通信的需求越来越高,传统的语音传输多基于有线网络[1]或有线网络通信系统,在上述应急场合移动性和抗毁性表现较差,难以快速组网,而现有的无线网络多是基于有中心基站的蜂窝网,同样存在抗毁性能较差、传输距离有限、网络无法进行扩展等缺陷。Ad Hoc技术具备多跳、自组织、抗毁性能强、快速组网等优势,是解决上述问题的最佳方案。设计了一种应急通信系统,该系统是作为前期的验证系统,立足于解决无基础设施支持的复杂环境或紧急场合的短消息和语音通信问题,以Ad Hoc网络技术为基础,依据仿真结果选择OLSR路由协议保障语音传输的实时性和稳定性,以嵌入式ARM[2]为开发平台,结合多媒体网络编程和实时流媒体传输技术[3-4],完成语音视频的采集和多跳传输,选择Speex作为音频编解码解决方案,通过语音噪声抑制、抖动缓冲、自动增益控制、回音消除来保证语音的稳定性。系统比传统的语音集群系统具有更好的抗毁性和可扩展性,能够快速组网,同时支持全双工的语音视频多跳通信,在军事、反恐、治安巡逻等领域有着较大的现实需求和应用价值。
1 路由协议选择
语音视频通信的根本是降低传输延迟和减少语音时延抖动以保证语音视频质量[5],而路由协议的选择对传输延迟和抖动具有重要影响,路由协议是指导数据包从源节点到目的节点而制定的规则和标准,路由协议发现和维护路由,并描述网络拓扑结构,其好坏直接影响着网络的性能,移动自组网的特殊性更是决定了其路由协议的特殊性和重要性。目前存在较多可用的路由协议,根据路由信息产生方法的不同主要分为3种,主动式路由协议,反应式路由协议和混合路由协议,其中比较典型的有AODV[6],DSR,OLSR[7],DSDV,FSR等路由算法,路由性能评价方法如下:
(1)传输时延。定义为源节点发送一个分组到目的节点接收到该分组之间的时间差,其包括信号在介质中的传播时延和数据在网络中的处理时延。计算方式如下:D(i)=RT(i)-ST(i),其中,D(i)表示第i个分组的传输时延;RT(i)表示第i个分组的接收时间;ST(i)表示第i个分组的发送时间。在分析网络传输时延时一般都统计平均传输时延,平均传输时延的计算如下
(2)最大时延抖动。时延抖动是前后数据包的端到端传输时延差,描述的是网络传输时延的变化情况,如果时延抖动大,则表示网络越不稳定。在一些实时信息交互的场合,相比传输时延更关注时延的抖动情况,平均延时可能较小,若时延的抖动大,某些时刻的延时则会过大,会直接影响通信双方交流时的感受[8],计算方式如下:J(i)=D(i)-D(i-1),这里使用来衡量,,Dmin,Dmax分别表示平均时延,以及最小、最大时延。
(3)分组成功传输率。表示源节点发出的数据包被目的节点成功接收的个数。分组在传输过程中,如网路拥塞,接收分组缓冲区太小,无线信号的同频干扰等都容易造成分组丢失。分组成功传输率反映了网络质量,衡量方法是目的节点成功接收分组个数与源节点发送分组个数的比值。
(4)吞吐量。是指在不丢包的情况下,单位时间内节点可接收的数据量。衡量方法如下:,TB(i)指到第i个分组被目的节点接收时已传输的数据总量,RT(i)是第i个包的接收时间。
路由协议的性能比较,前人已开展了较多相关的研究,文献[1]在不同网络负载情况下对AODV,DSR,FSR进行了平均端到端时延和平均抖动时间比较,得出在移动环境下AODV性能指标优于DSR和FSR;文献[9]对AODV,DSDV在不断调节网络拓扑频繁变化程度的情况下进行了比较,认为AODV的分组成功传输率优于DSDV,而DSDV的平均时延略低于AODV;文献[10]对OLSR与DSR进行了比较,得出OLSR在丢包率、吞吐量和网络时延均优于DSR的结论;根据相关理论和仿真结论,此处选取OLSR和AODV进行仿真,以上述4点作为仿真评价依据,使用NS2.35网络仿真[11]软件,通过数据流生成工具cbrgen产生cbr流以及拓扑场景生成工具setdest产生节点运动场景,仿真参数列表如下:
路由协议为OLSR,AODV;仿真时间为300 s;仿真场景为2 000 m×300 m;节点数为50;节点移动模型为随机路点模型,最大25 m/s;数据流为CBR,连接数10;传输协议为UDP;MAC协议:802.11;无线信号传输模型为Two-ray Ground。
通过仿真产生的.tr数据文件,编写awk程序提取分组成功传输率、吞吐量、传输时延、最大时延抖动等数据,作图如下。
图1 分组成功传输率
图2 吞吐量
图3 传输时延
图4 最大时延抖动
如图1所示,当传输速率<370 kbit·s-1时,分组成功传输概率达到90%以上,随着速率增加,分组成功传输概率逐渐下降,AODV下降较快;图2所示,当传输速率<155 kbit·s-1时,二者的吞吐量接近,速率再增加时OLSR优于AODV并相差较大,这是因为节点移动的原因;图3所示,当传输速率低于220 kbit·s-1时,AODV传输时延低于0.1 s,传输速率低于180 kbit·s-1时,传输时延低于0.01 s,而OLSR时延有所上升,但始终低于0.05 s,OLSR路由协议是先验式路由协议,每个节点周期性广播分组来交换路由信息维持全网的路由表,当有数据发送时直接可以查询路由,因此延迟较小,AODV属于反应式路由协议,当有分组到达时还需临时寻找路由,分组需要等待一定时间的延时[12];如图4所示,二者平均时延抖动都随着传输速率的增加而扩大,AODV属于反应式路由协议,当传输速率增加时,路由开销仍然较小,拥塞情况较好,所以平均时延抖动优于OLSR协议,但二者均满足IP语音传输标准的时延抖动要求。系统设计首先得保证语音传输的实时性,结合上述仿真结果中分组成功传输率、吞吐量和时延抖动的表现综合考虑,选择OLSR[13-14]作为系统的路由协议。
2 总体设计方案
2.1 硬件设计
由于要对语音和视频进行处理和存储,使用了Cortex-A8作为主控制芯片,该芯片运行主频可高达1 GHz,适合本设计应用,系统原理框图如图5所示,ARM控制器通过模拟摄像头或数字摄像头采集环境视频信息,经视频数据压缩等处理,对连续视频信息进行记录;ARM控制器通过模拟话筒采集环境音频信息,经音频编解码电路进行语音信号数据压缩等处理,对连续音频信息进行记录,并通过定制的500 mW大功率WiFi将视频信息和音频信息送给相应节点,同时,ARM控制器通过WiFi接收其他节点送来的视频信息和音频信息,通过LCD显示屏进行显示,硬件实物图如图6所示。
图5 系统硬件框图
图6 软件设计结构图
2.2 软件设计
硬件平台搭建好后,依次将Linux,Olsr路由协议,大功率USB WiFi驱动交叉编译后移植到ARM硬件平台,在QT环境下进行软件开发[15-16],软件结构如图7所示,为保证语音的实时性和稳定性,使用Speex的音频编解码方案,Speex是基于CELP并且专门为码率在2~44 kbit·s-1的语音压缩而设计的,编解码性能良好,其能适应于窄带(8 kHz),宽带(16 kHz)和超宽带(32 kHz)等多种采样率,并能够有效检测语音,消除回声,抑制噪声,防止抖动;同时使用H.263+的视频编解码算法,H.263+虽然在压缩效率上不如H.264,但是计算量远<H.264,更加适合于高带宽、低功耗的情况;如图8所示,系统数据通信[17-18]采用无服务器模式,每个用户通过UDP数据广播的方式通知网络内的其他用户,同时在TCP上监听其他用户的接入,当用户接收到其他用户的数据广播,即刻主动发起TCP连接,TCP连接的建立为用户间的可靠的数据报文交换建立了通道。用户在TCP通道交换用户语音视频状态,并通过TCP通道发送语音视频控制指令,用户间可以主动发起或请求语音视频,语音和视频独立采用不同的通道(端口),均采用RTPRTCP协议进行传输。软件开发完成后,进行交叉编译,将软件和依赖的库文件移植到硬件平台,修改开机启动脚本文件,将USB WiFi设置为Ad Hoc模式,并设置软件开机自主启动,至此,软硬件开发完成。
图7 用户间的数据通信模式
3 系统测试
软件启动后,当对方进入通信范围内时,可自动显示对方上线,从而建立用户在线列表。当在线用户列表建立之后,即可进行消息发送和接收、实时语音视频通信,软件界面效果如图8所示,同时可查看网络连接拓扑图,图9是6个节点在室内组成的一个全连通自组网拓扑图。
图8 系统软件界面图
图9 全连通网络拓扑图
测试环境:(1)长1.7 km,宽1.5 km校园开阔环境。(2)建筑物内部,混凝土结构,门窗打开。
在上述环境中验证了系统多跳,路由中继,路由切换,路由恢复等效果,同时测试了传输距离、连通性、传输跳数、音频、视频实时传输等性能,系统测试结果如表1所示。
表1 系统测试结果
4 结束语
立足于解决紧急情况或无基础设施支撑情况下的实时语音通信问题,本系统作为前期的验证系统,实现了预定的设想,验证了路由协议的各种性能,短消息、实时话音、视频通信效果良好。设计中适当加大WiFi传输功率虽然能解决空旷情况下的单跳传输距离问题,但WiFi使用的是2.4 GHz频段,传输能量消耗大,绕射性能差,在一些建筑物内或有较多遮挡情况下,传输距离急剧下降甚至无法连通,因此根据项目需求,下一步需要在433 MHz频段开发新的MAC协议来解决能耗和绕射问题,以进一步完善该语音通信系统。
[1] 常关羽,陈旿.Ad Hoc环境下基于稳定链路的语音通信系统设计与实现[J].小型微型计算机系统,2011(1):107-111.
[2] 别玉涛.基于ARM的无线视频流媒体传输系统的设计与实现[D].长春:吉林大学,2010.
[3] 王晨清.移动环境下流媒体数据传输研究[D].哈尔滨:哈尔滨理工大学,2014.
[4] 陈珏奇,刘峰.流媒体传输技术[J].计算机技术与发展,2012,22(3):6-10.
[5] 李现涛,郭达伟,李杨.一种移动无线自组网即时语音通信系统的实现[J].微处理机,2011,10(5):38-40.
[6]Perkins C E.Ad Hoc on-demand distance vector routing:US,038165[P].2003-11-11.
[7]Clausen T,Jacquet P.Optimized link state routing protocol:VS,031561[P].2003-12-28.
[8] 黄化吉,冯穗力,秦丽姣,等.NS网络模拟和协议仿真[M].北京:人民邮电出版社,2010.
[9]刘洛琨,张远,许家栋.AODV与DSDV路由协议性能仿真与比较[J].计算机仿真,2006,23(2):118-120.
[10]陈晓明,李珊君,蒲华.无线Ad Hoc网络DSR与OLSR路由协议的性能比较[J].通信技术,2009,42(8):199-203.
[11]柯志亨,程荣祥,邓德隽.NS2仿真实验多媒体和无线网络通信[M].北京:电子工业出版社,2009.
[12]陈继彤.多跳无线自组网OLSR路由协议的设计与实现方案[D].成都:电子科技大学,2006.
[13]杨彬.MANET网络中OLSR路由协议研究与改进[D].成都:电子科技大学,2013.
[14]段薇,李大双,姜用广,等.对OLSRv2草案及其相关规范的研究[J].通信技术,2014(5):527-531.
[15]霍亚飞.Qt Creator快速入门[M].北京:北京航空航天大学出版社,2012.
[16]霍亚飞.Qt及Qt Quick开发实战精解[M].北京:北京航空航天大学出版社,2012.
[17]王雷.TCP/IP网络编程技术基础[M].北京:清华大学出版社,2012.
[18]Jon C Snader.高级TCP/IP编程[M].刘江林,译.北京:中国电力出版社,2001.