電信計費綜合管理系統(tǒng)在電信市話業(yè)務(wù)綜合管理系統(tǒng)中占有著重要的地位。傳統(tǒng)的計費系統(tǒng)針對不同的業(yè)務(wù)開發(fā)相應(yīng)的計費軟件,當費率調(diào)整或計費規(guī)則發(fā)生變化時,必須對原有軟件做大的修改。當業(yè)務(wù)擴充時,則要重新開發(fā)相應(yīng)的軟件功能模塊。軟件維護人員工作量大,系統(tǒng)容易出現(xiàn)差錯。這種系統(tǒng)已經(jīng)不能適應(yīng)電信業(yè)務(wù)飛速發(fā)展的需要。針對這種狀況,銀川市電信局在"九七"工程實施時,重新開發(fā)了滿足"九七"工程技術(shù)規(guī)范的新計費系統(tǒng)。對計費系統(tǒng)的設(shè)計,要求它形成一個綜合計費平臺,不僅能為用戶提供全方位的計費服務(wù),同時還必須適應(yīng)電信業(yè)務(wù)發(fā)展的需要,滿足電信業(yè)務(wù)種類繁多、新業(yè)務(wù)增加快等發(fā)展要求,因此系統(tǒng)必須具備靈活性和易擴充性,功能涵蓋所有的電信業(yè)務(wù),最終實現(xiàn)對所有業(yè)務(wù)的統(tǒng)一計費結(jié)算。
1 計費系統(tǒng)的功能結(jié)構(gòu)
電信計費系統(tǒng)按模塊化的組件思想來設(shè)計,根據(jù)各功能模塊所起作用可將它們分為四個層次:網(wǎng)絡(luò)設(shè)備層、系統(tǒng)設(shè)備接口支持層、系統(tǒng)業(yè)務(wù)處理層和系統(tǒng)管理層。圖1為系統(tǒng)功能結(jié)構(gòu)。
(1)網(wǎng)絡(luò)設(shè)備層主要是各種各樣的網(wǎng)絡(luò)設(shè)備、連接設(shè)備等,它們是生產(chǎn)系統(tǒng)的組成部分,用來處理各種業(yè)務(wù)的原始數(shù)據(jù)。(2)系統(tǒng)設(shè)備接口支持層主要負責(zé)對各種設(shè)備提交的業(yè)務(wù)請求進行響應(yīng)(如RADIUS服務(wù)器)。(3)系統(tǒng)業(yè)務(wù)處理層主要處理各種業(yè)務(wù)數(shù)據(jù),包括數(shù)據(jù)庫、計費子系統(tǒng)和賬務(wù)子系統(tǒng)等。這些子系統(tǒng)又分別包含了對業(yè)務(wù)的支持功能模塊,它們與具體的業(yè)務(wù)操作設(shè)備相連,通過Mediation對上層提供一致的數(shù)據(jù)格式和控制接口。(4)系統(tǒng)管理層主要處理業(yè)務(wù)的統(tǒng)計分析、業(yè)務(wù)的快速生成、整個系統(tǒng)的運行管理和維護以及用戶的業(yè)務(wù)受理等,為系統(tǒng)提供外部的應(yīng)用接口。
由圖1可以看出計費系統(tǒng)的規(guī)模大,處理流程十分復(fù)雜;承載的業(yè)務(wù)種類多,涉及眾多網(wǎng)絡(luò)設(shè)備及相關(guān)協(xié)議;數(shù)據(jù)的處理量大,模塊的相互調(diào)用相當頻繁等。這些都是傳統(tǒng)模式的計費系統(tǒng)很難實現(xiàn)的。
2 基于CORBA的計費系統(tǒng)軟件架構(gòu)
CORBA(Common Object Request Broker Architecture,公共對象請求代理體系結(jié)構(gòu),通用對象請求代理體系結(jié)構(gòu))是由OMG組織制訂的一種標準的面向?qū)ο髴?yīng)用程 序體系規(guī)范?;蛘哒f CORBA體系結(jié)構(gòu)是對象管理組織(OMG)為解決分布式處理環(huán)境(DCE)中,硬件和軟件系統(tǒng)的互連而提出的一種解決方案;OMG組織是一個國際性的非盈利組織,其職責(zé)是為應(yīng)用開發(fā)提供一個公共框架,制訂工業(yè)指南和對象管理規(guī)范,加快對象技術(shù)的發(fā)展。
CORBA是一種異構(gòu)平臺下的語言無關(guān)的對象互操作模型。它通過ORB屏蔽了底層的通信細節(jié),實現(xiàn)真正的跨平臺;通過IDL(Interface Definition Language)接口定義語言,實現(xiàn)語言無關(guān)性。基于CORBA的計費系統(tǒng)軟件架構(gòu)如圖2所示。
整個系統(tǒng)按照請求/服務(wù)的方式進行設(shè)計,各核心功能模塊統(tǒng)一中間層(Mediation Service Component)、業(yè)務(wù)處理層(Billing Service Component)、外部接口OMS(Out Interface Management Service)、數(shù)據(jù)訪問平臺DAP(Data Access Platform),以組件的方式連接在CORBA上,通過CORBA自身的分布式對象服務(wù)支持的功能,實現(xiàn)分布環(huán)境中的透明對象服務(wù),保證系統(tǒng)的開放性和擴展性。同時,圖中各組件之間的接口功能簡單,有利于實現(xiàn)系統(tǒng)的邊緣智能化和功能的任意組合。各核心功能模塊關(guān)鍵技術(shù)的設(shè)計思路如下:
(1)統(tǒng)一中間層可實現(xiàn)系統(tǒng)對業(yè)務(wù)的靈活支持。前端各種業(yè)務(wù)的生產(chǎn)數(shù)據(jù)采集器Agent將采集到的由不同協(xié)議封裝的各種不同數(shù)據(jù)格式的原始設(shè)備數(shù)據(jù)提交給統(tǒng)一中間層,由統(tǒng)一中間層依據(jù)對業(yè)務(wù)分析的理解,生成統(tǒng)一的系統(tǒng)處理數(shù)據(jù)格式XDR(extended Detailed Record),即擴展的詳細記錄,從而提高系統(tǒng)運行層資源的計算能力。(2)數(shù)據(jù)訪問平臺DAP作為數(shù)據(jù)庫中間件和一組服務(wù)的集成,位于數(shù)據(jù)庫和CORBA數(shù)據(jù)總線之間,是數(shù)據(jù)操作的統(tǒng)一通道。DAP通過實現(xiàn)數(shù)據(jù)存儲與業(yè)務(wù)處理邏輯相分離,保證數(shù)據(jù)存儲與業(yè)務(wù)的無關(guān)性,有利于實現(xiàn)高性能的數(shù)據(jù)存儲事務(wù)操作。同時,該系統(tǒng)可根據(jù)需要連接多個DAP在CORBA總線上,使其能夠自動有效地實現(xiàn)負載平衡。(3)業(yè)務(wù)處理是計費系統(tǒng)的重要部分,主要包括計費管理、結(jié)算管理、賬務(wù)管理和信用管理等功能模塊。這些模塊構(gòu)建在CORBA總線上,在邏輯上和物理上是對等的,具有可重復(fù)性,可以實現(xiàn)業(yè)務(wù)處理的均衡負載,有助于新業(yè)務(wù)的擴展。(4)外部接口是一系列面向系統(tǒng)管理員、操作員和最終用戶的輔助工具集,主要提供統(tǒng)計、查詢、出賬、結(jié)算和系統(tǒng)配置等功能。因為CORBA具有語言無關(guān)性,開發(fā)人員可使用熟悉或高效的語言進行開發(fā)和實現(xiàn)外部接口,從而提高開發(fā)的效率和降低開發(fā)人員的勞動強度。同時這種語言無關(guān)的特性也有利于實現(xiàn)計費系統(tǒng)的無縫集成。(5)CORBA中間件作為計費系統(tǒng)的核心模塊,主要負責(zé)各主機間的連接和通信。在該系統(tǒng)架構(gòu)中,CORBA中間件擔(dān)當對象Servent資源管理器的角色,為分布式應(yīng)用提供實時的、高效的、可靠的、跨越不同操作系統(tǒng)、不同網(wǎng)絡(luò)環(huán)境、不同編程語言的對象傳送服務(wù)。
同時,CORBA中間件還構(gòu)造了一個多層結(jié)構(gòu)的應(yīng)用和開發(fā)平臺,其主要組成部分包括應(yīng)用程序開發(fā)接口SmartAgent、運行核心、負載平衡等。SmartAgent是一組功能完善的函數(shù),應(yīng)用程序通過此組函數(shù)與各個節(jié)點上的對象交換信息,獲取該節(jié)點對象提供的服務(wù);運行核心是給應(yīng)用進程提供服務(wù),對網(wǎng)絡(luò)狀態(tài)進行監(jiān)控,處理各種異常情況;負載平衡允許動態(tài)加載模塊等。
3 SmartAgent和負載平衡策略
3.1 SmartAgent
CORBA中間件提供的是一個開發(fā)平臺,與一般的應(yīng)用程序不同,其表現(xiàn)形式主要是通過API或Class來給客戶程序調(diào)用。在基于CORBA計費系統(tǒng)中,所有服務(wù)和調(diào)用都是基于對象的,而這些對象服務(wù)程序分布在網(wǎng)絡(luò)上的大量節(jié)點上,因此當一個節(jié)點要獲取另外一個節(jié)點的計算結(jié)果時,只需要獲取這個節(jié)點的對象服務(wù)程序的引用。依據(jù)這些特點設(shè)計了SmartAgent類圖,如圖3所示。
圖3說明了一個節(jié)點通過SmartAgent獲得另外一個節(jié)點的引用過程。在SmartAgent類中存在一個Object_Group_Factory的對象,此對象封裝了"各類對象引用集合"的管理和操作,其中resolve( )可以得到一個"引用集合"的指針,Make_group( )可以創(chuàng)建一個"引用集合".而"引用集合"Object_Group負責(zé)同一類引用的管理和操作,其中Resolve_with_id( )可以獲得該集合中的一個元素,Bind( )可以將一個元素插入到該集合中,Unbind( )可以把一個元素從該集合中刪除。
SmartAgent的作用主要有二點:(1)屏蔽底層ORB的編程細節(jié)。當客戶端要獲得一個引用時,客戶程序不需要了解CORBA編程細節(jié)和底層通信問題,只需調(diào)用SmartAgent的resolve( )方法就可得到,或直接利用數(shù)據(jù)路由調(diào)用SmartAgent的Do( )方法。(2)為實現(xiàn)靈活的負載平衡策略提供條件。SmartAgent在初始化時和各個需要通信的模塊預(yù)先建立多個數(shù)據(jù)通道,此數(shù)據(jù)通道的表現(xiàn)形式為Object_Group_
Factory類。當客戶端請求和另外的模塊進行通信時,SmartAgent自動從自己的對象引用池中根據(jù)系統(tǒng)配置的負載平衡策略找出空閑的引用,交給客戶程序使用。若客戶程序發(fā)現(xiàn)引用已失效,SmartAgent將自動從LoadBalance服務(wù)器中重新取得對象引用。
3.2 負載平衡策略
負載均衡 NAT(Network Address Translation 網(wǎng)絡(luò)地址轉(zhuǎn)換)簡單地說就是將一個IP地址轉(zhuǎn)換為另一個IP地址,一般用于未經(jīng)注冊的內(nèi)部地址與合法的、已獲注冊的Internet IP地址間進行轉(zhuǎn)換。適用于解決Internet IP地址緊張、不想讓網(wǎng)絡(luò)外部知道內(nèi)部網(wǎng)絡(luò)結(jié)構(gòu)等的場合下。
基于CORBA中間件的負載平衡策略如下:所有服務(wù)接口在"LoadBalance服務(wù)器中注冊",對每個Servent的method都有一個負載因子??蛻舳嗽诔跏蓟瘯r,一次性調(diào)用SmartAgent從LoadBalance獲得所需要的所有服務(wù)對象引用。其中,每個Servent的負載情況算法為:interface的負載因子=(各個method的負載系數(shù)?鄢單位時間內(nèi)調(diào)用次數(shù))?鄢硬件系數(shù)。每個Interface會在單位時間內(nèi)將自己的負載情況統(tǒng)計出來。當SmartAgent從LoadBalance獲取引用時,LoadBalance根據(jù)各個Servent的負載因子分配相應(yīng)的引用。
負載平衡策略的IDL描述如下:
module LoadBalance{
typedef string Member_ID;
typedef sequence Member_ID_List;
struct ObjMember {
Object obj;
Member_ID id; };
typedef string Group_ID;
typedef sequence Group_List;
interface Object_Chain;
interface Object_Chain_Store{
Object_Chain make(in Group_ID);
Object_Chain resolve(in Group_ID) raise (no_such_group);
Group_List List( ); };
interface Object_Chain{
readonly attribute string id;
void bind (in Member member_) raises (duplicate_member);
void unbind (in Member_ID id) raises (no_such_member);
Object resolve( ) raises (no_such_member);
Object resolve_with_id (in Member_ID id) raises (no_such_member);
Member_ID_List members( );
void destroy( ); }; }
4 結(jié) 論
綜上所述,基于CORBA的電信計費系統(tǒng)有如下特點:支持跨平臺和語言無關(guān)的特性,能夠滿足電信級的多平臺、多語言的復(fù)雜分布式計算環(huán)境的要求;具有良好的可擴展性和靈活性,不僅有利于滿足電信用戶的新需求,而且有利于電信運營商自身推廣新業(yè)務(wù)和改善經(jīng)營機制;靈活有效的負載平衡策略,使系統(tǒng)自動實現(xiàn)了負載的均衡,有助于增強系統(tǒng)的穩(wěn)定性和提高系統(tǒng)的性能。統(tǒng)的完整性體現(xiàn)為建設(shè)一個面向所有電信業(yè)務(wù)的、覆蓋全本地網(wǎng)的計費系統(tǒng),提供可供用戶選擇的、形式多樣的繳費方式,多渠道的話費查詢手段。避免帳務(wù)處理中人工與自動并行的現(xiàn)象,實現(xiàn)所有業(yè)務(wù)一張帳單結(jié)算。
-
封裝
+關(guān)注
關(guān)注
127文章
8007瀏覽量
143457 -
網(wǎng)絡(luò)
+關(guān)注
關(guān)注
14文章
7600瀏覽量
89301 -
數(shù)據(jù)采集器
+關(guān)注
關(guān)注
1文章
141瀏覽量
15022
發(fā)布評論請先 登錄
相關(guān)推薦
基于工作流技術(shù)的廣州電信本地計費系統(tǒng)改造
基于SIMULINK的心電信號源系統(tǒng)設(shè)計分析
CORBA
Linux平臺下電信級計費網(wǎng)關(guān)研究
事件服務(wù)在CORBA/SNMP網(wǎng)關(guān)中的應(yīng)用
基于CORBA組件模型的電力實時數(shù)據(jù)庫系統(tǒng)
Web Services/CORBA網(wǎng)關(guān)系統(tǒng)的研究與實現(xiàn)
基于CORBA的電信網(wǎng)絡(luò)性能管理研究與實現(xiàn)
基于XML、CORBA和Agent的分布式搜索模型研究
WCDMA計費系統(tǒng)
開關(guān)電源的小信號模型和環(huán)路設(shè)計方案
![開關(guān)電源的小信號<b class='flag-5'>模型</b>和環(huán)路<b class='flag-5'>設(shè)計方案</b>](https://file1.elecfans.com//web2/M00/A5/81/wKgZomUMOL2AYGyzAABixU2X1qw628.jpg)
基于FPGA的出租車計費系統(tǒng)的設(shè)計與實現(xiàn)
![基于FPGA的出租車<b class='flag-5'>計費</b><b class='flag-5'>系統(tǒng)</b>的設(shè)計與實現(xiàn)](https://file.elecfans.com/web2/M00/49/41/pYYBAGKhtEGASCVVAAAQF3myal8215.jpg)
評論