且构网

分享程序员开发的那些事...
且构网 - 分享程序员编程开发的那些事

【NGN学习笔记】4 软交换中的协议2—Megaco/H.248

更新时间:2022-05-05 07:38:45

1.概述:

软交换设备之间采用SIP(Session Initiation Protocol)协议或者BICC(Bearer Independent Call Control)协议,软交换设备与信令网关之间采用信令传送协议SIGTRAN(Signaling Transport)在IP网络中传递电路交换信令。而在媒体网关控制器(Media Gateway Controller)和媒体网关( Media Gateway )之间则采用H.248/Megaco协议。这是一个呼叫控制协议,媒体网关(MG)受MGC控制,其中渗透着MGC和MG分离的思想:优势在于--媒体转换相对分布在边缘,使得呼叫控制相对集中,可以用相对比较少的MGC控制相对比较多的MG,可以使MGC快速地升级。

传统的VoIP网关 vs MGC与MG分离

【NGN学习笔记】4 软交换中的协议2—Megaco/H.248 【NGN学习笔记】4 软交换中的协议2—Megaco/H.248

左图为其在网络中的位置,右图以阿尔卡特的软交换设备为例。

 

【NGN学习笔记】4 软交换中的协议2—Megaco/H.248 【NGN学习笔记】4 软交换中的协议2—Megaco/H.248

MGCP协议是在MEGACO/H.248之前的一个版本,它的灵活性和扩展性比不上MEGACO/H.248,同时在对多运营商的支持方面也不如MEGACO/H.248协议。 MEGACO/H.248实际上是同一个协议的名字,由IETF和ITU联合开发,IETF称为MEGACO,ITU-T称为H.248。MEGACO/H.248称为媒体网关控制协议,它具有协议简单,功能强大,且扩展性很好的特点。

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

H.248/Megaco的另一个特点是消息格式既可以采用文本格式,也可以采用ASN.1的二进制编码格式。在对媒体流进行描述时,如果消息格式是文本格式,则采用SDP描述媒体流。如果消息格式是二进制编码格式,则使用协议规定的编码。因此在协议实现时,若要求各厂商设备互通,就需要实现两种编码方式。这一特点是IETF和ITU-T合作的结果。

H.248/Megaco协议建立了多种传输机制,其定义的各种协议消息既可以在TCP上传输,也可以在UDP上传输,保证了协议消息在媒体网关和媒体网关控制器之间的可靠传输。

 

2.H.248/Megaco协议中的主要概念:

  • 终结点(Termination)是媒体网关上的一个逻辑实体,能够发送或接收一个或多个媒体流的逻辑功能实体,如模拟用户接入网关中的电话线、中继网关中的中继电路,一个终端在任一时刻属于且只能属于一个关联。终结点定义: TerminationID、PropertyID、Descriptor。 
    【NGN学习笔记】4 软交换中的协议2—Megaco/H.248
    • 半永久性终结点:代表物理实体,如中继线、模拟线;
    • 临时终结点:代表临时性的信息流,如IP资源--一个RTP Port,仅在它们被使用期间存在。

分类:

关联(Context)是两个或多个终结点之间的连接关系,描述了终端间拓扑关系和媒体混合/交换的参数,表示一组终结点之间的连接关系。只有同一个关联中的终结点才能交换媒体,一个终结点在任一时间只能在一个关联中,但是在一个关联中可以存在若干个终结点,其数目完全由媒体网关的特性决定。空关联表示所有与其它终点没有联系的终结点。 
【NGN学习笔记】4 软交换中的协议2—Megaco/H.248
  • ContextID
  • Topology:表示关联中终结点之间媒体的流向
  • Priority:MG处理关联时的优先级

关联的属性

包(Package)通过允许终结点具有可选的特性、事件、信号和数据,媒体网关控制协议实现了对具有不同特点的终结点的支持。同时,为了实现媒体网关与媒体网关控制器的互操作,这些可选项可以被组合成包。不同类型媒体网关可以实现不同的终结点,包用来确定终结点的不同和媒体网关的能力,Megaco的可扩展性主要由包来体现。 
  • 属性(Property):终结点状态属性和媒体流特性
  • 事件(Event):终结点需要检测和上报的事件,如摘机,挂机和拍叉等
  • 信号(Signal):请求MG向终结点施加的信号,如拨号音、忙音和录音通知等
  • 统计(Statistic):指示终结点采集并上报的统计数据

