?

淺析CSCF集群的實現方法

2013-10-27 06:35
通信技術 2013年5期
關鍵詞:用戶群消息集群

張 毅

(中國電子科技集團公司第三十研究所,四川 成都 610041)

0 引言

近年來,隨著 IMS技術的日益成熟與完善而被越來越廣泛的應用到通信領域中。其中CSCF是IMS系統中最核心的呼叫控制網元,主要負責各種會話的創建、維持和拆除等功能,所以人們對其穩定性、擴容性、抗毀性等提出了越來越高的要求,可以通過將集群技術與CSCF相結合的方法來滿足這些需求。而SIP協議作為CSCF最為重要的協議,所以在CSCF集群技術的研究中也是必須突破的一個重點。

1 IMS核心的呼叫控制網元

IMS系統中最核心的呼叫控制網元[1]CSCF可以細分為代理CSCF(P-CSCF,Proxy CSCF)、問詢CSCF(I-CSCF,Interrogating CSCF)和服務CSCF(S-CSCF,Serving CSCF)三類。

P-CSCF主要提供轉發從用戶來的SIP消息到相應的 I-CSCF或者 S-CSCF;轉發從 I-CSCF或者S-CSCF來的SIP消息到用戶等功能。

I-CSCF主要提供從歸屬用戶服務器(HSS,Home Subscriber Server)處得到S-CSCF的地址;在用戶注冊時為其分配 S-CSCF;轉發 SIP消息到S-CSCF等功能。

S-CSCF是IMS呼叫控制中最重要的一類網元,主要提供注冊注銷、會話的管理控制和路由功能,并且能夠根據從HSS處下發的過濾規則進行相應的業務觸發[2],實現與應用服務器(AS,Application Server)之間的交互,從而為用戶提供更為豐富的業務。

2 服務器集群

服務器集群系統通俗的講就是把多臺服務器通過快速通信鏈路連接起來,從外部看來這些服務器就像一臺服務器在工作,而從內來說外面來的負載通過一定的機制動態的分配到這些節點機中去,從而達到超級服務器才有的高性能、高可用。

集群系統具有高可伸縮性[3]、高可靠性、高性能和高可管理性[4]等優點。其中高可伸縮性是指可以根據用戶的實際需求通過增加或者刪除集群中的服務器節點從而達到擴容或者降低成本等目的;高可靠性是指當集群中的某臺服務器工作失效時,集群中另一臺服務器可以快速的接替其工作,從而避免因單點失效而無法為用戶服務的情況;高性能是指可以通過負載均衡技術把工作負載合理的分配到集群的各個服務器上,從而提高整體的運行效率;高可管理性是指在運維管理上可以把整個集群作為一個單一的系統來進行管理[4]。

3 SIP協議

SIP協議[1]是 IMS系統中用于呼叫控制的最核心的協議,此協議用于用戶與 P-CSCF以及三種CSCF之間的會話控制過程,可提供會話管理、確定被叫是否可用、主被叫雙方會話參數的建立、確定會話所使用的媒體等功能[5]。

SIP定義了兩種類型的消息:請求,從客戶機發到服務器的消息,如 INVITE、ACK、BYE、REGISTER等;響應,從服務器返回客戶機的消息,如成功響應2XX、臨時響應1XX等。

SIP消息由起始行、頭域和消息體三部分組成。

1)起始行:位于每個SIP消息的開頭,起始行包含的內容有消息類型和協議版本。

2)頭域:SIP頭在語法和語義上與超文本傳輸協議(HTTP,Hypertext Transfer Protocol)的頭域相同,其格式為<名字>:<值>。SIP的頭域類型很多,如Via頭域、Route頭域、From頭域、To頭域等,其作用都是用來傳遞消息屬性。

3)消息體:消息體部分為可選項,用于描述被初始化的會話。

4 CSCF集群的實現方法

后續介紹中未單獨提及 P-CSCF、I-CSCF、S-CSCF的描述則表示其規則適用于所有類型的CSCF。

4.1 實現原理

CSCF集群的兩種實現方法分別如圖 1和圖 2所示。

在這兩種實現方法中CSCF集群均由集群控制器和多個CSCF服務器組成,其中P-CSCF集群和S-CSCF集群中的CSCF服務器之間可以根據相應的策略組成兩兩互備。集群內部設備之間可以采用以太網進行連接組成一個小型的內部局域網,并且采用內部私有地址進行通信。集群對外則采用外部公有地址進行通信。

圖1 CSCF 集群實現方法一

圖2 CSCF集群實現方法二

其中集群控制器提供如下功能:

1)收集CSCF服務器上的工作負載情況。

2)收集CSCF服務器的工作狀態。

3)對收到的SIP等協議根據負載均衡策略發送到集群中某個CSCF服務器上進行處理,但是在某次通信過程中一旦選擇了某個CSCF服務器為此次通信服務則必須采用此CSCF服務器為其服務直至此次通信結束。

集群中的CSCF服務器提供如下功能:

1)負責提供相應的會話控制功能。

2)P-CSCF集群和S-CSCF集群中的某個CSCF服務器上所記錄的一些信息(如 S-CSCF上的用戶屬性)要實時的同步到它的備用CSCF服務器上。

4.2 負載均衡策略

