H.248协议正常呼叫流程解析
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
H.248协议
正常呼叫流程解析
目录
一、H.248协议基本概念介绍 (2)
二、H.248协议呼叫实例模型 (2)
三、H.248协议呼叫流程 (3)
四、H.248协议信令分析 (4)
五、附件 (17)
特性名、事件名和信号举例 (17)
包分类列表 (18)
H.248协议命令 (19)
H.248消息的结构 (19)
关键词:
H.248 MG MGC 呼叫流程
摘要:
该文档主要用于帮助处理H.248协议的VOIP业务方面的问题,在理解和掌握协议和呼叫流程的基础上,根据跟踪的信令或抓取的H.248协议包,分析定位问题故障原因。本文主要针对同一个MG接口下两个用户正常的呼叫流程信令来解析。
随着NGN网络和VOIP业务的不断应用和发展,H248协议在目前应用中越来越广泛。对于协议和整个呼叫流程的理解和掌握,将非常有助于我们故障定位和问题处理。
一、H.248协议基本概念介绍
H.248协议,也叫MeGaCo协议,是媒体网关控制器(MGC)与媒体网关(MG)之间
的一种媒体网关控制协议。它提供了MGC在呼叫处理过程中控制MG中各类静态及动态
资源(IP/ATM/TDM)的能力(包括终端属性、终端连接交换关系及其承载的媒体流);
还提供了独立于呼叫的MG状态维护与管理能力。
二、H.248协议呼叫实例模型
图1-1H.248呼叫实例模型
同一MG下的两个终端之间的呼叫建立和释放流程如图1-22所示。不同MG
下的两个终端之间的呼叫建立和释放流程与该流程基本相同,在此不再赘述。
本流程示例基于以下约定:
●Termination1的物理终端ID为A0,UserA与A0连接;
●Termination2的物理终端ID为A1,UserB与A1连接;
●UserA为主叫,UserB为被叫,主叫先挂机;
●SoftX3000的IP地址和端口号为:192.168.100.1:2944;
●MG的IP地址和端口号为:192.168.100.70:2944。
三、H.248协议呼叫流程
图1-2同一MG下的两个终端之间的H.248呼叫流程示例
四、H.248协议信令分析
事件1:主叫用户摘机
MG设备检测到终端A0对应的主叫用户UserA摘机,并通过NTFY_REQ 命令,把摘机事件通知给MGC。
NTFY_REQ命令的文本描述
MEGACO/1 [192.168.100.70]:2944
T=883{C= - {
N=A0{
OE=369109250{al/of}}}}
第一行:MEGACO即H..248协议,版本为1。表示由MG发给MGC的消息
MG的IP地址和端口号为:[192.168.100.70]:2944
第二行:T表示Transaction事务,此为请求事务,事务ID为“883”;
C表示Context关联,“-”表示此时封装的关联为空。
第三行:N表示Notify通知命令,该命令作用于终端A0。
第四行:OE表示Observe Event观测到的事件描述符。此时,TerminationA
所在的MG观测到UserA摘机,向MGC汇报该事件。RequestID
为“369109250”。
MGC确认收到用户摘机事件,回应答消息。
NTFY_REPLY响应的文本描述
MEGACO/1 [192.168.100.1]:2944
P=883{C= - {
N=A0}}
第一行:MEGACO即H..248协议,版本为1。表示由MGC发给MG的消息
MGC的IP地址和端口号为:[192.168.100.1]:2944
第二行:P表示Reply响应事务,事务ID为“883”,与请求事务ID一致;
C表示Context关联,“-”表示此时封装的关联为空。
响应有两种:“Reply”和“Pending”。“Reply”表示已经
完成了命令执行,返回执行成功或失败信息;“Pending”指示命
令正在处理,但仍然没有完成。当命令处理时间较长时,可以防止
发送者重发事务请求。
第三行:N表示Notify通知命令,该命令作用于终端A0。
事件2:MG给主叫放拨号音
MGC收到主叫用户摘机事件后,通过MOD_REQ命令指示MG给A0终端对应的UserA放拨号音,并且把DigitMap(拨号计划dmap1)通知给MG,
要求根据DigitMap收号,并同时检测用户挂机事件。
MOD_REQ命令的文本描述
MEGACO/1 [192.168.100.1]:2944
T=372771555{
C= - {
MF=A0{
E=369109251{
dd/ce{DigitMap=dmap1},al/*},
SG{cg/dt},
DM=dmap1{
([2-9]xxxxxx|13xxxxxxxxx|0xxxxxxxxx|9xxxx|1[0124-9]x|E|x.F|[0-9EF].L
)}}}}
第一行:MEGACO协议的版本为1,以及消息发送者标识(MID)。
第二行:请求事务ID为“372771555”,该事务ID用于将该请求事务和其触发的响应事务相关联。
第三行:此时,该事务封装的关联为空。
第四行:MF表示Modify 命令,用来修改终端A0的特性、事件和信号。
第五行:E表示Event事务描述符,其RequestID为“369109251”。通过RequestID 可以将事件请求命令和事件发生通知Notify 命令关联起
来。
第六行:MGC请求MG监视终端A0发生的以下事件:事件一,根据Digit Map 规定的拨号计划(dmap1)收号。事件二,请求MG检测模拟线包
(al)中的所有事件。
第七行:SG表示Signal信号描述符。表示MGC请求MG给终端A0送拨号音(dt:dial tone)。
第八行:DM表示Digit Map数图描述符。MGC给MG下发拨号计划dmap1。
第九行:拨号计划dmap1。其中,“[2-9]xxxxxx”表示用户可以拨2~9中任意一位数字开头的任意7位号码;“13xxxxxxxxx”表示13开头的
任意11号码;“0xxxxxxxxx”表示0开头的任意10位号码;“9xxxx”
表示9开头的任意5位号码;“1[0124-9]x”表示1开头,3以外的
十进制数为第二位的任意3位号码;“E”表示字母“*”;“F”表
示字母“#”;“[0-9EF].L”表示拨以数字0~9、字母“*”、“#”
开头的任意位等长定时器超时之后就会上报。
协议中定义的数字表:
数字或字符含义
0~9 -