陳昉
【摘要】 在標(biāo)準(zhǔn)協(xié)議的支持下,接口系統(tǒng)接入各地市的移動(dòng)短信網(wǎng)關(guān),從而建立了一條各移動(dòng)的短信網(wǎng)關(guān)與短信平臺(tái)之間的信息傳輸通道,該通道的建立實(shí)現(xiàn)了短信的流量控制和存儲(chǔ)轉(zhuǎn)發(fā),除此之外,接口系統(tǒng)要保證與移動(dòng)短信網(wǎng)關(guān)之間建立的通信聯(lián)接穩(wěn)定可靠,遇到錯(cuò)誤能夠?qū)崿F(xiàn)重建聯(lián)接,并且在聯(lián)接終端情況發(fā)生時(shí)停止提交短信。
【關(guān)鍵字】 氣象 短信 網(wǎng)關(guān)接口 CMPP協(xié)議
一、CMPP協(xié)議概述
CMPP(China Mobile Peer to Peer)協(xié)議即中國(guó)移動(dòng)點(diǎn)對(duì)點(diǎn)協(xié)議,是中國(guó)移動(dòng)通信互聯(lián)短信網(wǎng)關(guān)接口協(xié)議。
CMPP主要提供兩類操作:短信發(fā)送和短信接收。對(duì)于短信發(fā)送功能需要前轉(zhuǎn)的MO操作主要可分為八步:(1)源ISMG接受手機(jī)發(fā)出的數(shù)據(jù)請(qǐng)求;(2)源ISMG返回響應(yīng);(3)源ISMG在本地?zé)o法查詢到要連接的SP,向GNS即匯接網(wǎng)關(guān)發(fā)送路由請(qǐng)求信息;(4)GNS返回路由信息;(5)源ISMG根據(jù)GNS返回的路由信息將請(qǐng)求前轉(zhuǎn)給目的ISMG;(6)目的ISMG返回響應(yīng);(7)目的ISMG將請(qǐng)求信息送往SP;(8)SP返回響應(yīng)。隨后,SP返回響應(yīng)被目的ISMG接收到后會(huì)生成MO狀態(tài)報(bào)告發(fā)送至源ISMG。而以上所述八個(gè)步驟中三至八步驟皆使用CMPP協(xié)議。
短信接收與短信發(fā)送是逆向的,也可分為八個(gè)步驟:(1)源ISMG接收SP發(fā)出的數(shù)據(jù)請(qǐng)求;(2)源ISMG返回響應(yīng);(3)源ISMG在本地?cái)?shù)據(jù)庫(kù)中無(wú)法找到目標(biāo)手機(jī)號(hào)段對(duì)應(yīng)的網(wǎng)關(guān)代碼便向GNS發(fā)送路由請(qǐng)求信息;(4)匯接網(wǎng)關(guān)返回路由信息;(5)根據(jù)路由信息,源ISMG將請(qǐng)求前轉(zhuǎn)給目的ISMG;(6)目的ISMG返回響應(yīng);(7)目的ISMG將請(qǐng)求信息發(fā)送給SMC;(8)SMC返回響應(yīng)給目的ISMG。而對(duì)于以上短信接收的八個(gè)步驟,步驟一至六皆使用CMPP協(xié)議。
二、網(wǎng)關(guān)接口系統(tǒng)
一系列邏輯通信機(jī)組成了網(wǎng)關(guān)接口層,接口層接入各地市的移動(dòng)短信網(wǎng)關(guān),建立一條各移動(dòng)的短信網(wǎng)關(guān)與短信平臺(tái)之間的信息傳輸通道,實(shí)現(xiàn)短信的流量控制和存儲(chǔ)轉(zhuǎn)發(fā)。通信接口層接收到業(yè)務(wù)層群發(fā)服務(wù)器提交的需要下發(fā)的短信,并將短信發(fā)送至移動(dòng)的短信網(wǎng)關(guān),再經(jīng)由移動(dòng)短信網(wǎng)關(guān)向用戶發(fā)送短信。通信接口層接收移動(dòng)的省短信網(wǎng)關(guān)匯集的全省移動(dòng)用戶發(fā)送的短信,再轉(zhuǎn)發(fā)到業(yè)務(wù)邏輯層應(yīng)用服務(wù)器進(jìn)行邏輯處理。
2.1流量控制算法
網(wǎng)關(guān)發(fā)送的流量控制直接影響到發(fā)送的成功率和發(fā)送速率,SP的發(fā)送流量會(huì)受到運(yùn)營(yíng)商網(wǎng)關(guān)一端資源、處理能力以及短信中心承載能力等因素的限制。若要使資源得到充分利用,以最快速度完成發(fā)送任務(wù),則SP一端需要保持發(fā)送速率小于等于運(yùn)營(yíng)商分配的流量。控制方法可分為三步:①在每個(gè)連接上設(shè)立發(fā)送計(jì)數(shù)器,按照設(shè)定好的時(shí)間粒度在間隔時(shí)間內(nèi)統(tǒng)計(jì)短信條數(shù),計(jì)數(shù)器達(dá)到分配的流量則暫停發(fā)送,下一個(gè)時(shí)間間隔開(kāi)始后重新啟動(dòng)發(fā)送過(guò)程。②在發(fā)送失敗率提高時(shí)將發(fā)送速率適當(dāng)向下微調(diào)。③發(fā)送速率低于下限值關(guān)閉當(dāng)前連接重新建立新連接。
2.2網(wǎng)關(guān)發(fā)送加速過(guò)程
本文采用以下三種措施解決網(wǎng)關(guān)發(fā)送速度慢的問(wèn)題:①動(dòng)態(tài)配置協(xié)議模塊。每個(gè)協(xié)議處理模塊皆可根據(jù)網(wǎng)關(guān)分配的流量來(lái)工作,一個(gè)運(yùn)營(yíng)商網(wǎng)關(guān)可以承載多個(gè)協(xié)議處理模塊,在協(xié)議處理模塊的TCP連接上有一個(gè)滑動(dòng)窗口來(lái)控制底層的通訊流量,一般設(shè)定為16,根據(jù)端處理能力和網(wǎng)絡(luò)條件判斷,來(lái)對(duì)這個(gè)值進(jìn)行調(diào)節(jié)。②配置發(fā)送任務(wù)生成模塊。某些時(shí)刻發(fā)送任務(wù)生成會(huì)受到數(shù)據(jù)庫(kù)和計(jì)算機(jī)任務(wù)調(diào)度的限制,無(wú)法滿足發(fā)送速度所需。所以系統(tǒng)對(duì)模塊的個(gè)數(shù)會(huì)依據(jù)發(fā)送和生成速度來(lái)動(dòng)態(tài)增加和減少,及時(shí)將發(fā)送短信放入緩沖池。③緩沖池管理。采用最近、最少使用法管理發(fā)送接收緩沖池,有效提高發(fā)送性能和緩沖池利用率。
2.3協(xié)議處理和協(xié)議跟蹤實(shí)現(xiàn)
協(xié)議處理,首先將需要發(fā)送的氣象短信發(fā)送到緩沖池,等待系統(tǒng)調(diào)度,當(dāng)網(wǎng)關(guān)成功接收到短信并建立長(zhǎng)連接,緩沖池中的有關(guān)信息與系統(tǒng)業(yè)務(wù)代碼建立對(duì)應(yīng)關(guān)系,然后將氣象短信通過(guò)網(wǎng)關(guān)發(fā)送給用戶。同時(shí)為了保證完整性,系統(tǒng)會(huì)依據(jù)用戶接收狀態(tài)判斷是否重發(fā)。
協(xié)議跟蹤,協(xié)議跟蹤功能使得用戶可以監(jiān)視系統(tǒng)運(yùn)行情況,在系統(tǒng)異常和用戶反映時(shí)可以利用消息跟蹤對(duì)錯(cuò)誤原因進(jìn)行分析,同時(shí)重要錯(cuò)誤信息可產(chǎn)生告警記錄,根據(jù)用戶號(hào)碼、業(yè)務(wù)接口號(hào)和服務(wù)類型進(jìn)行統(tǒng)計(jì)可使用戶明確掌握系統(tǒng)日常運(yùn)行情況。
三、總結(jié)
目前,手機(jī)用戶發(fā)送接收短信已經(jīng)非常自由,信息技術(shù)不斷發(fā)展,用戶需求不斷提高,對(duì)于氣象的動(dòng)向掌握越來(lái)越重視。本文應(yīng)用中國(guó)移動(dòng)點(diǎn)對(duì)點(diǎn)協(xié)議CMPP,基于氣象實(shí)時(shí)數(shù)據(jù)庫(kù),討論并設(shè)計(jì)了氣象短信網(wǎng)關(guān)接口系統(tǒng),為氣象移動(dòng)互聯(lián)網(wǎng)形成了“一點(diǎn)接入、全省服務(wù)”的服務(wù)體系。
參 考 文 獻(xiàn)
[1]李廷蘭.基于CMPP協(xié)議的短信接口程序開(kāi)發(fā)設(shè)計(jì).電子科技大學(xué).2010(10)
[2]李旭.四川省氣象短信服務(wù)系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn).電子科技大學(xué).2009(10)
[3]劉東華,張琳琳,康愷.深圳氣象短信系統(tǒng)簡(jiǎn)介.信息系統(tǒng)工程.2012(06)