中国网通PHS短消息网关技术规范第一分册.docx

上传人:b****3 文档编号:6830151 上传时间:2023-05-10 格式:DOCX 页数:52 大小:111.31KB
下载 相关 举报
中国网通PHS短消息网关技术规范第一分册.docx_第1页
第1页 / 共52页
中国网通PHS短消息网关技术规范第一分册.docx_第2页
第2页 / 共52页
中国网通PHS短消息网关技术规范第一分册.docx_第3页
第3页 / 共52页
中国网通PHS短消息网关技术规范第一分册.docx_第4页
第4页 / 共52页
中国网通PHS短消息网关技术规范第一分册.docx_第5页
第5页 / 共52页
中国网通PHS短消息网关技术规范第一分册.docx_第6页
第6页 / 共52页
中国网通PHS短消息网关技术规范第一分册.docx_第7页
第7页 / 共52页
中国网通PHS短消息网关技术规范第一分册.docx_第8页
第8页 / 共52页
中国网通PHS短消息网关技术规范第一分册.docx_第9页
第9页 / 共52页
中国网通PHS短消息网关技术规范第一分册.docx_第10页
第10页 / 共52页
中国网通PHS短消息网关技术规范第一分册.docx_第11页
第11页 / 共52页
中国网通PHS短消息网关技术规范第一分册.docx_第12页
第12页 / 共52页
中国网通PHS短消息网关技术规范第一分册.docx_第13页
第13页 / 共52页
中国网通PHS短消息网关技术规范第一分册.docx_第14页
第14页 / 共52页
中国网通PHS短消息网关技术规范第一分册.docx_第15页
第15页 / 共52页
中国网通PHS短消息网关技术规范第一分册.docx_第16页
第16页 / 共52页
中国网通PHS短消息网关技术规范第一分册.docx_第17页
第17页 / 共52页
中国网通PHS短消息网关技术规范第一分册.docx_第18页
第18页 / 共52页
中国网通PHS短消息网关技术规范第一分册.docx_第19页
第19页 / 共52页
中国网通PHS短消息网关技术规范第一分册.docx_第20页
第20页 / 共52页
亲,该文档总共52页,到这儿已超出免费预览范围,如果喜欢就下载吧!
下载资源
资源描述

中国网通PHS短消息网关技术规范第一分册.docx

《中国网通PHS短消息网关技术规范第一分册.docx》由会员分享,可在线阅读,更多相关《中国网通PHS短消息网关技术规范第一分册.docx(52页珍藏版)》请在冰点文库上搜索。

中国网通PHS短消息网关技术规范第一分册.docx

中国网通PHS短消息网关技术规范第一分册

 

中国网络通信集团公司企业标准

 

PHS短消息网关技术规范

第一分册短消息网关与服务提供商(SP)接口规范(CNGP)V2.0

 

发布

目录

前言1

1.适用范围2

2.引用标准2

3.缩略语2

4.CNGP概述3

4.1CNGP功能描述3

4.2协议栈3

4.3通信方式3

4.3.1长连接4

4.3.2短连接6

4.3.3交互过程中的应答方式7

4.3.4端口号7

4.4通信流程7

4.4.1CNGP登录模式7

4.4.2SP发送短消息8

4.4.3SP接收短消息8

4.4.4SMGW转发短消息9

4.5编号规则10

5.CNGP消息定义12

5.1基本数据类型12

5.2消息结构12

5.3消息头格式12

5.4SP与SMGW之间的消息定义13

5.4.1login13

5.4.2login_resp14

5.4.3submit15

5.4.4submit_resp16

5.4.5deliver16

5.4.6deliver_resp17

5.4.7active_test18

5.4.8active_test_resp18

5.4.9exit18

5.4.10exit_resp18

5.5SMGW与SMGW之间的消息定义18

5.5.1login19

5.5.2login_resp19

5.5.3active_test20

5.5.4active_test_resp20

5.5.5forward20

5.5.6forward_resp22

5.5.7exit22

5.5.8exit_resp23

6.状态报告格式24

6.1MO的状态报告24

6.2MT的状态报告25

7.CNGP编码说明26

7.1短消息格式代码表26

7.2短消息状态表26

7.3Err错误代码表31

7.4status错误代码表32

7.5TLV说明表33

8.基于CNGP的API函数35

