VOIP技术中的H.248协议的分析与应用

时间:2022-05-15 12:39:41

VOIP技术中的H.248协议的分析与应用

【摘要】H.248协议是在MGCP协议的基础上,结合其他媒体网关控制协议MDCP的特点发展而成的一种协议。H.248不涉及IP电话的体系结构,只涉及网关分解问题,它不仅可以用于H.323的IP电话系统,也可以用于SIP的IP电话系统。该协议定义的是MGC和MG之间的工作标准。

【关键词】H.248;MGCP;MGC;MG

早在1998年,IETF、ITU-T提出了SGCP(简单网关控制协议)和IPDC(IP设备控制协议),它们一起发展成了MGCP(媒体网管控制协议)。

H.248协议是在MGCP协议的基础上。结合其他媒体网关控制协议MDCP(媒体设备控制协议)的特点发展而成的一种协议,它提供控制媒体的建立、修改和释放机制,同时也可携带某些随路呼叫信令,支持传统网络终端的呼叫。该协议在构建开放和多网融合的NGN中,发挥着重要的作用。

由于MGCP协议在描述能力上的欠缺,限制了其在大型网关上的应用。对于大型网关,H.248协议是一个好的选择。与MGCP用户相比,H.248对传输协议提供了更多的选择,并且提供更多的应用层支持,管理也更为简单。

H.248可应用于 SCN(switched circuit network)、IP、ATM、有线电视网或其他可能的电路或分组网络中的任何的两种或多种网络之间的媒体网关控制的协议。H.248报文本身可以承载在任何类型的分组网络上,例如IP、ATM、MTP等。

这里再强调的一点是:该协议与H.323和SIP不是同一层面的事。H.323协议和SIP协议提出了两套IP电话体系结构,H.248不涉及IP电话的体系结构,只涉及网关分解问题,它不仅可以用于H.323的IP电话系统,也可以用于SIP的IP电话系统。该协议定义的是MGC(媒体网关控制器)和MG(媒体网关)之间的工作标准。

1.H.248协议组成

1.1 连接模型的引入

H.248协议的目的是对媒体网关的承载连接行为进行控制和监视,为此,首要的问题就是对媒体网关内部对象进行抽象和描述。H.248提出了网关的连接模型概念。

连接模型指的是MGC控制的,在MG中的逻辑实体或对象。它是MGC和MG之间消息交互的内容核心,MGC通过命令控制MG上的连接模型,MG上报连接模型的各种信息,包括状态、参数、能力等。模型的基本构件包括:终端和关联域。

终端是一种逻辑实体,用来发送/接收媒体流和控制流。终端可以分为:半永久性终端、临时性终端、根终端。

关联域是一些终端具有相互联系而形成的结合体。当这个结合体中包含两个以上终端时,关联域可以描述拓扑结构(谁能听见/看见谁),及媒体混合和交换的参数。一个关联域可以包含多个终端。

1.2 描述符

描述符常用作命令的参数,一个命令可以携带多个描述符。它可以嵌套,即一个描述符可以是另一个描述符中的一个参数。描述符由描述名称和一些参数项组成,参数可以有取值。一个命令可以共享一个或者多个描述符。描述符可以作为命令的输出结果返回。在返回的描述符内容中,空的描述符只返回它的名称,而不带任何参数项。

1.3 封包

由于应用的多样性和技术的不断发展,新的终端和特性要求会不断出现,为此,H.248协议定义了一种终端特性描述的扩展机制:封包描述。凡是未在基础协议的描述语中定义的终端特性可以根据需要增补定义相应的封包。封包中定义的特性用{packageID,特性ID}标识。

H.248协议正是利用描述语和封包结构,通过相应的命令来指定终端的特性,控制终端的连接和监视终端的性能的。

2.H.248的八个命令

H.248协议定义了8个命令用于对协议连接模型中的逻辑实体(关联和终端)进行操作和管理,命令提供了H.248协议所支持的最精微层次的控制。如图1所示。

H.248协议规定的命令大部分都是用于MGC对MG的控制,通常MGC作为命令的始发者发起,MG作为命令的响应者接收。但是Notify命令和ServiceChange命令除外,Notify命令由MG发送给MGC,而ServiceChange命令既可以由MG发起,也可以由MGC发起。

图1 H.248协议的8个命令

Add命令用来向一个关联中添加终结点;

Modify命令用来修改终结点的特性、事件和信号;

Subtract命令用来向终端从关联中拆除,返回有关该终结点的统计数据;

Move命令用来将一个终结点从当前所在的关联转移到另一个关联;

AuditValue命令获取终结点的特性、事件、信号和统计的当前值;

AuditCapability命令获取终结点的特性、事件、信号和统计等所有的可能值;

Notify命令向媒体网关控制器报告媒体网关中所发生的事件;

ServiceChange命令向媒体网关控制器报告一个或一组终结点将要退出服务或刚刚返回服务。

3.H.248基于事务的消息传递机制

3.1 事务通信机制

MG和MGC之间的一组命令组成了事务(Transaction)。每个Transaction由一个TransactionID来标识事务,Transaction由一个或者多个动作(Action)组成,一个Action又由一系列命令以及对关联属性进行修改和审计的指令组成,这些命令、修改和审计操作都局限在一个关联之内。

3.2 事务响应

事务由事务请求(TransactionRequ-est)发起。对TransactionRequest的响应放在一个单独的事务应答(TransactionReply)里面,在收到TransactionReply之前,可能会先出现一些事务处理中(Transaction-Pending)消息。

事务保证对命令的有序处理,各个事务之间则不保证顺序,如果一个事务中有一个命令执行失败,那么这个事务中的所有剩余命令都将停止执行。

如果命令中包含通配形式的Termina tionID,则对每一个与通配值匹配的Termina tionID执行此命令。

3.3 通信方式

H.248协议的传输机制能够支持在MG和MGC间的事务处理的可靠传输采用三次握手机制。

H.248的传送机制应该支持对在MG和MGC之间的所有Transaction的可靠传输,传输应当与协议中需要传输的特定命令无关,并且可适用于所有的应用程序状态。如果是在IP上传输H.248协议,MG应当实现TCP或者UDP/ALF,或者同时支持两者。

3.4 “重启雪崩”保护

当大量的MG同时加电重新启动时,将同时发起大量的ServiceChange注册流程,此时,由于大量的ServiceChange命令同时到达很可能会使MGC消息处理流程发生崩溃,从而导致在业务重启期间引起消息丢失和网络拥塞。因此,H.248协议建议采用以下规则预防MGC发生这种重启雪崩:当MG加电重启时,应该启动一个重启定时器,并将该定时器值初始化在~MWD范围内的一个随机值。这样每个MG在重启前的等待时间不同,进而避免大量MG同时加电重启。

上一篇:外墙保温技术及施工质量控制 下一篇:车辆多自由度振动系统的建立