H248协议消息解读doc 32页优质版.docx

上传人:b****5 文档编号:8496805 上传时间:2023-01-31 格式:DOCX 页数:33 大小:60.72KB
下载 相关 举报
H248协议消息解读doc 32页优质版.docx_第1页
第1页 / 共33页
H248协议消息解读doc 32页优质版.docx_第2页
第2页 / 共33页
H248协议消息解读doc 32页优质版.docx_第3页
第3页 / 共33页
H248协议消息解读doc 32页优质版.docx_第4页
第4页 / 共33页
H248协议消息解读doc 32页优质版.docx_第5页
第5页 / 共33页
点击查看更多>>
下载资源
资源描述

H248协议消息解读doc 32页优质版.docx

《H248协议消息解读doc 32页优质版.docx》由会员分享,可在线阅读,更多相关《H248协议消息解读doc 32页优质版.docx(33页珍藏版)》请在冰豆网上搜索。

H248协议消息解读doc 32页优质版.docx

H248协议消息解读doc32页优质版

H.248协议消息解读

——基础篇

1H.248协议概述

H248协议(ITU-T),又称MEGACO协议(IETF)。

是NGN网络中的一种呼叫控制协议,是在媒体网关(MG)和媒体网关控制器(MGC)之间交互主从协议,从MGCP协议发展而来。

H248协议与SIP(一种对等呼叫控制协议)是目前主流的NGN呼叫控制协议。

H248协议从OSI层次上是工作于UDP之上,以文本方式或二进制方式描述。

通常情况下,多数厂商的媒体网关(MG)或媒体网关控制器(MGC/SS)使用文本方式的H248协议。

H248协议消息中的文本语法与描述符遵循ABNF协议(RFC2234)和SDP协议(RFC2327)要求。

H248协议消息的交互通常是在一个MG和MGC/SS之间,MG/MGC发送一个事务请求消息后,对应的MGC/MG必须有对应(即有同样的事务标识)的事务应答,以上的两个消息分别为事务请求和其对应的事务应答。

一个H248消息体中可以包含多个事务,但不要求对方对这些事务的应答都在一个消息体中。

在一个H248消息体中:

协议类型,协议版本,消息发送的源地址,发送的源UDP端口号,事务及其标识,上下文(关联),命令,终结点等字段是必需的。

以下分别对普通呼叫建立流程和呼叫释放流程中的消息进行解释,并在各流程消息解释中标示出常见的异常或错误码,以便可以根据协议消息的错误类型及其出现的环节找出媒体网关(MG)或媒体网关控制器(MGC/SS)有可能出现的问题所在。

2基本呼叫建立流程及消息解析

2.1基本呼叫建立流程图

图1基本呼叫建立流程图

2.2基本呼叫建立流程消息解析

说明:

1)SS的IP地址为:

10.61.252.100;AG的IP地址为:

10.61.94.55。

2)将事件与响应作为个整体进行说明。

3)文中的MG与AG等价,即可以理解为AG。

4)信令中重复的部分仅在最早出现的地方说明一次。

5)以下消息中的编号与流程图中的流程标号一致。

2.2.1步骤1)信令

(1)11:

03:

48

!

/1[10.61.94.55]:

2944T=2420{C=-{N=USER2{OE=2000{20070429T11070000:

al/of}}}}

(1’)11:

03:

48

!

/1[10.61.252.100]:

2944P=2420{C=-{N=USER2}}

信令主要含义:

消息

(1):

MG检测到用户USER2的off-hook(摘机事件),并将此事件通知MGC。

消息(1’):

MGC接收到该消息后对此进行应答。

消息描述符详解:

信令字符

字符的含义及相关解释

!

表示H248协议或Megaco协议。

/1

协议版本,表示协议版本号为1.0版本,目前H248协议的版本有1.0和2.0两个版本,2.0版本尚未完善,各厂商还没有商用的实例。

[10.61.94.55]

消息发送源IP地址,在此的IP地址为MG的IP地址。

(下同)

:

2944

消息发送的源UDP端口号,2944是默认的H248协议文本编码方式的UDP端口号,但不强制,如Alcatel的MGC/SS就使用了11000作为H248协议的端口号。