附录A基于CNGP协议的API函数说明36

前言

本标准描述了PHS短消息网关(SMGW)和服务提供商(SP)之间、短消息网关(SMGW)和短消息网关(SMGW)之间的通信协议。

本协议简称CNGP(ChinaNetcomShortMessageGatewayProtocol)。

本标准是PHS短消息网关技术规范的系列规范之一,该系列规范的名称如下:

PHS短消息网关技术规范第一分册:

短消息网关与服务提供商(SP)接口规范(CNGP);

PHS短消息网关技术规范第二分册:

短消息网关与计费中心接口规范;

PHS短消息网关技术规范第三分册:

短消息中心外部接口协议(CNPP);

PHS短消息网关技术规范第四分册:

短消息网关设备规范;

PHS短消息网关技术规范V2.0说明。

本标准起草单位:

中国网络通信集团公司、中国网通集团研究院

本标准主要起草人:

张文钺、李松林、蒋美景、叶丹、杨哲、宋冠云

本规范的解释权属于中国网络通信集团公司。

1.适用范围

本规范适用于短消息网关(SMGW)开发商和短消息服务提供商(SP)。

2.引用标准

SMPP(ShortMessagePeertoPeerProtocolSpecification)v3.4

3.缩略语

英文缩写

英文全称

说明

SMGW

ShortMessageGateway

短消息网关

SMPP

ShortMessagePeertoPeer

短消息点对点协议

SMSC

ShortMessageServiceCenter

短消息中心

SP

ServiceProvider

服务提供商

TLV

TagLengthValue

由tag/length/value三参数定义变量

MO

MessageOrigination

用户发送短消息到SP的上行过程

MT

MessageTermination

SP发送短消息到用户的下行过程

PSC

PrepaidServiceCenter

预付费中心

CR

ChargeRequest

SP为收取业务费用而向短消息网关发送的消息,短消息网关收到消息后不送给用户,仅产生相应的话单

4.CNGP概述

4.1CNGP功能描述

CNGP标准是SP与SMGW,以及SMGW与SMGW之间的通信标准。

CNGP可以实现以下功能:

1)SP通过SMGW向用户发送短消息,例如邮件通知、天气预报等。

2)短消息用户向SP点播信息,例如查询股票信息、航班信息等。

3)SP以某个短消息用户的身份向其他短消息用户发送信息。

4)短消息用户发送的短消息通过SMGW转发给异地或异网的短消息用户。

注:

异网是指其他运营商的网络,以下同。

4.2协议栈

CNGP标准以TCP/IP作为底层通信承载,具体结构由图4.1所示:

图4.1CNGP协议栈

4.3通信方式

SP与SMGW之间、SMGW与SMGW之间进行信息交互时,可以采用长连接方式,也可以采用短连接方式。

所谓长连接,指在一个TCP连接上可以连续发送多个数据包,在TCP连接保持期间,如果没有数据包发送,需要双方发链路检测消息以维持此连接。

短连接是指通信双方有数据交互时,就建立一个TCP连接,数据发送完成后,则断开此TCP连接,即每次TCP连接只完成一对CNGP消息的发送。

4.3.1长连接

通信双方以客户-服务器方式建立TCP连接,用于双方信息的相互提交。

当信道上没有数据传输时,通信双方应每隔时间C发送链路检测消息以维持此连接,当链路检测消息发出超过时间T后未收到应答,应立即再发送链路检测消息,再连续发送N-1次后仍未得到应答则断开此连接。

参数C、T、N原则上应可配置,现阶段建议取值为:

C=3分钟,T=60秒,N=3。

SMGW与SP之间、SMGW与SMGW之间的消息发送后等待T秒后未收到应答,应立即重发,再连续发送N-1次后仍未得到应答则停发。

现阶段建议取值为:

T=60秒,N=3。

消息采用并发方式发送,加以滑动窗口流量控制,窗口大小参数W可配置,现阶段建议为16,即接收方在应答前一次收到的消息最多不超过16条。

长连接的操作流程举例如图4.2所示:

......

拆除TCP连接

建立TCP连接

对CNGP消息2的应答

对CNGP消息1的应答

CNGP消息2

服务器端

客户端

CNGP消息1

 

滑动窗口不大于WW

 

链路检测消息

链路检测消息应答

 

......

 

图4.2长连接一次操作流程

4.3.2短连接

