<meter id="pryje"><nav id="pryje"><delect id="pryje"></delect></nav></meter>
          <label id="pryje"></label>

          新聞中心

          EEPW首頁 > 測試測量 > 設計應用 > 電信網(wǎng)中業(yè)務沖突檢測的研究

          電信網(wǎng)中業(yè)務沖突檢測的研究

          ——
          作者:全潤青 陸以勤 王嘉晉 時間:2007-01-25 來源:電信技術 收藏
          早在20世紀80年代,貝爾實驗室就首次提出了業(yè)務沖突問題。根據(jù)ITU-T對業(yè)務沖突的描述,業(yè)務沖突是指一個業(yè)務邏輯實例對另一業(yè)務邏輯實例或對同一業(yè)務邏輯的不同業(yè)務邏輯實例的不利影響。
           
          實際中的業(yè)務沖突可以理解為電信業(yè)務在實現(xiàn)時的相互干擾。

          1、 Tools概述

          Petri網(wǎng)是一種既具有圖形表達能力又具有嚴格數(shù)學定義的模擬工具,(Colored Petri Nets)則是對它的一種擴展。適用于對具有并發(fā)性和分布式特點的電信系統(tǒng)進行圖形化建模,并描述系統(tǒng)的動態(tài)特征。CPN Tools可以對軟件中使用到的語義和結構進行自動檢測,并為最后的仿真結果提供報告。利用CPN Tools對已知業(yè)務邏輯的電信業(yè)務進行建模和仿真,可以靜態(tài)地檢測出電信業(yè)務之間可能存在的沖突。

          顏色集就是對建模中要用到的數(shù)據(jù)類型進行定義。顏色集的定義是CPN Tools中的重要部分,它包括基本顏色集和復合顏色集。位置和變遷則是CPN Tools中另外兩個重要的概念。位置表示系統(tǒng)各個狀態(tài),變遷則表示系統(tǒng)要被觸發(fā)的事件。位置和變遷之間通過有向?。╝rc)連接。

          CPN Tools對業(yè)務的建模主要是把中的網(wǎng)元進行抽象,并利用CPN Tools本身分層式結構自頂向下地重建絡系統(tǒng),如圖1所示。CPN Tools抽象出了現(xiàn)有電信的主要功能構件,并將它們之間的通信內(nèi)容封裝成CPN Tools中的顏色集。

          利用CPN Tools對電信網(wǎng)系統(tǒng)建模

           

                                     圖1 利用CPN Tools對電信網(wǎng)系統(tǒng)建模


          2、利用CPN Tools檢測業(yè)務沖突的案例

          下面兩個案例所描述的業(yè)務沖突是將系統(tǒng)建模的業(yè)務運行的最終仿真結果通過CPN Tools建模并仿真所檢測到的存在業(yè)務沖突的例子。我們這里所研究的業(yè)務沖突表現(xiàn)形式主要有功能互斥、功能屏蔽、功能死鎖或死循環(huán)和功能違反等。

          案例1:游子歸家業(yè)務和同振業(yè)務之間的沖突(功能死循環(huán)類)

          游子歸家業(yè)務屬于被叫方業(yè)務,就是把設定了游子歸家業(yè)務的呼叫接續(xù)到其轉移的號碼。同振業(yè)務也屬于被叫方業(yè)務,主要是在主叫方呼叫發(fā)起時,實現(xiàn)被叫方及其設定的同振號碼的終端同時振鈴。

          假設號碼為1350xxxxxxx的用戶申請了游子歸家業(yè)務,其轉移號碼為8711xxxx;而8711xxxx申請了同振業(yè)務,同振號碼為1350xxxxxxx。現(xiàn)在用戶A撥打號碼1350xxxxxxx,而1350xxxxxxx的接續(xù)轉移到8711xxxx,同時8711xxxx的同振又使話路接續(xù)回1350xxxxxxx,這時1350xxxxxxx和8711xxxx兩個號碼之間就形成了話路循環(huán)的業(yè)務沖突。經(jīng)過使用CPN Tools模型運行一步到位仿真,證明號碼1350xxxxxxx的游子歸家業(yè)務和號碼8711xxxx的同振業(yè)務不停地進行話路循環(huán)接續(xù)。在實際電信網(wǎng)中,這種情形有可能實現(xiàn)不了正常的話路呼叫,嚴重時會造成電信系統(tǒng)局部癱瘓。

          案例2:移機不改號(NP)業(yè)務和800主叫付費業(yè)務之間的沖突(功能違反類)

          NP業(yè)務屬于主叫方業(yè)務,實現(xiàn)的功能是主叫方物理號碼變更時而不改變原有的邏輯號碼。800業(yè)務屬于被叫方業(yè)務,由被叫方付費,而且呼叫的接續(xù)是從800號碼接續(xù)的物理號碼中選擇與主叫方最近的物理號碼。

          假設號碼為871100xx的用戶申請了NP業(yè)務,它對應的邏輯號碼是852900xx;而800號碼800111abcd對應的物理號碼有871100zz和852900yy?,F(xiàn)在871100xx號碼撥打800111abcd,按照就近接入的原則,系統(tǒng)會將871100xx與871100zz進行話路接續(xù)。但是871100xx申請的NP業(yè)務使系統(tǒng)判斷主叫號碼為852900xx,從而實際完成的話路接續(xù)是852900xx和852900yy,這就是發(fā)生了功能未實現(xiàn)的業(yè)務沖突。

          經(jīng)過使用CPN Tools模型運行一步到位仿真,證明號碼871100xx的移機不改號業(yè)務和號碼800111abcd的就近接入業(yè)務之間業(yè)務功能不能正確實現(xiàn)。在實際電信網(wǎng)中,這種情形有可能造成呼叫話路不能正確接續(xù)的沖突,從而影響電信網(wǎng)業(yè)務的管理。

          3、業(yè)務沖突研究的發(fā)展

          目前,關于電信業(yè)務的研究主要集中在軟件工程的方法、形式化語言的描述和在線的檢測技術三個方面。

          電信系統(tǒng)是一個巨大的、實時的分布式系統(tǒng),如果嚴格按照軟件工程技術開發(fā)一個電信業(yè)務,那么業(yè)務產(chǎn)生沖突的可能性就會減少。因此,電信網(wǎng)中的新開發(fā)業(yè)務和已有業(yè)務的就可以借鑒軟件工程中的技術和嚴格的質(zhì)量控制。

          而形式化語言描述業(yè)務沖突的最大優(yōu)點就是可以直接描述電信系統(tǒng)以及業(yè)務的運行狀態(tài),而且形式化語言可以自動刻畫出業(yè)務運行引起的系統(tǒng)變化和行為,從而很容易根據(jù)狀態(tài)報告判斷出系統(tǒng)中是否存在業(yè)務沖突。因此,形式化語言描述也適合已知業(yè)務邏輯的業(yè)務。

          以上兩種都側重于對業(yè)務沖突的離線檢測。但是,業(yè)務在實際運行的任何時刻都有可能發(fā)生沖突,這就意味著業(yè)務沖突數(shù)量倍數(shù)于業(yè)務數(shù)量的增長,僅僅依靠靜態(tài)檢測技術遠遠不能滿足電信業(yè)務(尤其是增值業(yè)務)開發(fā)對系統(tǒng)的要求。業(yè)務沖突的動態(tài)檢測是一種必然趨勢。所謂動態(tài)檢測就是在業(yè)務運行環(huán)境中獲取業(yè)務的必要信息(如業(yè)務特征、業(yè)務邏輯等),再依據(jù)業(yè)務設計規(guī)范判斷可能存在的業(yè)務沖突。動態(tài)檢測技術使得在電信網(wǎng)中開發(fā)新業(yè)務的同時保證已有業(yè)務穩(wěn)定地運行成為可能,所以動態(tài)檢測必將成為解決業(yè)務沖突的主要技術。

          4、小結

          隨著電信行業(yè)的飛速發(fā)展,電信業(yè)務的開發(fā)

          也將越來越具有獨立性和開放性,而業(yè)務沖突勢必成為電信業(yè)發(fā)展的瓶頸。所以對業(yè)務沖突以及業(yè)務沖突檢測的研究具有非常重要的意義,它將使電信運營商更好地服務于客戶。



          評論


          相關推薦

          技術專區(qū)

          關閉
          看屁屁www成人影院,亚洲人妻成人图片,亚洲精品成人午夜在线,日韩在线 欧美成人 (function(){ var bp = document.createElement('script'); var curProtocol = window.location.protocol.split(':')[0]; if (curProtocol === 'https') { bp.src = 'https://zz.bdstatic.com/linksubmit/push.js'; } else { bp.src = 'http://push.zhanzhang.baidu.com/push.js'; } var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(bp, s); })();