首頁 考試吧論壇 Exam8視線 考試商城 網(wǎng)絡(luò)課程 模擬考試 考友錄 實(shí)用文檔 繽紛校園 英語學(xué)習(xí) | ||
2010考研 | 自學(xué)考試 | 成人高考 | 專 升 本 | 法律碩士 | MBA/MPA | 中 科 院 | ||
四六級 | 商務(wù)英語 | 公共英語 | 職稱日語 | 職稱英語 | 博思 | 口譯筆譯 | GRE GMAT | 日語 | 托福 | ||
雅思 | 專四專八 | 新概念 | 自考英語 | 零起點(diǎn)英、法、德、日、韓語 | 在職申碩英語 | ||
在職攻碩英語 | 成人英語三級 | ||
等級考試 | 水平考試 | 微軟認(rèn)證 | 思科認(rèn)證 | Oracle認(rèn)證 | Linux認(rèn)證 | ||
公務(wù)員 | 報(bào)關(guān)員 | 報(bào)檢員 | 外銷員 | 司法考試 | 導(dǎo)游考試 | 教師資格 | 國際商務(wù)師 | 跟單員 | ||
單證員 | 物流師 | 價(jià)格鑒證師 | 銀行從業(yè)資格 | 證券從業(yè)資格 | 人力資源管理師 | 管理咨詢師 | ||
期貨從業(yè)資格 | 社會工作者 | ||
會計(jì)職稱 | 注會CPA | 經(jīng)濟(jì)師 | 統(tǒng)計(jì)師 | 注冊稅務(wù)師 | 評估師 | 精算師 | 高會 | ACCA | 審計(jì)師 | ||
法律顧問 | 會計(jì)證 | ||
一級建造師 | 二級建造師 | 造價(jià)師 | 監(jiān)理師 | 安全師 | 咨詢師 | 結(jié)構(gòu)師 | 建筑師 | 安全評價(jià)師 | ||
房地產(chǎn)估價(jià)師 | 土地估價(jià)師 | 設(shè)備監(jiān)理師 | 巖土工程師 | 質(zhì)量資格 | 房地產(chǎn)經(jīng)紀(jì)人 | 造價(jià)員 | ||
投資項(xiàng)目管理 | 土地代理人 | 環(huán)保師 | 環(huán)境影響評價(jià) | 物業(yè)管理師 | 城市規(guī)劃師 | 公路監(jiān)理師 | ||
公路造價(jià)工程師 | 招標(biāo)師 | ||
執(zhí)業(yè)護(hù)士 | 執(zhí)業(yè)醫(yī)師 | 執(zhí)業(yè)藥師 | 衛(wèi)生資格 |
關(guān)鍵詞: 短消息 ; 短消息網(wǎng)關(guān) ; 通信
• 前言
隨著通信技術(shù)的發(fā)展,無線互聯(lián)網(wǎng)短消息業(yè)務(wù)正在為用戶提供越來越多的服務(wù)。人們不僅可以通過手機(jī)點(diǎn)播定制新聞、股票信息、天氣預(yù)報(bào),還可以下載鈴聲、圖片等。無論需要什么樣的信息,我們都可以隨時(shí)隨地地通過手機(jī)接入互聯(lián)網(wǎng)絡(luò),享受各種服務(wù)。電信運(yùn)營商要實(shí)現(xiàn)這些增值業(yè)務(wù),就必須支持網(wǎng)間的互聯(lián)互通。
目前實(shí)現(xiàn)網(wǎng)間互聯(lián)互通的方式有四種,包括:通過移動關(guān)口局互聯(lián)互通;通過信令轉(zhuǎn)接點(diǎn)互聯(lián)互通;通過短消息網(wǎng)關(guān)互聯(lián)互通;通過第三方運(yùn)營商系統(tǒng)互聯(lián)互通。前兩種方式不易設(shè)置計(jì)費(fèi)點(diǎn)和引出計(jì)費(fèi)話單,因此不利于網(wǎng)間結(jié)算;最后一種方式,雖然能夠保證計(jì)費(fèi)點(diǎn)和結(jié)算點(diǎn)的統(tǒng)一,但是易受到地域條件的限制 。 而通過短消息網(wǎng)關(guān)實(shí)現(xiàn)互聯(lián)互通,無須對 現(xiàn)網(wǎng)運(yùn)行的設(shè)備進(jìn)行大面積的數(shù)據(jù)改動和升級改造,能夠 合理的設(shè)置計(jì)費(fèi)點(diǎn),保證計(jì)費(fèi)的準(zhǔn)確性,實(shí)現(xiàn)業(yè)務(wù)鑒權(quán)和業(yè)務(wù)過濾的功能,保證網(wǎng)絡(luò)的安全,也能夠通過對業(yè)務(wù)流量的監(jiān)視和控制,防止網(wǎng)絡(luò)風(fēng)暴的發(fā)生,這種互聯(lián)方式具有其他三種方式不可比擬的優(yōu)點(diǎn)。目前,大部分短消息業(yè)務(wù)的互聯(lián)互通都是使用短消息網(wǎng)關(guān)來實(shí)現(xiàn)。
• 短消息網(wǎng)關(guān)結(jié)構(gòu)
短消息網(wǎng)關(guān)( ISMG )是處于短消息中心( SMSC )和業(yè)務(wù)提供商( SP )之間的設(shè)備,它為這兩個(gè)實(shí)體的數(shù)據(jù)交換提供安全、快捷的通道。網(wǎng)關(guān)與短消息中心之間使用 SMPP 協(xié)議( Short Message Peer to Peer, 短消息點(diǎn)對點(diǎn)協(xié)議) , 與 SP 之間使用 CMPP 協(xié)議( China Mobile Peer to Peer, 中國移動點(diǎn)對點(diǎn)協(xié)議),因此短消息網(wǎng)關(guān)需要完成協(xié)議的轉(zhuǎn)換、計(jì)費(fèi)、路由、安全和網(wǎng)絡(luò)管理等功能。其結(jié)構(gòu)圖如圖 1 所示。
具體說來,圖 1 中 SMPP 通信代理系統(tǒng)主要實(shí)現(xiàn)網(wǎng)關(guān)和 GSM 網(wǎng)中短消息中心( SMSC )的連接,確保準(zhǔn)確接收和發(fā)送數(shù)據(jù),實(shí)現(xiàn)高效、可靠的數(shù)據(jù)傳輸。為了達(dá)到規(guī)范要求的不超過 0.001% 的數(shù)據(jù)丟包率, SMPP 通信代理需要支持流量控制。 CMPP 通信代理系統(tǒng)主要是實(shí)現(xiàn)和 SP 服務(wù)提供商的連接,與 SMPP 通信代理系統(tǒng)不同的是,由于協(xié)議的影響, CMPP 通信代理是服務(wù)器端,需等待 SP 的連接,而 SMPP 通信代理是客戶端,需要主動連接 SMSC 。短消息網(wǎng)關(guān)處理系統(tǒng)是網(wǎng)關(guān)中最復(fù)雜的處理進(jìn)程,它完成的任務(wù)包括:向 GNS( 匯接網(wǎng)關(guān) ) 查詢路由,維護(hù)路由表,進(jìn)行協(xié)議轉(zhuǎn)換和數(shù)據(jù)分發(fā)。防火墻系統(tǒng)主要為網(wǎng)關(guān)系統(tǒng)提供安全保障,它包括 IP 包過濾和身份驗(yàn)證。短信網(wǎng)關(guān)計(jì)費(fèi)系統(tǒng)主要形成各種計(jì)費(fèi)話單,為計(jì)費(fèi)提供依據(jù)。業(yè)務(wù)管理系統(tǒng)主要完成對業(yè)務(wù)進(jìn)行統(tǒng)計(jì)報(bào)告,生成報(bào)表,為運(yùn)營者對用戶數(shù)據(jù)的添加、修改、刪除以及對網(wǎng)關(guān)系統(tǒng)的監(jiān)控、查詢、操作和維護(hù)提供接口和界面。
• 短消息網(wǎng)關(guān)通信模塊的設(shè)計(jì)與實(shí)現(xiàn)
短消息網(wǎng)關(guān)通信模塊是整個(gè)短消息網(wǎng)關(guān)的基礎(chǔ)。無論是計(jì)費(fèi)、統(tǒng)計(jì),還是超時(shí)重傳,高質(zhì)量的通信構(gòu)架是必不可少的保障。這個(gè)通信構(gòu)架不僅要完成基本的收發(fā)消息的功能,而且還要有好的結(jié)構(gòu)以支撐各種業(yè)務(wù)需求,保證良好的擴(kuò)展性。
在設(shè)計(jì)短消息網(wǎng)關(guān)通信模塊時(shí),我們考慮了以下幾點(diǎn):
第一,由于短消息網(wǎng)關(guān)功能繁多,如果把通信和具體業(yè)務(wù)合在一起開發(fā),容易顧此失彼。可能會因?yàn)殚_始的考慮不周全,造成在增加某項(xiàng)新業(yè)務(wù)時(shí)不得不修改通信底層和原來的業(yè)務(wù)代碼,導(dǎo)致重復(fù)開發(fā)。所以我們采用通信代理的方式把通信和具體業(yè)務(wù)分開,在增加新業(yè)務(wù)時(shí),就只需少量修改通信代理的設(shè)置,而且不必再改動原來的業(yè)務(wù)代碼了。
第二,通信代理需要同時(shí)偵聽多個(gè)端口,我們選用多路復(fù)用 I/O 這種方式。雖然多線程能夠通過并行計(jì)算和共享內(nèi)存提高代碼效率和資源利用率,但在短消息網(wǎng)關(guān)中,處理的數(shù)據(jù)量大,多線程方式的并行處理會造成一些消息的邏輯混亂,資源共享也會增加代碼的復(fù)雜度。而多路復(fù)用使用簡單,邏輯清晰明了,不易發(fā)生錯(cuò)誤,也不會出現(xiàn)因資源共享帶來同步和互斥問題。因此使用多路復(fù)用 I/O 是比較合理的。
第三,業(yè)務(wù)處理模塊與通信代理之間可以使用隊(duì)列進(jìn)行通信,對隊(duì)列的管理和參數(shù)的設(shè)置 (例如對同一隊(duì)列操作的互斥,以及隊(duì)列個(gè)數(shù)的設(shè)置等)都使用專門的隊(duì)列內(nèi)核程序統(tǒng)一調(diào)度并封裝成函數(shù)接口,以方便業(yè)務(wù)處理模塊對隊(duì)列的使用。另外,通過隊(duì)列通信,也可以為今后增加的業(yè)務(wù)提供良好的擴(kuò)展性。
第四,為了達(dá)到 99.999%的不丟包率,通信代理需要使用流量控制機(jī)制以保證網(wǎng)關(guān)內(nèi)部不丟包。這是因?yàn)闊o論隊(duì)列設(shè)置有多大,如果出現(xiàn)消息只發(fā)不收的情況,都會造成隊(duì)列溢出而丟包。因此,為每個(gè)隊(duì)列中緩存的消息做記錄,當(dāng)某個(gè)時(shí)刻隊(duì)列消息的數(shù)量達(dá)到規(guī)定限度,隊(duì)列就不再收包,以保證到達(dá)網(wǎng)關(guān)的消息不會丟失。