一種ParlayX網關的過載控制系統和方法
【專利摘要】本發明提供一種Parlay?X網關的過載控制系統和方法,所述系統包括用戶、應用服務器和Parlay?X網關;所述用戶通過SOAP消息發送請求給所述應用服務器,所述應用服務器選擇所述Parlay?X網關,并將SOAP消息翻譯為對應的API調用發送給所述Parlay?X網關,所述Parlay?X網關將API調用轉化為對相應的SCF調用,并分發給相應的業務邏輯執行,執行結果返回給所述應用服務器,所述應用服務器通過SOAP消息把執行結果返回給用戶。本發明提供一種Parlay?X網關的過載控制系統和方法,能將業務流程公平地分配到有處理能力的Parlay網關中,保證分配給Parlay網關的消息能有效處理,可實現過載保護和服務質量保證,提高用戶體驗。
【專利說明】一種ParIayX網關的過載控制系統和方法
【技術領域】
[0001]本發明屬于通信控制【技術領域】,具體涉及一種Parlay X網關的過載控制系統和方法。
【背景技術】
[0002]NGN(Next Generation Network,下一代網絡)將傳統交換機的功能模塊分離成為獨立的網絡部件,使得網絡按功能縱向分解成四層,從下至上分別是接入層、傳送層、控制層和業務層。接入層為各種異構網絡以及各種數據終端提供訪問軟交換網絡資源的入口,由各種網關及接入設備組成。傳送層負責傳遞業務信息,特點是不管傳送什么樣的業務信息,都采用單一的分組傳送網絡。目前,業內已經基本達成共識:傳送層的發展方向是實現全網IP化。控制層的主要功能是呼叫控制,核心設備是軟交換(SoftSwitch,SS),其控制對象是接入層設備,并向業務層設備提供業務能力或特殊資源,比如說認證信息、連接時間、終端地址等數據。業務層負責創建、執行和管理軟交換網絡的增值業務,其主要設備是應用服務器(Application Server, AS),作用是提供業務的執行環境,其他服務器與AS協作來豐富業務,如媒體服務器提供媒體資源功能和媒體處理功能,認證、授權和計費(Authent i cat ion > Authorizat ion and Accounting, AAA)服務器提供身份認證和多種計費策略;它們各自承擔不同的任務,以增強業務的可運營性、可維護性和可管理性。
[0003]Parlay API是由Parlay、3GPP、ETSI聯合成立的Parlay工作組所定義的一組開放的、獨立于具體技術的、面向對象的API規范,但是,Parlay API是從技術角度出發制定的,業務開發商在開發具體業務時一般只會用到其中20%的接口,所以,Parlay工作組在逐步完善Parlay API提供的業務能力的同時,又對Parlay API進行重新封裝以縮小API規模和提高資源利用率,推出了 Parlay X API。目前Parlay API和Parlay X API已得到了工業界的廣泛認同,全球最大的電信運營商和通信設備供應商幾乎都是Parlay組織的成員。
[0004]在Parlay X這種服務型架構當中,過載是一個很常見的問題,當許多應用都想要訪問同一個服務器當中的資源時,服務器就忙于處理這些請求,當服務器的相關資源不能滿足這些請求的要求時,那么就有可能發生過載。為了避免過載情況發生,就需要相應的過載控制機制,預防和處理過載的情況。
【發明內容】
[0005]為了克服上述現有技術的不足,本發明提供一種Parlay X網關的過載控制系統和方法,能將業務流程公平地分配到有處理能力的Parlay網關中,保證分配給Parlay網關的消息能有效處理,可實現過載保護和服務質量保證,提高用戶體驗。
[0006]為了實現上述發明目的,本發明采取如下技術方案:
[0007]提供一種Parlay X網關的過載控制系統,所述系統包括用戶、應用服務器和Parlay X網關;所述用戶通過SOAP消息發送請求給所述應用服務器,所述應用服務器選擇所述Parlay X網關,并將SOAP消息翻譯為對應的API調用發送給所述Parlay X網關,所述Parlay X網關將API調用轉化為對相應的SCF調用,并分發給相應的業務邏輯執行,執行結果返回給所述應用服務器,所述應用服務器通過SOAP消息把執行結果返回給用戶。
[0008]所述用戶通過HTTP協議獲取所述應用服務器所提供服務的客戶端。
[0009]所述應用服務器包括過載控制器,所述過載控制器包括網關控制器和監視器,用于對Parlay X網關的過載控制。
[0010]所述Parlay X網關包括Web服務器、協議網關及協議網關對應的協議接口;所述協議網關包括SIP協議網關、H.248協議網關和H.323協議網關。
[0011]所述Web服務器通過Parlay X API接口接收應用服務器的SOAP消息并送出響應消息,根據Web服務器接收到的SOAP消息類型通過對應的協議網關進行處理,將SOAP消息轉化為對應的協議通過協議接口發送給底層網絡。
[0012]所述SOAP消息的消息類型包括MakeACal I消息、EndCal I消息、GetCal I Info消息和 SetCallInfo 消息。
[0013]所述SOAP消息分配不同的處理優先級,設定優先級I為最高,優先級3為最低;則在缺省情況下,EndCall消息優先級設為1,保證會話結束請求都能被優先處理;GetCallInfo消息和SetCallInfo消息優先級設為2,MakeACalI消息優先級根據網關負載情況,可分配為優先級I或優先級3,以保證在Parlay X網關負載過高時,不創建新的會話。
[0014]同時提供一種Parlay X網關的過載控制方法,所述方法包括以下步驟:
[0015]步驟1:接入控制預處理;
[0016]步驟2: SOAP消息標記控制;
[0017]步驟3:負載均衡控制;
[0018]步驟4:基于測量的接納控制。
[0019]所述步驟I中,將應用服務器分配的處理能力設定為r,在應用服務器的過載控制器中解封裝所有已接收的SOAP消息,并且解封裝所有發送給過載控制器的響應消息,r個已接收的SOAP消息和響應消息的解封裝時間之和小于I秒,有
[0020]r.2.tmwrap < I(I)
[0021 ] 其中,tUnwrap是解封裝單個SOAP消息所需的時間。
[0022]當應用服務器每秒發送的SOAP消息數量大于r時,為了限制SOAP消息的數量不要超過每秒r個,定義應用服務器處理能力令牌桶,其大小為r,產生令牌的速率也為r,當令牌桶中令牌數大于r個時,令牌數不增加,具體有:
[0023]I) SOAP消息到達時,檢查令牌數,若令牌數大于等于1,接受SOAP消息,令牌數減I;
[0024]2)若沒有令牌,就拒絕到達的SOAP消息,不通知應用服務器;
[0025]所述步驟2中,過載控制器已經完成SOAP消息分類時,要保證第k個應用服務器每個時間單元內的MakeACall消息的數量為dk,dk由合同進行設置,這里使用大小為dk,令牌速率為dk的應用服務器新建會話令牌桶控制;過載控制器用單個令牌桶控制MakeACall消息速率步驟如下:
[0026]I)若令牌桶中有令牌,則給到達的MakeACall消息和EndCall消息分配的優先級均為1,MakeACall消息和EndCall消息能在負載均衡階段被接收;
[0027]2)若令牌桶中沒有令牌,當MakeACall消息到達時,轉發到下個階段,分配的優先級是3 ;
[0028]3) GetCallInfo消息、SetCallInfo消息和EndCall消息在轉發的時候所分配的優先級分別是2、2和I。
[0029]所述步驟3中,針對MakeACall消息進行加權輪轉調度算法進行分配,過載控制器與Parlay X網關有對應的消息隊列,SOAP消息經過負載均衡器后,發送到指定消息隊列的末端,過載控制器記錄下每個消息隊列中優先級為i的消息數量N(i),其中i e [I, j];設每個Parlay X網關能夠處理的SOAP消息數量為Numi,消息隊列的權值設為W1=Num1,W2=Num2,…,Wn=Numn。
[0030]所述步驟4中,接納控制用來選擇消息隊列中的SOAP消息,SOAP消息發送到Parlay X網關并得到服務或由于不能滿足時間要求將被拒絕;在過載控制器中,SOAP消息從發出請求到得到響應之間的時間間隔為Λ t?ed, SOAP消息在應用服務器中從發出到得到響應的時間間隔為Atu,當Atusw大于應用最長的等待時間τ時,該SOAP消息就是超時消息,過載控制器進行接納控制,使AtUSOT〈T ;
[0031]若SOAP消息在接入控制預處理被接收并且已經被解封裝,最終發送到負載均衡器,所述負載均衡器把SOAP消息發送到Parlay X網關,SOAP消息經過負載均衡控制后,發送到指定消息隊列的末端,通過限制從消息隊列向Parlay X網關發送SOAP消息的速率,從而控制Parlay X網關的負載。
[0032]所述步驟4具體包括以下步驟:
[0033]I)估算Parlay X網關當前的負載值;
[0034]為了估算Parlay X網關當前的負載值,過載控制器統計Λ t_surral以確定當前的負載值;
[0035]2)設定Parlay X網關負載級別表;
[0036]過載控制器用負載級別閾值將Parlay X網關處理能力劃分為不同的能力級,thk為負載級別k階段Parlay X網關處理單個SOAP消息需要的最大時延;過載控制器測量若干次后,設置閾值并會生成Parlay X網關負載級別表;
[0037]3)判斷Parlay X網關負載級別k ;
[0038]根據式(2)判斷Parlay X網關負載級別k,有
[0039]thk< Δ tmeasured<thk+1(2)
[0040]其中,thk+1為負載級別k+Ι階段Parlay X網關處理單個SOAP消息需要的最大時延;
[0041]4)計算Parlay X網關當前負載級別的發送SOAP消息速率;
[0042]每個負載級別下Parlay X網關發送SOAP消息速率設為pk,根據式(3)設定:
[0043]thk*pk<Numi*thk+1(3)
[0044]若不存在thk+1時,則根據式⑷設定Pk:
[0045]thj^Pj^Nun^th.(4)
[0046]其中,thmax為不能超過的最大時延;
[0047]當SOAP消息以pk的速率向Parlay X網關發送時,需滿足thk小于該Parlay X網關在單位時間內能夠處理的最大SOAP消息數量在更高一級負載情況下的時延;
[0048]5 )判斷是否拒絕SOAP消息或者向Par lay X網關發送SOAP消息;[0049]消息隊列中可能會有超時消息,為了滿足Atu_〈 τ,則丟棄超時消息;根據式(5)計算滿足Λ tuser< τ條件的消息優先級j,并判斷是否拒絕SOAP消息或者向Parlay X網關發送SOAP消息;
【權利要求】
1.一種Parlay X網關的過載控制系統,其特征在于:所述系統包括用戶、應用服務器和Parlay X網關;所述用戶通過SOAP消息發送請求給所述應用服務器,所述應用服務器選擇所述Parlay X網關,并將SOAP消息翻譯為對應的API調用發送給所述Parlay X網關,所述Parlay X網關將API調用轉化為對相應的SCF調用,并分發給相應的業務邏輯執行,執行結果返回給所述應用服務器,所述應用服務器通過SOAP消息把執行結果返回給用戶。
2.根據權利要求1所述的ParlayX網關的過載控制系統,其特征在于:所述用戶通過HTTP協議獲取所述應用服務器所提供服務的客戶端。
3.根據權利要求1所述的ParlayX網關的過載控制系統,其特征在于:所述應用服務器包括過載控制器,所述過載控制器包括網關控制器和監視器,用于對Parlay X網關的過載控制。
4.根據權利要求1所述的ParlayX網關的過載控制系統,其特征在于:所述Parlay X網關包括Web服務器、協議網關及協議網關對應的協議接口 ;所述協議網關包括SIP協議網關、H.248協議網關和H.323協議網關。
5.根據權利要求1所述的ParlayX網關的過載控制系統,其特征在于:所述Web服務器通過Parlay X API接口接收應用服務器的SOAP消息并送出響應消息,根據Web服務器接收到的SOAP消息類型通過對應的協議網關進行處理,將SOAP消息轉化為對應的協議通過協議接口發送給底層網絡。
6.根據權利要求5所述的ParlayX網關的過載控制系統,其特征在于:所述SOAP消息的消息類型包括MakeACall消息、EndCall消息、GetCallInfo消息和SetCallInfo消息。
7.根據權利要求6所述的ParlayX網關的過載控制系統,其特征在于:所述SOAP消息分配不同的處理優先級,設定優先級I為最高,優先級3為最低;則在缺省情況下,EndCall消息優先級設為I,保證會話結束請求都能被優先處理;GetCallInfo消息和SetCallInfo消息優先級設為2,MakeACall消 息優先級根據網關負載情況,可分配為優先級I或優先級3,以保證在Parlay X網關負載過高時,不創建新的會話。
8.—種Parlay X網關的過載控制方法,其特征在于:所述方法包括以下步驟: 步驟1:接入控制預處理; 步驟2 =SOAP消息標記控制; 步驟3:負載均衡控制; 步驟4:基于測量的接納控制。
9.根據權利要求8所述的ParlayX網關的過載控制方法,其特征在于:所述步驟I中,將應用服務器分配的處理能力設定為r,在應用服務器的過載控制器中解封裝所有已接收的SOAP消息,并且解封裝所有發送給過載控制器的響應消息,r個已接收的SOAP消息和響應消息的解封裝時間之和小于I秒,有 r.2.t_ap < I(I) 其中,tunwrap是解封裝單個SOAP消息所需的時間。 當應用服務器每秒發送的SOAP消息數量大于時,為了限制SOAP消息的數量不要超過每秒r個,定義應用服務器處理能力令牌桶,其大小為r,產生令牌的速率也為r,當令牌桶中令牌數大于r個時,令牌數不增加,具體有: I)SOAP消息到達時,檢查令牌數,若令牌數大于等于1,接受SOAP消息,令牌數減I ;2)若沒有令牌,就拒絕到達的SOAP消息,不通知應用服務器。
10.根據權利要求8所述的ParlayX網關的過載控制方法,其特征在于:所述步驟2中,過載控制器已經完成SOAP消息分類時,要保證第k個應用服務器每個時間單元內的MakeACall消息的數量為dk,dk由合同進行設置,這里使用大小為dk,令牌速率為dk的應用服務器新建會話令牌桶控制;過載控制器用單個令牌桶控制MakeACall消息速率步驟如下: 1)若令牌桶中有令牌,則給到達的MakeACall消息和EndCall消息分配的優先級均為1,MakeACall消息和EndCall消息能在負載均衡階段被接收; 2)若令牌桶中沒有令牌,當MakeACall消息到達時,轉發到下個階段,分配的優先級是3 ; 3)GetCallInfo消息、SetCallInfo消息和EndCall消息在轉發的時候所分配的優先級分別是2、2和I。
11.根據權利要求8所述的ParlayX網關的過載控制方法,其特征在于:所述步驟3中,針對MakeACall 消息進行加權輪轉調度算法進行分配,過載控制器與Parlay X網關有對應的消息隊列,SOAP消息經過負載均衡器后,發送到指定消息隊列的末端,過載控制器記錄下每個消息隊列中優先級為i的消息數量N(i),其中i e [I, j];設每個Parlay X網關能夠處理的SOAP消息數量為Numi,消息隊列的權值設為W1=Num1, W2=Num2,…,Wn=Numn。
12.根據權利要求8所述的ParlayX網關的過載控制方法,其特征在于:所述步驟4中,接納控制用來選擇消息隊列中的SOAP消息,SOAP消息發送到Parlay X網關并得到服務或由于不能滿足時間要求將被拒絕;在過載控制器中,SOAP消息從發出請求到得到響應之間的時間間隔為Λ tffleasured, SOAP消息在應用服務器中從發出到得到響應的時間間隔為Δ tuser,當Λ tuser大于應用最長的等待時間τ時,該SOAP消息就是超時消息,過載控制器進行接納控制,使AtuseaXT ; 若SOAP消息在接入控制預處理被接收并且已經被解封裝,最終發送到負載均衡器,所述負載均衡器把SOAP消息發送到Parlay X網關,SOAP消息經過負載均衡控制后,發送到指定消息隊列的末端,通過限制從消息隊列向Parlay X網關發送SOAP消息的速率,從而控制Parlay X網關的負載。
13.根據權利要求12所述的ParlayX網關的過載控制方法,其特征在于:所述步驟4具體包括以下步驟: O估算Parlay X網關當前的負載值; 為了估算Parlay X網關當前的負載值,過載控制器統計Δ t_surad以確定當前的負載值; 2)設定ParlayX網關負載級別表; 過載控制器用負載級別閾值將Parlay X網關處理能力劃分為不同的能力級,thk為負載級別k階段Parlay X網關處理單個SOAP消息需要的最大時延;過載控制器測量若干次后,設置閾值并會生成Parlay X網關負載級別表; 3)判斷ParlayX網關負載級別k ; 根據式(2)判斷Parlay X網關負載級別k,有 thk〈 A tmeasured〈thk+i(2)其中,thk+1為負載級別k+1階段Parlay X網關處理單個SOAP消息需要的最大時延; 4)計算ParlayX網關當前負載級別的發送SOAP消息速率; 每個負載級別下Parlay X網關發送SOAP消息速率設為pk,根據式(3)設定: thk*pk<Numi*thk+1(3) 若不存在thk+1時,則根據式(4)設定pk: th^p^Num^th,,,,⑷ 其中,thmax為不能超過的最大時延; 當SOAP消息以Pk的速率向Parlay X網關發送時,需滿足thk小于該Parlay X網關在單位時間內能夠處理的最大SOAP消息數量在更高一級負載情況下的時延; 5)判斷是否拒絕SOAP消息或者向ParlayX網關發送SOAP消息; 消息隊列中可能會有超時消息,為了滿足Atu_〈 τ,則丟棄超時消息;根據式(5)計算滿足Λ tuser< τ條件的消息優先級j,并判斷是否拒絕SOAP消息或者向Parlay X網關發送SOAP消息;
【文檔編號】H04L12/66GK103475595SQ201310364564
【公開日】2013年12月25日 申請日期:2013年8月20日 優先權日:2013年8月20日
【發明者】李炳林, 劉世棟, 卜憲德, 梁云, 郭云飛, 田文鋒, 郭經紅, 姚繼明 申請人:國家電網公司, 中國電力科學研究院