SIP協議由于具有較高的通用性和可靠性,以及具有在節點間進行會話建立、管理、拆除的功能,所以它被推薦為呼叫控制實體與應用服務器之間的接口協議。除此之外,SIP協議也可用于各個應用服務器之間的接口。這樣,應用服務器之間就可以交互,使得兩個或多個增值業務可以存放在不同連接的應用服務器中。
一、 應用服務器與軟交換設備的交互
SIP應用服務器與軟交換設備之間使用SIP協議進行通信。軟交換設備可以通過注冊機制得知應用服務器的存在,也可以通過在軟交換設備上配置應用服務器的地址信息,靜態得知應用服務器的存在。軟交換設備可以主動建立和取消至應用服務器的呼叫,同樣,應用服務器也能主動建立和取消至軟交換設備的呼叫,并且應用服務器還具有轉換主叫和被叫方信息、保持和恢復連接的功能。基本的SIP協議功能和擴展的呼叫控制功能結合在一起,可使應用服務器進入所有的呼叫控制活動并能傳送、重定向和代理呼叫。圖5.4說明了SIP應用服務器在實現各種增值業務時控制流的流程。
軟交換與應用服務器之間的控制流
根據業務提供所需控制能力的不同,軟交換設備和應用服務器間控制流交互的一般流程如下。
1、軟交換設備決定是否將呼叫切換至應用服務器進行增值業務處理。觸發可基于主叫方地址、被叫方地址或其他的業務觸發機制。
2、軟交換設備根據觸發信息確定應用服務器的地址,并通過發送SIP請求信息(包括適當的呼叫信息)將呼叫轉至目標應用服務器。
3、目標應用服務器接收到SIP請求之后,調用相應的增值業務邏輯。為了實現這一功能,應用服務器可進行不同的動作。
? 重定向,應用服務器向軟交換設備發送一個新的目的地址,重定向該呼叫(重定向響應中包含新的目的地址)。這種機制可用于面向地址轉換和路由的業務。
? 接收和傳送,分配媒體資源,命令軟交換設備將至媒體資源的路徑連接好(用200
OK響應表示)。用戶與媒體資源的交互結束以后,應用服務器可將呼叫傳至新的目的地,并退出呼叫(BYE的頭中包含有新的目的地址)。這種機制可用于面向媒體的業務,如卡類業務和傳真存儲/轉發業務。
? 代理,通過軟交換設備將呼叫返回,使得應用服務器可以監視所有的并發呼叫事件。此機制可用于面向事件的業務,如記賬卡和計時業務。
二、 應用服務器之間的交互
由于SIP協議的通用性和靈活性,SIP應用服務器之間也可以使用SIP協議進行通信,互相交互信息,這樣可以將兩個或多個位于不同應用服務器上的業務聯系起來,向用戶提供一個組合的業務解決方案。SIP應用服務器間的功能交互示意圖如下圖所示。
應用服務器之間的功能交互
隨著SIP應用服務器可以實現對其他SIP應用服務器的控制,相應地就需要引入管理SIP應用服務器之間功能交互的機制,以解決業務之間可能存在的屬性沖突問題,這對日益增多的增值業務入網很重要。
屬性沖突可以由軟交換設備自行管理,如下圖所示:
也可通過將呼叫控制權轉移到一個應用服務器,把復雜、耗時的功能交互管理功能分派給該應用服務器,由應用服務器自己來管理與其他應用服務器的交互,如下圖所示。
三、 SIP應用服務器與媒體服務器的交互
SIP是用于創建、修改和終止呼叫的應用層信令協議。一般而言,SIP應用服務器可以涉及呼叫的控制方面,但不能對媒體資源進行處理,而媒體服務器可以提供這方面的功能。通過媒體服務器與應用服務器的配合(應用服務器處理呼叫的信令流,而媒體服務器負責處理媒體流),就可以支持那些需要控制媒體流的業務,如IVR、會議、傳真、媒體混合等。當然,如果業務不需要對媒體流的控制功能,如編號轉換、轉發、路由相關業務等,那么這些業務僅用SIP應用服務器就能支持。
SIP應用服務器與媒體服務器的基本配合方式有兩種:一種是采取內置的方法,將
SIP應用服務器和媒體服務器在物理上合二為一 ,兩者之間采用內部接口;另一種方式是
SIP應用服務器和媒體服務器各自獨立實現,兩者之間的接口也采用SIP協議,如圖所示。
應用服務器與媒體服務器之間的通信
需要注意的是,如果應用服務器通過SIP協議控制媒體服務器,SIP協議工作在客戶/服務器標準模式,而不是對等模式。此時應用服務器利用第三方呼叫控制來控制媒體服務器,媒體服務器被動地等待軟交換設備或應用服務器的"INVITE"消息,并且產生自身的非"INVITE"消息。
四、 SIP應用服務器模式存在的問題分析
1、SIP協議的業務擴展
目前SIP協議的基本功能已經穩定,但由于SIP的簡單性,在與傳統網絡互通和業務實現方面還存在一些問題。通過標準的SIP協議只能實現一些相對簡單的增值業務(如路由類業務等),對于復雜的增值業務則需要對SIP協議進行擴充,這就很難保證其標準化。目前針對不同的增值業務對SIP協議進行擴展的方式很多,這也造成了SIP業務互通的困難。在前文中已經提及,IETFMMUSIC工作組正針對SIP協議進行業務能力擴展,其目標是希望能夠創建一些獨立于具體業務的積木式構成塊,通過這些業務構成塊可以構建更多特殊的應用,滿足一些特殊領域的需求,這非常類似于智能網中的SIB(ServiceIn?dependentBlock,獨立于業務的構件)概念。增加SIP擴展的指導方針應是盡量減少在SIP中增加太多的組件,而通過利用現有的各種協議資源完成更多的功能。
2、協議兼容性問題
眾所周知,SIP協議的靈活擴充性使其至今仍是相對不成熟的協議,因而仍面臨著通常的互操作性挑戰。SIP協議幾易其稿,其中涉及的功能繁多,大部分開發商仍只能實現其功能子集。其結果是,選擇SIP意味著互操作問題。
SIP協議靈活性的特點決定了不同的廠商在開發SIP應用服務器時會采用許多個性化的實現方式。SIP應用服務器”核心”功能實現方式各異,在具體實現過程中必然帶來組網條件和特定功能實現問題。如此一來,產品間的差別越來越大,互操作問題愈發突出。即使是SIP協議解決了互操作問題,并且各廠商完全按標準實現,但要達到目前智能網業務提供能力的水平也不是一朝一夕的事。對SIP來說,要完全實現大范圍內業務功能的集中式管理還有很大難度。
3、B2BUA與Proxy之爭
對于SIP應用服務器應當采用Proxy還是B2BUA,不同廠家存在不同的產品實現。可以說它們代表了兩種基本的業務提供思想。作為電信領域和互聯網領域的兩大標準組織,IETF以自由的思想引領著Internet的潮流走向,這也是Internet在短短幾年得到迅猛發展的原因;與此形成鮮明對比的是,ITU則以嚴謹、謹慎的態度看待通信技術,因此ITU制定的標準,以嚴謹、可操作性著稱,但卻招致保守的批評。
IETF在提出SIP協議(RFC3261)時,認為終端智能化是未來發展的趨勢,因此未來的協議也應當是端到端的協議,而SIP恰恰能夠滿足這個要求。在RFC3261看來,通過Proxy這樣一個實體打造的網絡,業務功能由終端實現,因此不存在像目前PSTN對交換機不斷進行升級的需求。按道理,這樣一個思路恰恰應當迎合運營商的需求才是。但不要忘了,Proxy的實現機理僅僅是簡單處理和轉發消息,只要消息語法正確,就不會拒絕,除非在功能上對設備進行規范。
而將任何業務都集中在終端,這是ITU思想里所不能容忍的。ITU認為,一個電信級的網絡,應當是一個可運營、可管理的網絡,雖然終端智能化代表未來的方向,但網絡設備仍然需要可控性。因此網絡層面的設備,不應僅僅完成消息的轉發功能。從這個角度看,B2BUA似乎更適合電信運營的要求。但UA的特性決定了一旦有新的業務需求時,就會存在對網絡設備升級的需求,這是B2BUA本身存在的難以解決的問題。
4、業務智能的分布性
由于SIP是端到端的對等呼叫信令協議,就某個業務的實現而言,可能需要SIP應用服務器與終端的配合,但對大多數業務而言,可以直接在SIP終端上實現。SIP終端完全秉承了SIP協議的特性,因此在實現個性化業務方面更具有優勢。例如像一些重定向業務、修改會話的業務、即時消息業務都可通過SIP終端來實現。這種模式有助于實現網絡智能的分布,符合NGN的發展趨勢,是SIP業務體系的一個優勢。
但是在多種協議并存的軟交換網絡中,通過SIP終端來實現原有PSTN網絡所具有的窄帶業務,就顯得有些困難,比如操作模式上的困難。原有PSTN終端在實現補充業務時,終端可通過"*"、"#"方式來實現業務的激活,然后由網絡啟動某類補充業務。但目前的SIP終端并不支持該種操作(沒有相應的規范,而且看起來也沒有必要),因此在業務啟動方面,SIP終端需要與現有的Web方式(通過網頁登記的方式)相結合,這與目前的操作方式不同。
另一方面,業務智能在用戶終端上的分布也帶來了業務管理的困難以及業務安全的隱患。由于SIP終端具有較強的智能性,用戶可能會基于SIP終端的惡意擴展能力旁路運營商核心網絡設備的監控實現對業務的盜用,或者通過對SIP業務能力的惡意擴展實現對運營商網絡的攻擊。因此,關鍵是如何對SIP終端進行定位。SIP終端在一定程度上代表了未來終端的發展方向,但業務智能在SIP終端上的分布與管理方式是SIP業務體系中必須要解決的關鍵問題。