基于MGCP协议的VoIP系统研究 无忧电子开发网
来源:百度文库 编辑:神马文学网 时间:2024/10/06 02:31:13
摘 要 以软交换为核心的下一代网络发展迅速,对传统PSTN网络的融合更展示了其内在优势。本文通过对软交换中的MGCP协议的分析与研究,提出了MGCP体系实现模型并对其中各模块进行重点描述。关键词 媒体网关控制协议 媒体网关控制器 媒体网关 VoIP 1 概述以软交换为核心、IP为骨干网的下一代网络将是一种融合的网络,它不仅能够实现传统的电信网络、计算机网络和有线电视网的融合,也将实现固定和移动网络的融合。基于软交换的下一代网络的最大特点就是将业务、传送媒体和控制相互分离。通过媒体网关接入终端设备,使呼叫信令通过IP网来承载,可以大大降低通话的成本和费用。因此研究基于媒体网关控制协议的VoIP成为当前一个热点。 2 基于MGCP的媒体网关控制器系统结构2.1 MGCP协议 媒体网关控制协议MGCP(Media Gateway Control Protocol),顾名思义是用于控制来自外部呼叫控制单元的IP语音(VoIP)网关。MGCP定义了一种呼叫控制结构,在该结构中,呼叫控制与业务承载分离。呼叫控制功能独立在MG(Media Gateway)外部,由称为MGC ( Media Gateway Controller)或CA(Call Agent)的外部呼叫控制单元处理。MG需要执行MGC发出的命令,所以,从本质上说MGCP协议是一个主/从协议。2.2 媒体网关控制器 媒体网关控制器MGC(Media Gateway Controler)也称为呼叫代理(Call Agent)提供信令和呼叫处理功能。具体来说,媒体网关控制器接受来自网关的事件,指示网关如何处理电话的接续,并将语音分组发送到对应的网关上。媒体网关控制器应该既能够处理来自宽带IP网的呼叫,由能够处理传统PSTN网络的呼叫。2.3 媒体网关 媒体网关(Media Gateway)是一种网络单元,负责传统网络上的语音信号和IP网上的分组数据之间的转换。根据其所在网络中的位置不同用于实现不同体系结构的网络之间的互联互通,其类型有中继媒体网关,接入媒体网关等。 3 基于MGCP的VoIP系统研究3.1 MGCP系统的实现模型。 MGC和MG是通过MGCP协议进行通讯的,而MGCP协议又是基于UDP(User Datagram Protocol)传输的。 MGC向MG发送指令,从而控制MG将电路交换的语音转换为分组流,或者反之,也能够将来自外部网络的分组或信元数据流连接封装为RTP(Real- time Transport Protocol)格式的分组或信元流。因此,MGCP系统实现主要涉及三个模块:MGC模块、MG模块和UDP模块。 本文考虑的MGCP系统实现由一个媒体网关控制器、一个媒体网关和UDP组成,其中,媒体网关控制器由MGC模块表示,媒体网关由MG模块表示,UDP由 UDP模块表示。MGC模块有一个mgc_udp接口,该接口的主要功能是MGC下发消息给MG或者回应MG发给MGC的消息。MG模块有三个接口:一个 mg_udp接口、一个mg_media_udp接口和一个mg_user接口,mg_udp接口用来发送MGC下发消息的响应消息或者上报消息给 MGC,mg_media_udp接口用于发送通话过程中的媒体流比如语音或者其他数据,mg_user接口功能则是MG检测用户摘、挂机等事件和信号以及时上报给MGC或者MGC控制MG对用户进行放音信号等的下发(例如拨号音)等。UDP模块有三个接口:一个udp_mgc接口、一个udp_mg的接口和一个udp_media_mg。前两个接口的功能主要是提供MGC和MG交互的平台,最后一个接口是完成MG侧的媒体流和MGC侧的分组信元的转换。 图3 MG模块当事务处理控制模块收到一个命令消息时,根据事务处理识别符检查最近接收到的事件清单,如果没有相应的事务处理,则将其作为一个新的事务处理存储在事件清单中,并转发给连接控制模块。如果发现相应的事务处理,则将对应的响应置于事件清单中并重发该响应。当连接控制模块检测到处于“请求事件”状态中的端点事件时,就向事务处理控制模块发送NTFY消息,由事务处理控制模块将该消息封装成UDP分组并转发给MGC。随后,连接控制过程进入通知状态。在通知状态下,连接控制模块不会发送另一个NTFY消息,也不能通过事务处理控制模块处理来自MGC的RQNT消息。来自MGC的响应消息和RQNT消息可能是乱序的,但连接控制模块将在收到RQNT消息后,首先将其暂存起来,直至收到响应消息后才会退出通知状态。此后,连接控制模块对RQNT消息进行处理并通过响应消息进行回应。当连接控制模块收到CRCX、MDCX或DLCX消息后,会将其转发到数据控制模块中,由数据控制模块负责检查资源限制并通过对应的连接标识符和地址进行响应。3.4 UDP模块 UDP模块的功能就是用来承载信元包的转发,用来将一个信元分组从源地址转发到目的地址。该过程能够仿真网络的一些属性,如随机丢弃部分分组或者以乱序的方式发送分组。在MGCP系统中分别向MGC和MG提供接口。udp_mgc接口和udp_mg接口协助完成MGC和MG之间信令的交互,udp_media_mg接口主要协助实现MG用户端点侧的媒体流和MGC侧分组信元之间的格式转换。 4 结束语本文针对基于MGCP的VoIP系统实现进行了详细说明,总体分为三个模块,对其中关键技术模块MGC模块和MG模块进行深入分析。然而现实中开发产品应用还需要考虑其他方面的因素,如服务安全质量QoS,网络地址转换NAT,计费等等。这些因素都还需要进一步的研究。 参考文献:[1] IETF.Media Gateway Control Protrol.RFC2705,1999[2] 糜正琨,王文鼐.软交换技术与协议,人民邮电出版社,2003[3] 魏航,杨学良.下一代网络(ngn)的体系结构与软交换协议,计算机应,2003.12第12期