固網(wǎng)智能化攻克同步難關(guān)
——
固網(wǎng)智能化以后,所有用戶(hù)的號碼信息、智能業(yè)務(wù)數據,甚至基本業(yè)務(wù)和補充業(yè)務(wù)數據都存放在SHLR(SMARTHLR)中,SHLR成為全網(wǎng)的數據中心。
根據用戶(hù)對業(yè)務(wù)的需求變化,用戶(hù)的業(yè)務(wù)數據也需要進(jìn)行更新,也就是說(shuō),從各種渠道受理進(jìn)來(lái)的用戶(hù)業(yè)務(wù)需求信息要及時(shí)地輸入到SHLR中進(jìn)行存放和管理,SHLR配合下層交換網(wǎng)絡(luò )實(shí)現用戶(hù)需要的業(yè)務(wù)。一般,用戶(hù)數據更新信息輸入到SHLR有97自動(dòng)接口和人工操作終端兩種方式,主要采用97自動(dòng)接口方式,因此,需要解決97系統和SHLR用戶(hù)數據同步的問(wèn)題。
出于業(yè)務(wù)負荷和安全的考慮,一般SHLR不會(huì )以單網(wǎng)元的方式存在,而是以1+1主備方式、1+1互備方式或N+1方式進(jìn)行建設,這樣,就面臨著(zhù)多SHLR中的用戶(hù)數據如何保持一致的問(wèn)題,即SHLR間數據同步的問(wèn)題。
如果固網(wǎng)智能化交換機和SHLR間采用MAP協(xié)議,則交換機具有VLR的功能,存儲本交換機管理域內的用戶(hù)數據,呼叫發(fā)生時(shí)查詢(xún)VLR并觸發(fā)VLR中的用戶(hù)業(yè)務(wù)信息,VLR需要與SHLR的數據進(jìn)行同步。
以下以武漢電信固網(wǎng)智能化項目為例,探討SHLR用戶(hù)數據的同步方案。
武漢電信采用“軟交換匯接局完全訪(fǎng)問(wèn)SHLR”的方式進(jìn)行固網(wǎng)智能化改造。采用來(lái)話(huà)、去劃分區匯接的二級網(wǎng)絡(luò )結構,包含兩個(gè)匯接區,每個(gè)匯接區設置1對SS、1對TG,全網(wǎng)設置1對SG、1對SHLR。用戶(hù)數據管理上,采用用戶(hù)數據全上移的方式,SS和SHLR之間采用MAP協(xié)議進(jìn)行交互,SS具備VLR功能。具體組網(wǎng)如圖1所示。
97系統與SHLR間的數據傳送
業(yè)務(wù)受理后,97系統需要將用戶(hù)的受理信息及時(shí)、準確地傳送到SHLR,SHLR需要正確地寫(xiě)入數據,并保證兩個(gè)SHLR間的數據同步。在武漢電信固網(wǎng)智能化項目中,通過(guò)97系統與SHLR間的組網(wǎng)和數據的傳送機制來(lái)保證97系統與SHLR、兩個(gè)SHLR之間的數據同步。
97系統與SHLR的組網(wǎng)方案
武漢SHLR容災系統由營(yíng)房村SHLR-A和洪山SHLR-B構成,每個(gè)SHLR都通過(guò)一個(gè)接口機(分別為BOSS-A和BOSS-B)完成與97系統的交互;為簡(jiǎn)化97接口,BOSS-A作為SHLR與97系統的統一接口通過(guò)中間件與97系統相連;BOSS-A與BOSS-B間采用2M專(zhuān)線(xiàn)相連,97系統和BOSS-B之間的通信通過(guò)BOSS-A進(jìn)行轉發(fā)。
97系統與SHLR的數據傳送機制
97系統業(yè)務(wù)受理后,97接口機通過(guò)中間件服務(wù)器選擇BOSS-A發(fā)送開(kāi)戶(hù)、銷(xiāo)戶(hù)、簽約和去簽約業(yè)務(wù)請求。BOSS-A向SHLR-A的業(yè)務(wù)處理子系統發(fā)送修改用戶(hù)信息請求,同時(shí)通過(guò)BOSS-B向SHLR-B的業(yè)務(wù)處理子系統發(fā)送修改用戶(hù)信息請求,然后等待響應。
如果BOSS-A、BOSS-B均收到成功響應,則BOSS-A給中間件服務(wù)器回雙受理成功的響應。
中間件收到雙受理成功的響應后,向97接口機回送受理成功消息,97系統將工單置“完工”。
如果BOSS-A、BOSS-B均收到操作失敗響應,則BOSS-A給中間件服務(wù)器回雙失敗響應,中間件收到雙操作失敗的響應后,向97接口機回送操作失敗消息,97系統將此工單轉至人工崗進(jìn)行處理,人工崗通過(guò)分析操作失敗原因,對工單進(jìn)行修正、確認后,通過(guò)SHLR的操作終端錄入用戶(hù)數據。
如果對一個(gè)SHLR操作成功而另一個(gè)失敗,BOSS-A給中間件服務(wù)器回一個(gè)成功、一個(gè)失敗的響應,中間件收到該響應后,按照操作失敗進(jìn)行處理,向97接口機回送操作失敗消息,97系統將此工單轉至人工崗進(jìn)行處理;因為此時(shí)一個(gè)SHLR數據已更新,兩個(gè)SHLR中數據已經(jīng)不一致,必須恢復已成功修改的SHLR的數據,保證兩個(gè)SHLR之間數據的一致性,具體方式如下:中間件判斷BOSS-A成功響應消息中的地址,向該BOSS發(fā)起回滾請求;BOSS根據其記錄的數據更新日志,向其業(yè)務(wù)處理子系統發(fā)起回滾請求和回滾內容;SHLR業(yè)務(wù)處理子系統根據BOSS的請求做數據恢復操作,操作完成后,發(fā)確認消息給BOSS;BOSS收到回滾操作成功響應,通知中間件。
從以上描述可看出,在這種組網(wǎng)和傳送機制下,依靠中間件的統一分發(fā)、管理保證兩個(gè)SHLR之間數據的一致性。
SHLR與SS間的數據同步
武漢電信固網(wǎng)智能化SHLR與SS之間采用MAP協(xié)議進(jìn)行交互,SS具備VLR功能,因此固網(wǎng)用戶(hù)開(kāi)戶(hù)及修改用戶(hù)信息等操作,都需要SHLR主動(dòng)將用戶(hù)數據下插到用戶(hù)所在的SS交換機。
SHLR用戶(hù)數據下插機制
SHLR接收到97傳送的數據修改消息后,在修改自身數據的同時(shí),還通過(guò)其MAP功能模塊主動(dòng)向SS發(fā)起實(shí)時(shí)同步操作請求,請求SS更新VLR數據。在正常情況下,SS更新VLR數據成功,如果數據下插過(guò)程中有時(shí)會(huì )因為鏈路異常、批量操作、設備處理性能等原因致使數據無(wú)法正確在SS上保存,因此SHLR必須有一個(gè)失敗重試的機制,確保在失敗后還能繼續下插,直到成功。
為了保證失敗后能一直重試,在SHLR的動(dòng)態(tài)表中增加了一個(gè)字段,用于標識用戶(hù)數據是否同步到交換機,正常情況下為零,代表已經(jīng)正確同步,異常時(shí)大于零,代表需要重試。同時(shí)在SHLR設定一個(gè)定時(shí)任務(wù),在設定的時(shí)間到達時(shí)掃描同步標志,對于同步標志大于零的用戶(hù),發(fā)起同步請求消息,通知MAP向SS同步所有數據。
用戶(hù)數據同步流程
流程說(shuō)明:1)BOSS進(jìn)行用戶(hù)數據修改時(shí),向DBIO發(fā)送消息EV_DBIO_Agent_Req;2)DBIO將變化的數據修改到物理庫;3)DBIO同時(shí)將變化的數據修改到內存庫;4)修改數據庫成功后,向BOSS返回成功響應;5)DBIO向MAP發(fā)送通知消息,通知MAP發(fā)起同步操作;6)HLRMAP收到DBIO通知消息后,立即向DBIO返回響應;7)HLRMAP根據DBIO的通知消息內容,向SS發(fā)起單獨同步操作;8)IMS返回正確的消息,HLRMAP不做處理,直接返回。
流程說(shuō)明:1)-7)同正常流程;8)HLRMAP收到失敗的響應;9)HLRMAP發(fā)送消息到內存庫數據,將同步標志加1,于是在內存庫中就產(chǎn)生了此用戶(hù)的失敗記錄;10)DBIO收到BOSS系統對此用戶(hù)的第二次操作;11)修改物理庫成功;12)再修改內存庫,由于內存庫中有此用戶(hù)的失敗記錄,則向DBIO返回失敗響應,拒絕此次操作;13)DBIO再向BOSS返回失敗,導致BOSS操作異常。
定時(shí)重試同步方法
為保證SHLR的數據能萬(wàn)無(wú)一失地同步到SS,SHLR采用定時(shí)重試的同步機制,具體同步方法是:DBIO設置一個(gè)定時(shí)任務(wù),時(shí)間到達時(shí),掃描用戶(hù)記錄中的同步標志,對于同步標志為1的用戶(hù)向MAP發(fā)通知消息,通知MAP同步當前用戶(hù)數據。
DBIO掃描不是同時(shí)操作所有用戶(hù),而是每次同步的用戶(hù)數最多50條,每天最多同步250次,因此一天內最多可以同步12500條記錄,每次定時(shí)1~2S,一天定時(shí)同步的最少時(shí)間就是250s,每秒發(fā)送50條MAP消息。
SHLR用戶(hù)數據同步是保證固網(wǎng)智能化工程后及時(shí)開(kāi)通業(yè)務(wù)、順利提供業(yè)務(wù)的基礎,因此必須制定正確有效的同步方案保證從97受理到業(yè)務(wù)開(kāi)通、使用的全流程的數據同步。06266
評論