胡 虹 ,陳 娜 ,張金娟 ,徐歆壹
(1.中國電信股份有限公司廣東分公司 廣州 510081;2.中國電信股份有限公司廣東研究院 廣州510630)
電信行業(yè)的計費系統(tǒng)是電信支撐系統(tǒng)BSS/OSS的核心模塊之一,其靈活性、響應速度、支撐能力直接決定了電信運營商的服務水平和客戶體驗的滿意程度。計費系統(tǒng)主要根據(jù)電信運營商簽約用戶的客戶資料、消費行為、享受的服務等信息,計算用戶消費所產(chǎn)生的清、賬單費用,并以此完成費用優(yōu)惠、繳費抵扣、信用控制等一系列動作。根據(jù)計費信息是否實時影響業(yè)務提供、賬戶余額更新的情況,計費系統(tǒng)可分為離線計費系統(tǒng)(offline charging system,OFCS)和在線計費系統(tǒng)(online charging system,OCS)。離線計費系統(tǒng)以聯(lián)機方式得到用戶使用記錄后進行計費,計費信息不會實時影響業(yè)務提供;在線計費系統(tǒng)在用戶使用業(yè)務的過程中直接與會話/服務控制交互,計費信息實時影響業(yè)務提供。
隨著移動互聯(lián)網(wǎng)時代發(fā)展高峰期的到來,電信行業(yè)的業(yè)務種類更加豐富,業(yè)務需求多種多樣,系統(tǒng)實時響應的要求越來越高,在線計費系統(tǒng)的重要性更加凸顯。近年來,在線計費系統(tǒng)的用戶數(shù)不斷增加,承載業(yè)務不斷發(fā)展,現(xiàn)有系統(tǒng)架構大規(guī)模部署的成本隨之劇增,在線計費系統(tǒng)部署的靈活性和可擴展性、計費應用的穩(wěn)定性和可靠性受到空前的關注。
云計算相關技術的快速發(fā)展,為電信運營商帶來了一次重要的變革機遇,在提高在線計費系統(tǒng)響應速度、提升系統(tǒng)穩(wěn)定性、提高資源利用率、降低系統(tǒng)成本等方面提供了一個很好的突破口。
在線計費系統(tǒng)通過與核心網(wǎng)網(wǎng)元設備的不斷交互,精確控制用戶使用的業(yè)務,即用戶使用業(yè)務的全過程中,OCS對外不斷與核心網(wǎng)設備進行通信;對內(nèi)在保留當前用戶狀態(tài)和費用信息的情況下,以一定的粒度不斷重復批價、扣費的過程,直至用戶使用完對應業(yè)務。在日常運營中,在線計費系統(tǒng)承載電信運營商大量的業(yè)務處理,具備以下幾點特性。
(1)不間斷性
在線計費系統(tǒng)每天都需要24h不間斷地處理各種數(shù)據(jù)。一旦出現(xiàn)故障,在線計費服務中斷,會導致用戶欠費風險大、部分在線類控制業(yè)務無法開展等諸多問題。
(2)實時性
根據(jù)在線計費系統(tǒng)的工作原理,用戶是否使用業(yè)務,需要在線計費系統(tǒng)進行實時控制,這對系統(tǒng)的計算、存儲速度提出了很高的要求。
(3)可靠性
在線計費系統(tǒng)中的資源繁多,系統(tǒng)的數(shù)據(jù)量極大,數(shù)據(jù)處理涉及計費、批價等操作,因此數(shù)據(jù)的處理對系統(tǒng)的可靠性要求很高。尤其在移動互聯(lián)網(wǎng)時代,數(shù)據(jù)業(yè)務的大量使用會導致大量的系統(tǒng)吞吐量。在高負載情況下,系統(tǒng)仍需很好地保持成功率,以保證高可靠性。
(4)穩(wěn)定性
在線計費系統(tǒng)每天都需要24h不間斷地處理各種數(shù)據(jù),即使長時間處在一定壓力下,其處理效率仍需要保持穩(wěn)定水平,以確??蛻袅己玫臉I(yè)務使用體驗。
隨著業(yè)務的發(fā)展、OCS用戶數(shù)的不斷增加,現(xiàn)有系統(tǒng)架構大規(guī)模部署的成本越來越高,系統(tǒng)部署的局限性帶來的負面影響越來越突出,主要有如下一些問題。
·設備要求有高端化趨勢,IT預算壓力大,設備成本、能耗成本居高不下。
·主機資源利用率不高,主備模式閑置了50%計算能力,無法共享計算資源,造成資源浪費。隨著集約化運營的進一步深入,資源利用率低的問題將進一步凸顯。
·擴容周期長,前期主機資源空閑,造成浪費,無法快速響應新業(yè)務的要求;后期主機資源緊張,造成運營風險,且升級、擴容出現(xiàn)故障時,系統(tǒng)響應中斷時間較長,承擔風險較高。
·橫向擴展能力差,面對業(yè)務高峰存在性能瓶頸。
·多RG業(yè)務模式使得業(yè)務激增,數(shù)據(jù)業(yè)務的迅猛發(fā)展使得系統(tǒng)負荷大大增加,穩(wěn)定性、可靠性受到全面挑戰(zhàn)。
·缺乏有效的手段應對突發(fā)事件造成的短時間業(yè)務量激增的情況。
上述問題范圍較廣,從系統(tǒng)成本控制方面到在線計費系統(tǒng)的不間斷、高效、穩(wěn)定運營方面均有涉及。實際上,對于在線計費系統(tǒng)建設、運營過程中遇到的問題,云計算解決方案的某些特性恰好可以很好地解決。
到底什么是云計算,目前還沒有公認的定義。參考文獻[1]認為云計算是一種商業(yè)計算模型,將計算任務分布在大量計算機構成的資源池上,使用戶能夠按需獲取計算能力、存儲空間和信息服務。
對性能要求較高的在線計費系統(tǒng),可通過網(wǎng)絡把多個成本相對較低的刀片機整合成一個具有強大計算能力的系統(tǒng),通過統(tǒng)一管理調(diào)度模塊,根據(jù)各臺刀片機的運行情況對核心網(wǎng)網(wǎng)元的業(yè)務請求進行分發(fā),確保各請求可以及時得到響應,達到和小型機同樣的效果,并且能很好地控制設備成本和能耗成本。
在系統(tǒng)處理性能方面,刀片服務器單CPU處理能力高于小型機,但每個刀片處理板只能配置2/4路CPU,而高端小型機可配置64路CPU;刀片服務器的可靠性、容錯性、I/O性能亦低于小型機;從價格和耗電方面,刀片服務器具備一定的優(yōu)勢,如刀片服務器每TPCC單價遠低于小型機,每瓦特/立方米的計算能力高于小型機。隨著刀片服務器虛擬化技術的日臻完善,刀片機可以通過集群技術、高可靠的云管理平臺替代私有的、費用昂貴的小型機,并提供同等性能的服務。同時,計費應用可共享硬件資源、集中管理軟件、自動安裝、自動更新,從而大大降低軟硬件維護難度,為應用虛擬化提供很好的平臺。
因此,從成本控制、系統(tǒng)維護以及整體趨勢上,對可靠性、實時性要求較高的在線計費系統(tǒng)亦可以引入刀片服務器架構,通過虛擬化多機集群資源池、完善的冗余備份、故障恢復機制保證系統(tǒng)的可靠性,利用虛擬化技術保證系統(tǒng)在升級、擴容時的零停機,全面提高系統(tǒng)部署效率,保障系統(tǒng)運營的穩(wěn)定和可靠。
但由于在線計費系統(tǒng)處理數(shù)據(jù)的客戶敏感性,需要在高可靠性保證的基礎上穩(wěn)妥推進,尤其是在線計費系統(tǒng)實時性要求較高,需要制定周密的實施步驟,采用應用與數(shù)據(jù)分離的模式,通過應用集群部署,提高整體可靠性,以軟件架構的高可靠性逐步替代硬件高可靠性,分階段逐步從現(xiàn)有環(huán)境遷移到刀片服務器上,以達到降低成本、降低能耗、提高系統(tǒng)部署效率,同時又保證系統(tǒng)處理可靠性的目的。
傳統(tǒng)的計費系統(tǒng)只能使用指定的物理資源,經(jīng)過物理平臺的云化演進,可以通過云計算管理平臺對系統(tǒng)的需求進行按需分配,保障系統(tǒng)的運行性能,提高物理資源利用率,系統(tǒng)可以自動、自發(fā)地進行伸縮性部署,物理資源的擴展也更加方便、快捷。
在線計費系統(tǒng)可采用如圖1所示的架構進行設計,主機池中所有主機上的應用相同,任何一臺主機出現(xiàn)故障后,都不會影響系統(tǒng)運行。升級時可以分批升級,不升級的主機進行正常業(yè)務的處理。數(shù)據(jù)資源共享可保證其中任何一個節(jié)點主機出現(xiàn)異常都不影響系統(tǒng)的正常業(yè)務處理。
圖 1 在線計費系統(tǒng)總體架構
系統(tǒng)功能架構設計如圖2所示,增加了路由管理、計費控制等功能模塊。具體介紹如下。
圖2 在線計費系統(tǒng)功能架構
接入域:實現(xiàn)外部網(wǎng)元設備穩(wěn)定、安全的數(shù)據(jù)接入,實現(xiàn)可配置的數(shù)據(jù)路由分發(fā)。
功能域:實現(xiàn)OCS的計費和信控等業(yè)務功能。功能域?qū)顟B(tài)數(shù)據(jù)剝離數(shù)據(jù)域管理,所有功能均具備無狀態(tài)特征。功能域以計費控制為核心,將協(xié)議適配器、計費引擎、計費網(wǎng)關等節(jié)點通過擴展協(xié)議動態(tài)調(diào)度。
數(shù)據(jù)域:負責保留會話狀態(tài)、訂購關系、賬戶賬本等數(shù)據(jù),根據(jù)數(shù)據(jù)聚合度分為共享數(shù)據(jù)存儲和非共享數(shù)據(jù)存儲。非共享數(shù)據(jù)由多內(nèi)存數(shù)據(jù)庫實例分區(qū)存儲,并在主備機間實時同步;共享數(shù)據(jù)集中存儲在一個數(shù)據(jù)實例上。數(shù)據(jù)域由小型機做雙機熱備份,數(shù)據(jù)在主備機間實時復制。
管理域:實現(xiàn)功能域內(nèi)刀片應用的注冊、激活、去激活、注銷等功能,實現(xiàn)數(shù)據(jù)域集群管理的功能,提供路由參考數(shù)據(jù)的路由優(yōu)化能力。
在線計費系統(tǒng)的架構按照圖3部署。應用與業(yè)務、數(shù)據(jù)分離,統(tǒng)一由計費控制按負載均衡算法調(diào)度應用節(jié)點,實現(xiàn)橫向擴展、負載均衡,并通過池化技術,實現(xiàn)主機的可擴展。計費控制、數(shù)據(jù)庫為雙機熱備份,采用浮動IP地址;計費應用為集群方式,都是active;計費應用不保存會話信息,會話信息保存在內(nèi)存庫中。
如圖3所示,多個計費節(jié)點可以部署在多臺刀片服務器上,每臺服務器上的計費節(jié)點具備的功能相同,同一個會話中的不同請求,通過這種無狀態(tài)的架構模式分發(fā)到不同的計費節(jié)點上,達到應用無狀態(tài)的目的,方便進行任務切割并進行分布式計算。通過計費調(diào)度平臺,平衡各節(jié)點的運行效率,同時該平臺作為整體架構的管理平臺,通過心跳信號網(wǎng)絡保持與各節(jié)點的心跳連接,一旦系統(tǒng)出現(xiàn)故障或者繁忙,馬上啟用資源池中的備份機,保障系統(tǒng)運行的可靠性和穩(wěn)定性。
圖3 在線計費系統(tǒng)云化架構
根據(jù)OCP,在線計費系統(tǒng)的業(yè)務相關性可通過會話標識進行關聯(lián),同一個會話的不同請求處理之間具有強相關性,后續(xù)更新的業(yè)務請求的業(yè)務信息只能從與之相關的初始業(yè)務請求中獲得。此類相關性,可以考慮通過業(yè)務請求解耦,以保證業(yè)務請求的無關性和業(yè)務處理的正確性。業(yè)務處理流程如圖4所示,網(wǎng)元發(fā)送請求消息給計費系統(tǒng)后,首先由計費控制根據(jù)各計費節(jié)點運行情況進行智能調(diào)度,將計費請求轉(zhuǎn)發(fā)給對應的節(jié)點,計費應用節(jié)點接收到計費請求后,從內(nèi)存庫中獲取與此條消息相關的會話信息進行批價,會話管理內(nèi)容由內(nèi)存庫保存,計費節(jié)點不再保存會話信息。
圖4 業(yè)務處理流程
通過本云化實施方案,可以達到以下幾方面效果。
·降低成本:引入x86刀片服務器架構,大幅降低設備采購成本和能耗成本,節(jié)能減排。
·以軟件架構高可靠性代替硬件高可靠性:應用無狀態(tài)、多機集群。
·降低軟硬件維護難度:采用云平臺統(tǒng)一管理方案,提高系統(tǒng)管理自動化程度。
·近線性橫向擴展能力:擴容過程簡單靈活,即插即用。短時間內(nèi)迅速提升支撐能力。
·保證系統(tǒng)穩(wěn)定性、可靠性:應用與數(shù)據(jù)分離,應用集群部署。
在實際部署中,考慮到數(shù)據(jù)的重要性,采用雙機備份的方式,隨著后期云化方案的逐步完善再分批進行數(shù)據(jù)云化。應用和內(nèi)存庫部署需遵循一定的原則,主要有如下3方面:
·應用和內(nèi)存庫數(shù)據(jù)在邏輯設計上要分離;
·支持物理上的靈活部署,各系統(tǒng)的內(nèi)存庫可以部署在一起也可以分開;
·為了提高應用的效率并減少網(wǎng)絡占用,某些應用可以和內(nèi)存庫物理部署在一起。
在線計費系統(tǒng)應用和內(nèi)存庫合并部署和分別部署的比較見表1。
表1 部署對比
圖5 部署示例
數(shù)據(jù)部署架構如圖5所示,不同的本地網(wǎng)使用不同的內(nèi)存庫,對于多個本地網(wǎng)用戶容量不足內(nèi)存庫半配的,可合并到一個內(nèi)存庫,以提高資源利用率。一個物理庫實例對應一個內(nèi)存庫,物理庫采用小型機,內(nèi)存庫可以采用刀片服務器。
此外,大本地網(wǎng)按客戶維度分布實現(xiàn)分布式部署,為了保證應用的順利實施,一個客戶下的賬戶、用戶信息必須處于同一數(shù)據(jù)庫中。若關系實體中關聯(lián)的兩個客戶、兩個用戶、兩個賬戶、用戶與賬戶等,其歸屬的客戶不是同一客戶,且兩個客戶被分布于兩個數(shù)據(jù)庫時,賬務關系存在統(tǒng)一數(shù)據(jù)庫,“一點維護”復制到每個相關數(shù)據(jù)庫使用。
根據(jù)實際實施情況,用戶數(shù)增長,對應的機器增加,相應添加路由,在采用刀片服務器的情況下寧可預留部分資源,達到減少數(shù)據(jù)遷移的目的。
系統(tǒng)的云化演進工作是一個非常具有挑戰(zhàn)性的復雜的系統(tǒng)工程,如果要成功實現(xiàn)云化,需要進行大量的研究與實踐,通過充分的前期準備工作,對云化架構進行深入的研究與驗證,經(jīng)驗得到大量儲備后,才能根據(jù)演進策略進行分步實施;在具有一定的實際建設運維經(jīng)驗之后,才能對核心業(yè)務進行分布式遷移,保障系統(tǒng)支撐能力的平穩(wěn)運行;最后對云計算創(chuàng)新、創(chuàng)收階段進行研究實施,為電信運營商尋求新的盈利點。云計算演進步驟如圖6所示。
對在線計費系統(tǒng)的特點及面臨的問題進行了分析和論述,并針對在線計費系統(tǒng)的特點設計實施方案,最后對系統(tǒng)云化的演進步驟和目標進行了總結,對其他系統(tǒng)的云化有一定的借鑒作用。在線計費系統(tǒng)的云化需要進一步研究的內(nèi)容還有很多,如支撐的業(yè)務量大、相關數(shù)據(jù)種類多、很難驗證實現(xiàn)所有數(shù)據(jù)節(jié)點云化的可行性;某些特殊的數(shù)據(jù)耦合度較高,處理上很難做到完全獨立;有些業(yè)務導致的數(shù)據(jù)必須串行化處理等。
圖6 云計算演進步驟
1 劉鵬.云計算.北京:電子工業(yè)出版社,2012
2 3GPP TS 32.296.Online Charging System(OCS):Application and Interfaces,2009
3 中國電信在線計費系統(tǒng)(OCS)技術規(guī)范,2012
4 TMF.The business process framework for the information and communications services industry release 6.0(DK).http://www.tmforum.org,2011
5 陶彩霞,陳康,郝穎.云計算在電信支撐系統(tǒng)領域的應用分析.電信科學,2010,26(10)
6 朱近之.智慧的云計算.北京:電子工業(yè)出版社,2010
7 Nielsen D.關鍵云計算平臺及框架.第4屆中國云計算大會,北京,中國,2012
8 Ruest N,Ruest D.虛擬化技術指南.陳奮譯.北京:機械工業(yè)出版社,2011
9 Krissi D.Distinguishing cloud computing from utility computing.http://www.Ebizq.net,2011