中国移动通信信息资源站实体与互联网短消息网关接口协议
(V1.1)
中国移动通信集团公司
2000/12/12
1. 编制说明
本规范为中国移动通信集团公司企业规范,规定信息资源站实体与互联网短消息网关的应用层接口协议。本协议版本为1.1版。
2. 缩略语
ISMG Internet Short Message Gateway 互联网短消息网关
SMPP Short Message Peer to Peer 短消息点对点协议
CMPP China Mobile Peer to Peer 中国移动点对点协议
TLS Transport Layer Security 传输层安全
SMC Short Message Center 短消息中心
3.网络结构
因特网SC业务中心即ISMG记录了全网的SMC的位置,要求ICP的功能实体向ISMG发CMPP_SUBMIT消息,由ISMG将消息转发到某SMC上。同时,SMC也可向ISMG发送短消息,由ISMG发送给相应的ICP。
维护管理中心对ISMG进行管理。
4.CMPP功能概述
CMPP用以建立短消息中心和ICP之间的通路,业务和信息的提供由ICP完成。
可以为实现移动数据增值业务提供服务,例如以下业务:
Email通知、语音信箱通知、Internet发短消息、移动台发Email、催费通知、自动综合业务信息台(信息点播业务,主要有:天气预报、股票信息、航班信息等)。
以下以Email通知业务为例,讲述信息的流程:
某因特网的用户向ICP的Email Server发送一封Email,
ICP的POP3 SERVER激活过滤进程,如果该用户申请了Email通知业务,则过滤进程将用户登记的手机号码取出,将Email的标题取出,绑定在CMPP_SUBMIT消息中,发送给ISMG,
ISMG将检查CMPP_SUBMIT消息中“接收业务的手机号码”字段,则在ISMG中查询该手机用户归属的SMC的地址,然后发送给SMC。
ISMG得到确认消息后,将消息转换成CMPP_SUBMIT_REP,发回给ICP。
SMC收到该消息后,对该消息进行处理,并向ISMG发送确认消息,
由上述流程可见,对于ICP来讲,要做的工作主要集中在第二步,即在EMAIL SERVER中做一个过滤程序,实现上述功能即可。
从协议上说,ICP只要具备CMPP中实现的接口,就可以实现对应于控制层的功能,至于对于具体的ICP功能实体,比如Email Server、Web Server等,尚需做一些应用层的工作。
5. 接口
CMPP协议以TCP/IP作为底层通信承载。在有较高的安全性需要时,可选用TLS层进行安全传输。
6 消息流程
ICP与ISMG之间进行信息交互时,可以采用长连接方式,也可以采用短连接方式。所谓长连接,指在一个连接上可以连续发送多个数据包,然后断开连接,在连接保持期间,如果没有数据包发送,需要双方发链路检测包。短连接是指通讯双方有数据交互时,就建立一个连接,数据发送完成后,则断开此连接,即每次连接只完成一项业务的发送。短信网关之间前转时要求每条消息都要有状态报告。当向用户发送信息发生错误时,网关应向ICP发送错误状态报告。
6.1 长连接
ICP与ISMG以Client—Server方式建立TCP连接,用于双方信息的相互提交。TCP/IP连接建立后,由Client发起建立应用层的连接,这时如果ICP或ISMG认为需要建立TLS连接,则在传输的数据包中置TLS字段,从而在双方建立TLS连接。
在应用层连接建立后的数据传输过程中,如果ICP或ISMG需要向对端发送加密信息,也可建立TLS连接,这时只需要置相应的消息体中Tls_available(是否使用TLS层)属性字段,且应的本条消息的消息体中的其他属性不发送。
消息采用并发方式发送,加以流量控制,窗口大小可调,暂定为16条消息,即接收方在应答前一次收到的消息最多不超过16条。
ICP向ISMG发送的消息类型包括:
1) CMPP_Connect 请求应用层连接
2) CMPP_Terminate 终止应用层连接
3) CMPP_Terminate_REP 终止应用层连接应答
4) CMPP_Deliver_REP 下发短信应答
5) CMPP_Submit 提交短信
6) CMPP_Query 发送短信状态查询
7) CMPP_Cancel 删除短信
8) CMPP_Active_Test 激活测试
9) CMPP_Active_Test_REP 激活测试应答
ISMG向ICP发送的消息类型包括:
1) CMPP_Connect_REP 请求连接应答
2) CMPP_Deliver 短信下发
3) CMPP_Submit_REP 提交短信应答
4) CMPP_Query_REP 短信状态查询结果
5) CMPP_Cancel_REP 删除短信应答
6) CMPP_Active_Test_REP 激活测试应答
7) CMPP_Active_Test 激活测试
8) CMPP_Terminate 终止应用层连接
9) CMPP_Terminate_Rep 终止应用层连接应答
一次操作流程
ICP ISMG 说明
CMPP_Connect ICP请求与ISMG建立应用层连接
CMPP_ Connect_REP ISMG请求连接应答
CMPP_Submit(1) 提交短信,要求确认
CMPP_Submit(2) 提交短信,要求确认
CMPP_Submit_REP 对(1)的提交短信响应
CMPP_Submit_REP 对(2)的提交短信响应
CMPP_Deliver(3) 短信下发
CMPP_Deliver(4) 短信下发
CMPP_Deliver_REP 对(3)的短信应答
CMPP_Deliver_REP 对(4)的短信应答
CMPP_Cancel 删除短信
CMPP_Cancel_REP 删除短信响应
CMPP_Query 发送短信状态查询
CMPP_Query_REP 短信状态查询结果
CMPP_Terminate 终止应用层连接
CMPP_Terminate_Rep 终止应用层连接响应
图6.1 长连接消息流程示意图
6.2 短连接
ISMG与ICP之间的通讯采用TCP/IP协议,双方互为client和server端。发送与接收单独进行,每项业务建立一个连接,通讯采用应答方式,应答与请求在同一个连接中完成。由于系统采用互为客户端/服务器模式,操作以客户端驱动方式发起连接请求,完成一次操作后关闭此连接。
传输过程中,如果ICP或ISMG认为需要建立TLS连接,则在传输的数据包中置TLS字段,并建立双方的TLS连接。
连接中对ICP的认证采用阶段性认证方式,当ICP首次与IMSG交换信息时,ICP首先发送身份认证包,ISMG对ICP进行身份认证后,记录ICP的IP地址等相关信息,在以后的数据交互时,ISMG把ICP的IP地址作为认证条件,即对没有注册的ICP的相关信息不予处理。当ICP想断开此逻辑上的应用层连接时,发送断开连接请求包,ISMG接受断开连接请求后,清除掉与此ICP相关的信息,即对MO到此ICP或ICP的MT信息均不予处理,但保存MO的信息,直到ICP再次与ISMG建立逻辑上的应用层连接,即身份认证。也允许ISMG发起断开ICP的连接请求。
ISMG之间通信采用短连接方式,首先发起连接者作为客户端,对方作为服务器建立连接。
消息采用并发方式发送,并加以流量控制,窗口大小可调,暂定为16条消息,即接收方在应答前一次收到的消息最多不超过16条。
ICP向ISMG发送的消息类型包括:
1) CMPP_Connect 请求逻辑应用层连接
2) CMPP_Terminate 终止逻辑应用层连接
3) CMPP_Terminate_REP 终止逻辑应用层连接应答
4) CMPP_Deliver_REP 下发短信应答
5) CMPP_Submit 提交短信
6) CMPP_Query 发送短信状态查询
7) CMPP_Cancel 删除短信
ISMG向ICP发送的消息类型包括:
1) CMPP_Connect_REP 请求逻辑应用层连接应答
2) CMPP_Terminate 终止逻辑应用层连接
3) CMPP_Terminate_REP 终止逻辑应用层连接应答
4) CMPP_Deliver 短信下发
5) CMPP_Submit_REP 提交短信应答
6) CMPP_Query_REP 短信状态查询结果
7) CMPP_Cancel_REP 删除短信应答
ISMG处于同一级别之上,ISMG之间数据传输采用短连接方式实现,互为客户/服务器模式,连接由请求的发起方建立,发送的消息类型包括:
1)CMPP_Fwd 消息前转
2)CMPP_Fwd_REP 消息前转应答
3)CMPP_Route 路由请求
4)CMPP_Route_REP 路由请求应答
一次操作流程(MO和MT):
ICP ISMG 说明