通信双方以客户-服务器方式建立TCP连接,应答与请求在同一个连接中完成。

系统采用客户/服务器模式,操作以客户端驱动方式发起连接请求,完成一次操作后关闭此连接。

SMGW与SP之间、SMGW与SMGW之间的消息发送后等待T秒后未收到应答,应根据重发机制进行重发,再连续发送N-1次后仍未得到应答则停发。

现阶段建议取值为:

T=60秒,N=3。

短连接的操作流程举例如图4.3所示:

......

服务器/客户端

客户端/服务器端

 

 

建立TCP连接

CNGP消息2

 

对CNGP消息2的应答

拆除TCP连接

 

图4.3短连接的操作流程

4.3.3交互过程中的应答方式

在SP与SMGW及SMGW与SMGW之间的交互过程中均采用异步方式,即任一个网元在收到请求消息后应立即回送应答消息。

举例如图4.4所示:

SMGW2

SMGW1

SMSC

SP

CNPP应答消息

CNPP请求消息

 

 

图4.4异步交互方式示意图

4.3.4端口号

端口号

应用

9890

长连接(SP与SMGW之间)

9900

短连接(SP与SMGW或SMGW与SMGW之间)

9930

长连接(SMGW与SMGW之间)

9001

长连接(SMGW与预付费平台之间)

4.4通信流程

4.4.1CNGP登录模式

在CNGP标准的一个会话中客户端可以采用三种登录方式与服务器端相连:

发送模式(TransmitMode)、接收模式(ReceiveMode)和收发模式(TransceiverMode)。

在发送模式中客户端只能发送短消息、在接收模式中客户端只能接收短消息、在收发模式中客户端既可以发送也可以接收短消息。

三种模式均可以采用长连接与短连接两种连接方式的一种,根据实际情况选择。

4.4.2SP发送短消息

SP以发送者或者是收发者身份登录后,就可以发送短消息。

SP可以不等待上一个短消息的应答消息,就发送下一个短消息。

图4.5SP发送短消息

4.4.3SP接收短消息

SP以接收者或者是收发者身份登录后,SMGW向SP发送短消息,SMGW可以不等待上一个短消息的应答消息,就发送下一个短消息。

图4.6SP接收短消息

4.4.4SMGW转发短消息

SMGW需要把异地或异网短消息转发到相应的SMGW,在转发短消息之前SMGW需要通过对方SMGW认证。

图4.7SMGW转发短消息

4.5编号规则

在整个SMGW系统中所有的通信节点(SMGW、SP和SMSC)都有一个唯一的数字编号,不同的SP、SMSC或SMGW编号不能相同,编号由系统管理人员负责分配,由集团统一管理,编号规则如下:

SMGW的编号规则:

1AAAXY

SMSC的编号规则:

2AAAXY

SP企业的编号规则:

3AAAQQQQQQ

其中,AAA表示三位长途区号(不足三位的长途区号右对齐左补零),XY表示从00到99的序号,QQQQQQ表示6位企业代码。

SP服务的编号规则:

服务代码是在使用短消息方式的点播类业务中,提供给用户点播的短消息服务代码。

服务代码以前缀+4位数字表示,全国业务服务代码长度统一为8位,即前缀+“1000”-“9999”,其中前缀为“1061”-“1069”,由集团统一分配;本地业务服务代码长度统一为9位,即前缀+“01000”-“09999”,其中前缀为“1061”-“1069”,后五位数字由各省自行分配。

SP业务的编号规则:

SP的业务类型,数字、字母和符号的组合,由SP自定,如图片传情可定为TPCQ,股票查询可定义为11。

最大长度为10字节。

5.CNGP消息定义

5.1基本数据类型

类型

说明

Integer

整数,长度根据具体协议确定,多字节情况下高字节在前

UnsignedInteger

无符号整数

OctetString

定长字符串,位数不足时左对齐,右补二进制的零

5.2消息结构

项目

说明

格式

MessageHeader

消息头(所有消息公共包头)

定长

MessageBody

消息体(必选部分)

变长

MessageBody

消息体(可选部分)

TLV

5.3消息头格式

字段名

字节数

类型

描述

total_length

4

UnsignedInteger

消息总长度(含消息头及消息体)

command_id

4

UnsignedInteger

命令标识

command_status

4

UnsignedInteger

