学海荡舟手机网

主页 > 实用文摘 > 教育文摘_07 > > 详细内容

H.248/Megaco协议在全IP网络中的应用_通信网络论文

  摘要:软交换和全ip网络是通信技术发展的趋势。介绍了应用于mgc和mg之间的h.248/megaco协议,以及如何在tcp和udp上传输该协议的各种消息。讨论了提高该协议在ip网上传输安全性的两种方法。

    关键词:h.248*megaco 软交换 全ip网络 安全

随着ipv6技术的成熟和市场的发展,网络的全ip化是未来通信网络发展的必然趋势,传统电路交换网和互联网也正在正经相融合,电信网的核心部分将演化成为单一的分组网络。作为下一代网络(ngn)控制核心的软交换,结合了传统电话网络可靠性和ip技术的灵活性、有效性等优点,是传统的电路交换网向分组化网络过渡的重要网络概念。软交换的核心思路就是通过业务与呼叫控制分离能主呼叫控制与承载分离实现相对独立的业务体系,使业务真正于网络,灵活有效地实现业务的提供。因此将传统的网关分解为媒体网关控制器mgc(media gateway controller)和媒体网关mg(media gateway),这种结构的最大好处在于业务和网络规模具有良好的可扩展性。

媒体网关可以划分为中继媒体网关、atm中继媒体网关和综合业务媒体网关等类型,主要用于终结电路交换网的媒体流以及负责各种用户或接入网的综合接入。媒体网关控制器则对与媒体网关中的媒体通道的连接控制相关的呼叫状态部分进行控制。目前,媒体网关控制器与媒体网关之间通过h.248/megaco协议进行通信。媒体网关控制器可以通过它实现对媒体网关的控制,媒体网关也可以通过向媒体网关控制报告用户端的事件,从而实现正常的通信。

1 软交换的体系结构及h.248/megaco协议

软交换设备(soft switch)也称为呼叫服务器(call server)或者媒体网关控制器mgc,它是ngn的控制功能实体,为ngn提供具有实时性要求的业务呼叫控制和连接控制功能,是呼叫与控制的核心。mgc的功能主要包括呼叫控制功能、业务提供功能、业务交换功能、资源管理功能、互联互通功能、sip代理功能、媒全网关接入功能等。软交换网络从功能上可以分为应用层、控制层、传输层和接入层,如图1所示。

应用层利用底层的各种网络资源为用户提供丰富多样的网络业务。主要包括应用服务器as(application server)、aaa服务器(authority authentication and accounting server)、策略服务器ps(policy server)和智能网scp等。其中最主要的功能实体是应用服务器,它是软件交换网络体系中业务的执行环境。

控制层主要提供呼叫控制、连接控制、协议处理等能力,并为业务层提供访问层各种网络资源的开放接口。该层的主要组成部分是mgc。

传输层负责提供各种信令和媒体流传输的通道,网络的核心传输网将是ip分组网络。

接入层提供各种网络和设备接入到核心骨干网的方式和手段,主要包括信令网关、媒体网关、接入网关等多种接入设备。

在通信系统中,控制是通过协商解决的,相应地就必须有协议。在ngn体系结构中,软交换作为控制中心,正是通过支持h.248/megaco、sip、sigtran、bicc、h.323等多种协议实现的。

软交换设备之间采用sip(session initiation protocol)协议或者bicc(bearer independent call control)协议,软交换设备与信令网关之间采用信令传送协议sigtran(signaling transport)在ip网络中传递电路交换信令。在软交换设备与媒体网关、h.248终端以及接入网关之间则采用h.248/megaco协议。

h.248/megaco协议是2000年由itu-t第16工作组提出的媒体网关控制协议,它是在早期的mgcp协议(rfc2705)基础上结合其它媒体网关控制协议特点发展而成的种协议。它提供控制媒体的建立、修改和释放机制,同时也可携带某些随路呼叫信令,支持传统网络终端的呼叫,解决了h.323的复杂、伸缩性差着问题,是下一代网络关键的媒体网关控制协议。