当MGC使用非2944的协议端口号时,需要在MG注册流程中进行端口号的协商。

在应用场景中,使用何端口号由MGC/SS主导。

注:

基于IP传输H.248协议的要求中规定:

H.248协议定义的协议消息可以在UDP上传输,如果对等实体未提供相应的通信端口,则协议消息应被送到缺省端口:

如果协议消息采用文本方式编码,则缺省端口号为2944;如果协议消息采用二进制方式编码,则缺省端口号为2945。

响应消息必须发送到相应的命令发起方使用的地址和端口。

T

TransactionRequest,事务请求,表示一个H248交互事务的发起。

每个Transaction由一个TransactionID来标识,Transaction由一个或多个Action组成。

2420

TransactionID,事务标识,由事务发起方(MG或MGC)随机选定,理论上的取值上限为0XFFFFFFFF。

C

Context,上下文(或称关联),在H248呼叫模型中,上下文是一些有相互联系的终结点的结合体。

Context由ContextID标识,ContextID是由MG分配并在AG内唯一。

-

上下文标识符(ContextID),“-”标识为空上下文,在MG中所有的空闲电路(物理终结点)都处于空上下文中,在此消息中表示终结点USER2是在空的上下文中。

协议定义的上下文标识取值为0—0XFFFFFFFF,值为0时标识符为“-”;取值为1-0XFFFFFFFE时为对应的十进制数字,0XFFFFFFFF为ALL,表示所有上下文。

在呼叫流程中,上下文标识是由MG选定的。

实际应用中,每个厂商MG对上下文标识的取值范围可能不一样,如ZXMSG5200的取值为0-20000(ALL除外)。

N

Notify命令即通知命令。

这个命令的发起只能从MG向MGC的方向发送。

通常出现在MG检测都某些事件(如用户摘挂机,拍插簧,拨号结束,网络失效等)时通知SS,也可以作为MG发起的心跳消息

注:

Notify命令格式如下