定义

事务交互(Transacition)

MG和MGC之间的命令被封装到事务中,事务交互由TransactionRequest发起,返回结果放在TransactionReply中,TransactionPend周期性地报告Transaction的执行情况。

事务交互特点:保证命令的按序执行,但不同的事务可以以任何顺序执行,事务处理都是原子操作。

3.Megaco命令

  • Add:MGC->MG,向一个关联添加一个终结点,当向一个关联添加第一个终结点时,同时创建一个关联。
  • Subtract:MGC->MG,解除一个终结点与关联的联系,并把该终结点放入空关联,当删除关联中最后一个终结点时,同时删除了这个关联 。
  • Move:MGC->MG,将一个终结点从一个关联转移到另一个关联,不能用来将终结点从空关联中移走和移入。
  • Modify:MGC->MG,修改一个终结点属性、事件和信号,指示检测相关的事件
  • Notify:MG->MGC,报告媒体网关中所发生的事件
  • AuditValue:MGC->MG,获取与终结点的当前属性、事件、信号。
  • AuditCapability:MGC->MG,获取媒体网关所允许的终结点特性、事件和信号的所有可能值的信息
  • ServiceChange:MG->MGC/MGC->MG,报告终结点将要退出服务或者恢复服务,MGC指示应退出服务或恢复服务的终结点,报告终结点的能力发生了改变,MGC将对MG的控制权移交给其他的MGC。

4.描述符(Descriptor)

  • 媒体描述符(Media):描述所有的媒体流,包括一个终结点状态描述符和多个流描述符。
  • 终结点状态描述符(Termination State):与媒体流无关,表明业务状态特性和事件缓存特性,终结点状态--Test, in service, out of service。
  • 流描述符(stream):描述单个双向流:本地流的特性,远程流的特性,包括本地控制描述符、本地描述符和远程描述符。
  • 本地控制描述符(local control):媒体流特有的属性模式,receive-only/send-only/send-receive/inactive。
  • 本地描述符(Local):描述MG接受到的媒体的编码格式。
  • 远端描述符(Remote):描述MG发出的媒体的编码格式。
  • 事件描述符:包括RequestID和一组MG需要检测和报告的事件。
  • 调制器描述符(Modem):对调制器的类型和参数进行定义。
  • 复用描述符(Multiplex):将媒体和对应的承载通道联系在一起。
  • 事件缓存描述符(EventBuffer):一系列需要检测和缓存的事件,对检测到的事件的处理模式。
  • 信号描述符(Signal):MG应用于终结点的信号集
  • 审计描述符(Audit):向MG指示要进行审计的信息,一个其他描述符的集合。
  • 业务改变描述符(ServiceChange):只能用于ServiceChange命令,描述改变的模式、原因、时间等
  • 数图描述符(DigitMap):规定作用于MG中的拨号方案,用于检测和报告在终结点处接收到的数字
  • 统计描述符(Statistics):描述关联中终结点的统计属性。
  • 包描述符(Packet):用于AuditValue命令,返回终结点实现的包的列表。
  • 被观察事件描述符(ObservedEvent):向MGC报告检测到的事件
  • 拓扑描述符(Topology):描述关联中终结点的流方向(T1,T2,联络)
  • 错误描述符(Error):向MGC报告错误

5.典型交互流程

控制中继网关:与ISUP协议配合共同完成中继呼叫。

【NGN学习笔记】4 软交换中的协议2—Megaco/H.248 【NGN学习笔记】4 软交换中的协议2—Megaco/H.248

控制驻地网关:单独负责用户终端接入的功能

【NGN学习笔记】4 软交换中的协议2—Megaco/H.248 【NGN学习笔记】4 软交换中的协议2—Megaco/H.248




本文转自gnuhpc博客园博客,原文链接:http://www.cnblogs.com/gnuhpc/archive/2012/12/11/2813485.html,如需转载请自行联系原作者