h.248/megaco的另一个特点是消息格式既可以采用文本格式,也可以采用asn.1的二进制编码格式。在对媒体流进行描述时,如果消息格式是文本格式,则采用sdp描述媒体流。如果消息格式是二进制编码格式,则使用协议规定的编码。因此在协议实现时,若要求各厂商设备互通,就需要实现两种编码方式。这一特点是ietf和itu-t合作的结果。h.248/megaco协议中的主要概念有终结点、关联和包:

(1)终结点(termination)是媒体网关上的一个逻辑实体,能够发送和接收一种或多种媒体,如模拟用户接入网关中的电话线、中继网关中的中继电路,一个终端在任一时刻属于且只能属于一个关联。

(2)关联(context)是一些终端之间的联系,描述了终端间拓扑关系和媒体混合/交换的参数,表示一组终结点之间的连接关系。在一个关联中可以存在若干个终结点,其数目完全由媒体网关的特性决定。空关联表示所有与其它终点没有联系的终结点。

(3)包(package)通过允许终结点具有可选的特性、事件、信号和数据,媒体网关控制协议实现了对具有不同特点的终结点的支持。同时,为了实现媒体网关与媒体网关控制器的互操作,这些可选项可以被组合成包。

h.248/megaco协议建立了多种传输机制,保证了协议消息在媒体网关和媒体网关控制器之间的可靠传输。

2 tcp/udp协议的区别及运用场合

h.248/megaco定义的各种协议消息既可以在tcp上传输,也可以在udp上传输,tcp和udp之间的主要区别是可靠性和复杂度。

tcp协议可以提供端到端可靠的数据传输。tcp协议采用了多项提高可靠性的技术以克服底层ip网络传输的不可靠性,它并不区分结构化的数据流,只支持数据流的传输。应用程序必须在连接之前了解数据流的内容,并对其格式进行协商,对数据流的进一步处理完全留给应用程序本身来完成。tcp也允许用户指定连接的安全性和优先级,这两个功能并非是现在所有的tcp产品中都有,但在tcp标准中作了定义。tcp协议还提供了全双工联接、向应用进程提供push功能和流量控制。

udp协议面向应用程序提供数据传输服务,并且支持组播。与ip层相比,ip层只负责互联网上的一对主机之间的数据传输,实现主机间的通信;而udp层通过端口机制标识同一主机上运行的多个进程,完成进程间通信。与tcp协议相比,它们同属于传输层,都是完成面向进程的数据传输服务。不同之处在于,tcp协议提供的是面向连接的、可靠的数据传输服务,而udp提供的是面向无连接的、不可靠的数据传输服务。

所以,对广播或多播应用程序必须使用udp。此时任何期望的错误控制必须加入到应用程序中。udp也可以用于较简单的请求一应答式应用程序,但是应用程序内部必须有检查错误的功能,至少涉及确认、超时和重传。udp不适用大量数据的传输,因为大量数据的传输要求将窗口式流控、拥塞避免和慢启动等特性在应用程序中实现,这也意味着要在应用程序中重建tcp。

利用udp传输h.248/megaco消息时,如果对等实体没有提供相应的通信端口,各种指令应当被送到默认端口上:对于文本编码的操作,端口号应当使用2944;对于二进制编码操作;则端口号应当使用2945。在udp上传输消息可能会发生丢失,如果没有及时响应的话,命令就会重复,从而导致mg状态的不可预料性,所以,传输进程必须能够提供一种“at-most-once”功能,以防止命令的重复执行。

利用tcp传输h.248/megaco消息时,如果对方没有提供端口的话,各种指令应当被送到默认端口上。tcp是一个基于流的协议,使用tpkt来描述tcp流中的各种消息。在面向事务的协议中,事务请求与响应消息仍然有可能由于这样那样的原因而丢失。因此,建议各种实体使用tcp传输机制作为每一次请求和响应过程实现应用层的定时器,这一点与对udp上应用层帧结构的描述是类似的。