Notify(TerminationID,

ObservedEventsDescriptor,

[,ErrorDescriptor]

在示例中Notify命令中的TerminationID为USER00301300003;

ObserverdEventsDescriptor为OE=2000{20070429T11070000:

al/of。

USER2

TerminationID,用户终结点标识符(在ZXMSG5200为配置的slctermid)。

用户终结点在协议中定义为物理终结点,是MG中永久终结点,与此相对的是临时终结点,如媒体终结点(如RTP1)。

通俗理解是在一次用户呼叫中,该用户的标识符在MG内是唯一确定的,而呼叫连接中需要的媒体资源(媒体终结点)是随机的,临时的。

OE

ObservedEvent,检测到的事件。

表示MG内检测到了某个事件(如本例中的摘机)。

2000

代表RequestID,该ID与MGC下发的要求MG进行该Event检测的ID一致。

需要注意的是,同样的事件检测请求对于不同的终结点可能有不同的标识符,甚至同样的事件对于同样的终结点,每次MGC要求检测的事件检测请求标识符也可能不一样。

20070429T11070000

事件发生的日期时间。

al

AnalogLineSupervisionPacket,模拟用户线监测包。

H248协议基本包的一种,定义了三种可以检测的事件:

onhook(挂机),offhook(摘机),flashhook(拍插簧)。

在一个正常的呼叫流程中,该协议包是必需的,需要MGC配置或下发。

注:

H.248协议的AnnexE中定义了一些基本包

/of

al包中的事件标识。

标识offhook事件。

注:

H.248协议AnnexE的al包中定义offhook如下EventID:

of,0x0005

P

TransactionReply,事务应答。

其事务标识必须与对应的事务请求一致。

异常情况分析:

1用户摘机后无消息上报,可能的原因有MG内(8031)未检测到摘机或者MG内该用户对应的TerminationID尚未配置。

2在应答消息中包含错误码430(未知的终结点标识符),可能的原因为MGC/SS中尚未配置该用户对应的TerminationID。

3在应答消息中包含错误码433(终结点已存在于一个上下文中),可能原因为在上次呼叫中,MGC/SS内该终结点尚未释放。

此时如要恢复,需要重新注册该用户(通过MG内删除再增加TerminationID的操作可以使该用户重新注册)。

4在应答消息中包含错误码567(协议未定义该错误码),可能的原因是由于事件请求标识与MGC下发的不一致。

如在上个消息中MGC下发E=589829,而AG上报OE=2000。

不同厂商应答的错误码可能不一样,如HW的SOFTX3000返回的错误码为501(未执行)。

5在应答消息中包含错误码411(事务指向未知上下文),可能的原因是在MG发送的通知消息中,用户终结点不在空上下文中,而在某个特定的上下文中,这表明该用户上次呼叫中在MG内没有从上下文中释放。

2.2.2步骤2)信令

(2)11:

03:

48

!

/1[10.61.252.100]:

2944

T=52466049{

C=-{

MF=USER2{

DM=DM019966139894{

(|ExxE|FxxF|ExxF|FxxE|Exx|EFxxE|EFxxF|ExxEx.F|FxxEx.F|ExxExxEx.F|FxxExxEx.F|[EF][0-9][0-9E].F|EExx|EFxxF|9|10xx|8xxx|9xxx|FExx|ExxExxxxEx.F|FF|6666XXXX|1984XXXX|1983XXXX|555XXXX|616XXXX|8888xxxx|110|119)},E=2003{

dd/ce{DM=DM019966139894},al/on,al/fl},SG{cg/dt}}}}

(2’)11:

03:

48

!

/1[10.61.94.55]:

2944P=52466049{C=-{MF=USER2}}

信令主要含义:

消息

(2):

MGC向MG下发号码表,并要求MG检测用户USER2收号结束、挂机、拍叉簧事件,给用户放拨号音(此时用户可以听到拨号音)。

消息(2’):

MG接收到该消息后对此进行应答。

消息描述符详解:

信令字符

字符的含义及相关解释

MF

Modify命令,该命令用来修改Termination的属性、事件和信号。

注:

Modify命令格式如下

Modify(TerminationID

[,MediaDescriptor]

[,ModemDescriptor]

[,MuxDescriptor]

[,EventsDescriptor]

[,EventBufferDescriptor]

[,SignalsDescriptor]

[,DigitMapDescriptor]

[,AuditDescriptor]

示例中的信令包含3种描述符,分别为DigitMap描述符、Events描述符和Signals描述符。

DM

DigitMap(号码表)指的是MG中的拨号方案,用于检测和报告Termination上接收到的拨号事件。

DigitMap描述符包含DigitMapName和指定的DigitMap

DM019966139894

DigitMapName(号码表名称),“{}”内的内容为具体的号码表,号码表的详细含义见附件?

?

?

E

Events描述符包含一个RequestID以及请求MG检测和报告的一组事件,通过RequestID将事件请求与事件发生通知关联。

dd

DTMFdetectionPackage,DTMF检测包。

H248协议基本包的一种,定义了一种可以检测的事件:

DigitMapCompletionEvent(收号完成)。

在一个正常的呼叫流程中,该协议包是必需的,需要MGC配置或下发。

/ce

dd包中的事件标识。

标识DigitMapCompletionEvent事件。

注:

H.248协议的AnnexE中定义如下DigitMapCompletionEvent,EventID:

ce,0x0004

{DM=DM019966139894}

dd包中的收号完成事件(ce)带的参数,含义为使用名为DM019966139894的号码表进行收号匹配

/on

al包中的事件标识。

标识onhook事件。

注:

H.248协议AnnexE的al包中定义onhook如下EventID:

on,0x0004

/fl

al包中的事件标识。

标识flashhook事件。

注:

H.248协议AnnexE的al包中定义flashhook如下EventID:

fl,0x0006

SG

Signals描述符包含要求MG应用于Termination的信号集。

Signals描述符包含多个信号或信号序列。

信号在包中定义,信号由包名和SignalID标识。

cg

CallProgressTonesGeneratorPackage,通话处理过程中音资源生成包。

H248协议基本包的一种,定义了9种信号音:

DialTone(dt,0x0030)、RingingTone(rt,0x0031)、BusyTone(bt,0x0032)、CongestionTone(ct,0x0033)、SpecialInformationTone(sit,0x0034)、WarningTone(wt,0x0035)、PayphoneRecognitionTone(prt,0x0036)、CallWaitingTone(cw,0x0037)、CallerWaitingTone(cr,0x0038)。

在一个正常的呼叫流程中,该协议包是必需的,需要MGC配置或下发。

/dt

cg包中定义的拨号音DialTone(dt,0x0030)

异常情况分析:

1应答消息中包含错误码513(MG未装载,不能产生请求信号),可能的原因为MG内DSP资源不可用(DTMF资源和TONE资源其中一种资源不可用即产生此错误)。

2MGC/SS没有下发上述的号码表消息等,而是下发接续命令消息(ADD命令),可能的原因为该主叫用户登记了热线业务。

3应答消息中包含错误码519(无资源装载DigitMap),可能的原因为MG内保存DigitMap的flash空间不足。

出现这种情况的原因很可能MGC/SS下发的DigitMap比较大而导致MG内空间不足(如PCCW应用中MGC/SS下发的DigitMap有4K或8K)。

2.2.3步骤3)信令

(3)11:

03:

52

!

/1[10.61.94.55]:

2944T=2421{C=-{N=USER2{OE=2003{20070429T11070500:

dd/ce{ds="66669959",Meth=UM}}}}}

(3’)11:

03:

53

!

/1[10.61.252.100]:

2944P=2421{C=-{N=USER2}}

信令主要含义:

消息(3):

MG向MGC报告收号结束事件,包含用户拨的号码及匹配结果。

消息(3’):

MGC接收到该消息后对此进行应答。

消息描述符详解:

信令字符

字符的含义及相关解释

ds

ds:

DigitString(ParameterID:

ds,0x0001),为dd包中的收号完成事件(ce)带的参数。

"66669959"

ds参数对应的值,即用户所拨的号码。

Meth

Meth:

TerminationMethod(ParameterID:

Meth,0x0003),为dd包中的收号完成事件(ce)带的参数。

UM

Meth参数对应的值,该参数有以下3种可能值:

“UM”Unambiguousmatch,明确匹配,即已经匹配某一部分拨号事件序列,再收到其他号码已不可能再匹配号码表中其他拨号事件序列;

“PM”Partialmatch,部分匹配,即定时器超时且不能与候选拨号事件集完全匹配,或没有候选拨号事件可以匹配;

“FM”Fullmatch,完全匹配,即定时器超时且能与候选拨号事件集中的一个拨号事件完全匹配;

异常情况分析:

① 用户拨了号码后,MG上报的号码却为ds=”“,可能的原因为所拨的首位号码与号码表中所有号码串的首位都不匹配,也可能由于DTMF资源故障、8031故障、用户单板故障等导致的收号失败。

② 用户正常拨号,MG上报的号码却有很多重复号码如拨一个8,却上报了若干个8,可能的原因为业务层故障导致了多个DTMF收号器都接到该用户上。

③ 用户拨完正确的号码后,需要等一段时间才能听到回铃声(接续慢)。

查看号码的匹配方式如果为UM,则可能为AG内部原因导致的接续慢,如果号码匹配方式为FM,说明号码表中对所拨的号码存在多种匹配可能,MG需要等待定时器超时才上报号码而导致了接续慢。

这种情况下,查看消息步骤

(2)与步骤(3)之间的时间间隔能大概了解是否MG内等待定时器超时。

2.2.4步骤4)信令

