專利名稱:一種消息異步容錯方法、裝置及設備的制作方法
技術領域:
本發(fā)明涉及通信技術領域,具體涉及一種消息異步容錯方法、裝置及設備。
背景技術:
作為電信級的IP多媒體子系統(tǒng)(IP Multimedia Subsystem,MS)核心網設備,它必須保證可以為大容量用戶(設備需要支持的用戶數最高達到千萬級別)、高業(yè)務量并發(fā)(每秒業(yè)務并發(fā)數達到萬級別)提供正常的業(yè)務和服務支持。當用戶量和業(yè)務并發(fā)量到達某一程度時,網絡設備因為傳輸或處理的壓力的增加使得信令傳輸的時延也越來越大,導致原本有序的SIP消息業(yè)務流程因缺少流程同步機制,出現了部分消息信令異步的現象,傳輸的先后錯亂,從而導致很多原本應該成功進行的業(yè)務被異常中斷。以圖1所示的用戶的注冊流程為例,詳細的講解一個發(fā)生異步的情況:1-3:由UE發(fā)起的用戶注冊流程,注冊請求Register消息經代理呼叫會話控制功能實體(Proxy Call Session Control Function, P-CSCF)和查詢呼叫會話控制功能實體(Interrogating Call Session Control Function,1-CSCF)路由至服務呼叫會話控制功倉泛實體(Serving Call Session Control Function, S-CSCF);4:S_CSCF根據用戶的初始過濾規(guī)則集向應用核心網設備(Application Server,AS)發(fā)起第三方注冊Third-Register請求消息;5 =S-CSCF通過用戶的注冊請求,并將注冊成功的響應2000K消息發(fā)送給1-CSCF ;6:AS對于收到的第三方注冊請求向S-CSCF回應2000K注冊成功響應;7:AS向剛注冊成功的用戶發(fā)送Message消息,此消息首先發(fā)送到S-CSCF ;8 =S-CSCF轉發(fā)Message消息給用戶注冊成功對應的P-CSCF ;9 =P-CSCF收到Message消息時,此時還沒有收到注冊成功的2000K響應,因此根據用戶注冊狀態(tài)判斷此用戶尚未注冊態(tài)成功,于是返回404Not Found錯誤消息響應給S-CSCF ;10: S-CSCF 轉發(fā) 404Not Found 響應給 AS ;11-12:1-CSCF將收到的2000K響應通過P-CSCF發(fā)送給UE。由于Message請求消息與注冊成功的2000K響應消息并沒有設定發(fā)送順序的約束關系,所以存在上述流程發(fā)生的可能,從而導致用戶雖然已經在歸屬用戶核心網設備(HomeSubscriber Sever,HSS)等設備中注冊成功,但在只收到Message消息,還未收到響應消息時,仍無法正常處理后續(xù)業(yè)務;同時也導致了已經注冊成功的業(yè)務,P-CSCF判定為請求失敗,向AS返回了業(yè)務失敗的404Not Found響應,錯誤的增加了注冊的失敗率。值得注意的是,S-CSCF也可能在轉發(fā)2000K消息和Message消息時發(fā)生同P-CSCF —樣的判定錯誤。綜上所述,現有技術由于未規(guī)定信令發(fā)送的先后順序,導致MS系統(tǒng)中各核心網設備均有可能出現信令異步的情況時,使得部分本應成功完成的業(yè)務請求遭遇了異常中斷,用戶的體驗降低。
發(fā)明內容
本發(fā)明實施例提供了一種消息異步容錯方法、裝置及設備,用以在大容量用戶、高業(yè)務量并發(fā)的情況下,依然保證頂S系統(tǒng)中各核心網設備的容錯能力和終端側的用戶體驗。本發(fā)明實施例提供的一種消息異步容錯方法,應用于IP多媒體子系統(tǒng),該方法包括:接收與終端發(fā)送的請求消息所對應的第一返回消息;根據該終端的用戶信息,查詢用于設定消息發(fā)送順序的發(fā)送次序表,判斷所述發(fā)送次序表上比所述第一返回消息發(fā)送優(yōu)先級更高的第二返回消息是否已接收過,所述第二返回消息同樣與所述請求消息所對應;如果是,則將所述第一返回消息發(fā)送至下一級設備;如果否,則根據設定的閾值時間進行等待,在所述閾值時間內接收到所述第二返回消息后,將所述第二返回消息和所述第一返回消息按照優(yōu)先級順序依次發(fā)送至下一級設備。本發(fā)明實施例提供的一種消息異步容錯裝置,應用于IP多媒體子系統(tǒng),該裝置包括:接收模塊,用于接收與終端發(fā)送的請求消息所對應的第一返回消息;判斷模塊,用于根據該終端的用戶信息,查詢用于設定消息發(fā)送順序的發(fā)送次序表,判斷所述發(fā)送次序表上比所述第一返回消息發(fā)送優(yōu)先級更高的第二返回消息是否已接收過,所述第二返回消息同樣與所述請求消息所對應;執(zhí)行模塊,用于在所述判斷模塊的判斷結果為是時,將所述第一返回消息發(fā)送至下一級設備;在所述判斷模塊的判斷結果為否時,根據設定的閾值時間進行等待,在所述閾值時間內接收到所述第二返回消息后,將所述第二返回消息和所述第一返回消息按照優(yōu)先級順序依次發(fā)送至下一級設備。本發(fā)明實施例提供的一種IP多媒體子系統(tǒng)核心網設備,該設備包括上述所述的消息異步容錯裝置。本發(fā)明實施例,通過對MS系統(tǒng)中的各核心網設備設定了消息發(fā)送順序的約束規(guī)貝1J,使得IMS系統(tǒng)中的各核心網設備在接收到Message請求消息(或者Invite、Info等其他類型的請求消息)或各種返回的響應消息時,能夠按照規(guī)定的順序依次進行發(fā)送,使得核心網設備具有較強的容錯能力,從而也提升了終端側的用戶體驗。
圖1為本發(fā)明實施例提供的現有技術下用戶的注冊流程示意圖;圖2為本發(fā)明實施例提供的一種消息異步容錯方法的流程示意圖;圖3為本發(fā)明實施例提供的一種消息異步容錯裝置的結構示意圖;圖4為本發(fā)明實施例提供的一種消息異步容錯方法及裝置的注冊流程實施例示意圖;圖5為本發(fā)明實施例提供的一種消息異步容錯方法及裝置的訂閱流程實施例示意圖;圖6為本發(fā)明實施例提供的一種消息異步容錯方法及裝置的第三方注冊和短消息業(yè)務流程實施例示意圖。
具體實施例方式在MS系統(tǒng)中,針對一個業(yè)務請求可能會返回多個消息來告知用戶和服務器該業(yè)務的處理結果,而現有MS系統(tǒng)在核心網設備處理壓力大的情況下,會發(fā)生消息異步的情況,導致了一些成功完成的業(yè)務卻上報為業(yè)務失敗,會導致AS錯誤的統(tǒng)計業(yè)務失敗率,也降低了終端側的用戶體驗。為了解決上述問題,本發(fā)明實施例提供了一種消息異步容錯方法、裝置及設備,用以在大容量用戶、高業(yè)務量并發(fā)的情況下,依然保證系統(tǒng)中各核心網設備的容錯能力和終端側的用戶體驗。首先,在IMS系統(tǒng)中的各核心網設備側,本發(fā)明實施例提供了一種消息異步容錯方法,應用于IP多媒體子系統(tǒng),如圖2所示,該方法包括:S101,接收與終端發(fā)送的請求消息所對應的第一返回消息;S102,根據該終端的用戶信息,查詢用于設定消息發(fā)送順序的發(fā)送次序表,判斷所述發(fā)送次序表上比所述第一返回消息發(fā)送優(yōu)先級更高的第二返回消息是否已接收過,所述第二返回消息同樣與所述請求消息所對應;S103,如果是,則將所述第一返回消息發(fā)送至下一級設備;如果否,則根據設定的閾值時間進行等待,在所述閾值時間內接收到所述第二返回消息后,將所述第二返回消息和所述第一返回消息按照優(yōu)先級順序依次發(fā)送至下一級設備。由于一個用戶的一個業(yè)務請求可能會返回多個消息,所以本發(fā)明上述實施例中,在IMS系統(tǒng)中內置了一個消息發(fā)送的順序規(guī)則,在接收到用戶發(fā)出的請求消息所對應的一個返回消息時,先要進行發(fā)送次序表的查詢,看看針對該業(yè)務請求,是否已經接收過了比該返回消息優(yōu)先級更高的其它返回消息,如果根據記錄已經接收過了比此次接收的返回消息優(yōu)先級更高的其它返回消息,就將該消息發(fā)送給下一級設備,如果根據記錄,還有其他優(yōu)先級更高的返回消息未接收過,則根據設定的閾值時間等待接收這些優(yōu)先級更高的其它返回消息,在閾值時間內如果接收到了這些優(yōu)先級更高的其它返回消息,則按照發(fā)送次序表中的優(yōu)先級順序依次將這些返回消息依次發(fā)送給下一級設備。以第一返回消息為用于通知用戶業(yè)務請求結果的成功通知消息,第二返回消息為用于下一級服務器的業(yè)務成功響應消息為例,在MS系統(tǒng)中某一級設備在接收到成功通知消息時,根據該設備中設置的發(fā)送次序表,由于業(yè)務成功響應消息的優(yōu)先級要高于所述成功通知消息,所以先要判斷是否接收到了業(yè)務成功響應消息,如果還未接收到所述業(yè)務成功響應消息,可以先將所述成功通知消息放入緩存中,不會第一時間返回給終端,等業(yè)務成功響應消息到來后,將業(yè)務成功響應消息和所述成功通知消息依次發(fā)送給下一級設備,這樣,IMS系統(tǒng)下的各核心網設備不會在短時間內由于消息異步返回錯誤的業(yè)務失敗響應,不僅降低了核心網設備的處理壓力,而且操作人員不會得到錯誤的業(yè)務失敗率統(tǒng)計數據,終端也能正確的接收到這兩個消息,第一時間發(fā)起業(yè)務也不會出現請求失敗的現象??梢岳斫獾氖?,本發(fā)明實施例中所述的第二返回消息可以是多個消息,也就是比第一返回消息優(yōu)先級更高的返回消息可以為多個。 另外,由于上述實施例提到了發(fā)送次序表及發(fā)送規(guī)則,在此做出解釋,發(fā)送次序表可以設置在MS系統(tǒng)的各級服務器中,里面為各種接收到的返回消息在轉發(fā)時設定了不同的優(yōu)先級,在服務器發(fā)送消息時,需要根據表中設定的優(yōu)先級順序進行發(fā)送,避免出現發(fā)送消息異步的情況。可以理解的是,由于MS系統(tǒng)中不同的服務器所需要的發(fā)送規(guī)則可能不同,所以為不同的服務器設定的發(fā)送次序表中的消息優(yōu)先級可以不同。作為一種優(yōu)選的實施方式,所述將所述第二返回消息和所述第一返回消息按照優(yōu)先級順序依次發(fā)送至下一級設備,具體包括:向下一級設備發(fā)送第二返回消息;在所述第二返回消息發(fā)送設定時長后,再發(fā)送所述第一返回消息。在發(fā)送上述兩個消息之間設置了設定時長的時間間隔有助于進一步的確定終端先收到第二返回消息,后收到第一返回消息,進一步避免消息異步??梢岳斫獾氖?,所述設定時長的具體數值選取可以根據實際需要任意進行變換,出于設備處理消息效率的考慮,不應設置過長。本發(fā)明方法還應設有用于避免發(fā)生資源掛死的閾值時間,只有所述維持等待直至接收到所述第二返回消息的時間在所述閾值時間內,再將所述第二返回消息與第一返回消息依次發(fā)送至下一級設備。所述閾值時間在接到第一返回消息時開始,以接到對應該終端的第二返回消息時結束,設置閾值時間的目的就在于防止在第二返回消息在層級的下發(fā)過程中,在某一層發(fā)生丟失的情況下,不會讓處于等待的設備的等待時間過長,造成資源掛死的情況。所述閾值時間設定可以根據實際需要進行更改。進一步地,當在所述閾值時間內,未能接收到所述第二返回消息,則中止該請求消息所對應的請求任務,并向上一級設備返回業(yè)務失敗響應消息。在超出閾值時間時,視為該業(yè)務請求失敗,中斷與該終端的該業(yè)務連接。在響應消息的層級下發(fā)過程中,如果出現了上述實施例中所述的“等待超時”情況,該層設備視為該業(yè)務請求失敗的,向下發(fā)該第二返回消息的上一級設備返回業(yè)務請求失敗響應消息,通知其業(yè)務失敗。該方法適用面廣,適用于MS系統(tǒng)下各種由終端發(fā)起的業(yè)務請求流程,所述請求消息可以為注冊請求消息或訂閱請求消息或呼叫請求消息。為了配合上述方法,本發(fā)明實施例提供了一種消息異步容錯裝置,應用于IP多媒體子系統(tǒng),如圖3所示,該裝置包括:接收模塊1,用于接收與終端發(fā)送的請求消息所對應的第一返回消息;判斷模塊2,用于根據該終端的用戶信息,查詢用于設定消息發(fā)送順序的發(fā)送次序表,判斷所述發(fā)送次序表上比所述第一返回消息發(fā)送優(yōu)先級更高的第二返回消息是否已接收過,所述第二返回消息同樣與所述請求消息所對應;執(zhí)行模塊3,用于在所述判斷模塊的判斷結果為是時,將所述第一返回消息發(fā)送至下一級設備;在所述判斷模塊的判斷結果為否時,根據設定的閾值時間進行等待,在所述閾值時間內接收到所述第二返回消息后,將所述第二返回消息和所述第一返回消息按照優(yōu)先級順序依次發(fā)送至下一級設備。在本發(fā)明實施例中,在IMS系統(tǒng)中的各核心網設備中設置了所述消息異步容錯裝置,該裝置設定了一個消息發(fā)送的順序規(guī)則,設置的接收模塊在接收到用戶發(fā)出的請求消息所對應的用于通知用戶業(yè)務請求結果的第一返回消息時,先要通過發(fā)送次序表判斷模塊判斷是否接收到了優(yōu)先級更高的對應的第二返回消息,如果還未接收到所述第二返回消息,就先指示執(zhí)行模塊將所述第一返回消息放入緩存中,不會第一時間返回給終端,等第二返回消息到來后,根據發(fā)送此表中的優(yōu)先級順序,將第二返回消息和所述第一返回消息依次發(fā)送給下一級設備,這樣,IMS系統(tǒng)下的各核心網設備不會在短時間內由于消息異步返回錯誤的業(yè)務失敗響應,不僅降低了核心網設備的處理壓力,而且操作人員不會得到錯誤的業(yè)務失敗率統(tǒng)計數據,終端也能正確的接收到這兩個消息,第一時間發(fā)起業(yè)務也不會出現請求失敗的現象。進一步地,該裝置還包括:所述執(zhí)行模塊具體用于:在設定閾值時間內,接收到所述第二返回消息后,向下一級設備發(fā)送第二返回消息;并在所述第二返回消息發(fā)送設定時長后,再發(fā)送所述第一返回消息。進一步地,該裝置還包括定時模塊,用于設定避免發(fā)生資源掛死的閾值時間,只有所述維持等待直至接收到第二返回消息的時間在所述閾值時間內,再通知所述執(zhí)行模塊將所述第二返回消息與第一返回消息依次發(fā)送至下一級設備。所述定時模塊在接到第一返回消息時開始計時,以接到對應該終端的第二返回消息時結束,設置閾值時間的目的就在于防止在業(yè)務成功響應消息在層級的下發(fā)過程中,在某一層發(fā)生丟失的情況下,不會讓某一級設備的等待時間過長,造成資源掛死的情況。所述閾值時間設定可以根據實際需要進行更改。該裝置還包括定時模塊,用于當在所述閾值時間內,未能接收到所述第二返回消息時,所述定時模塊通知所述執(zhí)行模塊中止該請求消息所對應的請求任務,并向上一級設備返回業(yè)務失敗響應消息;所述執(zhí)行模塊,還用于接收所述定時模塊的通知,中止該請求消息所對應的請求任務。在超出閾值時間時,視為該業(yè)務請求失敗,中斷與該終端的該業(yè)務連接。在響應消息的層級下發(fā)過程中,如果出現了上述實施例中所述的“等待超時”情況,該層設備視為該業(yè)務請求失敗的,向應下發(fā)第二返回消息的上一級設備返回業(yè)務請求失敗響應消息,通知其業(yè)務失敗。所述請求消息可以為注冊請求消息或訂閱請求消息或呼叫請求消息。本發(fā)明實施例還提供了一種IP多媒體子系統(tǒng)核心網設備,該設備包括上述技術方案中任一技術方案中所述的消息異步容錯裝置。換言之,所述消息異步裝置與所述MS系統(tǒng)中的各核心網設備可以集成設置在一起。該方法適用面廣,適用于MS系統(tǒng)下各種由終端發(fā)起的業(yè)務請求流程,所述請求消息可以為注冊請求消息或訂閱請求消息。為了詳細的介紹本發(fā)明技術方案,下面通過幾個MS系統(tǒng)的常用流程配合附圖進行講解:實施例一,如圖4所示,MS系統(tǒng)中由UE發(fā)起的向AS進行的注冊流程,以業(yè)務成功響應消息2000K和對應的成功通知Message消息在由S-CSCF傳輸至P-CSCF時,發(fā)生消息異步的情況為例;1-3:由UE發(fā)起的用戶注冊流程,注冊請求Register消息經P-CSCF和1-CSCF路由至 S-CSCF ;4 =S-CSCF根據用戶的初始過濾規(guī)則集向AS發(fā)起第三方注冊請求消息;5: S-CSCF通過用戶的注冊請求消息,并將注冊成功的響應2000K消息發(fā)送給1-CSCF ;6:AS對于收到的第三方注冊請求消息向S-CSCF回應2000K注冊成功響應消息;7:AS向剛注冊成功的用戶發(fā)送成功通知Message消息,此消息首先發(fā)送到S-CSCF ;8 =S-CSCF轉發(fā)Message消息給用戶注冊成功對應的P-CSCF ;9 =P-CSCF收到Message消息時,根據該終端的用戶信息進行用戶查詢得到此時還沒有收到注冊成功的2000K注冊成功響應消息,因此判斷此用戶尚未注冊態(tài)成功,將此Message消息暫時阻塞和緩存,同時,啟動定時器,根據閾值時間開始計時;10:在閾值時間內,收到了對應的2000K注冊成功響應消息;11-13:將所述2000K注冊成功響應消息及緩存的Message消息按照先后順序間隔延后時長依次返回給UE。在上述實施例一中是以P-CSCF發(fā)生異步消息為例的,實際上S-CSCF也可能發(fā)生異步消息,由于過程類似,在此不再贅述。實施例二,如圖5所示,MS系統(tǒng)中由UE發(fā)起的向S-CSCF進行的訂閱流程,以業(yè)務成功響應消息2000K和對應的成功通知Notify消息在由S-CSCF傳輸至P-CSCF時,發(fā)生消息異步的情況為例;1-2:由UE發(fā)起的用戶訂閱流程,訂閱Subscribe請求消息經P-CSCF路由至S-CSCF ;3-4 =S-CSCF收到Subscribe請求消息后,返回2000K訂閱成功響應消息,以及發(fā)送Notify請求消息;5:如果P-CSCF在沒有收到訂閱Subscribe請求消息對應的2000K訂閱成功響應消息之前,收到訂閱后續(xù)的通報Notify消息,則根據該終端的用戶信息進行用戶查詢得到此時還沒有收到訂閱成功的2000K訂閱成功響應消息,因此判斷此用戶尚未訂閱成功,將此Notify消息暫時阻塞和緩存,同時,啟動定時器,根據閾值時間開始計時;6、7:在閾值時間內收到2000K訂閱成功響應消息后,將所述2000K訂閱成功響應消息及緩存的Notify消息按照先后順序間隔延后時長依次返回給UE。在上述實施例二中同樣是以P-CSCF發(fā)生異步消息為例的,采用本發(fā)明方法及裝置避免了傳統(tǒng)方法中P-CSCF在消息異步時,會向S-CSCF返回錯誤響應消息的弊端。最后講解一個復雜的實施例三,如圖6所示,IMS系統(tǒng)中由UE發(fā)起的向AS進行的第三方注冊和短消息業(yè)務流程,以用戶數據應答(User Data Answer, UDA)消息和UE發(fā)出的短消息Message請求消息在傳輸至AS時,發(fā)生消息異步的情況為例;1-8:由UE發(fā)起的用戶注冊流程,注冊請求Register消息經P-CSCF轉發(fā)到1-CSCF,1-CSCF通過用戶授權請求消息(User Authorization Request, UAR)/用戶授權響應消息(User Authorization Answer, UAA)與HSS交互獲得給用戶提供注冊服務的S-CSCF地址,并將此注冊Register請求消息路由至S-CSCF ;S-CSCF通過服務器分配請求消息(Server Assignment Request, SAR) / 服務器響應消息(Server Assignment Answer, SAA)與HSS交互獲得用戶相關信息,并觸發(fā)第三方注冊請求Third-Register消息到AS。9:AS向HSS發(fā)送用戶數據請求(User Data Request, UDR)消息,等待HSS的回應;10-12 =S-CSCF將注冊成功響應2000K消息經由1-CSCF和P-CSCF發(fā)回給UE。13-15:UE在收到注冊成功響應后,發(fā)起短消息Message請求消息,并經過P-CSCF和S-CSCF發(fā)送至AS。16:因為AS此時根據該終端的用戶信息進行用戶查詢得到此時還沒有收到HSS返回的用戶數據應答(User Data Answer, UDA)消息,所以判斷對此用戶的第三方注冊尚未完成,所以收到此用戶的Message請求消息后,將此Message請求消息暫時阻塞和緩存,同時,啟動定時器,根據閾值時間開始計時;17-19:在閾值時間內收到UDA消息后,發(fā)送第三方注冊成功響應2000K給S-CSCF,間隔延后時長后,將之前緩存的Message請求消息轉發(fā)給下一跳;20-23:當收到表示所述Message請求消息處理成功的2000K短消息成功響應消息,AS將此響應消息經由S-CSCF和P-CSCF,發(fā)送至UE,從而保證了業(yè)務的正常進行。在上述實施例三中,AS由于設置了本發(fā)明方法及裝置中采用的等待及順序發(fā)送規(guī)貝U,使得AS在收到來自于UE的Message請求消息且未得到HSS回復的UDA消息時,能夠根據閾值時間進行等待,不會立即向UE返回代表請求失敗的480Temporarily Unavailable消息,使得核心網設備具有了容錯能力,并提升了用戶的體驗。綜上所述,由于本發(fā)明方法及裝置對MS系統(tǒng)中的各核心網設備設定了等待的規(guī)則及發(fā)送順序的約束規(guī)則,使得IMS系統(tǒng)中的各核心網設備在接收到Message請求消息(或者Invite、Info等其他類型的請求消息)或各種響應消息時,具有較強的核心網設備容錯能力,從而也提升了終端側的用戶體驗。本領域內的技術人員應明白,本發(fā)明的實施例可提供為方法、系統(tǒng)、或計算機程序產品。因此,本發(fā)明可采用完全硬件實施例、完全軟件實施例、或結合軟件和硬件方面的實施例的形式。而且,本發(fā)明可采用在一個或多個其中包含有計算機可用程序代碼的計算機可用存儲介質(包括但不限于磁盤存儲器和光學存儲器等)上實施的計算機程序產品的形式。本發(fā)明是參照根據本發(fā)明實施例的方法、設備(系統(tǒng))、和計算機程序產品的流程圖和/或方框圖來描述的。應理解可由計算機程序指令實現流程圖和/或方框圖中的每一流程和/或方框、以及流程圖和/或方框圖中的流程和/或方框的結合??商峁┻@些計算機程序指令到通用計算機、專用計算機、嵌入式處理機或其他可編程數據處理設備的處理器以產生一個機器,使得通過計算機或其他可編程數據處理設備的處理器執(zhí)行的指令產生用于實現在流程圖一個流程或多個流程和/或方框圖一個方框或多個方框中指定的功能的裝置。這些計算機程序指令也可存儲在能引導計算機或其他可編程數據處理設備以特定方式工作的計算機可讀存儲器中,使得存儲在該計算機可讀存儲器中的指令產生包括指令裝置的制造品,該指令裝置實現在流程圖一個流程或多個流程和/或方框圖一個方框或多個方框中指定的功能。這些計算機程序指令也可裝載到計算機或其他可編程數據處理設備上,使得在計算機或其他可編程設備上執(zhí)行一系列操作步驟以產生計算機實現的處理,從而在計算機或其他可編程設備上執(zhí)行的指令提供用于實現在流程圖一個流程或多個流程和/或方框圖一個方框或多個方框中指定的功能的步驟。顯然,本領域的技術人員可以對本發(fā)明進行各種改動和變型而不脫離本發(fā)明的精神和范圍。這樣,倘若本發(fā)明的這些修改和變型屬于本發(fā)明權利要求及其等同技術的范圍之內,則本發(fā)明也意圖包含這些改動和變型在內。
權利要求
1.一種消息異步容錯方法,應用于IP多媒體子系統(tǒng),其特征在于,該方法包括: 接收與終端發(fā)送的請求消息所對應的第一返回消息; 根據該終端的用戶信息,查詢用于設定消息發(fā)送順序的發(fā)送次序表,判斷所述發(fā)送次序表上比所述第一返回消息發(fā)送優(yōu)先級更高的第二返回消息是否已接收過,所述第二返回消息同樣與所述請求消息所對應; 如果是,則將所述第一返回消息發(fā)送至下一級設備;如果否,則根據設定的閾值時間進行等待,在所述閾值時間內接收到所述第二返回消息后,將所述第二返回消息和所述第一返回消息按照優(yōu)先級順序依次發(fā)送至下一級設備。
2.如權利要求1所述的方法,其特征在于,所述將所述第二返回消息和所述第一返回消息按照優(yōu)先級順序依次發(fā)送至下一級設備,具體包括: 向下一級設備發(fā)送第二返回消息; 在所述第二返回消息發(fā)送設定時長后,再發(fā)送所述第一返回消息。
3.如權利要求2所述的方法,其特征在于,當在所述閾值時間內,未能接收到所述第二返回消息,則中止該請求消息所對應的請求任務,并向上一級設備返回業(yè)務失敗響應消息。
4.如權利要求1、2或3所述的方法,其特征在于,所述請求消息為注冊請求消息或訂閱請求消息或呼叫請求消息。
5.一種消息異步容錯裝置,應用于IP多媒體子系統(tǒng),其特征在于,該裝置包括: 接收模塊,用于接收與終端發(fā)送的請求消息所對應的第一返回消息; 判斷模塊,用于根據該終端的用戶信息,查詢用于設定消息發(fā)送順序的發(fā)送次序表,判斷所述發(fā)送次序表上比所述第一返回消息發(fā)送優(yōu)先級更高的第二返回消息是否已接收過,所述第二返回消息同樣與所述請求消息所對應; 執(zhí)行模塊,用于在所述判斷模塊的判斷結果為是時,將所述第一返回消息發(fā)送至下一級設備;在所述判斷模塊的判斷結果為否時,根據設定的閾值時間進行等待,在所述閾值時間內接收到所述第二返回消息后,將所述第二返回消息和所述第一返回消息按照優(yōu)先級順序依次發(fā)送至下一級設備。
6.如權利要求5所述的裝置,其特征在于,所述執(zhí)行模塊具體用于:在設定閾值時間內,接收到所述第二返回消息后,向下一級設備發(fā)送第二返回消息;并 在所述第二返回消息發(fā)送設定時長后,再發(fā)送所述第一返回消息。
7.如權利要求6所述的裝置,其特征在于,該裝置還包括定時模塊,用于當在所述閾值時間內,未能接收到所述第二返回消息時,所述定時模塊通知所述執(zhí)行模塊中止該請求消息所對應的請求任務,并向上一級設備返回業(yè)務失敗響應消息; 所述執(zhí)行模塊,還用于接收所述定時模塊的通知,中止該請求消息所對應的請求任務。
8.如權利要求5、6或7所述的裝置,其特征在于,所述請求消息為注冊請求消息或訂閱請求消息或呼叫請求消息。
9.一種IP多媒體子系統(tǒng)核心網設備,其特征在于,該設備包括權利要求5-9中任一權項所述的消息異步容錯裝置。
全文摘要
本發(fā)明公開了一種消息異步容錯方法、裝置及設備,應用于IP多媒體子系統(tǒng),用以在大容量用戶、高業(yè)務量并發(fā)的情況下,依然保證系統(tǒng)中各核心網設備的容錯能力和終端側的用戶體驗。該方法包括接收與終端發(fā)送的請求消息所對應的第一返回消息;根據該終端的用戶信息,查詢用于設定消息發(fā)送順序的發(fā)送次序表,判斷所述發(fā)送次序表上比所述第一返回消息發(fā)送優(yōu)先級更高的第二返回消息是否已接收過;如果是,則將所述第一返回消息發(fā)送至下一級設備;如果否,則根據設定的閾值時間進行等待,在所述閾值時間內接收到所述第二返回消息后,將所述第二返回消息和所述第一返回消息按照優(yōu)先級順序依次發(fā)送至下一級設備。
文檔編號H04L29/06GK103078873SQ201310035110
公開日2013年5月1日 申請日期2013年1月29日 優(yōu)先權日2013年1月29日
發(fā)明者秦卓 申請人:大唐移動通信設備有限公司