虽然在tcp上传输的水洗步会发生传输丢失,但是事务请求或其响应消息的丢失在实际实现中仍然有可能发生。如果没有及时响应的话,指令就会重复。大多数指令的操作要求是不一样的。因此,mg的状态是无法预料的,所以,在使用tcp时也应该提供“at-most-once”功能。

另外,在协议中还加入了三次握手机制和计算重传机制来进一步提高协议的可靠性。

3 协议传输安全与加密

由于ip网络是一个开放的网络,极易受到非法攻击。为了防止未经授权的实体利用媒体网关控制协议建立非法呼叫,或者干涉合法呼叫,应当建立一整套严密的安全机制,对此协议的传输进行保护。目前提出了两种方案来解决在ip网络上传输h.248/megaco协议的安全问题:一种是采用ipsec对协议传输进行安全保护;另一种是采用过渡性ah方案。

利用ipsec对h.248/megaco消息的传输主要包括封装安全载荷协议esp(encapsulating security payload)、网络认证协议ah(authentication header)和密钥管理协议ike(internet key exchange)三部分。它规定了如何在对等层之间选择完全协议、确定安全算法和密钥交换,向上提供了访问控制、数据源认证、数据加密等网络安全服务。

封装安全载荷协议esp对媒体网关/终端设备和软交换设备之间传送的消息提供加密,为ip数据包提供完整性检查、认证和加密,在mgc向mg传送会话密钥sk(session key)时用于加密包含密钥的会话描述。

网络认证协议ah对在媒体网关/终端设备和软交换设备之间传送的消息提供数据源认证、无连接完整性保护和可选的抗重发保护。此协议还提供了数据完整性和反重插保证,能保证通信免受篡改,但不能防止窃听,用于保护媒体网关控制器mgc和媒体网关之间的协议连接。

密钥管理协议ike提供媒体网关/终端设备和软交换设备之间进行密钥协商的机制,以保证密钥的安全性。

如果底层协议不支持ipsec,则应建议采用过渡性ah方案。由于ipsec要求ah头或esp头紧跟在ip包头后面,这在应用层上的实现有一定难度,所以h.248/megaco定义了一种折衷的ah头,调整了数据完整性检查的范围,作为在底层操作系统或传输网络不支持ipsec时的一种临时解决方案。过渡性ah方案是在h.248/megaco协议头中定义可选的ah头来实现对协议连接的保护,过渡性ah方案只能提供一定程序的保护,例如该方案不能提供防窃听保护。同时,为了保护在媒体网关之间传输的媒体流免受由非法实体发起恶意攻击,媒体网关控制器也可以通过媒体网关控制协议向媒体网关提供会话密钥,用来对音频消息进行加密。

由于ipses工作在网络层,在当前的ipv4网络上完全实现h.248/megaco的安全机制有一定难度。另外,h.248/megaco协议采用的ipsec对系统性能有较大的影响,这种影响在采用公钥算法对数据包进行加解密时尤其明显。与ipv4不同,ipv6已经把ipsec集成到了自身协议中,通过ipsec提供ip层的安全性。ipv6实现了认证头ah和封装安全载荷esp两种机制,前者实现数据的完整性及对ip数据包的来源的认证,保证分组确实来自源地址所标记的节点,后者提供数据加密功能,实现端到端的加密。

3gpp已经决定以ipv6为基础构筑下一代移动网络,很多通信厂商正致力于构建基于ipv6的全ip的3g核心网(a11-ip core network)。3gpp r4以及随后的r5结构中都将传统的msc分割成mgc和mg,它们之间采用h.248/megaco等协议相互通信,从而实现呼叫控制和处理,与网络承载相分离。因此基于ip的h.248/megaco协议的应用,以及适应ipv6环境的进一步发展,是未来移动通信研究的一个重要课题