(4)11:

03:

53

!

/1[10.61.252.100]:

2944

T=52466050{

C=${

A=USER2,A=${

M{

ST=1{

O{

MO=RC,nt/jit=40},L{

v=0

c=INIP4$

m=audio$RTP/AVP0

a=ptime:

20

}}},E=2000{

nt/netfail,nt/qualert{

th=0}}}}}

(4’)11:

03:

53

!

/1[10.61.94.55]:

2944P=52466050{C=3{A=USER2,A=RTP120{M{ST=1{L{v=0

c=INIP410.61.94.55

t=00

m=audio10000RTP/AVP0

a=ptime:

20

}}}}}}

信令主要含义:

消息(4):

MGC要求MG选择一个Context,并在该Context中添加一个主叫用户终结点(USER2)和一个媒体终结点(媒体终结点的ID为$,即让MG选择一个合适的媒体终结点)。

在媒体描述符中还要求MG选择本地的IP地址和传输端口号。

同时要求MG检测网络失效、监测网络质量。

消息(4’):

MG接收到该消息后对此进行应答,应答中包含了ContextID为3(C=3),媒体终结点的ID为RTP120(A=RTP120),使用的IP地址为10.61.94.55,使用的UDP端口号为10000。

消息描述符详解:

信令字符

字符的含义及相关解释

