專利名稱:一種跨協(xié)議實(shí)現(xiàn)故障切換的方法及系統(tǒng)的制作方法
技術(shù)領(lǐng)域:
本發(fā)明涉及網(wǎng)絡(luò)通信技術(shù)領(lǐng)域,尤其涉及一種直徑(Diameter)協(xié)議與半 徑(Radius)協(xié)議間實(shí)現(xiàn)故障切換(Failover )的方法及系統(tǒng)。
背景技術(shù):
自網(wǎng)絡(luò)通信技術(shù)誕生以來,認(rèn)證、授權(quán)及計(jì)費(fèi)(AAA , Authentication 、 Authorization Accounting)體制已成為通信網(wǎng)^各i逸營的基礎(chǔ)。傳統(tǒng)的通信網(wǎng)絡(luò) 中多采用Radius協(xié)議實(shí)現(xiàn)AAA技術(shù),AAA系統(tǒng)與預(yù)付費(fèi)系統(tǒng)(PPS , PrcPaid System )之間釆用Radius協(xié)議互相傳輸計(jì)費(fèi)消息。
目前,隨著第三代移動通信系統(tǒng)向基于全I(xiàn)P的網(wǎng)絡(luò)架構(gòu)的演進(jìn),Diamctcr 協(xié)議已成為新一代的AAA技術(shù),且由于Diameter協(xié)議具有強(qiáng)大的可擴(kuò)展性和 安全性而備受關(guān)注,國際電信聯(lián)盟(ITU)、第三代合作伙伴計(jì)劃(3GPP)和第 三代合作伙伴計(jì)劃2 (3GPP2)等國際標(biāo)準(zhǔn)組織已正式將Diameter協(xié)議作為下 一代網(wǎng)絡(luò)(NGN )、寬帶碼分多址(WCDMA )和碼分多址(CDMA ) 2000等 未來通信網(wǎng)絡(luò)的首選AAA協(xié)議。在新的預(yù)付費(fèi)規(guī)范中,將由在線計(jì)費(fèi)系統(tǒng) (OCS)代替?zhèn)鹘y(tǒng)的PPS完成預(yù)付費(fèi)用戶的費(fèi)用計(jì)算和配額分配,因此,傳統(tǒng) 的電信設(shè)備有升級的需求。
傳統(tǒng)的電信設(shè)備、如分組數(shù)據(jù)交換節(jié)點(diǎn)(PDSN)和PPS與AAA系統(tǒng)的交 互均采用Radius協(xié)議,而OCS與AAA系統(tǒng)的交互采用Diameter協(xié)議,因此 AAA系統(tǒng)需要實(shí)現(xiàn)從Radius協(xié)議到Diameter協(xié)議的轉(zhuǎn)換。圖1為傳統(tǒng)的采用 Radius協(xié)議實(shí)現(xiàn)的計(jì)費(fèi)系統(tǒng),圖2為引入Diameter協(xié)議后的計(jì)費(fèi)系統(tǒng),現(xiàn)有的 計(jì)費(fèi)系統(tǒng)一般釆用圖2所示的計(jì)費(fèi)系統(tǒng)直接替代傳統(tǒng)的計(jì)費(fèi)系統(tǒng),即將具有 協(xié)議轉(zhuǎn)換功能的AAA系統(tǒng)代替?zhèn)鹘y(tǒng)的AAA系統(tǒng);同時(shí),用OCS代替?zhèn)鹘y(tǒng)的PPS。但是,現(xiàn)有的計(jì)費(fèi)系統(tǒng)存在一定缺陷,如下首先,將傳統(tǒng)的計(jì)費(fèi)系統(tǒng) 直接替換成現(xiàn)有的計(jì)費(fèi)系統(tǒng)會造成一定資源的浪費(fèi);其次,在現(xiàn)有計(jì)費(fèi)系統(tǒng)實(shí) 用初期由于系統(tǒng)的穩(wěn)定性不高會導(dǎo)致業(yè)務(wù)不可用,用戶體驗(yàn)度不佳,如OCS 發(fā)生故障時(shí)或AAA系統(tǒng)到OCS之間的鏈路出現(xiàn)異常時(shí)現(xiàn)有計(jì)費(fèi)系統(tǒng)將無法繼 續(xù)為用戶提供服務(wù),并且,由于Failover機(jī)制未能應(yīng)用于現(xiàn)有計(jì)費(fèi)系統(tǒng)中,所 以一旦現(xiàn)有計(jì)費(fèi)系統(tǒng)出現(xiàn)故障直到系統(tǒng)恢復(fù)正常過程中計(jì)費(fèi)操作將無法進(jìn)行。
發(fā)明內(nèi)容
有鑒于此,本發(fā)明的主要目的在于提供一種跨協(xié)議實(shí)現(xiàn)Failover的方法及 系統(tǒng),使計(jì)費(fèi)系統(tǒng)從出現(xiàn)故障到故障恢復(fù)過程中仍能為用戶提供服務(wù)。 為達(dá)到上述目的,本發(fā)明的技術(shù)方案是這樣實(shí)現(xiàn)的 本發(fā)明提供了 一種跨協(xié)議實(shí)現(xiàn)故障切換的系統(tǒng),該系統(tǒng)包括 AAA系統(tǒng),用于檢測Diameter服務(wù)器Diameter Server的工作狀態(tài),確定 Diameter Server處于正常工作狀態(tài)時(shí),執(zhí)行與Diameter Server間的計(jì)費(fèi)操作; 確定Diameter Server出現(xiàn)故障時(shí),執(zhí)行與Radius服務(wù)器Radius Server間的計(jì)費(fèi) 操作;
Radius Server,用于與AAA系統(tǒng)互相傳輸計(jì)費(fèi)消息,執(zhí)行計(jì)費(fèi)操作; Diameter Server,用于與AAA系統(tǒng)互相傳輸計(jì)費(fèi)消息,執(zhí)行計(jì)費(fèi)操作。 其中,所述AAA系統(tǒng),進(jìn)一步用于確定Diameter Server恢復(fù)正常工作狀
態(tài)時(shí),執(zhí)行與Diameter Server間的計(jì)費(fèi)操作。
其中,所述Radius Server進(jìn)一步包括協(xié)議轉(zhuǎn)換才莫塊,用于Diameter Scrvcr
與Radius Server之間Radius協(xié)議的更新的用戶數(shù)據(jù)消息和Diameter協(xié)議的更
新的用戶數(shù)據(jù)消息之間的轉(zhuǎn)換;相應(yīng)的,
所述Radius Server,進(jìn)一步用于將轉(zhuǎn)換成Diameter協(xié)議的更新的用戶數(shù)據(jù)
消息上傳到Diameter Server、或才妻收Diameter Server下發(fā)的Diameter協(xié)i義的更
新的用戶數(shù)據(jù)消息;
戶斤述Diameter Server,進(jìn)一步用于4妄4t Radius Server上4專的Diamelcr十辦i義
6的更新的用戶數(shù)據(jù)消息、或?qū)iameter協(xié)議的更新的用戶數(shù)椐消息下發(fā)到 Radius Server。
本發(fā)明還提供了 一種跨協(xié)議實(shí)現(xiàn)故障切換的方法,該方法包括
4企測Diameter Server的工作狀態(tài),當(dāng)Diameter Server處于正常工作狀態(tài)時(shí),
AAA系統(tǒng)執(zhí)行與Diameter Server間的計(jì)費(fèi)操作;當(dāng)Diameter Server出現(xiàn)故障時(shí),
AAA系統(tǒng)執(zhí)行與Radius Server間的計(jì)費(fèi)操作。 該方法進(jìn)一步包括
當(dāng)Diameter Server恢復(fù)正常工作狀態(tài)時(shí),AAA系統(tǒng)執(zhí)行與Diameter Scrva.
間的計(jì)費(fèi)操作。
本發(fā)明中,所述AAA系統(tǒng)執(zhí)行與Radius Server間的計(jì)費(fèi)操作,具體為 AAA系統(tǒng)將接收到的Radius計(jì)費(fèi)請求消息發(fā)送到Radius Server, Radius
Server回復(fù)計(jì)費(fèi)響應(yīng)消息*會AAA系統(tǒng);或,
AAA系統(tǒng)將未4皮Diameter Server處理的Diameter計(jì)費(fèi)請求消息轉(zhuǎn)換成
Radius計(jì)費(fèi)請求消息后發(fā)送到Radius Server, Radius Server回復(fù)計(jì)費(fèi)響應(yīng)消息
給AAA系統(tǒng),之后AAA系統(tǒng)將接收到的Radius計(jì)費(fèi)請求消息發(fā)送到Radius
Server, Radius Server回復(fù)計(jì)費(fèi)響應(yīng)消息給AAA系統(tǒng)。
本發(fā)明中,所述AAA系統(tǒng)4丸行與Diameter Server間的計(jì)費(fèi)搡作,具體為 AAA系統(tǒng)將與Radius Server間進(jìn)行的計(jì)費(fèi)操作再次轉(zhuǎn)為與Diameter Scrvcr
間進(jìn)行的計(jì)費(fèi)操作,將接收的Radius計(jì)費(fèi)請求消息轉(zhuǎn)換成Diameter計(jì)費(fèi)請求消
息并發(fā)送到Diameter Server,之后Diameter Server回復(fù)Diameter計(jì)費(fèi)響應(yīng)消息
給AAA系統(tǒng)。
該方法進(jìn)一步包括
Diameter Server出現(xiàn)故障時(shí),Radius Server才妄收并處理AAA系統(tǒng)發(fā)送的計(jì) 費(fèi)請求消息,且存儲Radius協(xié)議的更新的用戶數(shù)據(jù)消息,待Diameter Server恢 復(fù)正常后,協(xié)議轉(zhuǎn)換才莫塊將Radius協(xié)議的更新的用戶lt據(jù)消息轉(zhuǎn)換成Diamder 協(xié)議的更新的用戶凄t提消息后上傳《^ Diameter Server;
Diameter Server恢復(fù)正常時(shí),Diameter Server將Diameter協(xié)議的更新的用戶數(shù)據(jù)消息下發(fā)到Radius Server,協(xié)議轉(zhuǎn)換模塊將更新的用戶數(shù)據(jù)消息轉(zhuǎn)換成 Radius協(xié)議的更新的用戶數(shù)據(jù)消息并存儲。 本發(fā)明中,所述檢測操作具體為
AAA系統(tǒng)通過Diameter協(xié)議的鏈路握手消息DWR/DWA或流控制傳輸協(xié) 議SCTP中的心跳^r觀'J才幾制^r觀'J Diameter Server的工作狀態(tài)。 進(jìn)一步地,該方法還包括
Diameter Server處于正常工作狀態(tài)時(shí),Diameter Server將Diameter協(xié)議的
更新的用戶數(shù)據(jù)消息下發(fā)到Radius Server,協(xié)議轉(zhuǎn)換模塊將更新的用戶數(shù)據(jù)消 息轉(zhuǎn)換成Radius協(xié)議的更新的用戶數(shù)據(jù)消息并存儲。
本發(fā)明提供的跨協(xié)議實(shí)現(xiàn)Failover的方法及系統(tǒng),提出了 Diameter服務(wù)器 (Diameter Server )禾口 Radius月良務(wù)器(Radius Server )兩個(gè)才莫塊,并^1尋Diameter 協(xié)議中的翻譯代理功能與Failover機(jī)制相結(jié)合,AAA系統(tǒng)檢測Diameter Server 的工作狀態(tài),當(dāng)Diameter Server處于正常工作狀態(tài)時(shí),AAA系統(tǒng)執(zhí)行與Diameter Server間的計(jì)費(fèi)操作;當(dāng)Diameter Server出現(xiàn)故障時(shí),進(jìn)入Failover處理過程, AAA系統(tǒng)執(zhí)行與Radius Server間的計(jì)費(fèi)操作;因此,本發(fā)明提高了計(jì)費(fèi)系統(tǒng)的 穩(wěn)定性,避免升級初期由于新的計(jì)費(fèi)系統(tǒng)出現(xiàn)故障而導(dǎo)致系統(tǒng)不可用,提高了 用戶體驗(yàn)度。本發(fā)明可在Radius協(xié)議計(jì)費(fèi)系統(tǒng)的基礎(chǔ)上只增加一個(gè)Diameter 協(xié)議的處理節(jié)點(diǎn),如OCS,而Radius協(xié)議沖莫塊就用傳統(tǒng)的PPS,只需在PPS 中增加一個(gè)協(xié)議轉(zhuǎn)換模塊即可,因此節(jié)省了資源。
進(jìn)一步地,將Diameter協(xié)議中的翻譯代理功能與Failback機(jī)制相結(jié)合,當(dāng) Diameter Server恢復(fù)正常工作狀態(tài)時(shí),進(jìn)入Failback處理過程,AAA系統(tǒng)再次 執(zhí)行與Diameter Server間的計(jì)費(fèi)操作,進(jìn)一步提高了應(yīng)用新Diameter協(xié)議的 Diameter Server的利用率。
本發(fā)明還提出Diameter Server與Radius Server之間的凝:據(jù)同步方法,保證 了 Diameter Server古丈障恢復(fù)前后Diameter Server與Radius Server中用戶凄t才居消 息的一致,進(jìn)一步提高了計(jì)費(fèi)系統(tǒng)的安全、可靠性。
圖1為傳統(tǒng)的采用Radius協(xié)議實(shí)現(xiàn)的計(jì)費(fèi)系統(tǒng);
圖2為引入Diameter協(xié)議后的計(jì)費(fèi)系統(tǒng);
圖3為本發(fā)明的系統(tǒng)結(jié)構(gòu)示意圖4為本發(fā)明Failover的方法實(shí)現(xiàn)流程示意圖。
具體實(shí)施例方式
本發(fā)明的基本思想是提出了 Diameter Server和Radius Server兩個(gè)功能模 塊,并將Diameter協(xié)議中的翻譯代理功能與Failover機(jī)制相結(jié)合,AAA系統(tǒng)檢 測Diameter Server的工作狀態(tài),當(dāng)Diameter Server處于正常工作狀態(tài)時(shí),AAA 系統(tǒng)執(zhí)行與Diameter Server間的計(jì)費(fèi)操作;當(dāng)Diameter Server出現(xiàn)故障時(shí),進(jìn) 入I ailover處理過程,AAA系統(tǒng)執(zhí)行與Radius Server間的計(jì)費(fèi)操作;
進(jìn)一步地,將Diameter協(xié)議中的翻譯代理功能與Failback機(jī)制相結(jié)合,當(dāng) Diameter Server恢復(fù)正常工作狀態(tài)時(shí),進(jìn)入Failback處理過程,AAA系統(tǒng)再次 執(zhí)行與Diameter Server間的計(jì)費(fèi)操作;
本發(fā)明還提出Diameter Server與Radius Server之間的數(shù)據(jù)同步方法,用于 保證Diameter Server與Radius Server中用戶數(shù)據(jù)消息的一致性。
下面結(jié)合附圖及具體實(shí)施例對本發(fā)明作進(jìn)一步詳細(xì)說明。
圖3為本發(fā)明計(jì)費(fèi)系統(tǒng)結(jié)構(gòu)示意圖,如圖所述,該系統(tǒng)包括相關(guān)網(wǎng)元20、 AAA系統(tǒng)21 、 Diameter Server 22和Radius Server 23 ,其中,
所述相關(guān)網(wǎng)元20,用于通過Radius協(xié)議向AAA系統(tǒng)21發(fā)出Radius計(jì)費(fèi) 請求消息或接收AAA系統(tǒng)21返回的Radius計(jì)費(fèi)響應(yīng)消息;
這里,所述相關(guān)網(wǎng)元20可以為PDSN或網(wǎng)關(guān)GPRS支持節(jié)點(diǎn)(GGSN )等。
所述AAA系統(tǒng)21 ,用于4企測Diameter Server 22的工作狀態(tài),確定Diamclcr Server 22工作正常時(shí),將相關(guān)網(wǎng)元20發(fā)出的Radius計(jì)費(fèi)請求消息轉(zhuǎn)換成 Diameter計(jì)費(fèi)i青求消息并發(fā)送到Diameter Server 22或S奪Diameter Server 22返 回的Diameter計(jì)費(fèi)響應(yīng)消息轉(zhuǎn)換成Radius計(jì)費(fèi)響應(yīng)消息并發(fā)送到相關(guān)網(wǎng)元20;確定Diameter Server 22出現(xiàn)故障時(shí),將相關(guān)網(wǎng)元20發(fā)出的Radius計(jì)費(fèi)請求消 息發(fā)送到Radius Server 23或?qū)adius Server 23返回的Radius計(jì)費(fèi)響應(yīng)消息發(fā) 送到相關(guān)網(wǎng)元20;確定Diameter Server 22恢復(fù)正常時(shí),再次與Diameter Server 22進(jìn)行后續(xù)信息的傳輸;
這里,AAA系統(tǒng)21通過Diameter協(xié)議與Diameter Server 22互相傳輸計(jì)費(fèi) 消息,通過Radius協(xié)議與Radius Server 23互相傳輸計(jì)費(fèi)消息;
所述Diameter Server 22,用于接收AAA系統(tǒng)21發(fā)送的Diameter計(jì)費(fèi)請求 消息,并4艮據(jù)本地存儲的用戶配額信息回復(fù)Diameter計(jì)費(fèi)響應(yīng)消息給AAA系 統(tǒng)21;
所述Radius Server 23,用于接收AAA系統(tǒng)21發(fā)送的Radius計(jì)費(fèi)請求消息, 并根據(jù)本地存儲的用戶配額信息回復(fù)Radius計(jì)費(fèi)響應(yīng)消息給AAA系統(tǒng)21;
本發(fā)明中,所述Radius Server 23可為PPS,所述Diameter Server 22可為 OCS; Diameter Server 22和Radius Server 23可為用戶提供認(rèn)證、授權(quán)和計(jì)費(fèi)等 服務(wù);
所述Radius Server 23進(jìn)一步包括協(xié)議轉(zhuǎn)換模塊24,用于Diameter Server 22 與Radius Server 23之間Radius協(xié)議的更新的用戶數(shù)據(jù)消息和Diameter協(xié)議的 更新的用戶數(shù)據(jù)消息之間的轉(zhuǎn)換;
所述Diameter Server 22 , 進(jìn)一步用于接收Radius Server上傳的Diamctcr 協(xié)議的更新的用戶數(shù)據(jù)消息、或?qū)iameter協(xié)議的更新的用戶數(shù)據(jù)消息下發(fā)到 Radius Server。;
所述Radius Server 23,進(jìn)一步用于將轉(zhuǎn)換成Diameter協(xié)議的更新的用戶數(shù) 4居消息上傳至U Diameter Server、或才姿收Diameter Server下發(fā)的Diameter十辦i義的 更新的用戶數(shù)據(jù)消息,具體的,
Diameter Server 22工4乍正常日于,才姿4史Diameter Server 22下發(fā)的Diamctcr 協(xié)議的更新的用戶數(shù)據(jù)消息,協(xié)議轉(zhuǎn)換模塊24將該更新的用戶數(shù)據(jù)消息轉(zhuǎn)換成 Radius協(xié)議的更新的用戶數(shù)據(jù)消息并存儲;Diameter Server 22出現(xiàn)故障時(shí),接 收并處理AAA系統(tǒng)21發(fā)送的計(jì)費(fèi)請求消息,且存儲Radius協(xié)議的更新的用戶數(shù)據(jù)消息,待Diameter Server 22恢復(fù)正常后,協(xié)議轉(zhuǎn)換模塊24將Radius協(xié)議 的更新的用戶數(shù)據(jù)消息轉(zhuǎn)換成Diameter協(xié)議的更新的用戶數(shù)據(jù)消息后上傳給 Diameter Server 22;
這里,因?yàn)橄到y(tǒng)在運(yùn)行過程中Diameter Server 22或Radius Server 23本地 存儲的用戶數(shù)據(jù)消息會在每一次處理計(jì)費(fèi)請求消息后發(fā)生變化,因此Diameter Server 22或Radius Server 23將用新的用戶數(shù)據(jù)消息替換各自本地存儲的原有 用戶數(shù)據(jù)消息,此處所述更新的用戶數(shù)據(jù)消息,為Diameter Server 22出現(xiàn)故 障到Diameter Server 22恢復(fù)正常過程中發(fā)生變化的用戶數(shù)據(jù)消息;所述Radius 協(xié)議的更新的用戶數(shù)據(jù)消息,為Radius Server 23本地存儲的發(fā)生變化的用戶 數(shù)據(jù)消息。
基于上述系統(tǒng),對本發(fā)明的實(shí)現(xiàn)方法進(jìn)行詳細(xì)描述。
圖4為本發(fā)明Diameter與Radius協(xié)議間Failover的方法實(shí)現(xiàn)流程示意圖,
如圖4所示,該方法包括以下步驟
步驟401: AAA系統(tǒng)21上電初始化,并與Diameter Server 22建立連接; 這里,所述的建立連接過程具體為AAA系統(tǒng)21首先通過承載協(xié)議,如
流控制傳輸協(xié)議(SCTP)或傳輸控制協(xié)議(TCP)建立與Diameter Server 22
之間的承載鏈路,之后通過能力交換消息(CE^R/CEA )建立與Diameter Server 22
之間的Diameter連4妄。
步驟402:相關(guān)網(wǎng)元20向AAA系統(tǒng)21發(fā)出計(jì)費(fèi)請求消息;
具體為相關(guān)網(wǎng)元20以Radius協(xié)議消息的形式向AAA系統(tǒng)21發(fā)出計(jì)費(fèi)
i,求消息。
步驟403: AAA系統(tǒng)21接收計(jì)費(fèi)請求消息;
具體為AAA系統(tǒng)21接收相關(guān)網(wǎng)元20發(fā)送的Radius計(jì)費(fèi)請求消息。
步驟404: AAA系統(tǒng)21對Diameter Server 22的工作狀態(tài)進(jìn)行檢測,根據(jù)
不同檢測結(jié)果執(zhí)行對應(yīng)計(jì)費(fèi)操作;
具體為如果Diameter Server 22處于正常工作狀態(tài),則執(zhí)行步驟4()5a;如
果Diameter Server 22出現(xiàn)故障,則執(zhí)行步驟405b,進(jìn)入Failover處理過程;如
li果Diameter Server 22恢復(fù)正常工作狀態(tài)時(shí),則執(zhí)行步驟405c,進(jìn)入Failback處 理過程;
這里,所述AAA系統(tǒng)21在本發(fā)明計(jì)費(fèi)系統(tǒng)運(yùn)行過程中持續(xù)對Diameter Server 22進(jìn)行;f企測,即計(jì)費(fèi)系統(tǒng)運(yùn)行時(shí),檢測操作也在同時(shí)進(jìn)行;所述檢測 具體為AAA系統(tǒng)21通過Diameter協(xié)議的鏈路握手消息DWR/DWA或SCTP 中的心跳檢測機(jī)制檢測Diameter Server 22的工作狀態(tài)是否正常;
本發(fā)明中,AAA系統(tǒng)21要確保與Radius Server 23之間的用戶數(shù)據(jù)報(bào)協(xié)議 (UDP )連接通暢,目的在于在Diameter Server 22出現(xiàn)故障過程中計(jì)費(fèi)系統(tǒng) 仍能正常運(yùn)行。
步驟405a: AAA系統(tǒng)21將接收的計(jì)費(fèi)請求消息發(fā)送到Diameter Server 22, Diameter Server 22回復(fù)計(jì)費(fèi)響應(yīng)消息給AAA系統(tǒng)21;
具體為AAA系統(tǒng)21將接收的Radius計(jì)費(fèi)請求消息轉(zhuǎn)換成Diameter計(jì)費(fèi) 請求消息并發(fā)送到Diameter Server 22,之后Diameter Server 22才艮據(jù)本地存儲的 用戶配額信息回復(fù)Diameter計(jì)費(fèi)響應(yīng)消息給AAA系統(tǒng)21;
這里,AAA系統(tǒng)21將Diameter計(jì)費(fèi)請求消息發(fā)送到Diameter Server 22之 前要緩存已轉(zhuǎn)換成的Diameter計(jì)費(fèi)請求消息,目的在于防止Diameter Server 22 出現(xiàn)故障時(shí)造成未發(fā)送成功的Diameter計(jì)費(fèi)請求消息丟失,影響后續(xù)操作,處 理方法為當(dāng)Diameter Server 22出現(xiàn)故障時(shí),AAA系統(tǒng)21在與Radius Scrver 23執(zhí)行計(jì)費(fèi)操作之前首先掃描緩存的Diameter計(jì)費(fèi)請求消息,如果緩存的計(jì)費(fèi) 請求消息已經(jīng)收到Diameter Server 22的回復(fù),則將后續(xù)相關(guān)網(wǎng)元20發(fā)送的 Radius計(jì)費(fèi)請求消息發(fā)送到Radius Server 23進(jìn)行處理;如果緩存的計(jì)費(fèi)請求消 息沒有收到Diameter Server 22的回復(fù),即還沒得到處理,則將Diameter計(jì)費(fèi) 請求消息轉(zhuǎn)換成Radius計(jì)費(fèi)請求消息后發(fā)送到Radius Server 23進(jìn)行處理。
步驟405b: AAA系統(tǒng)21將相關(guān)網(wǎng)元20發(fā)出的計(jì)費(fèi)請求消息發(fā)送到Radius Server 23, Radius Server 23回復(fù)計(jì)費(fèi)響應(yīng)消息給AAA系統(tǒng)21;
具體為AAA系統(tǒng)21檢測到Diameter Server 22出現(xiàn)故障時(shí),進(jìn)入Failover 處理過程,為AAA系統(tǒng)21首先掃描緩存的Diameter計(jì)費(fèi)請求消息,如果此時(shí)AAA系統(tǒng)21已收到Diameter Server 22的回復(fù),即Diameter計(jì)費(fèi)請求消息 已得到Diameter Server 22的處理,則將收到的Radius計(jì)費(fèi)請求消息直接發(fā)送 到Radius Server 23,之后Radius Server 23根據(jù)本地存儲的用戶配額信息回復(fù) Radius計(jì)費(fèi)響應(yīng)消息給AAA系統(tǒng)21;如果此時(shí)AAA系統(tǒng)21還未收到Diameter Server 22的回復(fù),即Diameter計(jì)費(fèi)請求消息還未得到Diameter Server 22的處 理,則AAA系統(tǒng)21首先將Diameter計(jì)費(fèi)請求消息轉(zhuǎn)換成Radius計(jì)費(fèi)請求消 息并發(fā)送到Radius Server 23, Radius Server 23 4艮據(jù)本地存儲的用戶配額信息回 復(fù)Radius計(jì)費(fèi)響應(yīng)消息給AAA系統(tǒng)21 ,之后再將收到的Radius計(jì)費(fèi)請求消息 發(fā)送到Radius Server 23, Radius Server 23才艮據(jù)本i也存^諸的用戶配額信息回復(fù) Radius計(jì)費(fèi)響應(yīng)消息給AAA系統(tǒng)21;
本步驟進(jìn)行過程中還同時(shí)包括以下步驟
AAA系統(tǒng)21才全測到Diameter Server 22故障后, 一直嘗試與Diameter Server 22重新建立連接,檢測Diameter Server 22是否可用,即Diameter Server 22 是否恢復(fù)正常工作狀態(tài);
這里,本步驟AAA系統(tǒng)21依據(jù)Diameter協(xié)議的特點(diǎn)通過底層承載不斷嘗 試與Diameter Server 22重新建立連4妻, 一旦《連;洛重新建立,則重新能力協(xié)商以 確保Diameter Server 22可用;所述Diameter協(xié)i義的特點(diǎn)為Diameter協(xié)議以 SCTP或TCP為承載協(xié)議,具備安全、可靠的連接性。
步驟405c: AAA系統(tǒng)21將接收的計(jì)費(fèi)請求消息發(fā)送到Diameter Server 22, Diameter Server 22回復(fù)計(jì)費(fèi)響應(yīng)消息給AAA系統(tǒng)21;
具體為AAA系統(tǒng)21 #企測到Diameter Server 22恢復(fù)正常工作狀態(tài)時(shí),進(jìn) 入Failback處理過程,為AAA系統(tǒng)將與Radius Server間進(jìn)4亍的計(jì)費(fèi)才喿作再次 轉(zhuǎn)為與Diameter Server間進(jìn)行的計(jì)費(fèi)操作,將接收的Radius計(jì)費(fèi)請求消息轉(zhuǎn)換 成Diameter計(jì)費(fèi)請求消息并發(fā)送到Diameter Server 22,之后Diameter Server 22 根據(jù)本地存儲的用戶配額信息回復(fù)Diameter計(jì)費(fèi)響應(yīng)消息給AAA系統(tǒng)21
步驟406: AAA系統(tǒng)21將接收到的計(jì)費(fèi)響應(yīng)消息返回給相關(guān)網(wǎng)元20;
具體為AAA系統(tǒng)21將接收到的Diameter計(jì)費(fèi)響應(yīng)消息轉(zhuǎn)換成Radius計(jì)費(fèi)響應(yīng)消息后返回給相關(guān)網(wǎng)元20或?qū)⒔邮盏降腞adius計(jì)費(fèi)響應(yīng)消息返回給 相關(guān)網(wǎng)元20。
步驟407:重復(fù)步驟402至步驟406,直至完成當(dāng)前計(jì)費(fèi)操作; 這里,所述當(dāng)前計(jì)費(fèi)操作過程為只處理單條計(jì)費(fèi)請求消息或處理多條計(jì) 費(fèi)請求消息。
本發(fā)明進(jìn)一步提出了 Diameter Server與Radius Server之間的數(shù)據(jù)同步方 法,該方法步驟如下
Diameter Server 22工4乍正常日于,Radius Server 23才姿收Diameter Server 22 以Diameter協(xié)議消息的形式下發(fā)的更新的用戶數(shù)據(jù)消息,協(xié)議轉(zhuǎn)換模塊24將 更新的用戶數(shù)據(jù)消息轉(zhuǎn)換成Radius協(xié)議消息的形式并存儲,這里,所述下發(fā)為 系統(tǒng)每處理一條計(jì)費(fèi)請求消息后Diameter Server 22本地存儲的用戶數(shù)據(jù)消息就 會相應(yīng)改變,這時(shí),Diameter Server 22將向Radius Server 23下發(fā)一次更新的用 戶數(shù)據(jù)消息,即系統(tǒng)每處理一條計(jì)費(fèi)請求消息后Diameter Server 22要向Radius Server 23下發(fā)一次更新的用戶數(shù)據(jù)消息;
Diameter Server 22出現(xiàn)故障時(shí),Radius Server 23 4妻收并處理AAA系統(tǒng)21 發(fā)送的計(jì)費(fèi)請求消息,且存儲Radius協(xié)議的更新的用戶數(shù)據(jù)消息,待Diamctcr Server 22恢復(fù)正常后,協(xié)議轉(zhuǎn)換模塊24將Radius協(xié)議的更新的用戶數(shù)據(jù)消息 轉(zhuǎn)換成Diameter協(xié)議的更新的用戶數(shù)據(jù)消息后上傳給Diameter Server 22;
這里,因?yàn)橄到y(tǒng)在運(yùn)行過程中Diameter Server 22或Radius Server 23本地 存儲的用戶數(shù)據(jù)消息會在每一次處理計(jì)費(fèi)請求消息后發(fā)生變化,因此Diamcter Server 22或Radius Server 23將用新的用戶數(shù)據(jù)消息替換各自本地存儲的原有 用戶數(shù)據(jù)消息,此處所述更新的用戶數(shù)據(jù)消息,為Diameter Server 22出現(xiàn)故 障到Diameter Server 22恢復(fù)正常過程中發(fā)生變化的用戶數(shù)據(jù)消息;所述Radius 協(xié)議的更新的用戶數(shù)據(jù)消息,為Radius Server 23本地存儲的發(fā)生變化的用戶 數(shù)據(jù)消息。
本發(fā)明中,在Diameter Server 22或Radius Server 23與AAA系統(tǒng)21 4丸行 計(jì)費(fèi)操作且信息更新后,即用戶數(shù)據(jù)消息更新后,都需要將更新的用戶數(shù)據(jù)
14消息發(fā)送到對方服務(wù)器,即如果Diameter Server 22與AAA系統(tǒng)21執(zhí)行計(jì)費(fèi) 操作,則Diameter Server 22需要將每次Diameter Server 22本地存儲的更新的 用戶數(shù)據(jù)消息發(fā)送到Radius Server 23;如果Radius Server 23與AAA系統(tǒng)21 執(zhí)行計(jì)費(fèi)操作,則Radius Server 23需要將Radius Server 23本地存儲的更新的 用戶數(shù)據(jù)消息發(fā)送到Diameter Server 22。
以上所述,僅為本發(fā)明的較佳實(shí)施例而已,并非用于限定本發(fā)明的保護(hù)范 圍,凡在本發(fā)明的精神和原則之內(nèi)所作的任何修改、等同替換和改進(jìn)等,均應(yīng) 包含在本發(fā)明的保護(hù)范圍之內(nèi)。
權(quán)利要求
1、一種跨協(xié)議實(shí)現(xiàn)故障切換的系統(tǒng),其特征在于,該系統(tǒng)包括AAA系統(tǒng),用于檢測Diameter服務(wù)器Diameter Server的工作狀態(tài),確定Diameter Server處于正常工作狀態(tài)時(shí),執(zhí)行與Diameter Server間的計(jì)費(fèi)操作;確定Diameter Server出現(xiàn)故障時(shí),執(zhí)行與Radius服務(wù)器Radius Server間的計(jì)費(fèi)操作;Radius Server,用于與AAA系統(tǒng)互相傳輸計(jì)費(fèi)消息,執(zhí)行計(jì)費(fèi)操作;Diameter Server,用于與AAA系統(tǒng)互相傳輸計(jì)費(fèi)消息,執(zhí)行計(jì)費(fèi)操作。
2、 根據(jù)權(quán)利要求1所述的跨協(xié)議實(shí)現(xiàn)故障切換的系統(tǒng),其特征在于,所述 AAA系統(tǒng),進(jìn)一步用于確定Diameter Server恢復(fù)正常工作狀態(tài)時(shí),執(zhí)行與 Diameter Server間的計(jì)費(fèi)操作。
3、 根據(jù)權(quán)利要求2所述的跨協(xié)議實(shí)現(xiàn)故障切換的系統(tǒng),其特征在于, 所述Radius Server進(jìn)一步包括協(xié)議轉(zhuǎn)換模塊,用于Diameter Server與Radius Server之間Radius協(xié)議的更新的用戶數(shù)據(jù)消息和Diameter協(xié)議的更新的 用戶數(shù)據(jù)消息之間的轉(zhuǎn)換;相應(yīng)的,所述Radius Server,進(jìn)一步用于將轉(zhuǎn)換成Diameter協(xié)議的更新的用戶數(shù)據(jù) 消息上傳到Diameter Server、或接收Diameter Server下發(fā)的Diameter協(xié)議的更 新的用戶數(shù)據(jù)消息;所述Diameter Server, 進(jìn)——步用于4妄4欠Radius Server上"(專的Diameter十辦i義 的更新的用戶數(shù)據(jù)消息、或?qū)iameter協(xié)議的更新的用戶數(shù)據(jù)消息下發(fā)到 Radius Server。
4、 一種跨協(xié)議實(shí)現(xiàn)故障切換的方法,其特征在于,該方法包括檢測Diameter Server的工作狀態(tài),當(dāng)Diameter Server處于正常工作狀態(tài)時(shí), AAA系統(tǒng)j丸行與Diameter Server間的計(jì)費(fèi)操作;當(dāng)Diameter Server出現(xiàn)故障時(shí),
5、根據(jù)權(quán)利要求4所述的跨協(xié)議實(shí)現(xiàn)故障切換的方法,其特征在于,該方法進(jìn)一步包括當(dāng)Diameter Server恢復(fù)正常工作狀態(tài)時(shí),AAA系統(tǒng)執(zhí)行與Diameter Server 間的計(jì)費(fèi)操作。
6、 根據(jù)權(quán)利要求4或5所述的跨協(xié)議實(shí)現(xiàn)故障切換的方法,其特征在于, 所述AAA系統(tǒng)執(zhí)行與Radius Server間的計(jì)費(fèi)操作,具體為AAA系統(tǒng)將接收到的Radius計(jì)費(fèi)請求消息發(fā)送到Radius Server, Radius Server回復(fù)計(jì)費(fèi)響應(yīng)消息給AAA系統(tǒng);或,AAA系統(tǒng)將未被Diameter Server處理的Diameter計(jì)費(fèi)請求消息轉(zhuǎn)換成 Radius計(jì)費(fèi)請求消息后發(fā)送到Radius Server, Radius Server回復(fù)計(jì)費(fèi)響應(yīng)消息 給AAA系統(tǒng),之后AAA系統(tǒng)將接收到的Radius計(jì)費(fèi)請求消息發(fā)送到Radius Server, Radius Server回復(fù)計(jì)費(fèi)響應(yīng)消息給AAA系統(tǒng)。
7、 根據(jù)權(quán)利要求5所述的跨協(xié)議實(shí)現(xiàn)故障切換的方法,其特征在于,所述 AAA系統(tǒng)執(zhí)行與Diameter Server間的計(jì)費(fèi)操作,具體為AAA系統(tǒng)將與Radius Server間進(jìn)行的計(jì)費(fèi)操作再次轉(zhuǎn)為與Diameter Servcr 間進(jìn)行的計(jì)費(fèi)操作,將接收的Radius計(jì)費(fèi)請求消息轉(zhuǎn)換成Diameter計(jì)費(fèi)請求消 息并發(fā)送到Diameter Server,之后Diameter Server回復(fù)Diameter計(jì)費(fèi)響應(yīng)消息 給AAA系統(tǒng)。
8、 根據(jù)權(quán)利要求5所述的跨協(xié)議實(shí)現(xiàn)故障切換的方法,其特征在于,該方 法進(jìn)一步包括Diameter Server出現(xiàn)故障時(shí),Radius Server接收并處理AAA系統(tǒng)發(fā)送的計(jì) 費(fèi)請求消息,且存儲Radius協(xié)議的更新的用戶數(shù)據(jù)消息,待Diameter Server恢 復(fù)正常后,協(xié)議轉(zhuǎn)換模塊將Radius協(xié)議的更新的用戶數(shù)據(jù)消息轉(zhuǎn)換成Diameter 協(xié)議的更新的用戶數(shù)據(jù)消息后上傳給Diameter Server;Diameter Server 'f炎復(fù)正常時(shí),Diameter Server 4夸Diameter寸辦i義的更新的用 戶數(shù)據(jù)消息下發(fā)到Radius Server,協(xié)議轉(zhuǎn)換模塊將更新的用戶數(shù)據(jù)消息轉(zhuǎn)換成 Radius協(xié)議的更新的用戶數(shù)據(jù)消息并存儲。
9、 根據(jù)權(quán)利要求4所述的跨協(xié)議實(shí)現(xiàn)故障切換的方法,其特征在于,所述檢測操作具體為AAA系統(tǒng)通過Diameter協(xié)議的鏈^各握手消息DWR/DWA或流控制傳輸協(xié) 議SCTP中的心跳〗全測機(jī)制才全測Diameter Server的工作狀態(tài)。
10、根據(jù)權(quán)利要求8所述的跨協(xié)議實(shí)現(xiàn)故障切換的方法,其特征在于,該 方法還包括Diameter Server處于正常工作狀態(tài)時(shí),Diameter Server將Diameter協(xié)i義的 更新的用戶數(shù)據(jù)消息下發(fā)到Radius Server,協(xié)議轉(zhuǎn)換模塊將更新的用戶數(shù)據(jù)消 息轉(zhuǎn)換成Radius協(xié)議的更新的用戶數(shù)據(jù)消息并存儲。
全文摘要
本發(fā)明公開了一種跨協(xié)議實(shí)現(xiàn)故障切換的方法,包括檢測Diameter Server的工作狀態(tài),當(dāng)Diameter Server處于正常工作狀態(tài)時(shí),AAA系統(tǒng)執(zhí)行與DiameterServer間的計(jì)費(fèi)操作;當(dāng)Diameter Server出現(xiàn)故障時(shí),AAA系統(tǒng)執(zhí)行與RadiusServer間的計(jì)費(fèi)操作。本發(fā)明還同時(shí)公開了一種跨協(xié)議實(shí)現(xiàn)故障切換的系統(tǒng),運(yùn)用該方法和系統(tǒng)提高了計(jì)費(fèi)系統(tǒng)的穩(wěn)定性,避免升級初期由于新的計(jì)費(fèi)系統(tǒng)出現(xiàn)故障而導(dǎo)致系統(tǒng)不可用,提高了用戶體驗(yàn)度。
文檔編號H04W4/24GK101594602SQ200910085838
公開日2009年12月2日 申請日期2009年6月1日 優(yōu)先權(quán)日2009年6月1日
發(fā)明者宋大猛, 鍵 徐, 斌 甘, 剛 陳 申請人:中興通訊股份有限公司