SoftX3000 技术手册 信令与协议分册-第1章 MGCP协议.doc_第1页
SoftX3000 技术手册 信令与协议分册-第1章 MGCP协议.doc_第2页
SoftX3000 技术手册 信令与协议分册-第1章 MGCP协议.doc_第3页
SoftX3000 技术手册 信令与协议分册-第1章 MGCP协议.doc_第4页
SoftX3000 技术手册 信令与协议分册-第1章 MGCP协议.doc_第5页
已阅读5页,还剩33页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

U-SYS SoftX3000 软交换系统 技术手册 信令与协议分册目 录目 录第1章 MGCP协议1-11.1 概述1-11.1.1 基本概念1-11.1.2 相关术语1-11.1.3 协议栈结构1-71.1.4 MGCP协议的应用1-71.2 协议消息1-81.2.1 消息类型1-81.2.2 消息结构1-111.3 基本控制流程1-211.3.1 网关注册流程1-211.3.2 成功的终端呼叫流程(在同一MG下)1-221.3.3 成功的终端呼叫流程(在不同MG下)1-33iU-SYS SoftX3000 软交换系统 技术手册 信令与协议分册第1章 MGCP协议第1章 MGCP协议1.1 概述1.1.1 基本概念RFC2705对应用编程接口及对应的协议MGCP(Media Gateway Control Protocol)进行定义,用于控制来自外部呼叫控制单元的IP语音(VoIP)网关。MGCP定义了一种呼叫控制结构,在该结构中,呼叫控制与业务承载分离。如图1-1所示,呼叫控制功能独立在MG(Media Gateway)外部,由称为MGC ( Media Gateway Controller)或CA(Call Agent)的外部呼叫控制单元处理。MG需要执行MGC发出的命令,所以,从本质上说MGCP协议是一个主/从协议。图1-1 MGCP协议概念示意图1.1.2 相关术语1. 网关网关(Gateway)是一种网络单元,用于实现不同体系结构的网络之间的互联互通。在NGN体系结构中,NGN通过一些网关与其它网络互通:l TMG(Trunk Media Gateway):中继媒体网关,是位于电路交换网和IP分组网之间的网关,用于终结大量的数字电路。l AMG(Access Media Gateway):接入媒体网关,用于将一种网络中的媒体转换成另一种网络所要求的媒体格式。例如,AMG可完成电路交换网的承载通道和分组网的媒体流之间的转换。l UMG(Universal Media Gateway):通用媒体网关,主要完成媒体流格式转换与信令转换功能,具有TMG、内置SG(Signaling Gateway)、AMG等多种用途,可用于连接PSTN交换机、PBX、接入网、路由器、无线基站等多种设备2. 媒体资源服务器媒体资源服务器(MRS,Media Resource Server):一种网关,用于支持多种端点类型,如通知服务器接入点、交互式语音响应接入点和会议桥路接入点等等。SoftX3000支持MGCP控制MRS,用于提供通知音和交换语音响应(IVR,Interactive Voice Response)业务。MRS可用于为系统中的各种用户提供通知服务。SoftX3000也支持通过MRS进行收号。3. 呼叫代理呼叫代理(Call Agent)提供信令和呼叫处理功能,是用于控制电话网关的外部呼叫控制单元。SoftX3000系统提供MGCP呼叫代理功能。SoftX3000可作为网络中MGCP E-phone和Softphone的接入点,和IETF RFC 2705 (MGCP)兼容。SoftX3000 遵循RFC2705(1.0版本)2.1.3节的规定,支持呼叫和连接管理规程。 4. 端点端点(End Point)是数据信源和数据信宿。端点可以是物理链路,也可以是运行在物理链路上的虚拟链路。在中继网关终端接PSTN交换机的中继接口、在接入网关接E-phone的端口是物理端点的例子,而媒体资源服务器(MRS)中的音源则是虚拟端点的例子。创建一个物理端点需要安装硬件,而创建虚拟端点可以通过软件完成。5. 端点标识(端点名)端点由端点标识符来标识。端点标识符不区分大小写,由两部分组成第一部分是该端点所在的网关的域名,第二部分是该端点在网关内的本地名称,它们之间用“”来分隔,就像是一个Email地址。本地名称的语法取决于端点的类型,可以具有层次结构,以形成一个从网关名到各端点的命名路径,端点标识遵循下面的约定:(1) 每个命名路径的标识项必须用单个斜杠分隔(“/”)。(2) 每个标识项都是一个由字母、数字或者其它可打印字符组成的字符串,该字符串中不包括定界符号(“/”、“”)和空格。 (3) 本地名中可以用通配符“*”和“$”,前者表示这一层上的所有端点,后者表示在这一层上的某一端点,即前者具有“所有的”,而后者具有“任何一个”的含义。在MGCP中,网关通过其域名(如:)标识。本地名可以用物理接口名(如aaln)和终端标识(接入媒体网关中电话号码所对应的端口号)构成。该终端标识和物理接口名用斜杠(“/”)分隔。如:接入媒体网关的端点名:aaln/1 。指域名为的接入媒体网关aaln接口的第1个端口。如:中继网关的端点名: X35V3+A4/13。指example网络中第23号网关中接口X35V3+A4上第13条TDM电路。6. 连接和呼叫连接可以是点到点连接或多点连接。点到点连接就是两个互相发送数据的端点之间的一种关联,一旦该关联在两个端点都建立起来后,就可开始传送数据。多点连接是多个端点之间的关联。连接可建在不同类型的承载网络之上。连接根据呼叫分组,一个呼叫内可以有一个或者多个连接。连接和呼叫的建立是由一个或者多个MGC主动发起的。图1-2显示了端点、连接、呼叫和网关的概念及其相互关系。图1-2 端点、连接、呼叫和网关的相互关系当两个端点所在的网关由同一个呼叫代理(如SoftX3000)管理时,可以通过以下三步创建连接:(1) 呼叫代理请求第一个网关在第一个端点上“创建一个连接”。该网关为这个连接分配资源,并且用“会话描述”响应该命令。该会话描述包含了第三方给该新建连接发送包所必须的信息,例如IP地址、UDP端口和打包参数。(2) 该呼叫代理请求第二个网关在第二个端点上“创建一个连接”。该命令携带第一个网关提供的“会话描述”。 该网关为这个连接分配资源,并且用“会话描述”响应该命令。(3) 该呼叫代理用“修改连接”命令将第二个网关的“会话描述”提供给第一个端点。一旦该过程完成,双方可以进行双向通讯。7. 连接标识连接在端点处被管理,并且可以被聚合成呼叫。连接由网关创建,并且网关赋予其本端唯一的连接标识。 连接标识符为十六进制数字组成的字符串。8. 呼叫标识呼叫由唯一的标识号来标识,它由媒体网关控制器创建。呼叫标识可以看作没有结构的字符串。呼叫标识符在系统中必须是唯一的。媒体网关控制器可能会对同一个呼叫构建数条连接,这些连接必须与同一个呼叫相关联。9. 呼叫代理和其它实体的命名在MGCP中,呼叫代理由域名来标识。为增强系统的可靠性,可以有冗余(备用)的呼叫代理,它们具有相同的域名,不同的网络地址(如IP地址)。网关通过域名来识别呼叫代理,只是在低层操作时从域名服务器获得呼叫代理的网络地址列表,根据具体情况采用不同的网络地址和呼叫代理通信。这种通过域名来唯一标识,同时又具有多个IP地址的冗余机制对于提高系统的可靠性具有重要的意义。其它实体,如网关、信息服务器等也都由域名来标识,同样,这些实体也可通过冗余来增强系统的可靠性。对于呼叫代理和网关来说,它们通过域名来识别这些实体。采用域名可以避免直接通过网络地址标识这些实体,因为域名相对稳定,而网络地址却相对易变。例如,把一个实体移到另外一个局域网络,则IP地址将发生改变,而域名却可以不变。域名的生存期可以保证其它实体能够比较及时地通过更新域名信息获得该实体的最新IP地址。在MGCP中,呼叫代理和其它实体实际上是用Email地址来表示的,如:C表示example网中的呼叫代理B表示example网中第12号信息服务器中的忙音信号。10. 事件和信号事件和信号的概念在MGCP中起着重要的作用。呼叫代理可以要求端点在检测到某些事件,如摘机、挂机、拍叉或拨号号码发生时,向其发出通知;也可请求将某些信号,如拨号音、回铃音、忙音等加到端点上。事件和信号组合成包(package),每个包由某一特定端点支持。事件名由包名加斜杠(/)加实际事件名组成(事件名和包名不区分大小写)。包名是可选项,每个端点类型都有一个和它相关的缺省包,如果事件名中不包含包名,将采用缺省的包名。事件名后面可以接符号“”加检查到发生该事件的连接。另外,可以使用事件的范围和通配符来取代单个的事件名。通配符“*”可以用来表示“所有的”含义,通配符“$”可以用来表示“当前的,任何一个”的含义。每个信号有一个与之相关的信号类型,如:开/关(OO)、超时(TO)、短信号(BR)。表1-1列出了几类常用的包:表1-1 包分类列表包名包ID通用媒体包GDTMF包DMF包M中继包T模拟线包L头戴式送受话包HRTP包R网络接入服务器包N通告服务器包A脚本包Script表1-2列出了一些有效的事件名:表1-2 事件名举例事件名含义l/hd模拟线包中的摘机事件l/hu模拟线包中的挂机事件l/dl模拟线包中的拨号音事件l/hf模拟线包中的闪断事件l/aw模拟线包中的应答音事件l/bz模拟线包中的忙音事件l/wt模拟线包中的呼叫等待音事件l/rg模拟线包中的振铃事件l/sl模拟线包中的断续拨号音事件M/0MF包中的数字0M/0-9MF包中的数字09fh默认模拟线包中的拍叉事件G/rt0A3F58连接“0A3F58”通用媒体包中的回铃音事件G/mt通用媒体包中的检测到Modem事件G/ft通用媒体包中的检测到传真信号音事件G/ld通用媒体包中的长时间连接事件,当一个连接持续时间大于一小时,该事件将被监测0-9*#A-DDTMF包中的所有数字和字母T/$中继包中的所有事件R/qa*所有连接RTP包的质量告警事件R/rt$当前连接RTP包中的回铃音事件11. DigitMap呼叫代理请求网关采集用户拨打的号码,如: RGW采集用户拨号、信用卡号等。如果收到一位号码就立即报告一位则效率太低,大量占用网络资源。合理的方法是将拨号收齐后用一个消息集中发送,该方法的难点是网关如何判断号码收齐。解决方法是由呼叫代理向网关加载一个“Digit Map”,相当于编号计划。Digit Map的一般格式可用语法规则表达式严格表示。它包含一列数字字符,收到的拨号序列只要和其中一串字符相匹配就表示号码已收齐。数字字符串允许包含的字符有:数字09、字母 AD 、“#”、“*”、字母T和x以及“.”。其中用“|”隔开的每个字符串是一个可选择的拨号方案;“”表示任选一;“*”表示拨*的话就一位一位上报;字母T表示检测到定时器超时;字母x表示任意数字;“.”表示其后的字符可以出现任意多个,包括零个;“#”表示立即上报。例如,我们可能使用桌上的电话拨打如下号码:表1-3 Digit Map 举例0本地接线员00长途接线员xxxx本地区号8xxxxxxx本地号码xxxxxxx#在其它公司服务区内的本地快捷号码*xx开始服务91xxxxxxxxxx长途号码9011最多15位数字国际号码上文所描述的拨号方案可以导出如下的数字表: (0T| 00T|1-7xxx|8xxxxxxx|xxxxxxx#|*xx|91xxxxxxxxxx|9011x.T)1.1.3 协议栈结构MGCP(媒体网关控制协议)既是一种命令定义,又是一种信令定义。通过MGCP命令,MGC可以控制MG;而MG送回响应信号给 MGC。MGCP的命令和响应定义为IP包,这样MGCP可独立于底层承载系统。MGCP的协议栈结构如图1-5所示。图1-5 MGCP的协议结构MGCP消息在UDP/IP上传递,传输层协议为UDP,网络层协议为IP。1.1.4 MGCP协议的应用MGCP在NGN中的典型应用如图1-6所示。图1-6 MGCP在NGN中的典型应用SoftX3000通过MGCP协议控制MRS(Media Resource Server)、AG和IAD的接入。1.2 协议消息网关控制器(MGC)和网关(MG)之间共有九种MGCP消息,当消息发送到MG或MGC时,称它为命令;当命令的证实消息从MG或MGC送回时,称为响应。命令和响应是不可分的,如果网关注册成功,收到命令时,网关(或MGC)会立即送回一个响应。1.2.1 消息类型1. 命令MGCP命令的名称和含义如表1-4所示。它们包括连接处理和端点处理命令。在本协议中共有九个命令:表1-4 MGCP命令命令名称代码描述EndpointConfigurationEPCFMGCMG,端点配置命令,用来规定在端点上接收的信号的编码(A-law还是-law)。呼叫代理使用该命令可以将这些信息传给相应的网关NotificationRequestRQNT请求网关监视某端点发生的某些事件,如发生则通知呼叫代理NotifyNTFYMGMGC,网关用此命令通知呼叫代理,请求监视的某些事件已发生CreateConnectionCRCXMGCMG,呼叫代理用此命令将某端点和指定的IP地址和UDP端口关联。另外还需要向远端端点发送一个创建连接命令,这样才能建立两个端点间的连接ModifyConnectionMDCXMGCMG,修改先前建立连接的参数,呼叫代理用该命令将第二个端点的“会话描述”(IP地址、UDP端口和打包参数等信息)提供给第一个端点。一旦该过程完成,双方可以进行双向通讯DeleteConnectionDLCXMGCMG,删除先前建立的连接AuditEndpointsAUEPMGCMG,呼叫代理用此命令获得某端点或一组端点的详细信息AuditConnectionAUCXMGCMG,呼叫代理用此命令获得某端点上某连接的详细信息RestartInProgressRSIPMGMGC,网关用此命令告知某端点退出服务或投入服务2. 响应所有的MGCP命令都要接收者回送响应。响应码为一整数,有四个取值范围:100199:表示临时应答;200299:表明命令成功完成;400499:表明命令执行时遇到一个临时性的错误(transient error);500599:表明命令执行时遇到一个永久性的错误(permanent error);是否返回应答参数,依赖于特定的命令。目前已经定义了的响应码如表1-5所示。表1-5 MGCP响应码响应码响应码含义100事务正在被处理。其后会产生一个真实的完成消息200请求的事务已经被正常执行250连接被删除400由于突发错误,不能执行该事务401电话已经摘机402电话已经挂机403由于此时端点没有充足的资源,不能执行该事务404该时带宽不足500由于端点未知,该事务不能被执行501由于端点未就绪,该事务不能被执行502由于端点没有充足的资源,该事务不能被执行510由于检查到协议错误,该事务不能被执行511由于命令中包含不能识别的扩展名,该事务不能被执行512由于网关没有配置检查请求事件的能力,该事务不能被执行513由于网关没有配置产生请求信号的能力,该事务不能被执行514由于网关不能发送指定的通知音,该事务不能被执行515该事务涉及到一个错误的连接标识(该连接可能已经被删除)516该事务涉及到一个错误的呼叫标识517不支持或者无效的模式518不支持或者未知的消息包519端点不存在数字表收号方式520由于端点正在重启,该事务不能被执行521端点已经被重定向到其他呼叫代理522没有该事件或者信号523未知的动作或者非法的动作组合524LocalConnectionOptions的内部不一致性525LocalConnectionOptions中的未知的扩展名526带宽不够527缺少RemoteConnectionDescriptor528不兼容的协议版本529内部硬件故障530CAS信令协议错误531中继群故障(例如,设备故障)1.2.2 消息结构1. 命令格式(1) 命令结构MGCP命令格式如图1-9所示,由一个命令行和一组参数行组成。命令行和每一个参数行通过换行符隔开。图1-9 MGCP命令的结构命令参数l 响应证实 (K)指明已收到响应命令的事务标识。它包含了一个逗号分隔的“已经确认的事务标识域”。例如: K: 6234-6255, 6257, 19030-19044l 承载信息 (B)指示承载属性。目前只定义了一个属性“encoding”(编码为“e”),为其定义的值为“A”(A-law)和“”(-law)。例如,一个载体信息编码为: B: e:mul 呼叫ID (C)是一个全局唯一的参数,它用来标识连接在的呼叫(会话)。属于同一个呼叫的连接共享相同的呼叫标识。报告和记帐时用到该参数。呼叫标识用来标识呼叫,用16进制字符串表示,至多32个字符。l 连接ID (I)连接标识,用16进制字符串表示,至多32个字符。l 被通知实体 (N)被通知实体,用来指定通知送到什么地方。当缺少该参数时,通知将发给通知请求的始发者。l 请求ID (X)请求标识,用于将请求和它所触发的通知关联起来。用16进制字符串表示,至多32个字符。l 本地连接选项 (L)本地连接选项是呼叫代理建议网关的可选参数。这些参数为:以毫秒为单位的打包时长(p),首选的压缩算法(a),以kb/s为单位的带宽(b),回声取消参数(e),增益控制参数(gc),静音抑制参数(s), 业务类型参数(t),资源保留参数 (r),加密密钥(k),网络类型(nt)。每个参数都是可选的,当有多个参数出现时,它们的值用逗号分隔。下面是一些连接描述符的例子:L: p:10, a:PCMUL: p:10, a:G726-32L: p:10-20, b:64L: b:32-64, e:offl 连接模式 (M)连接模式描述连接的操作模式:表1-6 连接模式及其含义连接模式含义sendonly只发送recvonly只接收sendrecv收/发confrnce会议inactive去激活loopback回环conttest连续性测试netwloop网络回环netwtest网络连续性测试data数据l 被请求的事件 (R)RequestedEvent参数提供一系列已经被请求的事件。每个事件受一个请求的动作限制,或者受一系列动作的限制。当指定这些动作时,用括号将一系列关键字编码括起来,这些关键字之间用逗号分隔。表1-7是各种动作的编码:表1-7 各动作的编码编码动作N立即通知该事件,连同累积的该事件序列一起通知A将事件累积存入事件缓存器,不通知D根据数字映像累积S交换音频信号I不作任何处理K保持信号激活E处理内嵌通知请求当没有指定动作时,缺省动作是通知该事件。这意味着,ft和Ft(N) 是等价的。没有列出的事件被忽略。数字表动作只能用于MF和DTMF中,指定数字、字母以及数字字母间隔之间的记时器,或者其它需要定义数字和记时器编码的包。请求的列表是在一行上编码的,是用逗号分隔的事件/动作组。下面是一个RequestedEvents的编码:R: hu(N), hf(S,N)R: hu(N), 0-9#T(D)l 请求信号 (S)SignalRequests参数提供已经被请求的信号名。一些信号可以用额外的参数来限制。例如通知音和ADSI(Analogue Display Service Interface server)显示:通知音的名称和参数。应该被显示的字符串。这些参数将使用由UTF8字符编码的字符串,用括号括起来,参数之间用逗号分隔。如:S: adsi(123456 Francois Gerard)S: ann(no-such-number, 1234567)当有多个信号被请求时,它们的编码用逗号分隔。如:S: asdi(123456 Your friend), rgl 检测到的事件 (O)检测到的事件参数提供一个已经观察到的事件列表。下面的例子是观察到的动作:O: L/huO: 8295555TO: 8,2,9,5,5,L/hf,5,5,TO: L/hf, L/hf, L/hul 连接参数(P)连接参数使用类型字符串和参数值进行编码,其中类型可以为参数类型标识,也可以是扩展类型,参数值为一个十进制整数。类型和参数值之间用“=”分隔。参数之间用逗号分隔。表1-8是定义的连接参数类型:表1-8 连接参数类型编码名称连接参数值PSPackets sent发送的封包数OSOctets sent发送的八位字节数PRPackets received收到的封包数OROctets received收到的八位字节数PLPackets lost丢失的封包数JIJitter平均收包间隔,整数,单位毫秒LALatency平均延迟,整数,单位毫秒下面是一些连接参数的编码:P: PS=1245, OS=62345, PR=0, OR=0, PL=0, JI=0, LA=48l 原因码 (E)在由媒体网关或MGCP终端发起的删除连接命令或者重启进程命令中,必须包含原因码(Reason Codes),用来表明删除连接或者重启的原因。原因码为一个整数,已经定义的值如表1-9所示。表1-9 命令原因码原因码原因描述000表示端点状态正常(该原因码只用来响应审计请求)900表示端点功能失常901端点退出业务902表示低层连接失败原因编码是三位数字的数值。原因编码之后跟可选的空白符和注释,例如:900 Endpoint malfuctioningl 指定端点ID(Z) 网关指定的端口ID,在创建连接响应中返回。是可选参数,用来标识响应端点。它主要用在EndpointId参数使用“任何一个”通配名时。当指定端点ID被返回时,在关于该呼叫的后续命令中呼叫代理应该使用该值作为EndpointId值。l 请求的信息 (F)当指定了一个非通配的端点标识,RequestedInfo(可能为空)用于描述指定端点的请求信息。该命令可以监察下面的端点信息:RequestedEvents、DigitMap、SignalRequests、RequestIdentifier、NotifiedEntity、ConnectionIdentifiers、DetectEvents、ObservedEvents、EventStates、 RestartReason、 RestartDelay、 ReasonCode和Capabilities。RequestedInfo参数是一个由逗号分隔的参数编码列表,举例,如果想监察NotifiedEntity、RequestIdentifier、RequestedEvents、SiganalRequests、DigitMap、QuarantineHandling、DetectEvents和Capabilities参数的值,该RequestedInfo参数的值为:F:N,X,R,S,D,Q,T,Al 隔离处理(Q)隔离处理定义怎样处理“隔离”事件,也就是,在通知请求命令到达之前,网关已经检查到的事件,但是还没有将该事件通知呼叫代理。该参数提供了一组处理选项:l 隔离事件或者被处理(关键字:process)或者被丢掉(关键字:discard)。缺省为process。l 为了响应该请求,网关或者产生至多一个通知(步进方式,关键字:step)或者产生多个通知(循环方式,关键字:loop)。缺省为step。举例:Q:loopQ:processQ:discard,loopl 检测事件(T)在隔离模式下当前被检查的事件列表。检测事件参数是用逗号分隔的一组事件编码。举例:T: hu,hd,hf,0-9#*l 重启方式(RM)重启方式参数指定重启类型,该参数使用以下关键字:graceful:表示指定的端点将在指定的延时之后退出服务。已经建立的连接不受影响,但是呼叫代理避免建立新连接,并且试图文明拆除该存在的连接。forced:表示指定端点突然退出服务。已经建立的连接会丢失。restart:表示在确定的重启延时之后恢复该端点上的服务。当前,该端点上还没有已经建立的连接。disconnected:表示指定的端点已经被分离,并且试图建立连接。“重启时延”指定了该端点分离了多少秒。已经建立的连接不受影响。cancel-graceful:此方式表示该网关正在取消先前发出的“文明重启”命令。举例:RM:restartl 重启动时延(RD)重启延时,以秒为单位。如果不提供该参数,认为延时时间为无效。对于 “graceful”方式,无效延时表示呼叫代理应该等待该存在的连接自然终止,同时不再创建新连接;对于“forced”模式重启延时是无效的;对于“restart”方式,无效延时表示该服务已经恢复,这种情况通常发生在网关启动/重启之后。l 事件状态(ES)该参数是用逗号分隔的一组事件编码。举例:E: hul 性能 (A)当端点被监察时,性能参数通知呼叫代理关于该端点的性能。对于具有共性的参数,性能和本地连接选项使用相同的参数。这些参数为:事件包(v)、模式(m)、(*)所支持的编解码列表、(nt)网络类型等。另外,性能也包括端点所支持的包和模式列表。l 远端连接描述语 (RC)它和本地连接包含相同的域(IP地址、UDP端口和打包参数)。对于建立连接命令,当不知道远端情况时,该参数为空值。发生这种情况是因为建立连接的实体开始给其中的一个网关发送创建连接命令。对于第一个发出的创建连接命令,无法获得对端的连接消息。该消息通过修改连接呼叫通过SDP包提供。l 本地连接描述语(LC)如SDP定义的那样,包括适合于本地连接的IP地址和端口号等会话描述。命令形式命令名后面的括号中描述的是命令的输入参数,中的参数是可选项。l 端点配置命令EPCF (端点ID,承载信息)l 通知请求命令RQNT (端点ID,被通知实体,请求事件,请求ID,Digit Map,请求信号,预检处理,检测事件,封装端点配置)l 通知命令NTFY (端点ID,被通知实体,请求ID,观测到的事件)l 创建连接命令CRCX (呼叫ID,端点ID,被通知实体,本地连接选项,模式,远端连接描述语,封装通知请求,封装端点配置)l 修改连接命令MDCX (呼叫ID,端点ID,连接ID,被通知实体,本地连接选项,模式,远端连接描述语,封装通知请求,封装端点配置)l 删除连接命令由呼叫代理发起删除:DLCX (呼叫ID,端点ID,连接ID,封装通知请求,封装端点配置)由网关发起删除:DLCX (呼叫ID,端点ID,连接ID,原因码,连接参数)由呼叫代理发起的多连接删除:DLCX (呼叫ID,端点ID)l 审计端点命令AUEP (端点ID,请求信息)l 审计连接命令AUCX (端点ID,连接ID,请求信息)l 重启动命令RSIP (端点ID,重启动方式,重启动时延,原因码)命令示例下面是MGCP命令编码的示例:CRCX 693585490 aaln/2 MGCP 1.0C;a265L:a:PCMA,P:20 M:inactiveX:65000108R:D/0-9*#T (D), G/ld(N)S:第一行:创建连接命令。事务标识为693585490,用来将该命令和其触发的响应相关联。表示SoftX3000和域名为、接口名为aaln的接入网关的第二个端口创建连接。MGCP的版本号为1.0。第二行:呼叫标识为a265。第三行:近端连接选项,呼叫代理建议网关:压缩算法为PCMA,封装时延为20ms。第四行:连接模式为去激活,不收/发数据包。只有执行修改连接命令之后,连接模式为sendrecv。第五行:该创建连接命令封装的通知请求命令。请求ID为65000108,用于将请求和它所触发的通知关联起来。第六行:SoftX3000请求网关监视该端点发生的以下事件:根据Digit Map规定的号码采集规则收号。其中,“D/0-9*#T”表示DTMF包中的数字和字符。涉及到数字(09)、星号(“*”)、井号(“#”)以及记时器标识“T”。这些字符可以组成“数字串”代表用户的拨号键。“D/0-9*#T(D)”表示根据Digit map来处理用户拨的“数字串”,如果该“数字串”至少和Digit map定义的一个可选择的拨号方案匹配,Endpoint1所在的网关就把当前“数字串”发送给呼叫代理。“G/ld(N)”表示如果通用媒体包中的长时间连接(当一个连接持续时间大于一小时)事件发生,请求通知呼叫代理。第七行:此时信号为空,表示MGC要求MG停止目前所播放的任何信号。2. 响应格式(1) 响应结构和MGCP命令的格式类似,响应格式由响应行后接一组可选参数行组成。响应行由响应码,事务标识和一个由空格隔开的可选注释组成。响应码是一个三位的数值,表示命令的执行状态。图1-10 MGCP响应的结构(2) 响应参数响应参数行是任选项,视对于什么命令的响应而定。响应参数请参考“命令参数”一节中的详细解释。(3) 响应形式命令名后面的括号中描述的是命令的响应参数值,中的参数是可选项。l 端点配置命令EPCF (响应码)l 通知请求命令RQNT (响应码)l 通知命令NTFY (响应码)l 创建连接命令CRCX (响应码,连接ID,指定端点ID,本地连接描述语)l 修改连接命令MDCX (响应码,本地连接描述语)l 删除连接命令由呼叫代理发起删除:DLCX (响应码,连接参数)由网关发起删除:DLCX (响应码)由呼叫代理发起的多连接删除:DLCX (响应码)l 审计端点命令AUEP (响应码,端点ID列表|被请求的事件,DigitMap,请求信号, 请求ID,被通知实体, 连接ID,检测事件, 检测到的事件, 事件状态, 承载信息,重启动原因,重启动时延,原因码,性能)l 审计连接命令AUCX (响应码,呼叫ID,被通知实体,本地连接选项,连接模式,远端连接描述语,本地连接描述语,连接参数)l 重启动命令RSIP (响应码,被通知实体)(4) 响应示例下面是连接响应的示例:200 693585490 CRCX OKI:1607901v=0c=IN IP4 65m=audio 5012 RTP/AVP 8 0a=ptime:20第一行:“200”表示命令的正确接收。“693585490”是事务标识符,和触发该响应的创建连接命令的事务标识符相同。“CRCX OK”是注释。第二行:连接ID为“1607901”。第三行:空行,表示下面为SDP会话描述。第四行:SDP协议的版本为0。在此为本地连接描述语。第五行:“c”在该响应中标识连接信息。“IN”指网络类型,为文本串形式,目前规定的“IN”为Inernet。 “IP4”表示连接地址类型为IP4。“65”表示与MGC建立连接的网关的网络地址。第六行:媒体描述。“audio”表示媒体类型为音频(对于音频连接使用“audio”类型,对于数据接入使用“nas”类型)。“5012”表示媒体流发往的传送层端口号为5012。“RTP/AVP”为传送层协议,其值和“c”行中的地址类型有关,对于IP4来说,大多数媒体业务流都在RTP/UDP上传送,已定义如下两类协议:RTP/AVP,音频/视频应用文档,在UDP上传送;Udp,UDP协议。“8 0”对于音频和视频来说,就是RTP音频/视频应用文档中定义的媒体静荷类型。表示会话中所有这些格式都可能被用到,但第一个格式是会话的缺省格式。此时RTP静荷类型至编码的映射关系为,“8”对应的媒体编码格式为PCMA。“0”对应的媒体编码格式为PCMU。第七行:属性。属性是SDP扩展的基本手段。可以定义为会话级属性或媒体级属性。有两种形式的属性:a=,为特性属性。它们为二进制属性,表示会话具有该性质。如a=recvonly表示是“只收”特性。a=:,为数值属性。如:a=ptime:20表示媒体属性域名为“ptime”,媒体属性值为20。1.3 基本控制流程1.3.1 网关注册流程网关必须首先向SoftX3000注册才能完成随后正常的流程接续。网关注册流程应用实例如图1-11所示:图1-11 网关注册流程示例(1) 事件一:MG向MGC发起RSIP命令,汇报MG已经加载完成或重启动,请求向MGC注册。下面是RSIP命令编码的示例:RSIP 836 aaln/* MGCP 1.0 NSC 1.0RM:restart第一行:重启动命令。事务标识为836,用来将该命令和其触发的响应相关联。表示域名为、接口名为aaln的接入网关的所有端点重启动。MGCP的版本号为1.0。第二行:重启动方式为“restart”。表示在确定的重启延时之后恢复该网关端点上的服务。当前,该网关端点上还没有已经建立的连接。(2) 事件二:MGC响应MG的注册请求。下面是重启动响应的示例:示例一:200 836 OK“200”表示命令的正确接收。“836”是事务标识符,和触发该响应的命令的事务标识符相同。“OK”是注释。网关收到该响应,表明注册成功。示例二:500 836 The endpoint is unknown“500”表示由于端点未知,该事务不能被执行。“836”是事务标识符,和触发该响应的命令的事务标识符相同。“The endpoint is unknown”是注释。网关收到该响应,表明注册失败。1.3.2 成功的终端呼叫流程(在同一MG下)在同一SoftX3000控制下的同一MG的两个端点之间的成功呼叫,呼叫流程应用实例如图1-12所示。在下面的实例中,我们基于以下约定:l Endpoint1的端点ID为aaln/1,UserA与Endpoint1连接;l Endpoint2的端点ID为aaln/2;UserB与Endpoint2连接;l UserA为主叫,UserB为被叫,被叫先挂机;l MG的 IP地址为65。图1-12 同一MG下的两个端点之间的MGCP呼叫流程示例(1) 事件1:SoftX3000给Endpoint1发送RQNT命令,请求其对该端点的摘机事件进行监控。网关确认命令。网关监控这一事件直到Endpoint1的用户摘机。l RQNT命令编码RQNT 59659850 aaln/1 MGCP 1.0X:6500010aR:l/hd(N)S:第一行:通知请求命令。事务标识为59659850,用来将该命令和其触发的响应相关联。表示SoftX3000向域名为、接口名为aaln的接入网关的第一个端口发出请求。MGCP的版本号为1.0。第二行:请求ID为6500010a,用于将请求和它所触发的通知关联起来。第三行:SoftX3000请求网关监视该端点用户的摘机事件。第四行:此时信号为空,表示MGC要求MG停止目前所播放的任何信号。l RQNT_RSP响应编码200 59659850 OK“200”表示命令的正确接收。“59659850”是事务标识符,和触发该响应的命令的事务标识符相同。“OK”是注释。在此表示网关已经收到并正在执行请求命令。(2) 事件2:UserA摘机后,Endpoint1给SoftX3000发出NTFY命令,其中包含被监控端点发生的摘机事件消息。SoftX3000应对Endpoint1发出的信息进行确认。l NTFY命令编码NTFY 32008010 aaln/1 MGCP 1.0X:6500010aO:hd第一行:通知命令。域名为、接口名为aaln的接入网关检测到其第一个端口发生了某事件,通知SoftX3000。第二行:请求ID为6500010a。该值与触发该通知的RQNT命令中的参数值相同。用于将RQNT命令和NTFY命令相关联。第三行:网关检测到摘机事件。l NTFY_RSP响应编码200 32008010 OK“200”表示命令的正确接收。“32008010”是事务标识符,和触发该响应的命令的事务标识符相同。“OK”是注释。在此表示SoftX3000已收到该通知。(3) 事件3:SoftX3000给Endpoint1发RQNT命令,要求它根据拨号方案收集拨打的号码并送拨号音。Endpoint1确认命令并同时给UserA送拨号音。l RQNT命令编码:RQNT 59663957 aaln/1 MGCP 1.0X:65000102R:D/0-9*#T(D),G/ld(N)D:(1-9xxxxxxx|0xxxxxxxxxx|*|x.# |0-9*#.T)S:L/dl第一行:通知请求命令。事务标识为59663957,用来将该命令和其触发的响应相关联。表示SoftX3000向域名为、接口名为aaln的接入网关的第一个端口发出请求。MGCP的版本号为1.0。第二行:请求ID为65000102,用于将请求和它所触发的通知关联起来。第三行:SoftX3000请求网关监视该端点发生的以下事件:事件一,根据Digit Map规定的拨号计划收号。其中,“D/0-9*#T”表示DTMF包中的数字和字符。涉及到数字(09)、星号(“*”)、井号(“#”)以及记时器标识“T”。这些字符可以组成“数字串”代表用户的拨号键。“D/0-9*#T(D)”表示根据Digit map来处理用户拨的“数字串”,如果该“数字串”至少和Digit map定义的一个可选择的拨号方案匹配,Endpoint1所在的网关就把当前“数字串”发送给呼叫代理。事件二,“G/ld(N)”表示如果通用媒体包中的长时间连接(当一个连接持续时间大于一小时)事件发生,请求通知呼叫代理。第四行:Digit Map。SoftX3000给Endpoint1所在的网关下发拨号方案:(1-9xxxxxxx|0xxxxxxxxxx|*|x.# |0-9*#.T),“1-9xxxxxxx”表示用户可以拨19中任意一位数字开头的任意8位号码;“0xxxxxxxxxx”表示 0开头的任意11位号码;“*”表示拨*的话就一位一位上报;x.#表示拨任意位而后拨#就立即上报;0-9*#.T表示拨以09、*、#开头的任意位等超时之后就会上报。第五行:请求信号,表示请求网关确认该命令后给UserA送拨号音。l RQNT_RSP响应编码200 59663957 OK“200”表示命令的正确接收。“59663957”是事务标识符,和触发该响应的命令的事务标识符相同。“OK”是注释。在此表示网关已经收到并正在执行请求命令,同时给Endpoint1送拨号音。(4) 事件4:Endpoint1根据事件3的拨号方案,接收号码。收齐所有号码后,Endpoint1发出NTFY命令通知SoftX3000,该命令的参数“ObservedEvents”携带收到号码。SoftX3000确认命令。l NTFY命令编码NTFY 32008011 aaln/1 MGCP 1.0X:65000102O:66500008第一行:通知命令。表示域名为、接口名为aaln的接入网关检测到其第一个端口发生了某事件,通知SoftX3000。第二行:请求ID为65000102。该值与触发该通知的RQNT命令中的参数值相同。用于将RQNT命令和NTFY命令相关联。第三行:网关检测到UserA拨的号码为:66500008。l NTFY_RSP响应编码200 32008011 OK“200”表示命令的正确接收。“32008011”是事务标识符,和触发该响应的命令的事务标识符相同。“OK”是注释。在此表示SoftX3000已收到该通

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论