H248协议中文 翻译.docx
- 文档编号:20185657
- 上传时间:2023-04-25
- 格式:DOCX
- 页数:43
- 大小:71.83KB
H248协议中文 翻译.docx
《H248协议中文 翻译.docx》由会员分享,可在线阅读,更多相关《H248协议中文 翻译.docx(43页珍藏版)》请在冰豆网上搜索。
H248协议中文翻译
MEGACO/H.248
在互联网和电信迅速发展的背景下,我们所知的LETE定义的MEGACO和ITU定义的H.248协议得到了广泛应用。
实际上,两个组织的合作反映了电信和互联网的结合趋势。
鉴于MEGACO比H.248更容易念,为方便起见,本书以下均采用MEGACO这个术语。
MEGACO体系结构
MEGACO与MGCP在体系结构方面有很多的相似的地方。
类似于MGCP,它定义了媒体网关(MGs),网关是实现一个网络到另外一个网络的媒体格式转换。
MEGACO同时也定义了媒体网关控制器(MGCs),MGCs实现呼叫建立并把MGs分离出来,这类似于MGCP里面定义的呼叫代理。
这些相似之处不让人奇怪,因为两者都是为实现相似的请求而设计的。
MEGACO协议包含一系列MGCs和MGs之间的事务。
每一个事务包含事务发起者的事务请求的发送和事务响应者的事务应答的发送。
一个事务请求含有若干命令,而一个事务应答有数目相当的相应的响应组成。
大部分情况下,一个MGC发出一个事务请求,相应的应答则由MG来完成。
但是,在MGCP里,很多时候是MG发起事务请求。
MEGACO有特定规范以使协议既能够支持文本格式编码又能支持二进制编码。
文本编码是根据ABNF来写的,RFC2234发布。
二进制编码根据ASN.1编写,以ITU-TRecX.680在1997年发布。
这个实际表明使用ABNF的IETE和使用ASN.1的ITU的差别。
MGCs必须能同时支持两者不同的编码格式。
MGs可以同时支持两种格式但并不必须要求同时支持。
在本书里,在给出MEGACO用处的例子的时候将使用ABNF格式,因为此种格式比ASN.1更加人性化。
终端(Terminations)
MEGACO定义的终端是MG上的逻辑实体,是媒体流的源或者终。
确定的终端是物理的。
它们有着半永久的生存期,可以和外界物理实体和资源联系在一起。
这其中包含终端与类似物的连线或者与一个DS0的连接通道。
它们的生存期在MG里规定并依附于终端,就像在MGCP里定义的一样。
另外一种终端的生存期更短,只存在于一个呼叫或者媒体流的持续时间里。
这类终端称为短时终端,可以表示媒体流,如RTP开销。
这类终端是随MEGACO的命令Add命令而创建,这有些类似于MGCP里的创建连接命令。
短时终端在调用subtract后消亡,subtract有些类似于MGCP里的删除连接命令。
终端具有特定的属性,由于终端类型的不同,一个终端的属性也不同。
很明显,一条两个类似的终端的连线与终端与一个TDM连接的通道在特点上是不同的,正如一个DS0。
有关终端的属性用一组描述语来表示。
这些描述语包含在MEGACO的命令里面,因此,通过描述语根据从MGC到MG的指令而改变终端属性。
一个终端标识代表一个终端。
MG根据标识选择终端。
相似于MGCP,MEGACO定义了两个通配终端标识:
all(*)和any或者choose($)。
还有一类特殊的终端标识Root,称为根终端,它代表整个网关,而不是网关里面的特定的终端。
关联域(Contexts)
关联域是若干终端之间的联系以达到共享媒体。
终端可以加入到关联域里,也可在关联域删除或者从一个关联域移到另一个关联域里。
一个终端一次只能存在于一个关联域里,并且同一关联域里的终端才能交换媒体。
一个终端通过Add命令加入到一个关联域里,如果Add命令里没有指定关联域,那么一个新的关联域将会被创建。
这是创建新关联域的唯一机制。
Move命令用来把一个终端从一个关联域移到另外一个关联域里,Subtract命令用于在一个关联域里删除一个终端。
如果用Subtract删除关联域里最后一个终端时,那么该关联域将被删除。
终端和关联域的关系可以在图6-12体现,在这图里面,一个网关通过4个活动的关联域来描述。
在关联域C1里,我们可以看到两路的呼叫。
在C2里,网关里有3路呼叫。
在C3和C4里,我们可以看到一个呼叫等待。
在C3里,终端T6和T7在同一个呼叫里。
另外一个来自T8的要求与T7建立连接的呼叫。
如果使用者想接受这个呼叫等代并闲置当前呼叫,我们就要把T7从C3移到C4里面去。
同一个关联域里面的几个终端存在互通媒体的可能性。
但是,几个终端在同一个关联域里并不意味着它们之间可以在任何时候都能发送和接受媒体流。
关联域本身有自身的属性,包括拓扑结构,它指明了终端之间的媒体的流向(终端可以与另外的终端发送/接收媒体)。
还有优先级属性,它表示当MG要同时处理许多关联域的时候处理的顺序。
而紧急属性用于处理紧急呼叫。
关联域标识,由MG分配,它代表关联域并且在一个MG里是唯一的。
就像终端一样,MEGACO定义了与关联域相关的通配符:
”all”(*)和”any”或者choose($)。
MGC用All通配符指定网关上所有关联域,而choose用于MGC要求MG创建新关联域。
有一个特定的关联域称为空关联域。
空关联域包含所有未与其它终端建立联系的终端(比如,不存在于任何关联域的终端)。
空闲的终端通常都存在于空关联域。
空关联域标识为”-”。
事务(Transactions)
MEGACO中的事务包含命令的审查并对命令作出响应。
命令直接与关联域里的终端相关。
也就是说,每个命令指定执行命令的一个关联域标识,而一个或者更多的终端标识用于指定执行这个命令。
有一种情况某些动作命令是被某个不依附于任何关联域的闲置终端所调用。
这种情况下,就需要用到空关联域。
一个事务可以包含多个命令,事务可以包含涉及到同一个关联域的一系列命令,也可以包含涉及到另外一个关联域的一系列命令。
单个事务请求可以包含多个命令。
这个过程可以表示如下:
事务请求(事务标识){
关联域标识1{命令,命令,…,命令},
关联域标识2{命令,命令,…,命令},
关联域标识3{命令,命令,…,命令}}}
并不要求一个事务请求必须包含多个关联域或者多个命令,但是,一个事务请求中,最好单个的命令用于单个的关联域。
收到事务请求后,接收者执行请求所包含的命令。
命令的执行是依照事务请求里规定的顺序执行的。
当执行完后,将发送事务应答。
这个操作与事务请求的结构相当,对若干关联域有若干的响应。
一个事务应答可以表示如下:
事务应答(事务标识){
关联域标识1{响应,响应,…,响应},
关联域标识1{响应,响应,…,响应},
关联域标识1{响应,响应,…,响应}}}
上面提到,事务里的命令是按顺序执行的。
如果某个命令执行失败了,剩下的命令将不会执行。
当事务里包含一个或多个可选的命令那是例外。
如果一个可选命令失败,那剩下的命令将继续执行。
事务里可选的命令是靠在命令的名字前插入一个”o”来标识的。
事务请求的接收者需要一定的时间去处理,可以选择发送间歇的响应以避免事务请求发送者以为请求丢失。
这中间歇响应提示事务请求已经收到并且正在处理。
这就是事务进展的概念。
一个事务标识长32比特。
事务进展返回收到的事务标识(不带参数),结构如下:
事务进展(事务标识{})
消息(Messages)
不但可以把多个命令包含在一个事务里面,也可以把多个事务连接起来包含在一个消息里。
在ABNF语法里,一个消息以MEGACO开始,跟着就是斜杠/,跟着就是协议版本
(1),然后是消息标识(mId),然后就是消息体。
mId可以是域名或者IP地址(可选择,还可以包含端口)。
下面的例子是消息,事务和命令的应用,以如下格式构建一个消息:
MEGACO/1[111.111.222.222]:
34567
Transaction=12345{
Context=1111{
Add=A5555
Add=A6666
}
Context=${
Add=A7777
}
}
在这个例子里面,MGC给出了消息发送方的地址111.111.222.222及其端口34567。
有一个事务,事务标识为12345。
有一个关联域1111,关联域里有两个命令,都是Add命令,终端A5555和终端A6666被加入到关联域1111。
还有一个命令可对应任何关联域,由MG选择。
这个命令是Add命令,终端A7777将加入到被选择的关联域里。
因此,MG将创建一个新的关联域,新创建的关联域将会在响应里返回。
事务在消息里是独立的。
消息里的事务顺序不意味着消息接收者必须按这个顺序执行事务。
这与事务里的命令的情况不同,事务了的命令的顺序十分重要。
MEGACO命令概要
MEGACO定义了8个命令用于对关联域和终端的控制操作。
大多数的命令是MGC发送给MG的。
例外的是Ntify命令,该命令通常是由MG发给MGC的,ServiceChange命令则可以由MGC发送,也可以由MG发送。
Add终端加入命令。
如果该命令没有特意指定加入到哪个关联域,那么创建一个新的关联域。
如果该命令没有指定终端标识但用了通配符$,MG将创建一个新的短时终端并加入到关联域里。
Modify该命令终端用于修改终端属性,命令终端发出一个或多个信号,或命令终端检测和报告特定事件。
Subract该命令用于从一个关联域里删除一个终端,并返回该终端的统计信息。
统计信息取决于终端的类型。
一个RTP终端,返回统计信息可能包括诸如包的发送、接收等信息。
这方面来看,Subtract命令类似于MGCP里的DLCX命令。
如果删除的是关联域中的最后一个终端,则该关联域亦予删除。
MoveMove命令用于把一个终端从一个关联域迁移到另外一个关联域。
不能用于把一个终端移入或移出一个空的关联域,因为这样的操作是由Add和Subtract来完成的,各自有各自的功能。
把一个终端迁移的能力提供了完成呼叫等待服务的工具。
AuditValue该命令用于回送指定终端的性质、事件、信号和统计特性的当前值。
AuditCapabilitiesMGC用AuditCapabilities得到指定相关终端的性质、事件的可能取值。
表面上这跟AuditValue相似。
两者的区别是AuditValue返回当前值,而AuditCapabilities则返回可能的取值。
例如,AuditValue可以得到当前所有信号的值,而AuditCapabilities则可得到终端相关的所有可能的信号的值。
Notify该命令是MG用于通知MGC当前MG所发生的事件。
所报告的事件是之前MGC用相关命令命令MG的事件,如Modify命令。
所报告的事件将携带一个应答标识参数,是MGC能够把它与请求过的事件联系起来。
ServiceChange该命令是MG用于报告MGC一组终端将要退出服务或者刚恢复正常服务。
MGC也可以籍此把对某网关的控制权转交给另一个MGC。
这种情况下,由控制着MG的MGC发出的第一个命令用于促成控制权的转移。
同时,MG发送ServiceChange命令到新的MGC以确立新的关系。
描述语(Descriptors)
MEGACO定义了许多描述语用来协助命令的执行和响应。
这些描述语构成了命令和响应的参数并且提供了额外的信息以限制命令或响应。
一个特定的描述语是强制的,或者禁止的,抑或是可选的依懒于命令和响应。
大部分情况下,如果一个描述语不是禁止的则就是可选的。
强制的描述语是很少的。
描述语的基本格式如下:
Descriptorname=
描述语的参数可以完全指定,部分指定或者额外指定。
完全指定指的是指派的参数是唯一和确定的,命令的接收者在处理命令时必须应用这些描述语。
部分指定包含通配符”any”或者”choose”,命令接收者可以选择任何它能支持的值。
而额外指定则是命令发送者提供一系列的有优先级的可用参数。
接收者选择其中一个执行。
命令的响应里将指出所选择的参数。
Modem描述语该描述语指示所用的调制解调器类型及其声音、视频或数据传输、会话等相关参数。
包括以下的调制解调器类型:
V.18,V.22(1200bps),,V.22bis(2400bps),V.32(9600bps),V.32bis(14400bps),V.34(33600bps),
V.90()56kbps,V.91(64kbps)和同步ISDN。
默认情况是,终端没有Modem描述语。
也就是说,在启动的时候,不会为终端指定调制解调器相关的属性。
如果要指定则在MGC给MG的命令里指定。
(例如,Add和Modify命令)。
Multiplex描述语在多媒体通讯里,不同的媒体流可以通过不同的信使信道来通信。
在复用描述语里指明了媒体流和信使的联系,支持以下类型:
H.221,H.223,H.226和V.76。
Media描述语媒体描述语描述在各种媒体流。
该描述语包含一个描述语,叫终端状态描述语,大体上描述了终端的状态。
还包含一个对各个媒体流适用的媒体流描述语。
而且,每一个媒体流描述语包含三个从属的描述语,分别是本地控制描述语、本地描述语和远端描述语,表示如下:
媒体描述语
终端状态描述语
媒体流描述语
本地控制描述语
本地描述语
远端描述语
终端状态描述语该描述语含有两个属性:
服务状态和事件缓存控制能力,还有终端的其它没应用到任何媒体流的属性。
服务状态属性指示终端是否可用。
有三个状态,分别是:
测试,退出服务和正常服务。
正常服务并不意味着终端当前处于一个呼叫之中,而是意味着终端或者处于呼叫之中或者是可用于建立呼叫。
正常服务是默认的终端状态。
事件缓存控制能力属性是指检测到的事件是先进行缓存还是马上进行处理。
当MGC在发布的命令当中包含事件描述语,终端向MGC报告其要求检测的事件,该要求检测的事件是MGC在发布命令时用事件描述语指出的。
事实上,一个终端是否报告事件描述语里指定的事件取决于事件缓存控制器是无效还是锁定。
如果设定是无效,则事件发生时按照先入先出(FIFO)原则进行缓存。
当接到新的事件描述语时将会检查缓存的内容,指定终端所要检测的事件。
终端状态描述语里的事件缓存能力属性使得MGC打开或关闭终端的事件不用每次都发送一个事件描述语。
在媒体描述语里面,终端状态描述语时可选的。
媒体流描述语一个媒体流是由从属于它的本地控制描述语,本地描述语,远程描述语及流标识来定义的。
媒体流标识是MGC和MG之间用来指明是哪一些媒体流有连接关系。
在一个关联域里面,具有相同流标识的媒体流是互相连接的。
为一个关联域里面的某个终端指定一个流标识就创建一个媒体流。
删除一个媒体流是通过置空本地和远程描述语并且把本地控制描述语里的ReserveGroup和ReserveValue的值设定为“false”。
本地控制描述语该描述语包含一些媒体流的属性,特别是Mode属性,ReserveGroup属性和ReseveValue属性。
Mode属性值可以是只发(sendonly),只收(receiveonly),收发(sendreceive),未激发(inactive)的和环路(loopback)这几个中的一个。
收发的方向是针对关联域的外部来说的。
如果模式是sendonly,则终端只能发送媒体到关联域外的实体。
终端不能传送媒体到同一关联域的其它实体。
如果是receiveonly,则该终端可以从外部的关联域接收媒体并且传送到同一关联域里的其它终端,但是不能从终端接收媒体并且不能传送到关联域外的目的地。
当一个MGC想往某个关联域里添加终端时,,MGC可以指定一系列会话选择(通过本地和远程描述语来实现),这些选择是MGC希望MG使用的,并且指定这些选择的顺序。
MG并不需要选择MGC指定的首选。
但是,它必须要为MGC指定的选择保留资源。
在本地和远程描述语里面的ReserveGroup和ReserveValue的值指明了需要保留哪些资源。
本地描述语和远程描述语可以定义几个属性值或者一组值。
例如,一个SDP描述可以指定两组属性值:
一组是G.711A律音频,令一组是G.729音频。
如果ReserveGroup的值为真,那么MG要为这些属性组中的一个保留资源。
ReserveValue的用法与之相似,但是这个命令用于一个特定的属性值而不是一个属性组。
本地描述语和远程描述语当涉及到协议编码的文本,本地描述语和远程描述语包含0个或多个SDP会话描述以分别描述一个连接的本地端和远程端。
MEGACO涉及到SDP的严格的syntax语法,在RFC2327里定义定义了一些变量。
特别的是,s=,t=和o=是可以选择的;允许使用通配符$,也允许在信号参数里指定几个参数值。
每一个本地和远程描述语都可以包含几个会话描述,这些描述以SDP=开头。
事件描述语该描述语包含一个请求标识和一列请求网关检测和报告的事件,比如摘机,传真音事件。
请求标识用于关联事件请求和事件报告。
正常情况下,检测到的事件将马上报告给MGC。
但是,事件也有可能缓存,取决于事件控制缓存属性(事件缓存控制属性在终端状态描述语里定义)。
在事件缓存并因此需要向MGC报告情况下,与这些事件相关的信息储存在事件缓存描述语里。
信号描述语信号描述语包含终端应用到的一系列信号。
信号可以仅仅应用在信号媒体流里,或者终端的所有媒体流里。
典型的信号包括,比如,声音参数(例如铃声或者拨号音)。
信号有三种类型:
⏹通/断型信号一直存在直至关闭为止。
⏹定时型信号存在至信号源关闭或者超时为止。
⏹短暂型信号持续事件很短(R1MF躯干上的MF信号就是)
审计描述语审计描述语规定需要监管的信息,这些信息可能在终端退出呼叫后统计报告给MGC,也可以由MGC发送命令要求即时上报。
审计信息可以包括Modem、复用、媒体、事件、数字映像、已现事件、事件缓存、信号、统计和封包描述语。
服务变更描述语该描述语只在服务变更命令(ServiceChange)里使用,包含已经发生或行将发生的服务变更类型、服务变更原因、变更后的地址等信息。
服务变更的类型由服务变更方法参数定义,服务变更方法有以下类型:
●平缓方式:
表示指定的终端经规定的服务变更时延后将退出服务,已建连接尚不受影响。
●强制方式:
表示指定终端突然退出服务,与之相关的所有连接已丢失。
MGC负责清除故障终端相关的关联域,至少该终端应从关联域中删除。
终端服务状态应为”退出服务”。
●重启动:
表示指定终端经规定的服务变更时延后将恢复服务,在时延结束后终端服务状态应为”正常服务”。
●曾断链:
此方法适用于根终端,表示网关与MGC的通信曾中断过,后来又恢复了。
由于网关的状态可能已变化,MGC可能希望使用审计命令重新同步它和网关的状态信息。
●切换:
从MGC发往网关时,表示MGC将要退出服务,网关必须与一个新的MGC建立联系。
从网关发往MGC时,表示网关收到以前的MGC发来的切换指示,正在建立一个新的联系。
●倒换:
由网关发往MGC,表示主用MGC已经退出服务,备用MGC正在接管控制权。
●其它:
还可以根据MGC和网关的约定,规定其它值。
.
服务变更时延以秒来表示可接受的延迟。
比如说,这种参数可用在平缓的服务变更。
服务变更理由参数规定了服务变更已经或行将发生的理由。
下表给出了MEGACO定义的理由:
理由代码解释
900ServiceRestored
901ColdBoot
902WarmBoot
903MGCDirectedChange
904Terminationmalfunctioning
905Terminationtakenoutofservice
906Lossoflowerlayerconnectivity
907Transmissionfailure
908MGimpendingfailure
909MGCimpendingfailure
910Mediacapability
911Modemcapability
912Muxcapability
913Signalcapability
914Eventcapabilityfailure
915Stateloss
数字映像描述语数字映像描述一个拨号计划并且存储在MG以使MG可以收发一块的数字而不是一位一位的来。
一个数字映像可以通过操作和维持动作装载到MG里,或者通过MEGACO命令从MGC装载。
当从MGC装载时,数字映像描述语就用来传达信息。
根据MEGACO的syntax表示,一个数字映像是一个字符串或一列字符串,每个字符串由0到9的数字和A到K的字母组成。
字母x是通配符,用来表示0~9之间的任意一个数字。
字符“.“表示紧跟其前的字符可以出现任意多个,包括零个。
这个符号用来表示拨号计划里不确定的长度。
例如,在美国,国内呼叫是10位数字。
但是,国际长途是可变的长度,所以,打到德国的电话号码长度可能比打到爱尔兰的长。
为了定义国际长途的位数,可以用字符串011x.来表示。
011表明是一个国际长途呼叫,x.表示一些数字——每位都处于0~9。
另外,字符串可以定义三个定时器:
起始定时器(T)、短时定时器(S)、长时定时器(L)。
为了理解这三个定时器的用法,让我们来假设当某个人拿起家里的电话将会发生的事情。
首先,摘机事件将会被检测到,系统(例如,电话交换系统)给拨号音并且准备接收号码。
系统将只按规定的事件限制等待这个人按键。
如果这个人不按时按数字键,系统将会超时并做其它的动作,比如提示用户。
这个超时的值在起始定时器里给出。
一旦用户开始拨号,将应用一个中间数字定时器。
这个定时器或者是短时定时器或者是长时定时器。
取决于拨号计划。
如果这个人拨了某个数字并且系统仍然需要更多的主子以建立呼叫路线,在等待下一个数字时将启用短时定时器。
也就是说,如果这个人已经拨了全部的数字以建立呼叫但是可能还会收到更多的数字,这将会导致一个不同的路径,这就要启用长时定时器。
长时定时器是系统用来确定用户已经完成拨号的。
举一个美国的例子,拨0将连接到本地话务员,00将连接到长途话务员。
系统收到第一个0时,在建立路径前它必须要等待以确定用户不会拨第二个0以连接到长途话务员。
下表是一个拨号计划的例子:
拨的数字解释
0本地话务员
00长途话务员
Xxxx本地分机号(首位数字1~7)
8xxxxxxx本地电话号码
#xxxxxxx远程分机
*xx星号服务
91xxxxxxxxxx长途电话号码
9011+最多达15位数字国际电话号码
这个拨号计划可以用数字映像表示:
(0|00|[1-7]xxx|8xxxxxxx|Fxxxxxxx|Exx|91xxxxxxxxxx|9011x.)
在这个数字映像里,省略了定时器。
这种情况并不意味着MG里并没有发生计时事件。
相反,根据规则,它意味着定时器默认情况下是启动了的。
例如,这个拨号计划里的每一个模式先于起始定时器(T)。
实际上,定时器符号没有出现在数字映像里意味着MG任何情况下在每个模式的开始时都启动。
统计描述语统计描述语用于返回统计信息。
返回的统计信息取决于终端类型。
严格的来说,这个描述语总是可以选择的并且可以作为几个不同的命令的结果返回。
在使用Subtract命令从一个关联域里移出终端时返回该描述语,也可在AuditValue命令里返回。
已见事件描述语该描述语是Notify里的一个强制参数,用于通知MG已观察到的事件。
除了ServiceChange命令外,已见事件描述语在其它命令响应可有可无。
在AuditValue命令响应里,已见事件描述语用于报告已经观察到的存储在事件缓存但还没有向MGC报告的事件。
已见事件描述语里包含一个请求标识,该标识对应于事件描述语里列出的首先要检测的事件。
这个特性使得事件请求与事件报告能
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- H248协议中文 翻译 H248 协议 中文