敖錦蓉 王小峰 古英杰 周衛(wèi)星
【摘 要】通過對電信在線計費系統(tǒng)可靠性提升方法的研究,分別從系統(tǒng)架構(gòu)、業(yè)務(wù)流程、并發(fā)壓力、系統(tǒng)部署等方面進行剖析,論證了引入消息重發(fā)機制對在線計費系統(tǒng)可靠性帶來的提升,提出了基于消息重發(fā)和緩存的在線計費系統(tǒng)架構(gòu)設(shè)計,并得到充分的技術(shù)驗證支撐,為企業(yè)構(gòu)建高可靠性的在線計費系統(tǒng)提供技術(shù)參考,同時較好地支持了互聯(lián)網(wǎng)時代下電信運營商實時計費需求。
【關(guān)鍵詞】在線計費系統(tǒng) BOSS BDS DCC 計費應(yīng)用 消息重發(fā)
doi:10.3969/j.issn.1006-1010.2016.06.017 中圖分類號:TP31 文獻標(biāo)識碼:A 文章編號:1006-1010(2016)06-0075-05
引用格式:敖錦蓉,王小峰,古英杰,等. 基于消息重發(fā)的電信在線計費系統(tǒng)可靠性提升研究[J]. 移動通信, 2016,40(6): 75-79.
1 引言
隨著移動互聯(lián)網(wǎng)時代的到來,實時計費已經(jīng)是計費系統(tǒng)發(fā)展的必然趨勢,要求計費不僅從離線轉(zhuǎn)向?qū)崟r,同時還要能保證在線計費率。實時計費相比傳統(tǒng)離線計費方式而言,是更加注重計費處理時效性及對用戶使用情況的授權(quán)和及時控制的計費方式。目前2G/3G/4G都是采用實時計費的,尤其是在4G高帶寬、高網(wǎng)速的體驗下,對計費處理實時性的要求更加凸顯。因此,采用實時計費方式是移動互聯(lián)網(wǎng)時代對BOSS(Business & Operation Support System,業(yè)務(wù)運營支撐系統(tǒng))系統(tǒng)支撐能力轉(zhuǎn)變的主流趨勢。
2 在線計費系統(tǒng)特點
在線計費根據(jù)在線計費消息進行正算與反算,同時結(jié)合網(wǎng)元的實時話務(wù)控制能力,對欠費風(fēng)險進行控制。OCS(Online Charging System,在線計費系統(tǒng))需具備以下特點:
(1)高性能
◆內(nèi)存計算:基于內(nèi)存數(shù)據(jù)庫進行計算,優(yōu)化流程、內(nèi)存數(shù)據(jù)庫存儲和性能。
◆分布式:采用了集群化部署、分布式內(nèi)存數(shù)據(jù)庫、分布式文件系統(tǒng)等,具備了負載均衡、路由管理和分布式計算。其中,分布式內(nèi)存數(shù)據(jù)庫是完整的基于內(nèi)存的關(guān)系型數(shù)據(jù)庫系統(tǒng)。
◆高速網(wǎng)絡(luò)帶寬:引入萬兆網(wǎng)、InfiniBand網(wǎng)絡(luò)。InfiniBand網(wǎng)絡(luò)是一種不同于傳統(tǒng)以太網(wǎng)的技術(shù),支持多通道并發(fā)鏈接的“轉(zhuǎn)換線纜”技術(shù),是將存儲、網(wǎng)絡(luò)和服務(wù)器連在一起的I/O技術(shù)。
(2)高可用
◆切換接管:在線計費應(yīng)用集群部署同質(zhì)化,即集群內(nèi)各個節(jié)點無差異,同質(zhì)化部署,能夠互相替代;提升應(yīng)用、內(nèi)存數(shù)據(jù)庫快速接管能力;多中心容災(zāi)部署。
◆會話管理:對會話進行保存且備份。
◆消息重發(fā):先在網(wǎng)元側(cè)有重發(fā),然后在BOSS系統(tǒng)也進行消息重發(fā),有了“雙保險”。
(3)應(yīng)用集群可水平擴展
◆支持集群內(nèi)新增在線計費應(yīng)用節(jié)點,新節(jié)點就緒后在線消息再分發(fā)任務(wù)給其處理,應(yīng)用節(jié)點擴展過程中不中斷業(yè)務(wù)處理。
◆新增節(jié)點集群業(yè)務(wù)處理性能可線性增強。
(4)應(yīng)用與數(shù)據(jù)分離
在線計費集群不保存客戶資料、賬務(wù)信息等數(shù)據(jù),在線計費節(jié)點通過統(tǒng)一數(shù)據(jù)訪問引擎獲取客戶資料、賬務(wù)信息和會話信息等數(shù)據(jù),實現(xiàn)應(yīng)用與數(shù)據(jù)分離。
(5)異常、超時會話的存儲周期可進行配置
3 基于消息重發(fā)的在線計費系統(tǒng)可靠性
提升設(shè)計
新引入了消息重發(fā)和緩存模塊,為了提升可靠性,應(yīng)盡可能地將消息緩存?zhèn)浞菰谡麄€業(yè)務(wù)流程的前面,以減少信息丟失的可能性,如將緩存布置在在線接入應(yīng)用層。并且在BDS(Billing Data Service,計費數(shù)據(jù)服務(wù))做相應(yīng)的避重處理以提升在線計費系統(tǒng)可靠性,從而減少丟包率和提高在線率。在線計費系統(tǒng)架構(gòu)采用分層設(shè)計,主要由在線接入層、計費應(yīng)用層、賬務(wù)數(shù)據(jù)層、數(shù)據(jù)持久層構(gòu)成。
基于消息重發(fā)的在線計費系統(tǒng)功能架構(gòu)圖如圖1所示:
具體說明如下:
(1)在線接入層:完成服務(wù)使用記錄的采集、數(shù)據(jù)傳輸、格式轉(zhuǎn)換、數(shù)據(jù)分發(fā)、負載均衡功能。
◆在線采集包含了協(xié)議適配、路由管理、DCC(Diameter Credit Control,信用控制協(xié)議)匯接代理。
◆數(shù)據(jù)傳輸完成了采集網(wǎng)元與BOSS之間、省BOSS與總部BOSS系統(tǒng)或其他運營商之間數(shù)據(jù)的傳輸。
◆格式轉(zhuǎn)換:從原始服務(wù)使用記錄到標(biāo)準(zhǔn)服務(wù)使用記錄的轉(zhuǎn)換。
◆消息重發(fā):當(dāng)系統(tǒng)出現(xiàn)異常,消息處理不成功或者丟失時,會觸發(fā)消息重發(fā)模塊進行重發(fā)消息,再次進入在線處理流程。
◆消息緩存:當(dāng)消息從網(wǎng)元發(fā)過來時,同時在接入層備份一份消息存在緩存中。
(2)計費應(yīng)用層
◆依據(jù)產(chǎn)品服務(wù)資費、用戶資料信息和計費資源完成個人客戶GPRS(General Packet Radio Service,通用分組無線服務(wù))業(yè)務(wù)的計費過程,按照優(yōu)惠方式批價。
◆詳單管理暫時改為清單直接寫入文件系統(tǒng)落地。
◆計費引擎根據(jù)計費依據(jù)和計費規(guī)則對輸入的待批價數(shù)據(jù)進行費用、費率以及可用額度等的計算。
◆計費引擎需要具備正算和反算的能力。正算是指根據(jù)用戶產(chǎn)品訂購、業(yè)務(wù)資費、用戶信息等計算使用的費用;反算是指用戶使用產(chǎn)品服務(wù)過程中,實時計費控制傳遞業(yè)務(wù)使用信息給計費引擎,計費引擎按照賬戶余額、用戶信息、訂購產(chǎn)品、產(chǎn)品資費和優(yōu)惠等信息,計算可使用的業(yè)務(wù)額度。
◆預(yù)處理:檢錯完成了對原始服務(wù)使用記錄的有效性、準(zhǔn)確性和完整性檢查;糾錯是針對檢錯輸出的記錄進行糾正,未能糾正的記錄則形成錯單。
(3)賬務(wù)數(shù)據(jù)服務(wù)層
◆用戶資料管理、累積量管理、余額管理、免費資源管理。
◆實現(xiàn)應(yīng)用與數(shù)據(jù)分離,屏蔽應(yīng)用對數(shù)據(jù)的可見性,實現(xiàn)“數(shù)據(jù)訪問方式”、“數(shù)據(jù)路由方式”驗證。
◆避重處理:當(dāng)消息被觸發(fā)重發(fā)之后,會對緩存中的消息進行刪除或者標(biāo)記,以避免信息重復(fù)處理。
(4)數(shù)據(jù)持久層
◆可分為資料庫、賬單庫、會話庫和余額庫,采用主備部署方式。
◆保證系統(tǒng)可靠性、可擴展和數(shù)據(jù)一致性。
基于消息重發(fā)的在線計費系統(tǒng)業(yè)務(wù)流程圖如圖2所示。
具體說明如下:
(1)用戶在通話請求時,向控制網(wǎng)元發(fā)起實時計費請求;BOSS系統(tǒng)收到在線計費請求。
(2)對采集和預(yù)處理消息進行緩存與備份,對在線控制協(xié)議進行適配路由,將格式轉(zhuǎn)換后的實時計費消息發(fā)給相應(yīng)的計費應(yīng)用節(jié)點。
(3)識別在線計費消息對應(yīng)的業(yè)務(wù)。
(4)業(yè)務(wù)授權(quán):依據(jù)業(yè)務(wù)識別結(jié)果對用戶服務(wù)使用鑒權(quán)。對于不需要實時計費的消息則返回放通消息;鑒權(quán)通過則進入反算流程;鑒權(quán)失敗則返回用戶無法使用服務(wù)應(yīng)答。
(5)融合控制:依據(jù)配置的實時計費流程,調(diào)用計費引擎與實時出賬來計算用戶業(yè)務(wù)資費,根據(jù)BDS返回的用戶余額預(yù)留余額和用量,并通過在線采集在線控制通話。
(6)完成通話后,業(yè)務(wù)控制網(wǎng)元通過采集預(yù)處理向融合計費傳遞通話情況,融合計費依據(jù)服務(wù)使用量批價,并通過BDS扣減余額。若出現(xiàn)異常情況時,則會觸發(fā)重發(fā)進行再次在線計費,并進行避重處理,以避免多次計費、數(shù)據(jù)重復(fù)等情況。
(7)在線計費話單生成:用戶在線話單生成,同時生成整個在線計費過程生成的日志。
4 在線計費系統(tǒng)原型驗證分析
本次原型實驗采用Redis分布式緩存同步方式來進行消息重發(fā),可提升在線計費可靠性,但同時會降低一定的性能。在線計費系統(tǒng)原型結(jié)構(gòu)圖如圖3所示:
基于消息緩存重發(fā)與無重發(fā)情況下,多次模擬異常場景(斷掉計費應(yīng)用節(jié)點),在同樣軟硬件配置和并發(fā)數(shù)情況下,在線率和資源占用情況對比如表1所示:
一個好的重發(fā)設(shè)計方案對于系統(tǒng)的可靠性和性能都至關(guān)重要。目前驗證發(fā)現(xiàn)重發(fā)機制對可靠性影響較大,其次就是并發(fā)壓力也會存在一定的影響。通過本次原型開發(fā)驗證,對基于消息重發(fā)的在線計費系統(tǒng)可靠性提升建議如下:
(1)業(yè)務(wù)流程上增加消息重發(fā)可以提升在線可靠性,但應(yīng)盡量減少因消息重發(fā)而增加的業(yè)務(wù)流程,這樣可以相對減少整個在線計費過程時延。為了盡量縮短業(yè)務(wù)流程,可將消息重發(fā)盡可能設(shè)置在整個流程的最前面,如在線接入應(yīng)用層。
(2)消息緩存?zhèn)浞輵?yīng)盡可能靠前,以減少消息丟失和重發(fā)的可能性。
(3)業(yè)務(wù)并發(fā)數(shù)需要權(quán)衡可靠性和性能,有重發(fā)情況下雖然可靠性得到提升,但隨著并發(fā)數(shù)據(jù)的增加,性能的下降速度比無重發(fā)情況下要快,可以通過設(shè)定閾值多次驗證得到合適的并發(fā)壓力。
(4)重發(fā)次數(shù)也是影響可靠性和性能的一個重要因素,需要對重發(fā)次數(shù)做合理限制,處理原則是若某條消息成功完成了在線計費,則在避重處理過程中可將存在緩存庫中的該信息刪除或者備份取出,以保證可靠性和性能。
(5)重發(fā)掃描頻率應(yīng)根據(jù)系統(tǒng)資源情況設(shè)置。
5 結(jié)束語
本文通過對電信在線計費系統(tǒng)特征、架構(gòu)設(shè)計和業(yè)務(wù)流程進行介紹、分析及設(shè)計,討論了基于消息緩存和重發(fā)的在線計費系統(tǒng)可靠性提升方法,并以原型開發(fā)進行驗證分析,給出了在線計費系統(tǒng)可靠性提升建議,為電信企業(yè)在線計費可靠性提升提供一種開發(fā)設(shè)計和建設(shè)技術(shù)參考。
參考文獻:
[1] 王海燕. 在線計費系統(tǒng)的架構(gòu)與應(yīng)用[J]. 軟件工程師, 2015(8): 46-48.
[2] 陳永華,張東生,楊碩. 在線計費系統(tǒng)高可靠性設(shè)計方法探討[J]. 電信技術(shù), 2011(1): 84-85.
[3] 李福慶,李良. 在線計費系統(tǒng)(OCS)云化部署架構(gòu)研究[J]. 郵電設(shè)計技術(shù), 2013(12): 17-21.
[4] 朱穎輝. OCS在線計費系統(tǒng)解決方案分析[J]. 信息通信技術(shù), 2009(6): 33-36.
[5] 武振宇. 內(nèi)存數(shù)據(jù)庫及其在實時計費系統(tǒng)中的應(yīng)用[J]. 電信工程技術(shù)與標(biāo)準(zhǔn)化, 2012(3): 62-65.
[6] 張健,阮前. 淺析計費系統(tǒng)性能的影響因素及優(yōu)化措施[J]. 計算機光盤軟件與應(yīng)用, 2012(16): 65-66.
[7] 王偉,楊利,劉建鋒. 一種高性能計算環(huán)境中的計費系統(tǒng)[J]. 計算機工程與科學(xué), 2008(1): 148-150.
[8] 張江偉,司麗娜,張志鋒. 基于J2EE的電信計費系統(tǒng)的設(shè)計與實現(xiàn)[J]. 科技信息, 2008(33): 71-72.
[9] 李蔚,張效尉,李剛. 內(nèi)存數(shù)據(jù)庫應(yīng)用于電信計費系統(tǒng)的研究與實現(xiàn)[J]. 鄭州輕工業(yè)學(xué)院學(xué)報: 自然科學(xué)版, 2008(3): 42-44.
[10] 王慧嬪. 基于MMDB技術(shù)對電信計費系統(tǒng)研究與實現(xiàn)的探討[J]. 科技資訊, 2009(16): 230.★