短信平台系统方案.docx
《短信平台系统方案.docx》由会员分享,可在线阅读,更多相关《短信平台系统方案.docx(15页珍藏版)》请在冰点文库上搜索。
短信平台系统方案
短信服务平台方案书
一、系统简介:
针对SP开展移动增值业务的需求,北京映翰通公司总结客户的总体需求,设计建设了这套通用短信应用服务系统,为广大SP提供一站式的解决方案。
该系统包括:
●底层的移动数据服务平台,实现短信息的通讯和管理。
●短信服务业务平台:
短信订阅,短信点播,图片铃声,言语传情。
从短信用户的使用方法上包含了基于WEB的应用和基于MO上行的应用方法,从短信服务的提供的方式上包含了即时发送,定时发送的方式。
●计费系统:
完成短信业务计费,生成数据统计、月底报单、费用清单等报表。
●支持二级SP的接入,分配和管理二级代码。
并实现二级SP业务的计费。
这套系统为SP建设自己的短信服务平台提供了全面的解决方案,使SP可以快速的开展短信服务,而且,该系统设计非常便于SP扩展业务系统。
二、系统设计原则
我们采用模块分布式的设计结构,内部通讯采用基于TCP/IP的XML接口模式。
采用模块分布式的结构有利于系统的扩容和扩展。
采用XML接口可以免去开发人员书写专用数据包的烦琐过程。
协议可以很容易地实现小的调整,而且新的协议可以容易地兼容老的协议。
当协议需要扩展的时候,可以很容易地扩展出新的数据或命令包子集,而且通讯部分所做的修改十分小。
三、系统整体架构
为满足系统的需求,系统的核心部分一共分为五个层次和十个模块。
如图3.1所示。
(图3.1和3.2为了显示通讯层模块XMLCenter的扩展性,标明了其他应用的可能性。
)
图3.1系统整体架构图
图3.2功能模块划分图
3.1系统的五个层次
3.1.1链路层
提供网络的物理链路连接,具备通信、选路、网络安全功能。
采用的硬件包括路由器、防火墙、交换机或集线器等网络设备。
3.1.2通讯层
该层负责与移动运营商建立基于TCP/IP的逻辑链路通信,并进行SMPP、CMPP、SGIP等应用层协议的数据包交换过程。
3.1.3管理层
管理层是负责管理虚拟运营平台各种应用服务的部分。
针对各种特殊的应用服务,系统提供相应的服务管理模块,通过三种流:
业务数据流、计费数据流、控制流,每个管理模块提供三种接口:
数据传输接口,计费接口,用户管理接口。
3.1.4接口层
接口层是指外部服务系统接入到管理层所采用的方式。
例如:
数据库接口、网络接口、文件接口等等。
3.1.5应用层
应用层是指外部系统的具体应用。
例如:
Web服务应用、企业集团应用,代收费等。
3.2系统的十个模块
3.2.1通讯模块——支持多种短信网关平台
通讯模块是整个系统的核心部分。
它将负责与中国移动、中国联通或短信息中心的数据通讯。
通讯模块的出口部分将针对不同的网关采用不同的协议。
目前通讯模块(XMLCenter)可以支持:
(1)CMPP2.0(清华深讯、北京亚信、北维通讯、北京斯特奇、上海英斯克、湖南拓维、卓望MISC、深圳华为);
(2)SGIP1.2(深圳熬天、北维通讯、上海英斯克);
(3)SMPP3.4(中国移动、中国联通);
(4)SMIAS1.2(东大诺基亚);
每一个连接目前可以达到250包/秒(采用模拟器测试),这个速度已经远远超出移动运营商所能提供的接口的速度上限。
用移动提供的API存在下面的问题:
1、移动提供的API只是为了实现简单的连接和数据传送功能,不能与SP自身的系统紧密结合,在实际运用中会存在系统性能和效率的缺陷,未能针对CMPP协议做进一步的优化。
2、SP同时接入移动和联通时,移动和联通的API不能兼容。
3、在SP需要增加新的应用时,不方便扩展应用。
采用这种方式连接网关的优势在于:
1、兼容全国所有移动公司的短信网关和联通短信网关;满足用户直连短信中心的需求;满足多个网关合并运行或多个网关独立运行的各种需求。
2、针对CMPP协议充分优化,在外部实现和短信网关的数据异步通讯,在内部实现了多线程的调度运行机制。
3、跨平台运行,通用性好(支持windows,linux平台)。
4、经过1年时间,40多家客户的见证,运行在全国9大网关上,稳定性好。
3.2.2网关通讯监控模块
网关通讯监控模块提供对网关的监视控制功能,通过图形界面的控件发送特定指令,从而可以完成监控功能,如装载/卸载网关,控制发送、接收流量,取得网关运行状态等。
3.2.3业务路由模块XMLRouter
XMLRouter负责将通讯数据(MO)路由到应用层的不同业务处理模块,从而实现对业务的路由。
XMLRouter完成对二级代码的判断和管理,使SP可以实现二级SP的接入,例如:
该SP的服务代码是1111,他可以接入其他二级SP,分配二级代码111101,111102,111103等,对用户上行MO的二级代码进行判断,传给相应的二级SP的业务模块处理。
XMLRouter对用户上行MO的二级代码或短信内容(判断业务代码)进行判断,如果SP没有该项服务,则下发出错信息,如果有则传给相应业务模块处理,其他模块不会收到。
XMLRouter负责对各模块进行安全验证,业务路由模块阻止了非法的业务模块连接XMLCenter,从而实现安全保证和模块连接管理。
下图是xmlrouter的示意图:
3.2.4计费模块
计费模块主要是提供信息日志记录、计费接口、数据统计、月底报单、费用清单、报表生成等等。
具体功能:
对短信服务平台XMLCenter核心模块每天生成的日志定时进行解析,提取出计费所需的字段及相关内容,存入数据库的相应表;输出不同指标的汇总报表:
日盈利报表,月盈利报表,业务分析报表,网关分析报表等,可以按照业务类型进行日,周,月的统计,便于客户分析统计利润和业务量。
3.2.5用户管理模块
用户管理模块主要是负责个人用户注册管理,例如号码段管理等功能。
3.2.6数据库服务管理接口模块
数据库服务管理模块主要将待发送的数据从数据库中提取出来并发送给通讯模块。
把从通讯模块接收到数据写入到数据库中。
它将主要负责与应用服务模块的通讯和管理。
3.2.7短信订阅模块
1.用户通过上行(MO)或者WEB页面实现订阅,例如订阅新闻,体育新闻,天气预报,笑话等内容。
2.提供管理界面可以添加新业务,并创建新的业务代码数据表。
3.提供管理界面给管理员录入信息内容。
4.提供管理界面可以使业务代码以及代码内容和相关的点播内容建立关联,并由后台程序自动完成。
5.手机用户可以上行取消定制信息。
.3.2.8铃声图片模块(用户所请求的服务是由对数据库的操作来完成)
1.用户通过上行(MO)或者WEB页面实现铃声图片下载,
2.提供管理界面可以添加新业务,并创建新的业务代码数据表
3.提供界面可以使业务代码以及代码内容和相关的点播内容建立关联,并由后台程序自动完成。
4.手机用户可以上行取消定制信息。
3.2.9定制定时模块
1.通过上行(MO)或者WEB页面实现订阅,订阅的内容在规定的时间发送给用户。
例如:
每天早上7点发送天气预报,下午4点发送股市指数。
2.提供管理界面可以添加新业务,并创建新的业务代码数据表。
3.提供管理界面给管理员录入信息内容。
4.提供管理界面可以使业务代码以及代码内容和相关的点播内容建立关联,并由后台程序自动完成。
5.手机用户可以上行取消定制信息。
3.2.10基本功能模块
Web应用服务模块主要是负责短信息常规的服务应用,并将管理员在后台操作管理系统所建立的服务类型反映到WEB页面,例如:
图片铃声下载、自写短信息等等。
a)基本功能模块:
短信的编辑和发送功能,支持图片铃声发送功能。
b)媒体管理功能:
对网站的言语传情、图片传情、铃声传情、订阅等栏目的内容进行管理。
可以通过媒体管理中的各项功能,上传,修改,删除媒体内容,并对内容分类。
3.2.11虚拟网关接入服务管理模块:
负责二级SP的接入管理,完成二级SP(或集团用户)的业务平台和InHandXML通讯平台的连接。
对二级SP的业务进行计费和短信流量控制,安全管理。
通过下图可以看到,有一个远程接入模块负责远程如sp或企业用户的接入管理,同时通过此远程接入模块实现对各二级sp做流量分配,如SP的流量是30条/秒,那可以将15条分配给本地应用,5条/秒给合作伙伴二级sp:
A方,10条/秒分配给合作伙伴B方。
远程接入模块还有一个功能就是对所有的mt,mo进行本地备份,通过此备份配合计费模块就可以得到系列收入和业务量统计数据,这样就可以实现本地的对二级sp计费。
负责二级SP远程应用模块的接入管理和流量控制以及本地备份。
3.2.12企业应用模块
二级SP的应用平台,按照我公司设计的“InHandXML通信协议”和“应用平台模块开发标准”完成和系统的连接。
(见上图)
3.2.13手机图片铃声制作工具包
提供转换Nokia,Motorola,Siemens,Ericsson手机各种媒体格式(图片铃声)的方法及相关的软件和工具,并将转换好的格式代码自动入库。
3.3管理功能:
提供完整的管理功能,便于管理员对系统进行管理,包括:
(1)服务分类管理
(2)服务列表管理
(3)内容分类管理
(4)内容列表管理
(5)定单管理
3.3.1服务分类管理
建立服务分类表,采用树状结构管理服务类型,界面设计如下:
用户可以增加业务类型,增加、删除和修改业务内容,管理员通过操作管理系统,可以显示服务类型列表,增加子节点,删除子节点,更改子节点名称,增加内容,选择对应的数据库等。
3.3.2其他管理功能:
发送信息表单60个字的限制功能,超过60个字的信息不能存入内容表,并发出提示。
四、系统性能指标
系统的核心部分XMLCenter采用JBuilder编写,通过BorlandOpertimizeitProfile软件做了细致的优化工作。
现在系统可以稳定工作在250条/秒(一个TCP/IP连接)。
在大荷工作的情况下(250条/秒),系统占用CPU(PIII1G/256MRAM)大约在30%~40%左右。
以上数据由我们采用模拟器测试所得。
对于实际的网关来说,其通讯速率一般只会开到大约80条/秒。
可以说我们的系统是有足够的能力来处理短消息的发送。
我们的平台是按照30万/天短信流量量,能同时容纳多个网关同时工作。
在用户的实际应用中,我们的产品(InHandUnionCenter)可以同时连接五个省不同的网关和短信息中心。
每天的流量至少是30万条。
发送速率瞬间峰值达到了120条/秒。
每秒能接收60条上行短信息。
同时可挂接30个XML通讯接口。
XML总体流量限制在100条/秒。
XMLCenter的能力远高于InHandUnionCenter。
五、系统服务扩展方案
系统的服务扩展可以依据实际情况来确定。
如果需要增加的服务可以通过已有的服务来搭建,那么就不需要增加新的业务模块。
当新增的应用服务如短信游戏不能依靠已有的应用服务模块来实现,就必须在应用层上开发新的应用模块,开发的标准:
1、在数据通信上遵照北京映翰通的《InHandXML通信协议》,以TCP/IP方式向XMLRouter发送、接收xml格式的数据,实现短信MT、MO的收发;
2、为了实现该模块的计费功能,必须遵照北京映翰通的《应用模块开发标准》对收发的MT、MO进行记录,然后才能通过系统的计费处理模块实现该模块的计费功能。
遵照以上标准,就可以根据需求开发自己的应用模块,实现系统的扩展。
六、通讯层采用XMLCenter对系统扩展多种应用的优势
InHandXMLCenter的简单通讯协议规定了与外部扩充系统之间的通讯协议规范。
该简单通讯协议规定使用在TCP/IP网络上,使用XML格式的文本字符流完成与各个扩充系统之间的通讯。
这样每个XML客户端可以将InHandXMLCenter看作为移动统一平台。
InHandXMLCenter起到协议转换的作用,将各个应用模块传输上来的数据转换为符合移动运营商的协议标准(SMPP,CMPP,SGIP)的数据包,与短信中心和短信网关进行数据交互,在整个系统中实现通讯的功能,将内容和业务逻辑的处理工作交给上层的各个功能模块,有效的减少了工作负荷,同时减少由于不同通讯协议给应用层开发造成的复杂性
使用InHandXMLCenter,可以将各种应用的模块从物理上和逻辑上分开,使多种应用轻松扩展。
对于扩展应用,我们举例如下:
1、专项数据服务管理模块:
针对某些客户如企业用户,行业用户的特殊需求,专项数据服务管理模块主要负责将一些专用的数据从客户本地的数据源中通过加密/不加密的方式传递到本系统虚拟网关。
在客户方有一个数据传输代理服务模块。
两者相互配合工作。
这种方式主要是对那些服务相对固定,客户开发力量比较弱或希望迅速开展服务的情况。
例如:
气象台、税务局等等部门。
2、虚拟网关接入管理模块:
虚拟网关接入管理模块主要负责管理下级SP的应用接入。
对下级SP进行业务代码分配和管理,并进行二级计费,这种方式可将自己的通道充分应用,适合于接入有一定技术能力,希望自己开发应用的客户。
3、短信游戏、其他娱乐模块
开发如短信交友、聊天等模块,实现短信服务的多元化。
七、系统其他优势
7.1支持多种短信网关
支持CMPP2.0、SGIP1.2、SMPP3.4协议,全面支持中国联通和中国移动的网关,例如亚信,深讯,英斯克,斯特奇,北纬通讯,东大诺基亚,湖南拓维,广东MISC等等网关。
在实际应用中针对各种网关进行优化,
7.2支持短信路由功能
系统可以根据用户需求设定路由表,支持按业务代码和按手机号码进行路由,将特定号段发往特定网关,配置灵活。
7.3稳定可靠的系统方案
系统自动监测发送缓冲区,一旦超过告警值,就自动启动其他通道发送,保证短信的发送速度,同时提供系统告警,一旦系统出现不稳定,会自动进行调整并发送短信息给管理员。
7.4良好的扩展性
系统设计模块化,每个功能模块有高度的拆卸性,当系统需要新的功能时,只需要开发新的功能模块,就可以获得相应的功能;
7.5支持客户的二次开发
系统采用XML接口,方便系统扩展。
我们公开标准接口,可以采用VC,VB或Java来编写对应的客户端。
八、系统使用的硬件推荐配置
系统使用的硬件配置为:
通信层:
应配备一台PCSERVER,运行XMLCenter,XMLRouter;
应用层:
至少配备一台PCSERVER,如果条件允许可以根据各应用模块的数据量大小专门分配或共享一台PCserver;
计费模块、监视控制模块、后台内容采编维护模块:
由于采用脱机计费,对机器的性能就并不是要求很高,可单独配备一台PC机;
数据库服务器:
可单独配备一台pcserver;
如果客户的业务系统不算大,两台普通PCSERVE也可以满足应用。
负责与外部网络相连接以及连接安全的硬件和软件设备:
路由器,防火墙,集线器等,如果客户已经具有网络环境,则不需要再准备,具体的网络环境视实际情况而定。
九、平台接入方式
平台接入移动运营商的主要方式可以是专线连接,也可以是互联网方式。
专线接入需要安排专线接入的方式,例如:
ADSL、ISDN、2M微波等等。
这些需要与移动运营商协商解决。
互联网接入需要专用的服务器来进行该业务。
同时需要有防火墙来保证该服务器的安全。
具体情况根据用户的需求和移动运营商的要求来决定。
十、系统的安全性
1、连接安全
通过xmlrouter对应用接入模块进行ip认证、模块识别等功能实现连接的安全性;
2、权限审核
对于各应用模块,如点播、频道、订阅等应用模块,通过对操作员进行身份划分:
超级管理员、管理员、信息录入员等。
对这些不同身份的操作员赋予不同权限,如添加/删除栏目,内容更新等操作权限,实现对业务数据的安全保护功能;
3、内容安全性
信息安全主要是防止非法言论通过短信息大面积传播。
有关系统的信息安全性要根据情况来决定。
在自写短信栏目,建立非法信息验证,对每一条自写的短信进行关键字索引验证,如果短信中包含非法言论将不能发送。
如果将安全过滤模块加载到通讯层,那么很可能造成系统的通讯性能下降。
因此安全模块要根据实际情况来加载到各个服务管理模块中。
例如:
在数据库管理应用中,如果不涉及到自写短信息的部分,均可以不加载安全过滤模块。
在企业接入的管理中,因为有合同的约束,大的企业也不会发送涉及政治性的言论。
所以该部分也可以不加入内容安全过滤模块,但是要做相关的记录处理。
在个人接入模块部分,是必须要加安全过滤模块的,同时限制群发的数量。
十一、系统备份和恢复
系统各模块的数据存储都采用的是数据库方式,因此系统数据的备份可通过数据库的备份功能来实现,而恢复同样可以通过数据库的恢复功能来实现。
对于计费,计费模块在计费的同时,把每条MT、MO记录存在当日的log日志中,以便以后可以再次统计。