由于P-CSCF和S-CSCF在用戶注冊成功后分別會記錄一些信息為后續的用戶呼叫通信進行服務,所以對于P-CSCF集群和S-CSCF集群所采取的負載均衡策略是用戶數最小權值策略,即當用戶進行注冊時,集群控制器從集群中選擇一個用戶數最小的CSCF服務器為其進行注冊服務。用戶注冊成功后發起后續的通信時,集群控制器也會選擇此用戶注冊時所選定的CSCF服務器為其進行呼叫通信的服務。

對于 I-CSCF集群所采取的負載均衡策略則可以采用負載最小權值策略,即集群控制器為某次通信從集群中選擇當前工作負載最小的 I-CSCF服務器為其進行服務。

4.3 SIP協議流程

在CSCF集群實現方法一中,SIP協議流程如圖3所示。外部設備與此CSCF服務器集群通信時,外部設備將SIP消息發送到此集群的集群控制器上(步驟①),再由集群控制器根據相應的負載均衡策略將消息發送到某個CSCF服務器上進行處理(步驟②);當CSCF服務器需要往外發送SIP消息時,先將消息發送到集群控制器上(步驟③),再由集群控制器將此SIP消息發送出去(步驟④)。其中往外發送的SIP請求中與本集群相關的路由信息中的地址為本集群對外采用的外部公有地址。

圖3 SIP協議流程一

在CSCF集群實現方法二中,SIP協議流程如圖4所示。當外部設備發送 SIP請求消息到此 CSCF服務器集群時,請求消息的目的地址為此集群控制器的外部公有地址(步驟①),集群控制器根據相應的負載均衡策略將 SIP請求消息發送到某個 CSCF服務器上進行處理(步驟②);當CSCF服務器需要往外發送SIP請求時,直接從此CSCF服務器上往外發送,其中SIP請求中與本集群相關的路由信息(如Via頭)中的地址為此CSCF服務器對外的公有地址(步驟③)。外部設備收到請求消息并進行處理后要發送SIP應答消息到CSCF服務器集群時,應答消息的路徑沿先前的請求消息的路徑返回(步驟④、⑤、⑥)。

圖4 SIP協議流程二

CSCF集群所涉及的其它協議(如Diameter)的處理原理類似于SIP協議,在此就不做進一步的闡述了。

4.4 CSCF互備原理

在P-CSCF集群和S-CSCF集群中CSCF服務器之間可以通過兩兩互備的方式來提高其可用性?;涞膬蓚€服務器之間采用心跳線來監控對方是否正常工作,并且要進行實時的信息同步,同步的信息內容主要為與通信相關的一些記錄信息。在集群控制器處要記錄CSCF的互備組合和監控CSCF服務器的工作狀態。當集群中某個CSCF服務器出現故障時,其備份的CSCF服務器可以快速的接管其工作,從而以最快的速度恢復通信。其中信息同步和心跳線均可以采用以太網的方式來實現。

如圖5所示,假設CSCF1為用戶群1服務,CSCF2為用戶群2服務,CSCF1與CSCF2互為備份,并且這些信息在集群控制器處都有記錄。在正常情況下集群控制器會將用戶群1的通信交由CSCF1處理,將用戶群2的通信交由CSCF2處理,并且CSCF1會將用戶群1的一些與通信相關的信息實時的同步到CSCF2上,CSCF2也會將用戶群2的一些與通信相關的信息實時的同步到CSCF1上。如果CSCF1工作異常,不僅集群控制器會得知其工作狀態,而且CSCF2會通過心跳線立即檢測出來,此時CSCF2會做好為用戶群1服務的準備。一旦與用戶群1相關的通信到達此集群,則集群控制器會將其發送到 CSCF2上進行處理。當CSCF1恢復正常后,CSCF2會將用戶群1的一些與通信相關的信息傳給CSCF1,然后由CSCF1繼續為用戶群1的通信服務。

圖5 CSCF互備

5 結語

通過對兩種CSCF集群實現方法的介紹和分析,實現了CSCF與集群技術的結合,增強了CSCF應用的可靠性和可伸縮性,從而實現了一種更優的CSCF的使用方式。

[1]強磊,饒少陽,陳卉,等.IMS核心原理與應用[M].北京:人民郵電出版社,2008,11(01):8-9,20-23.

[2]趙飛,趙化明.IMS網絡中多媒體彩鈴業務的研究與實現[J].通信技術,2011,44(07):111.

[3]李莉,盧春,楊柯.LVS:優秀的服務器集群解決方案[J].信息安全與通信保密,2011(09):75.

[4]賴建峰,林永怡.淺談服務器集群技術在數字化校園中的應用[J].硅谷,2011(09):136.

[5]曾井泉,劉鎮.IPv4/IPv6混合網絡中的SIP通信解決方案[J].通信技術,2009,42(03):132.

猜你喜歡
用戶群消息集群
基于協同過濾和Embedding的冷啟動推薦算法研究
一張圖看5G消息
從資源出發的面向用戶群的高校圖書館資源推薦模型分析
海上小型無人機集群的反制裝備需求與應對之策研究
一種無人機集群發射回收裝置的控制系統設計
Python與Spark集群在收費數據分析中的應用
勤快又呆萌的集群機器人
公共圖書館的用戶群和服務人員的分析
消息
消息
91香蕉高清国产线观看免费-97夜夜澡人人爽人人喊a-99久久久无码国产精品9-国产亚洲日韩欧美综合