论文部分内容阅读
传统的集群通信系统是在特定的频段上利用对讲机进行单工或者半双工的通信,这种通信方式不仅占据宝贵的频率资源,而且需要携带笨重的无线电台作为发射设备,非常不方便。而且单工或者半双工的通信方式效率非常低,不适用于实时通信的应用场景。随着网络通信技术,尤其是VoIP技术的发展,人们可以通过低廉的费用方便快捷地实现语音通信。本文基于语音通信功能在移动终端上的应用,利用人们周围免费的WiFi网络环境,给出了在局域网中实现集群语音通信的方法。文章提出一种在局域网中构建集群双工语音通信系统的方案;针对回声消除模块在集群通信系统中的应用,给出了基于SessionId的信号同步方法;然后实现了一种可优化系统资源分配的方法;并在多线程模型和反应器模式的基础上给出一种融合二者优点的事件处理机制。本文提出一种在局域网范围内快速构建集群双工语音通信系统的架构方案,实现了高可重用的模块化设计。在C/S模型的基础上遵循分层设计原则,将用户交互、数据传输、数据存储、接入控制、资源分配、语音合成等模块按照特定的组织方式有机地结合为一个完整系统,通过松耦合的模块化设计方法,实现了高稳定、可重用和易于扩展的系统架构。语音通信系统中往往需要回声消除模块,在将回声消除模块移植到集群通信系统的过程中,需要解决近端信号和远端信号位于不同线程时的同步问题,对此,文章实现了基于SessionId的信号同步方法,保障了回声消除模块的正常运作。针对集群通信用户的动态接入和退出,文章给出一种基于高速缓存的优化资源分配策略。在集群通信系统中,用户动态地接入和退出系统,造成系统频繁地分配和销毁数据资源和处理资源,而分配新的资源所耗费的时间将直接导致新用户在接入系统时产生延时,影响用户体验。为了改善这一状况,本文实现了一种高速缓存方法,即采用整型链表存放已退出用户的相关资源,当有新用户接入时,系统首先查看高速缓存中是否有可用的资源,若有,则直接分配给该用户。这种方法不仅加快了用户接入系统的速度,而且避免了资源的频繁销毁和创建,有利于系统的稳定运行。此外,本文分别对多线程模型和反应器模式这两种不同的事件处理机制进行了分析和讨论,然后结合了这两种模式的优点实现了一种融合多线程-反应器模式。根据当前系统中用户的数量,动态地调整系统接收和处理请求的机制,令系统中用户数量较少时能够保证流畅的数据流转,系统中用户较多时能够保证新用户的及时接入。经过测试,本文所提出的构建集群语音通信系统的方法方便有效,用户接入系统的失败率低、速度高,语音通信过程流畅,无回声,具有实际应用价值。