$

“CHOOSE”表示选择一个满足条件的Termination或Context,是通配值(Wildcard)的一种。

注:

通配值(Wildcard):

协议语法中用于标识与Termination或Context相匹配的符号,协议规定通配值可为“CHOOSE”或“ALL”,“ALL”表示需要选择所有满足条件的Termination或Context。

A

Add命令,该命令用来向一个Context中添加Termination。

注:

Add命令格式如下

Add(TerminationID

[,MediaDescriptor]

[,ModemDescriptor]

[,MuxDescriptor]

[,EventsDescriptor]

[,EventBufferDescriptor]

[,SignalsDescriptor]

[,DigitMapDescriptor]

[,AuditDescriptor]

M

Media描述符,用于描述所有媒体流特性的参数。

媒体流特性参数可用TerminationState描述符和若干个Stream描述符来描述。

其中,TerminationState描述符与特定媒体流无关,用户描述Termination的特性,Stream描述符描述媒体流。

ST

Stream描述符,由StreamID进行标识。

Stream描述符可分为LocalControl描述符、Local描述符和Remot描述符三种。

1

StreamID,协议规定LocalControl、Local和Remote可以在一个Media描述符中进行定义,当三种描述符在一个Media描述符中描述时,Stream描述符的StreamID通常假定为1。

O

LocalControl描述符,包含Mode(模式)属性、ReserveGroup(预留组)属性、ReserveValue(预留值)属性及在包中定义的某些与特定媒体流有关的终结点属性,属于MG和MGC之间的控制属性。

MO

LocalControl描述符中的Mode属性,有5中可选值分别为:

“IN”:

Inactive

“SO”:

SendOnly

“RC”:

RecvOnly

“SR”:

SendRecv

“LB”:

LoopBack

RC

RecvOnly,LocalControl描述符中的Mode属性值,说明此时媒体流的模式为仅接收。

nt

NetworkPackage,网络属性包。

H248协议基本包的一种,定义了独立于网络类型的网络终结点属性,包括一个属性MaximumJitterBuffer(jit,0x0007)和2个事件networkfailure(netfail,0x0005)、qualityalert(qualert,0x0006)。

在一个正常的呼叫流程中,该协议包是可选的,由MGC配置或下发。

/jit=40

MaximumJitterBuffer的值为40毫秒(milliseconds),在NetworkPackage中定义的属性。

L

Local描述符

v=0

“v=”行作为分隔行。

注:

Stream描述符描述的是单个双向媒体流,因此一个会话描述中最多只能有一个媒体描述,即最多一个“m=”行。

然而,一个Stream描述符中可以有多个会话描述,如果包含多个会话描述则以“v=”行作为分隔行,否则“v=”行可选。

c

ConnectionData描述符在RFC2327中定义,格式如下:

c=

IN

"IN":

Internet,networktype的一种。

IP4

使用IPV4的地址类型

m

MediaAnnouncements描述符在RFC2327中定义,格式如下:

m=

audio

media类型域的值,目前RFC2327定义的media类型域值如下:

"audio","video","application","data"and"control"。

RTP/AVP

transport(transportprotocol)域的值,目前RFC2327定义的transport类型域值如下:

RTP/AVP-theIETF'sRealtimeTransportProtocolusingthe

Audio/VideoprofilecarriedoverUDP.

udp-UserDatagramProtocol

0

fmtlist(formatlist)域的值,在Audio/Videoprofile中定义的媒体格式。

常见语音媒体格式(编码方式)

0——G.711u;

4——G.723;

8——G.711a;

18——G.729;

a=

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 高中教育 > 其它课程

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1