命令状态(参见7.4status错误代码表)

sequence_id

4

UnsignedInteger

消息流水号,顺序累加,步长为1,循环使用(一对请求和应答消息的流水号必须相同)

5.4SP与SMGW之间的消息定义

请求名称

请求标识

消息方向

说明

login

0x00000001

SPSMGW

登录请求

login_resp

0x80000001

SPSMGW

登录请求的应答

submit

0x00000002

SPSMGW

SP发送短消息请求

submit_resp

0x80000002

SPSMGW

SP发送短消息请求的应答

deliver

0x00000003

SMGWSP

SMGW发送短消息请求

deliver_resp

0x80000003

SMGWSP

SMGW发送短消息的应答

active_test

0x00000004

SPSMGW

测试通信链路是否正常请求(由客户端发起,SP和SMGW可以通过定时发送此请求来维持连接)

active_test_resp

0x80000004

SPSMGW

测试通信链路是否正常的应答

exit

0x00000006

SPSMGW

退出请求

exit_resp

0x80000006

SPSMGW

退出请求的应答

5.4.1login

字段

长度(字节)

数据类型

说明

ClientID

10

OctetString

SMGW设置的SP接入标识

AuthenticatorClient

16

OctetString

客户端密码

用于鉴别客户端的接入请求。

其值通过单向MD5hash计算得出,表示如下:

AuthenticatorClient=MD5

(ClientID+7字节的二进制0+Sharedsecret+TimeStamp)

Sharedsecret由服务器端与客户端事先商定的,最长15字节,TimeStamp格式为:

mmddhhmmss,即月日时分秒,10位

LoginMode

1

Integer

登录类型(0=发送短消息,1=接收短消息,2=收发短消息,其他保留)

TimeStamp

4

Integer

时间戳的明文,由客户端产生,格式为mmddhhmmss,即月日时分秒,10位数字的整型,右对齐

Version

1

Integer

客户端支持的版本号(高位4bit表示主版本号,低位4bit表示次版本号)

5.4.2login_resp

字段

长度(字节)

数据类型

说明

AuthenticatorServer

16

OctetString

服务器端认证码,当客户端认证出错时,此项为空

其值通过单向MD5hash计算得出,表示如下:

AuthenticatorServer=MD5

(Status+AuthenticatorClient

+Sharedsecret)

Sharedsecret由服务器端与客户端事先商定,最长15字节

AuthenticatorClient为客户端发送给服务器端的上一条消息login中的值

Version

1

Integer

服务器支持的最高版本号

5.4.3submit

字段

长度(字节)

数据类型

说明

SPID

10

Integer

SP的企业代码

SubType

1

Integer

短消息子类型(0=取消订阅,1=订阅或点播请求,2=点播下发,3=订阅下发,其他保留)

NeedReport

1

Integer

是否要求返回状态报告:

(0=不要求,1=要求)

Priority

1

Integer

发送优先级(从0到3)3为最高级

ServiceID

10

OctetString

业务类型

FeeType

2

OctetString

资费类型

00=免费

01=按条收费

02=包月

03=封顶

04=包月扣费请求

05=CR话单

其他:

保留

FeeUserType

1

OctetString

计费用户类型字段

0:

对目的终端计费

1:

对源终端计费

2:

对SP计费

3:

按照计费用户号码计费

其他保留

FeeCode

6

OctetString

每条短消息的信息费,单位:

MsgFormat

1

OctetString

短消息格式(参见短消息格式代码表7.1)

ValidTime

17

OctetString

有效时间,(格式:

参照SMPP3.4协议)

AtTime

17

OctetString

定时发送时间,(格式:

参照SMPP3.4协议)

SrcTermID

21

OctetString

短消息发送用户号码

ChargeTermID

21

OctetString

计费用户号码

DestTermIDCount

1

Integer

短消息接收号码总数(≤100)

DestTermID

21*DestTermCount

OctetString

短消息接收号码(连续存储DestTermIDCount个号码)

MsgLength

1

UnsignedInteger

短消息长度

MsgContent

≤254

OctetString

短消息内容

ProtocolID

TLV

协议标识(参见TLV说明表7.5)

5.4.4submit_resp

字段

长度(字节)

数据类型

说明

MsgID

10

OctetString

SMGW产生的短消息流水号,由三部分组成:

SMGW代码:

3字节(BCD码)

时间:

4字节(BCD码)

序列号:

3字节(BCD码)

CongestionState

TLV

流量控制(参见TLV说明表7.5)

5.4.5deliver

字段

长度(字节)

数据类型

说明

MsgID

10

OctetString

SMGW产生的短消息流水号,由三部分组成:

SMGW代码:

3字节(BCD码)

时间:

4字节(BCD码)

序列号:

3字节(BCD码)

IsReport

1

Integer

是否状态报告:

0:

不是

1:

MsgFormat

1

Integer

短消息格式(参见短消息格式代码表7.1)

RecvTime

14

OctetString

短消息接收时间(格式:

yyyymmddhhmmss,例如20010301200000)

SrcTermID

21

OctetString

短消息发送用户号码

DestTermID

21

OctetString

短消息接收用户号码

MsgLength

1

UnsignedInteger

短消息长度

MsgContent

≤254

OctetString

短消息内容

ProtocolID

TLV

协议标识(参见TLV说明表7.5)

5.4.6deliver_resp

字段

长度(字节)

数据类型

说明

MsgID

10

OctetString

SMGW产生的短消息流水号,由三部分组成:

SMGW代码:

3字节(BCD码)

时间:

4字节(BCD码)

序列号:

3字节(BCD码)

CongestionState

TLV

流量控制(参见TLV说明表7.5)

5.4.7active_test

无消息体。

5.4.8active_test_resp

无消息体。

5.4.9exit

无消息体。

5.4.10exit_resp

无消息体。

5.5SMGW与SMGW之间的消息定义

请求名称

请求标识

说明

login

0x00000001

SMGW登录请求

login_resp

0x80000001

SMGW登录请求的应答

active_test

0x00000004

测试通信链路是否正常请求(由客户端发起,SMGW和SMGW可以通过定时发送此请求来维持连接)

active_test_resp

0x80000004

测试通信链路是否正常的应答

forward

0x00000005

SMGW转发短消息请求

forward_resp

0x80000005

SMGW转发短消息的应答

exit

0x00000006

退出请求

exit_resp

0x80000006

退出请求的应答

5.5.1login

字段

长度(字节)

数据类型

说明

ClientID

10

OctetString

此处为源SMGW代码

AuthenticatorClient

16

OctetString

客户端密码

用于鉴别客户端的接入请求。

其值通过单向MD5hash计算得出,表示如下:

AuthenticatorClient=MD5

(ClientID+7字节的二进制0+Sharedsecret+TimeStamp)

Sharedsecret由服务器端与客户端事先商定的,最长15字节,

TimeStamp格式为:

mmddhhmmss,即月日时分秒,10位

LoginMode

1

Integer

登录类型(0=发送短消息,1=接收短消息,2=收发短消息,其他保留)

TimeStamp

4

Integer

时间戳的明文,由客户端产生,格式为mmddhhmmss,即月日时分秒,10位数字的整型,右对齐

Version

1

Integer

客户端支持的版本号(高位4bit表示主版本号,低位4bit表示次版本号)

5.5.2login_resp

字段

长度(字节)

数据类型

说明

AuthenticatorServer

16

OctetString

服务器端认证码,当客户端认证出错时,此项为空

其值通过单向MD5hash计算得出,表示如下:

AuthenticatorServer=MD5

(Status+AuthenticatorClient

+Sharedsecret)

Sharedsecret由服务器端与客户端事先商定,最长15字节

AuthenticatorClient为客户端发送给服务器端的上一条消息login中的值

Version

1

Integer

服务器支持的最高版本号

5.5.3active_test

无消息体。

5.5.4active_test_resp

无消息体。

5.5.5forward

字段

长度(字节)

数据类型

说明

MsgID

10

OctetString

SMGW产生的短消息流水号,由三部分组成:

SMGW代码:

3字节(BCD码)

时间:

4字节(BCD码)

序列号:

3字节(BCD码)

DestSMGWNo

6

OctetString

目标SMGW代码

SrcSMGWNo

6

OctetString

源SMGW代码

SMSCNo

6

OctetString

源SMSC代码

SMType

1

Integer

短消息类型(0=PHS用户发到SP的MO,1=PHS用户发到异网用户,2=SP发到PHS用户的MT,3=异网用

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

当前位置:首页 > 小学教育 > 语文

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2