




已阅读5页,还剩62页未读, 继续免费阅读
(通信与信息系统专业论文)短信增值业务管理平台的设计研究.pdf.pdf 免费下载
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
北京交通大学硼士论文 英文摘要 a b s t r a c t n o w a d a y s ,w i t ht h e 住p i dd e v e l o p m e n to fs h o r tm e s s a g es e r v i c e ( s m s ) ,m o b 1 ep h o n eu s e 陪n e e dm o r ea n db e t t e rv a l u e a d d e d s e r v i c c s h o wt 0p m v i d ca b u n d a n t r v i c c st os a t i s f yt h cc u s t o m e r sh a sb c c o m et h e p m b l e ms e r v ;c cp r o v i d e r sm u s t f a c c i nl h et h e s i s ,t h es m ss y s t 唧如dm ep r o t o c o l sn d e di nt l l cs h o n m c s s a g et r 柚s m i s s i o na r c 锄a l 黟d ;t l l es c h e m al od e s i 印a n di m p l e m c n ta s m sv a l u e a d d e ds c r v i c e ss y s t 锄i sb m u g h tf o r 、张r d ,w h i c hi n c l u d e s e x t e m a ls h o r t m e s s a g ee n t i t y a i i di n f o n n a t i o nd a t a b a s e t h es y s t c m c o n n e c t st ot h es m s c 卸dg e t ss h o nm e s 鼢g ec o n t e n tf 如ms m s c a n e f p r o o 龉s i n gt h e 出曲bt h cs y s t e mc a nf e e db a c kc e n a i nr c s u l ti n f o 册a t i o nt o n i em o b i l cp h o 眦u s c r t h e i ts a v e st h ef e s u l t si n t oi 坞i n f o m a t i o n d a t a b a s e t 1 l ct h c s i si sm a i n l yf b c u s e do n :c h o o s i n ga p p r o p r i a t et 柏皿s m i s s i o n p m t o c 0 i sa n db u i l d i n gu pl i i l k - d c t e c tm e c h 锄i s mf o r t h es m sv a i u e a d d e d s e f v i c e ss y s 把m ;p 粥i d i n gt h em e t h o d so fc n c o d j n g 锄dd e o 。d i n gs m s d a t aa c c o r d i n gt os m p p ;b r i n 毋n gf o n v a r dw a y st op r o c c s ss e v e m lk i n d so f v a i u e a d d e ds e r v i c e s ,p 佗s t i n gi n t e 响c c st h a tc a nb ee x t e n d e dt op r o c c s s m o r eo t h c rv a l u e a d d e ds 哪i o 嗨;d c s i 印i n gd a t a b a s et om a n a g ei e s u h i n f b 枷a t i o n 卸ds h o nm e s s a g c s 加ms m s c k e yw o r d s :e s m e ;s m s c ; s m p p ;m u n r e a d 北京交通人学硕士论文短信增值业务管理平台的设计研究 第一章绪论 近年来,在满足了基本通信要求之后,短信增值业务作为企业用 户提高生产效率,广大用户提高生产质量、丰富生活的一种手段,得 到广泛的认可,不仅品种越来越多,市场空间也在不断扩大。据相关 资料和数据显示,中国移动增值业务市场从2 0 0 2 年开始快速发展。 2 0 0 5 年上半年,中国移动和中国联通这两大移动运营商的增值业务收 入达到了2 7 8 7 亿元”1 。在诸多电信增值业务中,短信业务( s m s :s h o n m e s s a g es e i c e ) 引人注目。所以,无论是移动电信运营商,还是固 网电信运营商都纷纷推出自己的短信增值业务,以期在国内如火如荼 的短信业务市场分一杯羹,此外,众多服务提供商也投身其中,开展 短信服务增值业务。 1 1 短信业务 短信( s h o nm e s s a g e ) 又称短信,是各类无线网络增值服务中发 展最早、最为消费者认可、也相对最成熟的业务。目前广泛支持短信 业务的网络主要有g s m 、c d m a 、小灵通网络等。其中g s m 网络使 用频率有很多种,而中国的g s m 网实现在9 0 0 m h z 和1 8 0 0 m h z 上9 i 。 使用g s m 网络通信能力的终端设备中最为普通和常见的就是手机,类 似于手机的这种移动端设备称为m e ( m o b i l ee q h i p m e n t ) 。 m e 之间通过短信中心( s h o r tm e s s a g es e r v i c ec e n t e f :s m s c ) 提 供的服务来进行通信。山于服务种类的限制,一条短信的最大长度可 为1 6 0 个英文字符( 7 个编码) 或7 0 个汉字( 1 6 个编码) 。短信是通 过控制信道传输的,不占业务信道,存用户通话的同时手机可以接收 钯l 呱 北京交通大学硕士论文 短信增值业务管理平台的设计研究 短信。但是短信的传输速度受到无线网络信令负荷的限制,信令负荷 较高时可能会使短信在网络中滞留的时间较长。这是因为短信以存储 转发方式传输,发送端先将短信发送到短信中心s m s c ,然后由s m s c 转发给目标用户”1 。 短信具有如下特点: 1 安全到达:存储转发机制保证了短信在多数情况下可以安全到 达目标,即使目标用户的手机关机或不在服务区也可以发送短信。发 送的短信首先到达短信中心,短信中心收到后,检查目标手机能否接 收短信,如果关机或者不在服务区就保存短信,等待目标手机再次向 网络注册时,短信中心就将短信发送给它。这种机制使得用户可以在 任何时候方便地发送短信,而不必担心目标用户当时能否接收,这也 是短信优越于寻呼业务之处。当然,短信中心不可能具有无限的存储 能力,所以短信也有一定的保存期限,当用户长时间不能接收时,这 条短信就被删除,不再发送。短信保存期限由短信中心设定,一般为 一周。 2 覆盖面广:短信和话音是同网传送的,所以无线网络的覆盖范 围就是短信的覆盖范围,凡是能打移动电话的地方均可收发短信。 3 费用低廉:短信的收费是按条计费的,而且一条的费用低于一 分钟的电话费,这使得在信息量较少时短信相对于电话有定的成本 优势。很多情况下,一两句话可以说清楚的事情,就可以通过短信而 不是电话来解决。而且短信自动漫游,不收取漫游费。 4 非强迫式接收:固定电话是强迫接收的方式,不接听就不知道 电话内容,短信与之不同,手机自动接收短信并保存在s i m 卡中,提 醒用户查看,用户可以自由选择查看的时间,总之,非强迫式的接收 方式给用户以自主权。 第2 页 北京变通大学硕士论文短信增值业务管理平台的设计研究 5 速度较快:一般情况下,从用户发送到对方接收到短信的时间 约是5 1 5 秒,实际中由于短信中心的处理能力和信号情况,时间会有 少许变化,但如果对方关机或不在服务区的话,要等到对方重新向网 络注册才能收到,这种情况下的延迟就不能预测了。 此外,短信的缺点包括信息容量低、信息表现形式单一等。 短信业务是无线网络提供给用户的一种有别于语音传输的通讯业 务。短信业务主要包括小区广播短信业务与点到点短信业务两种形式。 小区广播短信业务是通过基站向特定区域中所有短信终端设备发送短 信的业务;点到点短信业务是指短信实体( s m e :s h o r tm e s s a g e e n t i t y ) 之间通过短信中心( s m s c ) 进行短信收发的业务。 目前,服务提供商提供给用户的短信业务主要包括:简单信息查 询服务、信息点播、交易服务、因特网服务、寻呼服务、语音服务、 针对移动电话的个性化服务、个人信息存储服务以及一些其它的扩展 服务等h 。 1 2 短信增值业务的发展趋势 从2 0 0 0 年开始,短信增值业务正式进入了电信市场。国内短信增 值业务的发展主要经历了探索、发展、逐渐成熟的三个阶段。探索阶 段主要是发生在2 0 0 0 年底至2 0 0 2 年中期这段时间,中国短信增值业 务市场的序幕被逐渐拉开,仅有少部分的服务商参与其中,推出的业 务种类也非常 樽槌伞 讯模块包括与短信中心建立连接、与短信中心进行信息交互,同时对 连接状态进行监控,确保连接一直存在。编码与解析模块负责对从短 信中心获取的短信数据进行解摧鞲韭0必醵冀燮龋留鲋翳熟朝臻驯剿;引硪野酬鼎掣娶翻裂副霆 北京交通大学母l 士论文短信增值业务管理平台的设计研究 服务来说比较低廉,因此短信增值业务与其它增值业务相比较,具有 相当的优越性。 短信增值业务的规模随着社会需要不断发展壮大,提供更多更好 的短信增值服务成为手机用户对服务提供商的要求。能有效满足消费 者的需求、提供个性化的服务且具有较强交互性的增值业务会成为市 场的亮点”。 1 3 短信业务系统 短信业务系统由短信中心、扩展短信实体( e x t e n d e ds h o n m e s s a g ee n t i t y ,e s m e ) 和信息数据库组成。手机用户通过收发短信 参与到系统中。业务系统的核心是短信中心,它是短信的中转站,存 储转发覆盖范围内的所有短信。短信中心本身是运行在服务器上的一 个数据库应用程序,其核心进程担负着通过7 号信令与移动交换机连 接并发送接收短信底层编码的任务”。扩展短信实体可以从短信中心 获取短信并对其进行相应处理,信息数据库则用于保存e s m e 获取的 短信数据和对数据处理的结果。短信中心通过短信端到端协议( s h o n m e s 船g ep e e rt op c e r ,s m p p ) 与扩展短信实体进行交互,实现存储转 s h o nm e s 船g ep e e rt o p c e r ,s m p p ) 与扩展短信实体进行交互,实现存储转发短信的 功能。研究和设计由扩展短信实体和信息数据库组成的短信增值业务 管理平台是本课题要做的主要工作。1 4 研究的主要内容和所做的工作本课题对短信业务系统进行了分析,对短信传输的各个协议进行 了详细的分析和讨论,提出了一个短信增值业务管理平台的设计方案。 北京交通大学硕i :论文短信增值业务管理平台的设计研究 和信息数据库( 如图1 1 所示) 。e s m e 通过有线网与短信中心相连, 从而为手机用户提供增值服务,手机用户与e s m e 之问的短信通信通 过短信中心实现。短信中心存储转发短信,为e s m e 提供短信接收和 发送服务;e s m e 将接收到的短信进行解析并根据业务种类依照相应 规则进行数据处理。e s m e 接收到的短信数据和处理结果被存储在信 息数据库中。 本平台具有处理多种不同业务类型的短信数据的能力,同时具有 扩展接口,可以根据需要处理更多业务类型的数据,为手机用户提供 丰富多彩的短信增值服务。 圈1 1 短信增值业务管理平台 1 5 本文的组织结构 基于上述内容,各章内容安排如下: 第一章介绍了短信增值业务相关的内容,以及本研究所做的主要 工作。 第二章介绍了短信增值业务管理平台的整体功能,依照功能将平 台分为几个模块,每个模块实现一些功能。 第s 负 北京变通 学硕i j 论文短竹增值业务管理平台的设计研究 第:章分析了平台与短信中心的通信结构,根据实际要求选掸运 输层和应用层i :的传输协议利用多线程技术建立并实现平台与短信 中心的实时数据通信,并对s m p p 连接状态进行监控。 第四章分析了s m p p 协议定义的数据单元格式,给出了两种实现 解析编码的方式。 第“章实现了短信数据的处理。平台对接收到的短信数据进行解 析后,按照业务种类的不同分给不同的线程处理,然后将数据存档至 信息数据库。 第六章介绍了数据库技术的一些相关内容,依照规范设计法的基 本思想按照需求分析、概念和逻辑设计及体系结构设计三个阶段设 计了数据库。 第七章是对全文的总结。 1 6 短信增值业务相关的缩略语 s m p ps h o nm e s s a g ep e e r t o p e c f 短信端到端( 协议) e s m ee x t e m a ls h o r tm e s s a g ce n t i t y 扩展短信实体 s m s cs h o nm e s s a g es e r v i c cc e n t e f 短信中心 t c p t r a n s m i s s i o nc o n t t o lp t o c o l传输控制协议 i pi n t e m e tp r o t o c o l 网间互联协议 第6 负 北衷交通大学磺j j 论文短信增值业务管理平台的设计研究 第三章短信增值业务管理平台与短信中心通 信的实现 3 1 通讯模块的结构 短信增值业务管理平台与短信中心的通信是建立在两者之间的可 靠的信息传递基础上的嗍删。基于t c 跏p 协议的互联网为二者提供了基 本的通信架构,短信增值业务管理平台通过它来实时获取手机用户的 数据信息并与手机用户进行互动。本研究中,平台与短信中心之间的 通讯采用了客户朋务器模,平台为客户机,短信中心为服务器。平台 中的e s m e 负责与短信中心建立连接以及对连接状态进行监控,它通 过可靠的连接从短信中心获耿短信或者通过短信中心向外发出短信, 如图3 1 所示。 e 铷e短信巾心 国鱼圃 图3 1 平台与短信中心的通信实现 第1 l 页 北京交通大学硕士论空舞信增值业务管理,f 台的设计研究 这个确认不是立即发送,通常将推迟几分之一秒。 4 t c p 将保持它首部和数据的检验和。这是一个端到端的检验 和,目的是检测数据在传输过程中的任何变化。如果收到的报 文段的检验和有差错,t c p 将丢弃这个报文段和不确认收到此 报文段( 希望发端超时并重发) 。 5 t c p 将对收到的数掘进行重新排序,将收到的数据以i f 确的顺 序交给应用程序。 6 t c p 的接收端会丢弃重复的数据。 7 t c p 能提供流量控制。t c p 连接的每一方都有固定大小的缓冲 空间。t c p 的接收端只允许另一端发送接收端缓冲区所能接纳 的数据。这将防止较快主机致使较慢主机的缓冲区溢出。 t c p 协议中,运输层提供了高可靠性的端到端的通信,因此应用 层可以忽略所有这些细节。 与面向连接的通讯相对的是无连接的用户数据报协议( u s e r d a t a 舭mp r o t o c o l ,u d p ) ,它允许应用程序在任何时候向若干个目标 发送数据,接收来自若干个源的数据。许多基于u d p 的应用程序在高 可靠性、低延迟的局域网上运行很好,而一旦到了通信子网q o s 很低 的网间环境,可能根本不能运行。此外,来自不同源的差不多同时到 达的数据将由u d p 自动排队,接收到的u d p 数据报以其接收顺序交 给应用程序,因此由排队溢出造成内核中的u d p 模块丢弃数据报的可 能性是存在的。总之,u d p 没有提供确认机制来保证数据的可靠传输, 应用程序之问传送的信息可能会丢失、重复、延迟或者顺序错乱。在 使用无连接传输协议时,发送方的应用程序必须指明信息发向的目的 地。u d p 协议为应用层提供的是非常简单的服务,适合于一次传输小 量数据,任何必须的可靠性则由应用层来提供。 在e s m e 与短信中心之间,当使用t c p 协议时,经过初始的连接 建立和认证过程,两者就可以在这个虚连接上进行大量的数据交互, 第j 4 负 北京交通大学硕士论文短信增值业务管理乎台的设计研究 并不用担心数据、数据包顺序等是否可靠。但u d p 协议不保证数据包 按序可靠的发送与接收。 因此,在e s m e 与短信中心之间采用t c p 协议来进行数据传输。 t c p i p 协议软件驻留在计算机的操作系统中,只要使用t c 跏p 通信,就必须与操作系统交互并请求其服务”。操作系统定义了应用 程序与协议之间的接口,即应用程序接口a p l ( a p p l i c a t i o np r o g r a m i n t e f f a c e ) 。美国加州大学伯克利分校为b c r k e l e yu n i x 操作系统定义 了一种a p i ,它定义两台计算机间进行通信的规范( 也是一种编程规 范) ,如果说两台计算机是利用一个“通道”的两端就是两个套接字o ”。 套接字屏蔽了底层通信软件和具体操作的差异,使得任何两台安装了 t c p 协议软件和实现了套接字规范的计算机之间的通信成为可能。对 于应用程序来说它就象一个服务协议插座一样,各种不同的协议对应 不同的端口。套接口是应用程序通信的基石,一个套接口是通信的一 端,在这一端上可以找到与其对应的一个名字。一个正在被使用的套 接口都有其类型和与其相关的进程,套接口存在于通信域( 通信域是 为了处理一般的线程,通过套接口通信而引进的一种抽象概念) 中。 套接口通常和同一个域中的套接口交换数 x 北京交通人学坝士论文 娥竹增值业务管理平台的设计研宄 商了平台的运行效率,义提高了平台的稳定性。 3 4 连接的建立 幽3 4 使用多线程技术 短信增值业务管理平台中的e s m e 负责与短信中心进行通信,而 两者通信的必要条件就是要求在通信双方之间建立连接。在本研究中, e s m e 与短信中心的连接要求两者在运输层和应用层分别实现连接”。 3 4 1 t c p 连接的实现 本研究中,我们选用了微软公司制定的w i n d o w ss o c k e t 规范来实 现t c p 连接。 w i n d o w ss o c k e t 是应用程序进程间的通信端点1 。计算机( 可能 是同一台计算机或者是网络上的不同的计算机) 的两个进程可以分别 建立套接字s o c k e t ,经过连接后,应用程序的两个进程问就可以建立 相互交换数据的关系。s o c k e i 出3 个部分组成”1 。如下: 旃1 8 顶 北京交通大学硬二论文短侬增值业务管理j f 台的设计研究 1 s o c k e l 的l p 地址:互联网【二的每个接口必须有。个唯一的 i n t e m e t 地址,用于确定通信目标的计算机地址。 2 s o c k e t 的通信端口号:网络中可以被命名和寻址的通信端口是 操作系统可分配的一种资源,用于标识通信中的目标计算机 的应用程序进程。 3 s 0 c k e t 的类型:套接口可以根据通信的不同性质分为流式套接 口、数据报套接口以及原始套接口等三种类型。应用程序 般仅在同一类型的套接口间进行通信。目前,用户可以使用 两种套接口,即流式套接口和数据报套接口。 由于我们选用的是t c p 连接协议,所以在这里我们选择的s o c k e t 的类型是流式套接口。 在本研究中,短信中心首先启动,通过调用s o c k e t ( ) 建立一个 套接口,然后调用b i n d ( ) 将该套接口和本地网络地址联系在一起, 再调用u s t e n ( ) 使套接口做好侦听的准备,并规定其请求队列的长 度,之后就调用a c c e p t ( ) 来建立接收连接。平台启动后,e s m e 通 过调用s o c k e t ( ) 建立一个套接口,然后调用b j n d ( ) 将该套接口和 本地网络地址联系在一起,接着调用c o n n e c t ( ) 向短信中心的监视端 口发出连接请求。短信中心进程监视到此请求后就受理此连接。此时, e s m e 和短信中心进程双方可以通过调用r e c v ( ) 和s e n d ( ) 从这两 个端口来发送和接收数据。最后短信数据传送结束后e s m e 和短信中 心调用c l o s e s o c k e t ( ) 关闭套接口,停止双方之间的通信。图3 5 显 示了e s m e 与短信中心之间建立连接以及中止连接的过程。 e s m e 与短信中心在运输层建立连接后,就可以相互i ;自j 通信,继 而在应用层上建立s m p p 连接。 第1 9 负 北京交通人学颂士论史:j j l l 信增值业务管理平台的设计研究 埘情中一c l 型! ! 。c ! e ! 垡兰塑苎! 竺! ! ! ! 瞿旦s 。! 坚ij 渊川b j n d ( ) 将s o c k e t 与奉地地址绑存越 j 调川l i s t e n ( ) 通知t c p 般务器准蔷虾 e s 艇: 1 谢j | m c e p 接收敛据得到短信臌务插口i插口“h “矬”蕊竽“返l i i | 5 0 “c k e t 并返l i i | s 。c k e t 阻塞等待数据一一一。测川c o n n e c t ( ) 与短信中心连接 i l 嘲朋r e c v ( ) s e n d ( ) 在短信 l1 调,f j r e c v ( ) s e n d ( ) 在短信 服务捕口上读写敷据 广_ 1服务插口l :写读数据 上j 调c l o s e s o c k e t ( ) 关闭短信服务插口 调f | j c l o s e s o c k e t ( ) 关闭最扔 的瓶情般务捕口 + 调用c l o s e s o c k e t f ) 关闭最初的s o c k e t 图3 5 平台与短信中心建立连接及终f 连接 3 4 2s m p p 连接的建立 s m p p 协议运行在底层通讯协议( t c p ip x 2 5 ) 上,它定义了短 信中心s m s c 和扩展短信实体e s m e 之间的请求响应协议数据单元 ( p d u ) 。在s m s c 和e s m e 之间的一个s m p p 会话首先是有e s m e 发起并连接到s m s c 的一个指定的网络端口,通过向该端口发出个 s m p p 的b i n d 请求来打开一个s m p p 的会话过程”。 在s m p p 会话中,e s m e 可以向s m s c 发送一系列的请求,并顺 序的等待相应的应答信息。同样,s m s c 也第至矗翌藤瑟= x 北京交通大学硕士论文 短信增值业务管理甲台的设计研究 的请求。 b o u n dt x :( 建立一个发送的连接) 一个连接的e s m e 向s m s c 发送一个b i n d 的请求,并通过发送一 个b i n d j r a n s m j t t e r 的数据包,声明要建立一个发送的连接,在s m s c 进行认证后返回一个同意连接的应答。一个e s m e 以一个发送者的身 份与s m s c 建立连接后,就可以通过s m s c 向移动设备或其他的e s m e 发送信息,也可以向s m s c 查询、替换或取消以前发送的短信。 b o u n dr x :( 建立一个接收的连接) 一个连接的e s m e 向s m s c 发送一个b j n d 的请求,并通过发送一 个b i n d - d e c e i v e r 的数据包,声明要建立一个接收的连接,在s m s c 进 行认证后返回一个同意连接的应答,一个e s m e 以接收者的身份与 s m s c 建立连接后,可以接收由移动设备、s m s c 或其他e s m e 发起 的短信请求。 b o u n dt r x :( 建立一个收发的连接) 一个连接的e s m e 向s m s c 发送一个b j n d 的请求,并通过发送一 个b i n d j m n s c c i v e f 的数据包声明要建立一个收发的连接,在s m s c 进 行认证后返回一个同意连接的应答。当一个e s m e 以一个收发的身份 与s m s c 建立连接后,它可以支持发送e s m e 和接收m e 的全部功能。 因此一个收发e s m e ,既可以向s m s c 发送请求,也可以接收由移动设 备、s m s c 或其他e s m e 发起的短信请求。 c l o s e d :( 关闭连接) 一个e s m e 与s 磺眺唠饽混傧珞佬亡腿澜骷诰蟬t i w 薹| 雯 兽;泞 定并断开网络的连接,s m s c 也同样 与esme断开绑定和网络的连接。s m p p 也可以通过s m s c 向 e s m e 发送一个信号,促使e s m e 发 北京交通大学硕士论文矧信增值业务管理平台的设计研究 急的信息需要与e s m e 进行通讯,而e s m e 又没有与s m s c 建立会话 的时候得到应用。一旦建立这种s m p p 会话,e s m e 发送的是接受方 式的b i n d 请求,出s m s c 给出应答,即s m s c 必须是发送方,e s m e 必须是接收方,如果e s m e 不接受这种出s m s c 发起的会话方式, e s m e 可以断开与s m s c 的网络连接。 s m p p 协议中规定如果e s m e 既想向s m s c 发送消息,又想从 s m s c 接收消息,e s m e 需要与s m s c 之间建立两个s m p p 会话,即 b o u n d x 和b o u n d r x 。 所以,在本研究中,我们采用了b 0 u n dt x 和b o u n dr x 两 种会话。因为短信增值业务管理平台不仅需要实时从短信中心获取手 机用户发送的短信数据,还可能根据业务规则对手机用户给出反馈信 息,平台需要e s m e 与短信中心之间实现全双工通信。 s m p p 协议中规定了用于建立连接和传送数据的重要消息: b i n d :b i n d 消息是在网络连接建立之后,e s m e 发出的第一个消息, 利用该消息建立一个s m p p 会话。e s m e 必须在该消息的消息体中的 些字段填上适当的值( 如s m s c 提供的用户名,密码,以及系统类 型等) ,用于s m s c 对该连接的合法性进行鉴权。如果通过鉴权,则 e s m e 在s m s c 上注册成功,s m p p 会话建立随后,可以在该会话过 程中进行短信数据的交换。 u n b i n d :当b s m e 或s m s c 想撤销一个s m p p 会话时发送u n b i n d 消息。 o u t b i n d :当s m s c 有短信要发向e s m e ,而此时又没有建立s m p p 会话时,s m s c 发送o u t b i n d 消息通知e s m e 发送b i n dt e c c i v e f 消 息,建立s m p p 会话。 g e n e r i c - n a c k :当s m p p 会话中的一方发现对方发送过来的消息的 第2 2 北京交通人学顼:l :论文矩侑增值业务管理平白的设计研究 消息头有误( 消息长度错误,或者c o m m a n d ;d 不可识别) 时必须返 回g e n e r j t n a c k ,并在c o m m a n ds t a t u s 域指出错误原因。 s u b m i ts m :当e s m e 要向s m s c 发送一条短信时,用s u b m i ts m 操作完成。 d e l i v e rs m :当s m s c 要向e s m e 发送一条短信时,用d e i i v e rs m 操作完成。 d a t 4 j m :既可用于e s m e 向s m s c 发送短信,又可用于s m s c 向e s m e 发送短信。 q u e r y _ s m :用于e s m e 向s m s c 查询先前提交给s m s c 的短信的 状态。 c 柚c e l _ s m :用于e s m e 取消先前提交给s m s c 还没有发送出去的 短信。 陀p l a c e - s m :用于e s m e 替换先前提交给s m s c 还没有发送出去 的短信。 e s m e 与短信中心之间s m p p 连接的建立和终止如图3 6 。因为短 信增值业务管理平台具有对多种短信业务的管理能力,所以在e s m e 发送b i n d 消息时,必须在b i n d 消息的消息体中的一些字段填上短信中 心提供的多个用户名和密码,用于短信中心对该连接的合法性进行鉴 权,通过鉴权后,二者建立了s m p p 连接,可以进行会话。 第2 3 负 北京交通大学颤l :论史短侬增值业势管理,f 赍的 5 计研究 3 6 数据的接收和发送 由于s m p p 是基于t c p 的应用层协议,而t c p 数据是面向连接的 字节流,足无结构的。也就是说,一个完整的多字节的结构体,只要 保证字节流的先后顺序,可以拆丌分别发送。在实际应用中,为了方 便和高效起见,最好以完整包的形式发送数据,但是必须允许按序分 别发送的形式。为了处理这种流式结构数据,当数据到来时,根据协 议规定的数据包的格式进行数据完整性检验,得到完整结构的数据, 然后对数据做进一步的处理。对于不完整的数据,就需要暂时保存, 等待后续数据的到来,直到得到完整的数据为止。 在研究中,网络上的短信字节流通过s 0 c k e t 接收到e s m e 上后, 按照s m p p 协议对其进行解析,提取平台需要的相关信息,并将该信 息整理成一个信息单元。这些信息单元需要被保存起来以备业务分析 模块处理。信息接收任务由一个线程完成,业务分析任务由另外一个 线程完成。也就是说,在系统运行过程中将会有两个线程对信息单元 进行操作。我们采用环形队列来保存这些等待处理的信息单元,并且 采用了两个信号量对象来同步线程问对信息单元的操作。 采用环形队列的优点在于: 1 _ 所有信息保存在系统的内存中,便于反复的存取操作,有利于提高 系统的运行速度: 2 经过处理后的单元空间可以直接重复利用,不需要重新进行内存分 配。这样既可以通过重复利用单元空阳j 节约有限的内存资源,而且 由于不需要重新分配内存,也一定程度上有利于提高系统的运行速 度。 第2 5 负 北京交通大学硕士论文短信增值业务管理平台的设计研究 图3 7 环形队列结构图 环形队列的结构如图3 7 所示,它由一系列的单元按照环形排列 组成。所有单元的内存空间在队列生成的时候进行分配,一旦分配完 成就可以反复使用而无需再次分配。直到系统退出时,环形队列才释 放所有的内存空间。环形队列只允许在它的首尾两端访问信息单元, 环形队列中的信息单元的存放、处理和删除的顺序跟信息接收时的顺 序一致。新的信息单元只能加在队列的尾部( t a i l ) ,新的单元加入后, 队列尾部指针随之加1 ;而处理信息单元时,则是从队列的首部( h e a d ) 开始提取信息单元,当处理完毕一个信息单元后,队列的首部指针也 随之加1 。 在本系统中,接收线程和业务分析线程分别要对环形队列进行操 作,需要对两个线程的操作进行必要的同步。多线程同步技术既可以 协调两个程序的操作过程,防止可能出现异常情况,又可以在一定程 度上提高系统的运行效率。比如,当环形队列已经填满时,接收线程 就应该暂停等待,如果此时接收线程继续接收信息并加入到环形队列 中,则必然会导致异常情况:同样道理,当环形队列为空时,业务分 第2 6 页 北京交通大学硕1 :论文筻i 信增值业务管理f 台的设计础究 析线程就需要等待;还有可能两个线程在同时| i | j 对同一要素进行操 作而导致异常情况。对于接收线程,当环形队列已经填满时,如果不 采月j 线程同步技术,则它只能进入循环“等待一查询”状态,等待过 程中要不断查询环形队列的状态,如果队列中有空的单元空间,则跳 出循环,继续接收数据。这种“等待一查询”的方式效率很低。如果 采用线程同步技术,在这种情况下,该线程将自动阻塞挂起,不占用 任何系统资源,而一旦环形队列中出现可用空间,操作系统将负责激 活该线程继续工作。因而其运行效率要远高于循环“等待一查询”模 式。 信号量( s e m a p h o r c ) 是广泛应用于各类操作系统上的进程、线程 同步对象,w i n d o w s 操作系统中也支持信号量。并把它作为一种核心 对象由操作系统统一管理,因而操作系统可以通过信号量实现对进程 和线程的调度与控制”“。信号量被设计用来标识在某一时刻,某种有 限的资源有多少处于可用的状态。每个信号量在创建时就拥有两个属 性,一个是该有限资源的总量( 个数) ,另一个是该有限资源的可用量 ( 个数) 。任何使用该有限资源的线程在使用资源之前都要通过操作系 统( 查看信号量中可用资源的个数) 来判断当前是否有可用的资源。 如果有,则该线程将获得一份资源并继续运行,同时,操作系统会把 该资源信号量的可用量减1 。如果没有可用的资源,即信号量标识的 资源的可用量为o ,则操作系统将负责把该线程挂起,直到有可用资 源时,操作系统再将其激活。 研究中定义了使用了两个信号量s e m a p h o r e b u a v a i l a b l e 和 s e m a p h o r e b u f u s e d 来分别标识环形队列中的未用空间和已用空i i i j 。环 形队列中未用空间标识环形队列中仍可接收一些信息单元,接收线程 可以往队列晕添加信息单元。环形队列的已用空间则表示已经有一些 篱”砸 北京交通大学硪上论文 短债增值业务管理平台的 5 计研究 信息单元保存在队列中,业务分析线程可以用来分析处理。接收线程 接收到网络的来的字节流后,先将字节流进行解析,提取业务分析所 需的信息,并将这些信息封装成固定格式和大小的信息单元。然后, 接收线程向操作系统查询s e m a p h o r c b u f a v a j l a b e 以判断环形队列中是 否有可用的单元空间。如果有,则接收线程将获取一个单元空问,同 时操作系统将会将s e m a p h o r c b u a v a i l a b l e 标识的可用单元空问数量减 1 。然后接收线程将信息单元置入单元空间中。如果此时没有可用的单 元空间,则操作系统将接收线程挂起,直到s e m a p h o f e b u a v a i l a b e 中 有了可用的单元空间再将其激活。 幽3 8 短信的接收过程 短信的接收过程如图3 8 所示。短信的发送过程和信息的接收过 程类似。采用了一个环状队列来保存等待发送的处理结果。短信数据 处理线程将需要发送的信息存入环状队列中,发送线程负责将队列中 的信息发送出去。为了同步两个线程对环状队列的操作,避免两个线 程出现访问冲突,定义了两个信号量核心对象来标识环状队列的状态。 只有当环状队列中有可用的存储空间时,短信数据处理线程才能将要 发送的信息加入到队列中,否则该线程将暂时被挂起( s u s p e n d e d ) , 直到环状队列中有可用空问后才能被系统激活。同样,只要当环状队 列中存在需要发送的信息,发送线程就会不断地去提取信息并将他们 第2 8 砸 北京交通大学顶i :论文短佶增值业务管理平台的设计研究 发送 i j 去。如果环状队列中没有信息可发送时,该线程将被挂起。当 操作系统发现队列中又有了信息时,就会将发送线程激活。 3 7 本章小结 本章介绍了短信增值业务管理平台与短信中心通讯模块的客户端, 服务器模式结构,在综合比较之后,从t c p 和u d p 两种传输协议中 选择了面向对象的t c p 连接。在t c p 连接之上,依照短信端到端 ( s m p p ) 协议建立应用层连接,进行数据的传送和接收,并对连接状 态进行监控,保证s m p p 连接的存在。同时,本章中介绍采用了多线 程技术,使得平台可以同时应对多个事件状态并进行相应处理。 第2 9 负 北束交通太学碗二l 论文 短信增值业务管理甲台的设计研究 第四章短信数据的解析与编码 短信增值业务管理平台与短信业务巾心的连接建立起来后,二者 依照s m p p 协议定义的协议数据单元( p d u ) 格式进行通信。因此, 二者必须对要通信的短信数据进行编码和解析。 4 1s m p p 协议数据单元 s m p p 协议数据单元小数撩单元首部和主体组成,其中主体是可 选的”。协议数据单元首部由c o m m a n dl e n g l h ,c o m m di d ,m m d s t 甜u s 和s e q u e n c en u m b e r 四部分组成,每部分长4 个字节,数搦类型 为整数型,主体数据类型为混台型( 即整数型、字节串型、十进制字 符串型、时问字符串等类型) ,长度是可变的。 消息头的具体字段描述如下: c o m m a n dl e n g t h :整个包的长度( 包括该字段本身) 。 c o m m a n di d :这个字段表明该条短信的类型,相当于标识符。例 如e s m e s u b s m 表示此消息为e s m e 向s m s c 提交短信。当该标 识符表示该条消息是请求消息( r e q u t ) 时,标识符的保留取值范围 是0 踟1 0 0 0 0 0 0 h 到0 8 0 0 0 0 0 f f h 。一般来说,应答消息的类型在第3 1 位 比特处是置位的。 比特处是置位的。 取值说明: f c 。m m a n d i 。编码c o m m a n dl d描述( b m m a n d l d 取值 ie s m e b n d r c v b j n dr e c b i v e fe s m e 要求0 x 0 0 0 0 0 0 第3 0 皿 望堡i 燮堂璺圭笙苎 ! 塑望篁些笠壁墨:! 鱼塑塑生竺塞 以连接者身 0 i 份连接到 s m s c e s m e b n d r c v 二r e s pb i n d j c e i v e l r e s pe s m e 要求 0 x 8 0 0 0 0 0 以接收者身 0 1 份连接到 s m s c e s m e b n d 限nb i n d t r a n s m i t t 盯e s m e 要求 o x 0 0 0 ( ) 0 i o 以发送者身 0 2 份连接到 s m s c e s m e b n d l r n r e s pb i n d j t a n s m i l t e r _ r b i n dt r a n s mo x 8 0 ( ) 0 0 0 e s p i n e r 的响应 0 2 e s m e u b d u n b i n de s m e 要求o x 0 0 ( ) o o o 断开与 0 6 s m s c 的连 接 e s m e u b n r e s pu n b i n d 删叩 u n b i n d 的响 o x 8 0 0 0 0 0 碰0 6 e s m e s u b _ s m s u b m i ts me s m e 提交 ( 0 0 0 0 0 0 短信到 0 4 s m s c e s m e i s u b - _ s m r e s ps u b m i l s m r c s p s u b m i ts mo x 8 0 。0 d d 的响应 0 4 e s m e d e u v e r j m d e l i v e fs m s m s c 下发 o x 0 1 ) 0 0 0 0 第3 l 页 北京交通人学颀七论史 艇信增值业务管理平台的设计研究 短信到0 5 e s m e e s m e d e l i v e r s m ld e i i v e r s m r e s p d e i i v e rs mo x 8 0 0 0 0 0 r e s p 的响应 0 5 e s m e q r y l i n k e n q u i r e j i n k e s m e 询问o x 0 0 0 0 0 0 与s m s c 的 1 5 连接情况 e s m e q r y l i n k r e se n q u i r e j i n i 【r e s pe n q u i r c j i n 0 x 8 0 0 0 0 0 p k 的响应 1 5 e s m e n a c k n a c k 表示消息头 o x 8 0 ( ) o o o 有错误的响 0 0 应 c o m m a i l ds t a t u s :此字段表示一个请求消息的成功与失败,如失 致,指示引起失败的错误类型等信息。该字段只用在应答消 息中,在请求消息中,该字段必须为n u l l 。 s e q u e n c en o ,:此字段表示消息的序列号,它由e s m e 产生,它是 消息和它的应答之间的对应标志,数值在0 l h 到0 7 f f f f f f f h 闻。对 于每条请求消息,该字段必须保证严格单调的递增。 0 p t j o n a lm e s s a g eb o d y :此字段表示短信的消息体部分 鼯n e r i cn a k 命令
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 保健食品品牌国际化推广创新创业项目商业计划书
- 教师招聘之《小学教师招聘》能力提升题库含答案详解(综合题)
- 教师招聘之《小学教师招聘》模拟考试高能含答案详解(a卷)
- 教师招聘之《小学教师招聘》练习题库含答案详解(达标题)
- 2025年教师招聘之《幼儿教师招聘》考前冲刺测试卷带答案详解(考试直接用)
- 教师招聘之《小学教师招聘》模拟考试高能及完整答案详解【历年真题】
- 2025年轻生社会测试题及答案
- 2025年辽宁警务辅助人员招聘考试(申论)历年参考题库含答案详解
- 2025江苏盐城市文化广电和旅游局直属单位招录政府购买服务用工5人笔试备考题库及答案解析
- 民法典第679条条文及劳动合同解除争议处理规范
- 公司技术成果归属协议书
- 公司利益分成协议书
- 2025-2030年吸尘器行业市场现状供需分析及投资评估规划分析研究报告
- 行测资料5000题题库
- 铁路退休人员乘车优惠政策
- 人工智能导论课件 第十三章 类脑智能
- 广西壮族自治区自然保护地 整合优化方案
- (高清版)DB5134∕T 15.1-2021 康养中心建设与管理规范 第1部分:建设要求
- 光伏发电合作合同协议书8篇
- 湖北省十一校2025届高三第二次数学联考及答案
- GB/T 20424-2025重有色金属精矿产品中有害元素的限量规范
评论
0/150
提交评论