如果您无法下载资料,请参考说明:
1、部分资料下载需要金币,请确保您的账户上有足够的金币
2、已购买过的文档,再次下载不重复扣费
3、资料包下载后请先用软件解压,在使用对应软件打开
短信网关开发设计摘要:CMPP(中国移动点对点协议)规定了移动梦网短信业务开展过程中各网元(包括ISMG、GNS和SP)之间的消息类型和定义,本文讲述基于CMPP3.0标准的企业短信网关设计,支持CONNECT,SUBMIT,DELIVER,QUERY,CANCEL,TERMINATE消息。关键词:短信短信网关CMPPSPISMG1引言随着短信息业务的快速发展,短信息已经成为手机用户最经常使用的业务之一。除了大量使用的手机用户到手机用户的点对点短信业务之外,从信息平台到手机用户的短信信息服务业务也在快速发展,该业务已经成为广大用户及时方便地获取信息的一种手段。在广大服务提供商(SP)的支持下,用户可以采用短信点播或网站定制的方式得到大量有用信息,SP也能通过提供有偿信息服务而获得收益。然而手机用户和SP的交互必须通过基于CMPP的短信网关。CMPP(ChinaMobilePeertoPeer)中国移动点对点协议,目前为3.0版本,是中国移动通信集团公司发布,规定了移动梦网短信业务开展过程中各网元(包括ISMG、GNS和SP)之间的消息类型和定义,规定了以下三方面的内容:1)业务提供商与互联网短信网关之间的接口协议;2)互联网短信网关之间的接口协议;3)互联网短信网关与汇接网关之间的接口协议。文章组织如下:第2节分析介绍了CMPP3.0;第3节分析设计企业短信网关API;第4节给出了SP的发展趋势,最后对全文进行总结。2CMPP3.02.1网络结构如图1所示:图1互联网短信网关组网结构如图1所示,互联网短信网关(ISMG)是业务提供商(SP)与移动网内短信中心之间的中介实体,互联网短信网关一方面负责接收SP发送给移动用户的信息和提交给短信中心。另一方面,移动用户点播SP业务的信息将由短信中心通过互联网短信网关发给SP。另外,为了减轻短信中心的信令负荷,互联网短信网关还应根据路由原则将SP提交的信息转发到相应的互联网短信网关。互联网短信网关通过向汇接网关(GNS)查询的方式获得网关间的转发路由信息。另外,ISMG还必须与数据业务管理平台DSMP进行连接,在业务流程中对用户、业务以及定购关系等进行鉴权并对业务进行批价。CMPP协议主要提供以下两类业务操作:(1)短信发送(ShortMessageMobileOriginate,SMMO)(2)短信接收(ShortMessageMobileTerminated,SMMT)2.2CMPP协议栈CMPP协议以TCP/IP作为底层通信承载,具体结构由图2所示:图2CMPP协议栈2.3通讯方式各网元之间共有两种连接方式:长连接和短连接。所谓长连接,指在一个TCP连接上可以连续发送多个数据包,在TCP连接保持期间,如果没有数据包发送,需要双方发链路检测包以维持此连接。短连接是指通信双方有数据交互时,就建立一个TCP连接,数据发送完成后,则断开此TCP连接,即每次TCP连接只完成一对CMPP消息的发送。现阶段,要求ISMG之间必须采用长连接的通信方式,建议SP与ISMG之间采用长连接的通信方式。2.4CMPP涉及的端口号2.5交互过程中的应答方式在SP与ISMG之间、SMSC与ISMG之间及ISMG之间的交互过程中均采用异步方式,即任一个网元在收到请求消息后应立即回送响应消息。举例如图3所示:图3异步交互方式示意图3企业短信网关设计企业短信网关API必须实现CMPP3.0中业务提供商(SP)与互联网短信网关(ISMG)间的消息定义所规定的七个操作。⑴SP请求连接到ISMG(CMPP_CONNECT)操作CMPP_CONNECT操作的目的是SP向ISMG注册作为一个合法SP身份,若注册成功后即建立了应用层的连接,此后SP可以通过此ISMG接收和发送短信。ISMG以CMPP_CONNECT_RESP消息响应SP的请求。⑵SP或ISMG请求拆除连接(CMPP_TERMINATE)操作CMPP_TERMINATE操作的目的是SP或ISMG基于某些原因决定拆除当前的应用层连接而发起的操作。此操作完成后SP与ISMG之间的应用层连接被释放,此后SP若再要与ISMG通信时应发起CMPP_CONNECT操作。ISMG或SP以CMPP_TERMINATE_RESP消息响应请求。⑶SP向ISMG提交短信(CMPP_SUBMIT)操作CMPP_SUBMIT操作的目的是SP在与ISMG建立应用层连接后向ISMG提交短信。ISMG以CMPP_SUBMIT_RESP消息响应。⑷SP向ISMG查询发送短信状态(CMPP_QUERY)操作CMPP_QUERY操作的目的是SP向ISMG查询某时间的业务统计情况,可以按总数或按业务代码查询。ISMG以CMP