论文部分内容阅读
伴随着移动通信技术的迅速发展,移动通信的无线数据增值业务已进入深度运营状态。短消息服务是各类无线增值服务中发展最早、最成熟、最为消费者认可的业务。短消息平台是各大服务提供商(SP)实现短消息增值服务的保障。本文设计和实现了一种基于SMPP/CMPP协议的短消息平台。论文首先回顾了短消息业务的发展历程和现状,阐述了短消息网络体系结构、短消息传输原理。并进一步分析了互联网短消息网关和短消息网络接口协议。详细讨论和设计了短消息统一接入平台,重点实现了短消息平台服务器端的设计,解决了各个功能模块的关键问题和处理流程。最后通过对SMPP协议和CMPP协议的封装,以动态链接库的形式对外提供了短消息平台接口程序,方便短消息应用系统进行二次开发。系统采用C#面向对象设计语言进行开发,主要涉及网络编程、多线程处理、消息队列等技术。短消息平台服务器主要负责与应用实体、短消息网关或短消息中心之间的通信,以及处理上行下行消息,根据功能不同划分为应用实体通信代理模块、消息处理模块、网关通信代理模块和管理配置模块。系统为了处理各个模块之间共享的数据,设计了一个消息队列类,并定义了发送消息队列、接收消息队列两个全局队列作为各个模块之间数据交换的桥梁。消息处理模块采用多线程处理机制,对于短消息的收发以及链路检测等开发独立的线程进行处理。系统采用滑动窗口技术进行流量控制,提高了发送效率和可靠性,并通过事件模型来保证短消息平台对短信网关响应的自动化。平台接口程序分为Socket_IO层、PDU层和API层,设计和实现了SMPP、CMPP协议所规定的各种数据包的生成/解析以及请求/应答机制,底层为上层提供服务,上层函数的实现需要使用底层函数。最终将封装好的协议以API接口的形式供SP客户端接入短消息系统。要实现移动短消息平台,短消息应用系统可以选择通过SMPP协议接入短消息中心,也可以通过CMPP协议接入短消息网关。通过测试,平台能够正确且稳定的收发短信,并已成功应用于贵州移动直放站监控系统的通信平台中。