SIGTRAN 协议栈担负信令网关和媒体网关控制器间的通信,有两个主要功能:适配和传输。与此对应,SIGTRAN 协议栈包含两层协议:传输协议和适配协议,前者就是SCTP/IP,后者如M2UA(适配MTP2 用户)、IUA(适配Q.921 用户)等。SIGTRAN 协议模型如图2-1所示。
M3UA:MTP3 用户适配层M2UA:MTP3 用户适配层IUA:ISDN Q.921 用户适配层M2PA:MTP2 对等适配层V5UA:V5 用户适配层 SUA:SCCP 用户适配层SCTP :流控制传输协议 IP:互联网协议 MAC:媒体接入控制
图2-1 SIGTRAN 协议模型
SIGTRAN 协议只是实现SCN 信令的在IP 网的适配与传输,不处理用户层信令消息。为保证信令可靠传输,引入了SCTP 作为传输层协议。
SoftX3000 应用的SIGTRAN 协议包含了MAC、IP、SCTP、M2UA 和M3UA, 由于网络层以下协议(MAC、IP)为标准TCP/IP 协议族,在此不作详细介绍,请参考本手册附录。
2.1.1 SIGTRAN 在SoftX3000 的应用
SoftX3000 通过SIGTRAN 协议与SG 连接,将窄带电路交换网信令(如SS7 的ISUP、INAP 等)通过IP 网进行传输,SIGTRAN 在SoftX3000 应用如图2-2所示。
图2-2 SIGTRAN 在SoftX3000 的应用
SIGTRAN 协议应用在信令网关(SG)和SoftX3000 之间的接口上,实现窄带SCN 信令在IP 网络中进行传输。原理如下:
电路交换网信令由信令网关(SG)接入,而媒体流(如中继话路)由媒体网关(TMG)接入。信令网关将窄带信令的层间原语(或直接是窄带信令)打包传递到媒体网关控制器(即SoftX3000),媒体网关控制器处理信令,通过媒体网关控制协议(H.248)控制媒体网关的承载接续,从而完成电路交换网和分组交换网的互通。在这个模型中,信令网关和媒体网关控制器间运行SIGTRAN 协议栈。
根据SG 位置的不同,SoftX3000 提供三种方式与SCN 信令互通:
1. SG 内置在SoftX3000
SoftX3000 直接出TDM 接口与SCN 连接,使用MTP 进行信令传输,不使用SIGTRAN 协议。
2. SG 内置在TMG
TMG 通过内置SG 完成SCN 信令转换与适配,并打成IP 包在IP 网传输到SoftX3000,信令传输使用SIGTRAN 协议的M2UA 适配协议。
SG 完成SCN 信令转换与适配,并打成IP 包在IP 网传输到SoftX3000,信令传输使用SIGTRAN 协议的M3UA 适配协议。
当媒体流从SCN 流向分组网络时,MG 终结SCN 媒体流,打包媒体数据(如果媒体数据不是基于数据包的形式), 并且将打包后的业务传递给分组网络。当媒体流从分组网络流向SCN 时,则执行相反的功能。
2. 媒体网关控制器(MGC)
MGC 负责处理MG 上的资源的注册和管理。MGC 可能具有这种能力:根据本地策略来授权资源的使用;对于信令传输而言,MGC 可能具有这种能力:终结和发起SCN 信令协议,例如SS7-ISUP 和Q.931。
3. 信令网关(SG)
SG 是一个信令代理,能够在IP 网络边缘接收/发送SCN 内部信令。SS7-Internet 网关中的SG 功能包括SS7 信令的中继、翻译或终结。SG 功能也可能与MG 功能共存于MG 中,处理设备相关的SCN 信令(例如,信令回程)。
1. SCTP 术语
(1) 传输地址和IP 地址
SCTP 传输地址就是一个IP 地址加一个SCTP 端口号。SCTP 端口号就是SCTP 用来识别同一地址上的用户,和TCP 端口号是一个概念。比如IP 地址
10.105.28.92 和SCTP 端口号1024 标识了一个传输地址,而10.105.28.93 和1024 则标识了另外一个传输地址,同样,10.105.28.92 和端口号1023 也标识了一个不同的传输地址。
(2) 主机和端点
“主机”(Host) 就是一台计算机,配有一个或多个IP 地址, 是一个典型的物理实体。
“端点”(End Point)是SCTP 的基本逻辑概念,是数据报的逻辑发送者和接收者,是一个典型的逻辑实体。
SCTP 协议规定两个端点之间能且仅能建立一条偶联,但一个主机上可以有很多端点。
(3) 偶联和流
“偶联”(Association) 就是两个SCTP 端点通过SCTP 协议规定的4 步握手机制建立起来的进行数据传递的逻辑联系或者说通道。
“流”(Stream)是SCTP 协议的一个特色术语。严格地说,“流”就是一条SCTP 偶联中,从一个端点到另一个端点的单向逻辑通道。希望顺序传递的数据必须在一个流里面传输。
一个偶联中可以包含多个流。
(4) TSN 和SSN TSN(Transmission Sequence Number), 传输顺序号。在SCTP 一个偶联
的一端为本端发送的每个数据块顺序分配一个基于初始TSN 的32 位顺序号,以便对端收到时进行确认。TSN 是基于偶联维护的。
SSN(Stream Sequence Number) 流顺序号,在SCTP 一个偶联的每个流内,为本端在这个流中发送的每个数据块顺序分配一个16 位顺序号,以便保证流内的顺序传递。SSN 是基于流维护的。
TSN 和SSN 的分配是相互独立的
(5) 其他CWND:拥塞窗口。SCTP 也是一个滑动窗口协议,拥塞窗口是针对每个目
的地址维护的,它会根据网络状况调节。当目的地址的发送未证实消息长度超过其CWND 时,端点将停止向这个地址发送数据。
RWND:接收窗口。RWND 用来描述一个偶联对端的接收缓冲区大小。偶联建立过程中,双方会交换彼此的初始RWND。RWND 会根据数据发送、证实的情况即时地变化。RWND 的大小限制了SCTP 可以发送的数据的大小。当RWND 等于0 时,SCTP 还可以发送一个数据报,以便通过证实消息得知对方缓冲区的变化,直到达到CWND 的限制。
2. SCTP 概念
SCTP(Stream Control Transmission Protocol, 流控制传输协议)是提供基于不可靠传输业务的协议(如IP)之上的可靠的数据报传输协议。SCTP 的设计用于通过IP 网传输SCN 窄带信令消息。SCTP 对TCP 的缺陷进行了一些完善,使得信令传输具有更高的可靠性,SCTP 的设计包括适当的拥塞控制、防止泛滥和伪装攻击、更优的实时性能和多归属性支持。 SCTP 被视为一个传输层协议,它的上层作为SCTP 用户应用,下层作为分组网络。在SIGTRAN 协议的应用中,SCTP 上层用户是SCN 信令的适配模块(如M2UA、M3UA 等),下层是IP 网。
SCTP 协议具有如下特点:
3. SCTP 功能
SCTP 的功能主要包括连接的启动与关闭、流内顺序传递、用户数据分片、证实和消除拥塞、消息块捆绑、报文验证和路径管理等。
通过心跳,累计重传次数,SCTP 将目的地址,端点的可达性好好的管理了起来。
从上面的叙述中,我们可以看到SCTP 相对于TCP 的几个不同:
(1) | TCP 基于字符流传输,上层必须有自己的定界机制。SCTP 基于数据报 |
传输。无需上层定界。 | |
(2) | SCTP 支持多IP 地址配置。 |
(3) | SCTP 提出了流的概念,在流内进行顺序传递。 |
2.2.2 SCTP 消息 |
SCTP 消息封装在用户数据字段,表2-1列出了主要的消息类型。表2-1 SCTP 消息
名称 | 说明 |
DATA (净数据) | 传输的用户数据块。 |
INIT | 用于发起两个端点之间的SCTP 连接。 |
INIT ACK | 用来确认SCTP 连接的发起消息(INIT )。 |
SACK | 该数据块送至对端,以确认收到DATA 块,并且通知对端DATA 的接收顺序间隙。 |
HEARTBEAT | 端点发送该数据块至对端,以检测当前连接中定义的某一目的地址的可达性。 |
HEARTBEAT ACK | 响应HEARTBEAT 消息。 |
ABORT | 关闭连接。 |
SHUTDOWN | 连接中的一个端点对其连接发起一个GRACEFUL 关闭。 |
SHUTDOWN ACK | 响应SHUTDOWN 消息,关闭程序完成时发出。 |
ERROR | 通知对端,SCTP 连接发生某种错误。 |
COOKIE ECHO | 仅用于连接发起过程,它由连接的发起者发送至对端以完成发起程序。 |
COOKIE ACK | 相应COOKIE ECHO 消息 |
SHUTDOWN | 用于关闭程序完成时对SHUTDOWN ACK 消息进行确认 |
COMPLETE |
SCTP 作为一个面向连接的可靠传输层协议,其协议过程包括:偶联的建立,偶联的终止,数据传递和证实,最多再加上拥塞控制机制,路径管理机制。
1. 偶联的建立
SCTP 偶联建立的过程是4 步握手。即有4 个消息交互:INIT,INIT ACK, COOKIE ECHO,COOKIE ACK。如图2-3所示。
endpoint A endpoint Z
established
图2-3 偶联建立过程消息交互图
2. 偶联的终止
SCTP 偶联的终止分为两种,一种是GRACEFUL 的终止,一种是UNGRACEFUL 的终止。前者保证所有两端的未发送、发送未证实数据得到发送和证实后再终止偶联。而后者则直接终止偶联,丢弃这些数据。
消息到对端后,立即删除偶联TCB。对端收到这个ABORT 消息后也立即删除偶联TCB。
当SG 内置于TMG 时,TMG 通过内置SG 完成SCN 信令转换与适配,并打成IP 包在IP 网传输到SoftX3000,TMG 与SoftX3000 之间的信令传输使用SIGTRAN 协议的M2UA 适配协议。
1. M2UA 概念
M2UA(SS7 MTP2-User Adaption layer protocol,即MTP2 用户适配协议), 它使用流量控制传输协议(SCTP) 或其他合适的传输协议,通过IP 传输SS7 MTP2 层的用户信令消息(即MTP3 ),该协议可用于信令网关(SG)和媒体网关控制器(MGC)之间的信令传输,如图2-4所示。
图2-4 M2UA 在系统中的位置
如图2-4所示,SEP(信令端点)窄带信令通过SG(信令网关)接入MGC, 在SIGTRAN 协议栈,M2UA 运行在SCTP 的上层,是SCTP 用户。MGC 端的M2UA 的上层用户是MTP3,在SG 端是MTP2 。
下面的描述中,使用了一些有关M2UA 的概念,表2-2对这些概念进行了说明。
表2-2 M2UA 的基本概念
缩写 | 名称 | 说明 |
---|---|---|
IID | Interface ID (接口ID) | 用于M2UA 两端之间的通信,可以用文本或整数标识。每个接口ID 对应一个实际的物理链路。接口ID 是SS7 信令链路用于SG 和ASP 之间的逻辑ID。 |
AS | Application server (应用服务器) | 一个逻辑实体,代表一定的资源,对应一个特定的“路由上下文”。对于M2UA 来说,AS 就是一组接口ID。每个AS 包含一组应用服务器进程(ASP),其中一个或多个ASP 能够处理业务。 |
ASP | Application Server Process (应用服务器进程) | ASP 是AS 进程的实例。每个ASP 包含一个SCTP 端点,一个ASP 可以服务于多个AS。在M2UA 应用中,ASP 以主/备用方式工作,只有主用ASP 处理业务。 |
Signaling Backhaul (信令回程) | 当MG 内置SG 功能,如果信令不在本地处理,将信令从偶联数据流的接口传输回呼叫处理点(即MGC)。 |
• M2UA 链路“M2UA 链路”是新引入的一个类似MTP LINK 的概念。
为了配置M2UA 栈,用户还必须配置SG、AS 和ASP。为避免此开销,实现对用户透明的M2UA 配置功能,引入了M2UA LINK 概念,以便用户管理和维护链路。
M2UA LINK:SG 和ASP 之间创建的逻辑连接。一条链路包括SG 和ASP 之间的SG、ASP 和SCTP 连接。它的状态和ASP 状态及SCTP 连接状态对应。
M2UA 的网络结构如图2-5所示,引入M2UA LINK 后,M2UA 网络结构可简化为图2-6所示。
MGC
link0 and link 1
link2 and link 3
图2-5 M2UA 的网络结构
MGC
MTP2 link 0 M2UA LINK 0(servered for MTP2 link 0and link1)
MTP2 link 1 MTP2 link 2 MTP2 link 3
图2-6 M2UA 的简化网络结构
M2UA 链路为一个或多个MTP2 提供链路通道,用于与它的用户(MTP3)通信。每个MTP 链路通过M2UA 接口ID 映射到一个特定的M2UA 链路。这样,来自MTP 链路的数据可以通过M2UA 链路进行透传。
2. M2UA 业务功能
M2UA 可提供如下业务:
M2UA 消息封装在SCTP 消息的用户数据字段,包含公用消息头、M2UA 消息头。
消息首部包括标签、长度和接口标识符。接口标识符用于标识发送/接收该信令消息的SG 上的物理接口。接口标识参数的格式可以是文本或整数,它们的值根据网络运营策略分配。使用的值在SG 和ASP 之间协商。
2. M2UA 消息
消息名称 | 说明 |
Data | 包含SS7 MTP2 -用户协议数据单元(PDU)。 |
TTC data | 包含TTC SS7 MTP2 -用户协议数据单元(PDU)。 |
Establish(request, | 当MGC 要求SS7 链路服务,它将发送建立请求(Establish |
confirmation) | request )消息给网关,网关回送建立确认消息(Establish |
confirmation )。 | |
Release(request, | 释放请求(Release request) 消息用于释放通道。释放确认和 |
indication, | 指示消息(Release indication, confirmation) 用于指示通道已 |
confirmation) | 经释放。 |
由MGC 发出,用于在由SG 支持的一条特定SS7 链路上引发 | |
State request | 一个动作。 |
State confirm | 由SG 发出,以响应MGC 发出的State request 消息。 |
State indication | 从SG 发送到ASP,指示链路的状态。 |
Congestion | 由SG 发送到ASP,表明拥塞状态和链路的丢弃状态。 |
indication | |
Retrieval(request, confirm) | Retrieval request 消息用于MTP 三级倒换程序过程,请求BSN 从转发队列中恢复PDU,或从恢复队列中清除PDU。SG 发送Retrieval confirm 消息给该队列。 |
Retrieval indication | 由SG 发出,带有来自重发队列的PDU。 |
Retrieval complete indication | 同Retrieval request, 另外,它还表示包含来自重发队列的最后一个PDU。 |
消息名称 | 说明 |
ASP Up | 用于指示远端M2UA,适配层已准备接收业务或维护消息。 |
ASP Up Ack | 用于确认收到远端M2UA 的ASP Up 消息。 |
ASP Down | 用于指示远端M2UA,适配层没有做好接收业务或维护消息的准备。 |
ASP Down Ack | 用于确认收到远端M2UA 的ASP Down 消息。 |
ASP Active | 由ASP 发送,向SG 指示它处于活动状态,可以使用。 |
ASP Active Ack | 用于确认收到从远端M2UA 发送的ASP-Active 消息。 |
消息名称 | 说明 |
---|---|
ASP Inactive | 由ASP 发送,向SG 指示它不再是一个活动的ASP。 |
ASP Inactive Ack | 用于确认从远端M2UA 收到的ASP-Inactive 消息。 |
• 层管理消息:
消息名称 | 说明 |
---|---|
Error | 用于通知对端有关入局消息的错误事件。 |
Notify | 用于向对端M2UA 提供M2UA 的自治指示。 |
3. 消息举例
• Data
Data 消息包括SS7 MTP2 -用户协议数据单元(PDU) 。数据消息参数的格式如下:
协议数据字段包括MTP2 -用户应用消息,按照网络字节顺序,从信令信息八位位组(SIO)开始。
• Establish(request, confirm):
用于创建链路或指示通道已经创建。当MGC 希望SS7 链路在线时,它将发送创建请求消息。如果SG 已在该层创建SS7 链路,则发送Establish Confirm 消息,不采取其它措施。
• ASP UP
ASP UP(ASPUP )消息用于指示远端M2UA,适配层准备接收业务或维护消息。
INFO 串为可选参数,可以随同消息一起携带任何有意义的8bit ASCII 字符串。INFO 串参数的长度从0 到255 字符。
1. 创建业务环境
M2UA 业务环境的创建程序如图2-7所示。在M2UA 业务环境创建之前,在SG 和MGC 之间必须创建SCTP 连接。
图2-7 M2UA 业务环境的创建程序
MGC 作为客户端,它首先发起创建环境的请求。一旦环境创建,M2UA 数据、MGC 维护消息和层管理消息即可在两端点之间传递。
2. 数据传输流程
若一个ASP 的M2UA 层有一条MAUP 消息需要发送到SG,它将进行如下操作:
3. 释放流程M2UA 业务环境的释放程序如图2-8所示:
图2-8 M2UA 业务环境的释放流程
SG 收到MGC 发来的释放原语,开始M2UA 业务环境的释放流程,关闭SCTP 连接。
1. 术语
SIO+DPC+OPC、SIO+DPC+OPC+CIC), 它唯一地定义了由特定应用服务器处理的信令业务。选路关键字中的参数不能基于多个目的信令点编码。
2. M3UA 概念
M3UA 是SS7 MTP3 用户适配层,为处于IP 网中的MTP3 用户和处于网络边缘的MTP3 (在SG 上)提供原语通信服务,实现TDM SS7 和IP 互通。M3UA 支持如下功能:
SS7 信令与M3UA 的互通中,M3UA 适配层提供定义的MTP3 用户原语的扩展。
偶联支持的最大流的数量。对于有顺序要求的信令业务必须分配到相同的流中。
• 客户端/服务器模型SGP 和ASP 都能支持客户端和服务器操作,使用M3UA 的对等端点应该配
置为一端是服务器,另一端是启动SCTP 偶联的客户端。缺省值SGP 作为服务器,ASP 是客户端,ASP 应该启动对SGP 的SCTP 偶联。
M3UA 是在SCTP 上传送,为M3UA 登记的SCTP 用户端口号码为2905。
3. M3UA 协议结构
M3UA 协议的体系结构如图2-9所示。
MTP3 -用户 | |
M3UA | |
LM | |
SCTP | |
IP |
图2-9 M3UA 协议的体系结构
MTP3-用户的低层协议是M3UA,它向MTP3-用户提供标准的MTP3 接口;M3UA 的低层协议是SCTP,由SCTP 提供偶联为M3UA 服务;M3UA 还有专门的层管理(LM),为其提供管理服务。
M3UA 消息格式中包含一个公共消息头,之后是0 个或多个由消息类型定义的参数,考虑到前向兼容性,因此所有消息类型都带有兼容性参数。
1. 公共消息头
MTP3 用户适配层协议消息的结构要求包括版本,消息类型、消息长度和消息内容(如图2-10所示)。消息头对于所有信令协议适配层消息是公共的。
0123 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
图2-10 公共消息头
• M3UA 协议版本版本字段包括M3UA 适配层的版本。所支持的版本为:
值:00000001; 版本:Release 1.0 protocol 。
• 消息类别和消息类型
表2-3中列出了M3UA 定义的消息类别,表2-4、表2-5、表2-6 、表2-7、表2-8和表2-9分别列出M3UA 定义的消息类型。
表2-3 M3UA 消息类别
消息类别名 | 消息类别编码(十六进制) |
管理(MGMT )消息 | 00 |
传送消息 | 01 |
SS7 信令网管理(SSNM)消息 | 02 |
ASP 状态维护(ASPSM)消息 | 03 |
ASP 业务维护(ASPTM )消息 | 04 |
为其它SIGTRAN 适配层备用 | 05 |
为其它SIGTRAN 适配层备用 | 06 |
为其它SIGTRAN 适配层备用 | 07 |
为其它SIGTRAN 适配层备用 | 08 |
选路关键字管理(RKM)消息 | 09 |
IETF 备用 | 0A-7F |
为IETF 定义的消息类别扩展备用 | 80-FF |
表2-4 M3UA 管理(MGMT )消息类型
消息类型 | 消息类型编码(十六进制) | |
---|---|---|
差错(ERR) | 00 | |
通知(NTFY) | 01 | |
IETF 备用 | 02-7F | |
为IETF 定义的M | GMT扩展备用 | 80-FF |
表2-5 M3UA 传送消息类型
消息类型 | 消息类型编码(十六进制) | |
---|---|---|
备用 | 00 | |
数据(DATA) | 01 | |
IETF 备用 | 02-7F | |
为IETF 定义的传送 | 扩展备用 | 80-FF |
表2-6 M3UA 信令网管理(SSNM)消息类型
消息类型
消息类型编码(十六进制)
00
备用
消息类型 | 消息类型编码(十六进制) |
目的地不可用(DUNA) | 01 |
目的地可用(DAVA) | 02 |
目的状态查询(DAUD) | 03 |
SS7 信令网拥塞状态(SCON) | 04 |
目的地用户部分不可用(DUPU) | 05 |
目的地受限(DRST)(暂不使用) | 06 |
IETF 备用 | 7-7F |
为IETF 定义的SSNM 扩展备用 | 80-FF |
表2-7 M3UA 状态维护(ASPSM)消息类型
消息类型 | 消息类型编码(十六进制) |
备用 | 00 |
ASP Up(ASPUP) | 01 |
ASP Down(ASPDN) | 02 |
Heartbeat(BEAT) | 03 |
ASP Up Ack(ASPUP ACK) | 04 |
ASP Down Ack(ASPDN ACK) | 05 |
Heartbeat Ack(BEAT ACK) | 06 |
IETF 备用 | 7-7F |
为IETF 定义的ASPSM 扩展备用 | 80-FF |
表2-8 M3UA 业务维护(ASPTM) 消息类型表2-9 M3UA 选路关键字管理(RKM)消息类型
消息类型 | 消息类型编码(十六进制) |
备用 | 00 |
ASP 激活(ASPAC) | 01 |
ASP 去活(ASPIA) | 02 |
ASP 激活Ack(ASPAC ACK) | 03 |
ASP 去活Ack(ASPIA ACK) | 04 |
IETF 备用 | 5-7F |
为IETF 定义的ASPTM 扩展备用 | 80-FF |
消息类型 | 消息类型编码(十六进制) |
备用 | 00 |
注册请求(REG REQ) | 01 |
注册响应(REG RSP) | 02 |
注销请求(DEREG REQ) | 03 |
注销响应(DEREG RSP) | 04 |
IETF 备用 | 5-7F |
为IETF 定义的RKM 扩展备用 | 80-FF |
M3UA 由公共消息头和随后的0 个或几个可变长度参数构成。所有包含在消息中的参数的格式如图2-11所示:
0123 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
图2-11 可变长度参数格式
消息中可以包括多个参数,参数可以是任何顺序,除非有明确的要求。接收者应该接收任何顺序的参数。
• 参数标签参数标签为16 比特,用于识别参数类型,它可以是0 到65534 。用于适配层
的公共参数在0x00 到0x3F 之间,M3UA 的特定参数在0x0200 到0x02FF 之间。定义的公共参数标签如表2-10 所示。
表2-10 公共参数标签
参数名 | 参数标签编码(十六进制) |
备用 | 0x0000 |
没有在M3UA 中使用 | 0x0001 |
没有在M3UA 中使用 | 0x0002 |
没有在M3UA 中使用 | 0x0003 |
信息串 | 0x0004 |
没有在M3UA 中使用 | 0x0005 |
选路上下文 | 0x0006 |
诊断信息 | 0x0007 |
没有在M3UA 中使用 | 0x0008 |
Heartbeat 数据 | 0x0009 |
没有在M3UA 中使用 | 0x000a |
业务模式类型 | 0x000b |
差错码 | 0x000c |
状态 | 0x000d |
没有在M3UA 中使用 | 0x000e |
没有在M3UA 中使用 | 0x000f |
没有在M3UA 中使用 | 0x0010 |
ASP 标识符 | 0x0011 |
被影响的信令点编码 | 0x0012 |
Correlation ID | 0x0013 |
M3UA 的特定参数如表2-11所示。表2-11 M3UA 的特定参数• 参数长度
参数名 | 参数标签编码(十六进制) | |
---|---|---|
网络外貌 | 0x0200 | |
备用 | 0x0201 | |
备用 | 0x0202 | |
备用 | 0x0203 | |
用户/Cause | 0x0204 | |
拥塞指示 | 0x0205 |
参数名 | 参数标签编码(十六进制) | |
---|---|---|
相关的目的地 | 0x0206 | |
选路关键字 | 0x0207 | |
注册结果 | 0x0208 | |
注销结果 | 0x0209 | |
本地选路关键字标 | 识符 | 0x020a |
目的信令点编码 | 0x020b | |
业务指示语 | 0x020c | |
备用 | 0x020d | |
源信令点编码列表 | 0x020e | |
电路范围 | 0x020f | |
协议数据 | 0x0210 | |
备用 | 0x0211 | |
注册状态 | 0x0212 | |
注销状态 | 0x0213 | |
IETF 备用 | 0x0214-0xffff |
参数长度为16 比特,包含参数的字节数,其包括参数标签、参数长度和参数值字段。参数长度不包括任何填充字节。
参数值是可变长度,它包含参数实际传送的信息。
参数的总长度(包括标签、参数长度和值字段)必须是四字节的整数倍。如果参数长度不是四的整数倍,发送者在结尾用0 填充参数,填充的长度不包括在参数长度字段。发送者不能填充多于三个字节,接收者忽略填充字节。
2. 数据(DATA)消息数据消息中都包含公共消息头和0 个或多个由消息类型定义的参数。DATA 消息包含SS7 信令MTP3 用户协议数据,包含了完整的MTP3 路由标
记,DATA 消息包含如下参数:
网络外貌 | 任选(暂不使用) |
选路上下文 | 任选 |
协议数据 | 必选 |
Correlation Id 任选DATA 消息的参数格式如图2-12: 012
3 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
图2-12 DATA 消息参数格式
(1) 网络外貌是消息中用来补充NI(网络标识语)的参数。在DATA 消息中,网络外貌隐含地定义了所用SS7 信令点编码格式、SS7 信令网指示语值和MTP3/MTP3 用户协议类型/变量/版本。举例说明,中国内陆和香港特别行政区属于同样的NI(国内主用网),但是其信令点格式不同。中国内陆使用24 位的信令点编码,香港地区使用14 位的信令点编码。这就需要消息中的网络外貌参数来定义。如果网络外貌参数存在,因为它定义了协议数据字段的格式,则它必须是消
息中的第一个参数。M3UA 协议规范暂不使用网络外貌参数。
协议数据参数的格式如图2-13所示。
012
3 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
空空 | OPC | |||
---|---|---|---|---|
空空 | DPC | |||
空空SI | 空空 | NI | 空空 | SLS |
流流参协
图2-13 协议数据的格式
3. SS7 号信令网管理(SSNM )消息
M3UA 协议所有的消息(包括SSNM 消息)中都包含公共消息头和0 个或多个由消息类型定义的参数。
SGP 向ASP 发送DUPU 消息通知SS7 信令网节点上的远端对等MTP3-用户 部分不可用。应用服务器进程管理(ASPM)消息
(6) ASP Up(ASPUP )消息
ASP Up(ASPUP )消息用来向远端MU3A 对等层指示适配层已经准备好为ASP 配置的所有的选路关键字接收SSNM 或ASPM 管理消息。
(7) ASP Up Ack(ASPUP ACK )消息
ASP Up Ack(ASPUP ACK) 消息用来证实从远端M3UA 对等层接收的ASP Up 消息。
(8) ASP Down(ASPDN)消息
ASP Down(ASPDN) 消息用来向远端M3UA 对等层指示适配层尚未准备好接收DATA、SSNM、RKM 或ASPTM 消息。
(9) ASP Down Ack(ASPDN Ack )消息
ASP Down Ack 消息用来证实从远端M3UA 对等层接收的ASP Down 消息,或答复从出于管理原因而被锁的ASP 接收的ASPM 消息。
(10) Heartbeat(BEAT)消息BEAT 消息被任选的用来保证M3UA 对等层一直对其它M3UA 可用,当M3UA
不使用SCTP 作为传送层时必须使用BEAT 消息。BEAT 消息中不包含任何参数。
(11) Heartbeat Ack(BEAT Ack )消息
发送BEAT Ack 消息以响应接收的BEAT 消息,它包含接收的BEAT 消息的所有参数。
4. M3UA 选路关键字管理(RKM)消息
5. 应用业务维护(ASPTM)消息
(1) ASP 激活(ASPAC)
ASP 发送ASPAC 消息来指出远端M3UA 对等层准备处理特定应用服务器的信令业务。ASPAC 只影响选路上下文识别的选路关键字的ASP 状态。
ASP 发送ASPIA 消息向远端M3UA 对等层指示一列ASP 中不再使用的某个ASP。ASPIA 消息只影响由选路上下文识别的选路关键字中ASP 的状态。
(4) ASP 去活Ack ASPIA Ack 消息用于证实从远端M3UA 对等层接收的ASP 去活消息。
6. 管理消息
(1) 差错(ERR)
如果在收到的消息中发现差错事件的值,则发送ERR 消息。如在现行的状态收到非期望的值,或参数值无效。ERR 消息必须包括差错码参数。
差错码参数用来指示ERR 消息产生的原因,差错参数值使用表2-12中规定的值。
表2-12 差错参数的有效值
取值 | 描述 | ||
---|---|---|---|
0x01 | 无效的版本 | ||
0x02 | M3UA 中不使用 | ||
0x03 | 未支持的消息类别 |
取值 | 描述 | |
---|---|---|
0x04 | 未支持的消息类型 | |
0x05 | 不支持的业务处理模式 | |
0x06 | 非期望的消息 | |
0x07 | 协议差错 | |
0x08 | M3UA 中不使用 | |
0x09 | 无效的流标识符 | |
0x0a | M3UA 中不使用 | |
0x0b | M3UA 中不使用 | |
0x0c | M3UA 中不使用 | |
0x0d | 拒绝-管理闭塞 | |
0x0e | 要求ASP 标识符 | |
0x0f | 无效的ASP 标识符 | |
0x10 | M3UA 中不使用 | |
0x11 | 无效的参数值 | |
0x12 | 参数字段差错 | |
0x13 | 非期望的参数 | |
0x14 | 目的状态未知 | |
0x15 | 无效的网络外貌 | |
0x16 | 丢失参数 | |
0x17 | M3UA 中不使用 | |
0x18 | M3UA 中不使用 | |
0x19 | 无效的选路上下文 | |
0x1a | 没有为ASP 配置的AS |
如果接收到无效或不支持版本的消息,就发送“无效版本”差错,ERR 消息在公共头中包含支持的版本,ERR 消息可任选地在诊断信息区域提供支持的版本。
如果接收到非期望的或不支持的消息类别,就发送“不支持的消息类别”差错。
如果接收到非期望的或不支持的消息类型,就发送“不支持的消息类型”差错。
如果ASP 发送不支持的业务量模式类型的ASP 激活消息或发送与应用服务器现在配置的业务量处理模式类型不兼容的ASP 激活消息,SGP 就发送“不支持/无效的业务量处理模式”,例如SGP 不支持负荷分担。
如果在现行状态下接收到非期望的已定义和可识别的消息,可以发送“非期望的消息”(ASP 也可以丢弃这个消息而不发送ERR 消息)。
对于接收到任何语法正确但非期望的参数,发送“协议差错”差错。
如果在非期望的SCTP 流上接收到消息(例如,在非“0”流上接收到MGMT 消息),就发送“无效流标识符”差错。
当接收到ASP-Up 或ASP 激活消息并且出于管理原因拒绝请求(例如管理闭锁)时,就发送“拒绝-管理闭塞”差错。如果这个差错是响应ASP 激活消息,在ERR 消息中应包括ASP 激活消息中的选路上下文。
如果SGP 接收到不包含ASP 标识符参数的ASP Up 消息而SGP 要求这个参数时,响应ASP Up 时就发送“要求ASP 标识符”。
如果SGP 接收到无效(即不唯一)的ASP 标识符的ASP Up 消息,响应ASP Up 时就发送“无效的ASP 标识符”。
如果接收到无效参数值的消息(接收到备用段非“0”的消息),就发送“ 无效参数值”差错。
如果接收消息中的参数有错误的长度字段,就发送“参数字段差错”。
如果消息中包含无效的参数就发送“非期望的参数”差错。
如果SG 接收到DAUD 消息查询目的地的可用性/拥塞状态,但SG 不希望提供这些状态(例如发送者无权知道这些状态)时,就发送“目的地状态未知”差错。
如果消息中不包含必选参数,就发送“丢失参数”差错。
如果从对等层接收到无效(没有配置)的选路上下文值,就发送“无效选路上下文”差错。对于这种错误,在ERR 消息中必须包括无效选路上下文。
如果从对等层接收到没有选路上下文的消息并且通过配置数据不知道参考哪个应用服务器时,就发送“没有为ASP 配置AS”差错。
(2) 通知(NTFY) NTFY 消息用来向M3UA 对等层提供M3UA 事件的自治指示。
2.4.4 M3UA 消息流程
下面的示例指出在SGP 和ASP 间业务建立的M3UA 消息流,所有这些示例假设已经建立了SCTP 偶联。
1. 建立SGP 和ASP 间的偶联和业务示例
(1) AS 中有一个ASP
这个示例给出了建立SGP 和ASP 之间业务的M3UA 消息的流程,这里的AS 中只有一个ASP(无备份)。
• 单个ASP 在一个AS/(1+0 备份),没有注册在该条件下,M3UA 消息调用示例如图2-14所示。
RC:选选选选选( 任选)
图2-14 建立M3UA 消息的流程示例1
• 单个ASP 在一个AS(1+0 备份),动态注册
这个示例和上一个相同,只是增加了注册信息的交换,SGP 接受了注册。在该条件下,M3UA 消息调用示例如图2-15所示。
SGP ASP1 ASP Up
ASP Up AckLRC :版: 选选选选选 REG REQ(LRCn,RKn) RK:选选::: RC: 选选选选选REG RSP(LRCn,RKn)
ASP 激激(RCn)
图2-15 建立M3UA 消息的流程示例2
• 单个ASP 在多个AS(1+0 备份),动态注册在该条件下,M3UA 消息调用示例如图2-16所示。
ASP1
SGP
LRC :版:选选选选选 RK:选选::: RC:选选选选选
图2-16 建立M3UA 消息的流程示例3
2. ASP 业务故障示例
(1) 两个ASP 主备用,一个ASP 故障参考图2-17,ASP1 退出服务的情况如图2-17所示。
SGP ASP2
图2-17 ASP 业务故障示例1
注:如果SGP 检测到M3UA 对等层丢失(M3UA Heartbeat 丢失或者是检测到SCTP 故障),则初始的ASP 去活消息交换(例如,ASP1 和SGP 间)将不会发生。
(2) 两个ASP 主备用
以下的示例也根据图2-18 所示的情况,这里是由ASP2 发起的主动请求并负责全部的业务。该示例如图2-18所示。
SG ASP1 ASP2 ASP 激激ASP 激激Ack 通通标((( ASP 激激标
图2-18 ASP 业务故障示例2
3. 从AS 中正常退出ASP 并清除偶联示例
如果ASP 要退出业务,处于“ASP-INACTIVE”状态(即已经接收到ASP 去活Ack 消息)的ASP 就可以进入“ASP-DOWN”状态。该示例如图2-19所示。
ASP1
SGP ASP 去激(RCn) ASP 去激 Ack(RCn)
RC:选选选选选
DEREGREQ(RCn)
DEREG RSP(LRCn,RCn)
ASP Down
图2-19 从AS 中正常退出ASP 并清除偶联示例