软交换分组协议基础-H.248协议V2.0-20021210-B
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
软交换分组协议基础-H.248协议V2.0-20021210-B
修订记录
目录
第1章H.248协议介绍 (5)
1.1 H.248 协议的起源 (5)
1.2 H.248协议定义 (7)
1.2.1 基本定义 (7)
1.2.2 扩展说明 (8)
第2章H.248协议概念 (10)
2.1 H.248协议在呼叫中的位置 (10)
2.2 连接模型以及基本概念 (11)
2.2.1 连接模型 (11)
2.2.2终端 (12)
2.2.3 上下文 (12)
2.3 H.248协议的消息结构 (14)
2.3.2事务 (16)
2.3.3 行动 (17)
2.3.4命令 (18)
2.4 H.248协议的消息传输机制 (18)
第3章H.248协议命令 (20)
3.1 命令介绍 (20)
3.2描述符 (22)
第4章呼叫流程 (25)
4.1 呼叫媒体流的流程 (25)
第5章H.248协议在NGN中的应用 (29)
5.1 H.248协议在SoftX3000软交换系统中的协议栈结构 (29)
5.2 H.248协议在SoftX3000软交换系统中的应用 (30)
关键词:
NGN 软交换媒体网关
H.248
摘要:
NGN的目标是建立一个能够提供话音、数
据、多媒体等多种业务的,集通讯、信
息、电子商务、娱乐于一体,满足自由
通讯的分组融合网络。
NGN是一个包括
PSTN/ISDN、H.323、ATM/IP等网络的融
合网络,网络互通是NGN成功的必要条
件。
为实现这一目标,在NGN组网中采用
了大量的分组协议。
本文重点介绍了分
组协议中的H.248协议,H.248/Megaco协
议(Media Gataway Control Protocal),
简称H.248协议,是IETF、ITU-T制定的
媒体网关控制协议,一个非对等协议,
用在媒体网关控制器(MGC)和媒体网关
(MG)之间的通信。
缩略语清单:
MGCP (Media Gataway Control
Protocal):媒体网关控制协议
PSTN(Public Switched Telephone
Network):公共电话交换网
MG (Media Gataway):媒体网关
MGC (Media Gataway Controller):
媒体网关控制器
SG (Signaling Gataway):信令网关
SCN(Switched Circuit Network):电
路交换网
参考资料清单:
《C&C08 iNET工程师培训教材-分组协
议》固网技术支持部
《NGN协议介绍》华
为技术报136期
《H.248协议培训教材》
公共技术研究部
《H.248 IPPhone Flow》
信令与协议研究管理部
SoftX3000V2《信令与协议分册-H.248协议》资料开发部
第1章H.248协议介绍
1.1 H.248 协议的起源
由于IP网络的快速发展,IP网提供的业务
越来越多。
同时,原有的电路交换网(如
PSTN网)仍然拥有大量的用户,为了能
让这些用户使用IP网络提供的服务,需
要提供不同网络之间互通的网关设备。
目前的大部分IP电话网关设备,是集中
型网关设备,主要完成三个方面的功能:
1、完成IP电话互通,将PSTN用户的话
音进行编码、组包后在IP网上传输,同
时将IP网来的数据包解包、解码后交给
PSTN用户;
2、处理信令消息;
3、负责网关内部资源管理,及呼叫连接
过程的管理。
随着用户数量及对业务需求的增加,网
关在规模上要不断扩大,这种集中型的
网关结构在可扩展性、安全性方面及组
网的灵活性上都存在很大的限制。
由此,提出了将业务、控制和信令分离概念,即将IP电话网关分离成三部分:信令网关SG、媒体网关MG和媒体网关控制器MGC。
SG负责处理信令消息,将其终结、翻译或中继;MG负责处理媒体流,将媒体流从窄带网打包送到IP网或者从IP 网接收后解包后送给窄带网;MGC负责MG的资源的注册和管理,以及呼叫控制。
在这种分布式的网关体系结构中,MG和MGC之间采用的是H.248协议,SG和MGC之间采用SIGTRAN协议。
三者之间的关系如图1所示:
图1 分离的网关模型
在分布式的媒体网关的网络结构中,由
于业务处理和“媒体承载实体”分布在
两台不同的设备上,因此当业务处理模
块MGC(SoftX提供MGC功能)需要将
媒体承载实体MG(各种IAD设备)进行
连接并承载媒体流时,需要通过一个统
一格式的消息来通知拥有媒体承载实体
的设备MG,这个消息的格式就是由
H.248协议规定的。
1.2 H.248协议定义
1.2.1 基本定义
H.248/Megaco 协议(Media Gataway
Control Protocal),简称H.248协议,是
IETF、ITU-T制定的媒体网关控制协
议,一个非对等协议,用在媒体网关控
制器(MGC)和媒体网关(MG)之间
的通信。
主要功能是建立一个良好的业
务承载连接模型,将呼叫和承载连接进
行分离,通过对各种业务网关:TG(中
继网关),AG(接入网关),RG(注册
网关)等的管理,实现分组网络和PSTN
网络的业务互通。
1.2.2 扩展说明
H.248协议是在MGCP协议的基础上,结
合其它媒体网关控制协议特点发展而成
的一种协议,它提供控制媒体的建立、
修改和释放机制,同时也可携带某些随
路呼叫信令,支持传统网络终端的呼叫。
该协议在构建开放和多网融合的NGN
中,发挥着重要作用。
由于MGCP协议在描述能力上的欠缺,
限制了其在大型网关上的应用。
对于大
型网关,H.248协议是一个好的选择。
与
MGCP用户相比,H.248对传输协议提
供了更多的选择,并且提供更多的应用
层支持,管理也更为简单。
H.248可以应用于SCN(Switched Circuit
Network)、IP、ATM、有线电视网或
其他可能的电路或分组网络中的任何的
两种或多种网络之间的媒体网关控制的
协议。
H.248报文本身可以承载在任何类型的分组网络上,例如IP、ATM、MTP 等。
第2章 H.248协议概念
2.1 H.248协议在呼叫中的位置
在分布式的媒体网关的网络结构中,由
于业务处理和“媒体承载实体”分布在
两台不同的设备上,在NGN组网中,业
务处理由SoftX3000完成,媒体承载实体
则是各种IAD终端设备,因此当
SoftX3000需要连接IAD并承载媒体流
时,需要通过一个统一格式的消息来通
知各IAD设备。
当SoftX3000和IAD 通过
H248协议连接时,这个消息的格式就是
由H.248协议规定的。
消息的格式至少应该包含两方面的内
容:
1、一个业务中应该包含哪些媒体承载实
体;
2、这些媒体承载实体之间的关系如何。
在H.248协议中,这些媒体承载实体被
称为“终端”;
而“上下文”中指明“一个业务中应该
包含哪些媒体承载实体IAD”,“这些媒
体承载实体IAD之间的关系”则在“上下
文”中的“拓扑”中规定。
2.2 连接模型以及基本概念
2.2.1 连接模型
连接模型指的是MGC控制的,在MG中
的逻辑实体或对象。
它是MGC和MG之
间消息交互的内容核心,MGC通过命令
控制MG上的连接模型,MG上报连接模
型的各种信息包括状态、参数、能力等。
如图2所示:连接模型由两种实体组成:
上下文(Context)和终端(Termination)。
2.2.2 终端
终端是能够发送或接收一种或多种媒体
流的逻辑实体。
终端由许多特性描述,
这些特性组合成一组描述符而包含在命
令中。
终端有唯一的终端标识
(Termination ID),它由媒体网关在在创
建时分配。
一个终端在任一时刻属于且
只能属于一个上下文。
2.2.3 上下文
一个上下文就是一些终端间的联系。
它
描述了终端之间的拓扑关系以及媒体混
合/交换的参数。
上下文由一组终端组成。
一个上下文可以包含多个终端。
根据MG的业务特点不同,上下文中可以包含的最大终端数目就不同。
一个上下文中至少要包含一个终端。
同时一个终端一次也只能属于一个上下文。
如果上下文中包含多于两个终端,上下文还会描述拓扑结构以及其他一些媒体混合/交换的参数。
上下文有如下参数:
a)ContextId:由媒体网关MG分配的32位整数,可以用“*”来代表“所有”,用“-”代表“空”。
ContextId在MG范围内是唯一的。
b)拓扑关系:描述上下文中的终端之间的关系。
这些关系指出了媒体流在终端之间的流向。
拓扑结构只用于描述上下文,它可以在“Add”和“Modify”命令中使用。
c)Priority(优先级):向MG提供上下文优先处理的信息。
d)Emergencyindicator(紧急事件):向
MG提供上下文紧急处理的信息。
H.248协议规定可以创建新的上下文和
修改已经存在的上下文的参数。
通常用
Add命令添加一个终端到上下文。
在Add
命令中没有指定上下文,MG将创建一个
新上下文。
Subtract命令把一个终端从上
下文中删除,Move命令将终端从一个上
下文移到另一个上下文。
当上下文的最
后一个终端被删除或移动出去后,该上
下文被隐式删除。
2.3 H.248协议的消息结构
MGC和MG之间是通过消息进行通信
的,H.248消息都有相同的结构,一个
H.248消息的结构如所示:
图3 H.248消息结构
消息有一个消息头,消息头里面包含一个消息的MID(Message ID)和一个协议版本号。
MID被配置成一个规定的名字,如域地址(Domainaddress)或域名(Domainname)或设备名(Devicename)。
协议版本号标记本消息所支持的协议版本。
本协议的版本号是从1开始。
一个消息(Message)包含多个事务(Transaction),消息中的事务相互没有关系,可以单独处理;事务由多个行动(Action)构成,事务里面的行动必须按照顺序执行。
行动由一系列局限于
软交换分组协议基础-H.248 协议
错误!文档中没有指定样式的文字。
错误!文 档中没有指定样式的文字。
一个上下文的多个命令组成。
由此,
H.248消息构成机制如所示:
消息 事务 上下文 命令 描述符
Message TransactionI ContextID1
CMD1 Des-1
...CMDn
Des-n
ContextIDn
...
TransactionIDn
2.3.1 消息
图4 消息机制示意图
消息从消息头开始,其中包含发送者的 标识。
每一条消息包含消息遵守的协议 版定1-2本义个的,数版版字本本。
号标是识M号a。
jo正r/如MiRnoFrC格2式14,5各中有的 消息头后面是若干互不相关事务。
2.3.2 事务
事务保证顺序命令的执行。
即在一个事 务中,命令是按序执行的。
当所有命令 成功执行时事务才成功执行,当其中一 个命令失败时,整个事务失败。
事务中
第 16 页
软交换分组协议基础-H.248 协议
错误!文档中没有指定样式的文字。
错误!文 档中没有指定样式的文字。
的一个命令失败时,此命令的后续命令 将终止执行。
事 务 表 现 为 TransactionRequest 和 对 TransactionRequest 的 响 应 。
有 三 种 响 应 : TransactionAccept , TransactionReject 和 TransactionPending:
TransactionAccept 命 令 包 含 对 应 TransactionRequest所有命令的返回值。
TransactionReject 命 令 在 当 事 务 失 败 时 发 送 。
TransactionReject 包 含 成 功 命 令 的 返 回 值 和 失 败 命令的错误值。
TransactionPending 命 令 用 于 通 知 事 务 正 在 被 执 行,还没有完成,以防止事务发送方以为事务丢失, 而再次发送此事务。
2.3.3 行动
行动与上下文是密切相关的,它由一系 列局限于一个上下文的命令组成。
在一 个行动内,命令需要顺序执行。
C文o。
nCteoxntItDex用tID于由标M识G该指行定,动在对M应G的范上围下内
第 17 页
软交换分组协议基础-H.248 协议
错误!文档中没有指定样式的文字。
错误!文 档中没有指定样式的文字。
是文相唯关一的的事。
务MG中C使必用须C在on以te后xt的ID与。
此上下
2.3.4 命令
命下令文是和H终.2端48属消性息的的控主制要,内包容括,指实定现终对端上 报告的事件什么信号和动作可施加于终 端,以及指定上下文的拓扑结构。
我们 将在下章详细介绍H.248的命令。
2.4 H.248 协议的消息传输机制
H.248 的 应 用 层 应 该 和 传 输 层 的 需 求 是 分开的:
图5 事务、Action和命令的关系示意图
H.248 应 用 层 负 责 维 护 MG 和 MGC 之 间 事务的状态和可靠性。
H.248 传 输 子 层 被 看 作 是 逻 辑 层 , 保 证 H.248 事 务 在 MG 和 MGC 之 间 传 输 的 可 靠性(重传、定时等等)。
第 18 页
软交换分组协议基础-H.248 协议
错误!文档中没有指定样式的文字。
错误!文 档中没有指定样式的文字。
H.248消息可以在多种传输协议上传输, 如承载在IP网络上的TCP、UDP、SCTP 和 M3UA 等 , 以 及 承 载 在 ATM 上 的 MTP3-B、AAL5等。
第 19 页
软交换分组协议基础-H.248 协议
错误!文档中没有指定样式的文字。
错误!文 档中没有指定样式的文字。
第3章 H.248 协议命令
H.248 协 议 提 供 命 令 以 操 纵 连 接 模 型 的 逻辑实体——上下文和终端。
命令提供 了对上下文和终端属性的完全控制,包 含指定终端报告的事件和什么信号和动 作可施加于终端等等。
3.1 命令介绍
协议有8个命令,这些命令除了“Notify” 和“ServiceChange”外,其余都是由MGC 主动发给MG,MG进行响应的。
“Notify” 是由MG发给MGC,而“ServiceChange” 可以由它们之间互相发送。
1、Add Add命令添加终端到上下文。
上下文中第 一个终端的添加用于创建上下文。
2、Modify Modify命令更改终端属性、事件和信号。
3、Subtract
第 20 页
软交换分组协议基础-H.248 协议
错误!文档中没有指定样式的文字。
错误!文 档中没有指定样式的文字。
Subtract命令从上下文中删除终端并统 计终端参加的上下文情况。
上下文的最 后一个终端的删除的同时删除上下文本 身。
4、Move
Move命令将一个终端从一个上下文移动 到另一个上下文。
5、AuditValue
AuditValue命令返回终端当前的状态属 性、事件,信号以及终端的统计
6、AuditCapabilities
AuditCapabilities命令返回MG允许的终 端属性、信号和事件的所有可能值。
7、Notify
Notify命令用于MG把MG当前发生的事 件通知给MGC。
8、ServiceChange
ServiceChange 命 令 可 用 于 MG 通 知 MGC有一个或一组终端离开服务或返回
第 21 页
软交换分组协议基础-H.248 协议
错误!文档中没有指定样式的文字。
错误!文 档中没有指定样式的文字。
服务。
ServiceChange还用于MG在上电 或者从失败中恢复后,向MGC发起注册 或重新注册(这两个过程是一样的),提醒 MG 的 重 启 的 迫 近 或 完 成 。
ServiceChange 可 由 MGC 向 MG 发 送 移 交通知。
3.2 描述符
终端参数结构化为许多描述符。
通常, 描述符的形式如下:
DescriptorName=<someID>{parm=valu e,parm=value_.} 参数可以有如下三种设置方法: 1、完全指定参数(FullySpecified) 命令发起者在命令中给相应的参数一个 明确的值。
2、不指定参数(UnderSpecified) 命令的发起者使用通配符,允许用户选 择一个他所支持的任何一个值并返回给 命令的发起者。
第 22 页
软交换分组协议基础-H.248 协议
错误!文档中没有指定样式的文字。
错误!文 档中没有指定样式的文字。
3、指定一系列参数(OverSpecified)
命令的发起者给出一个该参数的列表, 列表中值的顺序是降序排列的,即前面 的优先级高。
命令响应者从列表中选取 一个并返回给命令发起者。
未指定的参数保留原值。
如果需要指定 的描述符没有被指定,则使用它原来的 值。
以下列出H.248协议的18种参数描述符, 供参考:
描述符名称
说明
Modem
标识 Modem 类型和属性
Mux
描述多媒体终端( H.221, H.223, H.225.0)的复用类型和终端输入队 列复用
Media
媒体流规格的列表
TerminationStat e
Stream
不特定于流的终端属性(可在包中定义) 单个流的 Local/Remote/LocalControl 描述符的列表
Local
MG 接收的流相关的属性
Remote
MG 发送的流相关的属性
Localcontrol
描述 MGC 和 MG 之间的属性
Events
MGC 要求 MG 检测及报告的事件列表
EventBuffer
MGC 要求 MG 在 EventBufferControl 为 LockStep 时,检测及缓 冲的事件列表
Signals
描述应用于终端的信号和(或)活动(如回铃音)
Audit
描述哪些信息需要审计
ServiceChange ServiceChange 的活动和原因
第 23 页
软交换分组协议基础-H.248 协议
错误!文档中没有指定样式的文字。
错误!文 档中没有指定样式的文字。
描述符名称
说明
DigitMap
指示如何在 MG 中处理号码匹配的拨号方案
Statistics
Subtract 和 Audit 命令中,终端保持的统计数据的报告
Packages
审记时,返回终端识别的包的列表
ObservedEvents “Notify”上报检测到的事件
Topology
描述 Context 内各终端间的流的方向,用于 Context 而不是 Termination
第 24 页
软交换分组协议基础-H.248 协议
错误!文档中没有指定样式的文字。
错误!文 档中没有指定样式的文字。
第4章 呼叫流程
为了使大家有个更为形象的认识,下面 我 们 就 一 次 呼 叫 来 看 看 H.248 协 议 在 MGC和MG之间的消息发送。
关于MGC 和 TMG 之 间 的 H.248 消 息 流 程 请 参 考 《SoftX3000技术手册 信令与协议分册 H.248协议》相关内容。
4.1 呼叫媒体流的流程
USER1 MG1
Off-hook Dial tone
(1)NTFY (2)NTFY
(3)T-Request / ADD (4)T-Reply / ADD
MGC
Ringback tone
(7)T-Request / Modify (8)T-Reply / Modify (9)T-Request / Modify (10)T-Reply / Modify
MG2 USER2
(5)T-Request / ADD (6)T-Reply / ADD
Ringing Off-hook
双方通话
(11)T-Request / Subtract (12)T-Reply / Subtract
(13)T-Request / Subtract (14)T-Reply / Subtract
On-ook
图6 简单呼叫流程
第 25 页
上图画出了两个媒体网关MG1呼叫MG2 时,MGC和发起呼叫的MG1以及被叫MG2之间的媒体流的流程。
其中(3)(4)(5)(6)(7)(8)是呼叫的建立过程,(9)(10)是呼叫的连接过程,(11)(12)(13)(14)是被叫挂机后的删除连接过程。
整个媒体流的流程如下:
•(1)主叫摘机,MG检测到后通过Notify命令将事件(Off-Hook)报告给MGC;
•(2)用户拨号,MG将收到的号码通过Notify命令报告给MGC;
•(3)MGC分析收到数据决定建立MG1到MG2的一个Context,并通过Add命令让MG1将主叫端口加入一个Context,向主叫送拨号音。
因为MGC 还未获得包含特定媒体流接收方的属性,所以媒体流的Mode是
ReceiveOnly,并且在命令中,未知的参数用参数通配符“$”表明,意思为“选择”,具体的参数值将由MG1在下一条Reply中填入具体的值。
•(4)MG1接受新的终端(Termination),并把自己的IP和UDP端口填入。
•(5)MGC分析被叫号码,找出被叫端口,决定建立MGC到MG2的一个新的Context,并通过Add命令让MG2将主叫端口加入一个Context。
•(6)MG2把自己的IP和UDP端口填入。
•(7)MGC命令MG1将被叫端口加入前面所说的那个Context 。
MGC命令MG1向主叫送回铃音,向被叫送振铃音;
•(8)MG1再向MGC发送回应消息。
•(9)被叫摘机,MGC命令MG1连接主被叫,把媒体流的Mode从ReceiveOnly修改为SendReceive,并停止回铃。
•(10)MG再向MGC发一个Reply。
•此后,双方进入通话。
•(11)(12)(13)(14)主/被叫挂机(由于主叫挂机和被叫挂机返回的命令是一样的,下面只列出被叫挂机的情况),MGC命令MG1和MG2释放主被叫连接,将主/被叫端口放空Context,此处只列出MGC对MG1的媒体流。
至此,MG1与MGC的连接释放,媒体流终止。
第5章 H.248协议在NGN中的应用
5.1 H.248协议在SoftX3000软交换系统中的协议栈结构
H.248在SoftX3000的协议栈结构如所
示:
图7 H.248在SoftX3000中的协议栈结构
在SoftX3000软交换系统应用中,H.248
的协议系统包括各种业务模块
(ISUP/TUP/ESL/SIP/H.323),这些模块
实现H.248协议命令与
ISUP/TUP/ESL/SIP/H.323协议的互通,
实现对MG的控制。
图7中H.248消息在UDP/IP上传递,此外
还可以在其它多种传输协议上传输,如承
载在IP网络上的TCP、SCTP和M3UA等,
以及承载在ATM上的MTP3-B、AAL5等。
SoftX3000 H.248协议传输层可以是承
载在IP上的UDP/TCP/SCTP和承载在
ATM上的MTP3-B,如所下图示:
图8 H.248基于不同传输协议上的协议栈结构
5.2 H.248协议在SoftX3000软交换系统中的应用
SoftX通过H.248协议规定的一个统一格
式的消息来实现与各IAD、TMG等NGN
构件间的通讯。
由于H.248协议和
MGCP协议的很多共同性,在NGN组网
中SoftX与大多数构件间既可以采用
H.248协议,又可以采用MGCP协议;但
鉴于H.248对于大型网关的良好支持,一
般TMG和SoftX之间都采用H.248协议。
目前的组网中,SoftX3000通过TMG和
SG同PSTN互通,TMG实现电路交换网
和分组交换网之间的语音信号的转换,而
SG实现电路交换网和分组交换网之间的
信令转换。
呼叫代理即MGC
(SoftX3000),主要实现与呼叫过程相
关的信令功能,并控制和管理MG和SG
的操作规程。
在这种分布式的网关体系结
构中,MG和SoftX之间采用的是H.248协
议,SG和SoftX之间采用SIGTRAN协议。
图9 H.248协议在SoftX产品中应用
SoftX3000产品作为分离网关模式下的媒体网关控制器,H.248用于控制中继网关。
Soft Switch提供H.248 MGC功能以控制中继网关中的ISUP中继;H.248 MGC提供以下功能:
1. 出口网关和入口网关的RTP容量协商
可以配置每个H.248 MG的RTP发送和接受容量。
SoftX3000要确保两个MG之间设定的匹配容量被用于建立呼叫。
2. 通过H.248协议管理TMG中的PSTN ISUP中继
支持TMG上的中继预留
支持TMG上的中继释放
支持TMG上的中继回流型连接
支持中继参数的修改
在中继上加上信号音
支持中继(或中继组)暂停业务和恢复业务
3. 通过H.248协议管理TMG中的临时RTP终止
支持临时终端的创建
支持临时终端的取消
支持有关临时终端的RTP参数的修。