《電子技術應用》
您所在的位置:首頁 > 模擬設計 > 設計應用 > 基于SIP協(xié)議的3G網絡中的應用
基于SIP協(xié)議的3G網絡中的應用
電子發(fā)燒友
摘要: SIP協(xié)議是一個簡單、靈活的協(xié)議,具有很強的包容性,在保持其核心協(xié)議簡捷的基礎上建立了強大的擴充機制,所以利用SIP技術可以很容易的實現(xiàn)大量應用。我們可以毫無疑問,基于SIP的3GIMS將會給廣大用戶帶來更快捷、更豐富、更靈活的通信體驗。
Abstract:
Key words :

會話起始協(xié)議SIP是3G的IP多媒體子系統(tǒng)中提供多媒體業(yè)務的核心技術。文章首先介紹了SIP的基本工作原理,然后對3GPPUMTSR5定義的IMS進行了簡要描述,最后詳細闡述了SIP在IMS提供服務的過程及對漫游用戶的處理。

會話起始協(xié)議(sessioniniTIationprotocol)是由IETF定義的一個基于IP網絡中實現(xiàn)實時通信應用的一種信令控制協(xié)議。 3GPP定義了IP多媒體子系統(tǒng)(IPMultimedia Subsystem:IMS)的網絡架構,并基于SIP來承載各種多媒體業(yè)務(VoIP,流媒體,網絡游戲等)。

一、SIP協(xié)議簡介

會話起始協(xié)議SIP(SessionInitiationProtocol)被描述用來生成,修改和終結一個或多個參與者之間的會話,是由IETF于 1999年提出的一個基于IP網絡中實現(xiàn)實時通信應用的一種信令控制協(xié)議。它打破了傳統(tǒng)電信業(yè)務的傳輸模式,采用基于因特網的準則,將蜂窩系統(tǒng)與因特網應用融合在一起提供基于IP的多媒體業(yè)務,具有開放性,可擴展性,安全性的特點。3GPP

已將SIP作為第三代移動通信系統(tǒng)多媒體域的控制協(xié)議。

經常出現(xiàn)這種情況,一個用戶在多個位置之間移動,如一個公司職員,可能處在公司,家里或是咖啡廳等位置。為了給用戶提供方便的移動性,SIP使用統(tǒng)一資源定位符URI(UniformResourceIdentifier)來表示用戶。通常由一個域名加上用戶名組成,例如SIP:John@ eastcom.com,類似于電子郵件地址。SIP URI只是用來唯一標示用戶的邏輯標記符,用戶注冊時它將與用戶的IP地址綁定并記錄到定位服務器。

在SIP中,系統(tǒng)采用了因特網常用的客戶機/服務器結構,由用戶代理和服務器兩大部分組成。其中用戶代理又分為用戶代理客戶(UAC: UserAgentClient)和用戶代理服務器(UAS:UserAgent Server)兩種。UAC用來發(fā)起會話請求,UAS用來接受并響應會話請求。這兩者只是邏輯上的功能,實際上網絡終端應同時具備這兩種功能,既能發(fā)起會話,又能接受、相應會話。服務器分為代理服務器(Proxy Server)、重定向服務器(Redirected Server)和注冊服務器(Registrar)。

圖1 SIP的網絡體系結構

圖1描述了SIP的基本網絡體系結構。用戶接入網絡后首先要向注冊服務器注冊,注冊信息寫入定位服務器中(定向服務器不屬于SIP網元,只是一個數(shù)據(jù)庫)。當用戶代理客戶UAC要發(fā)起呼叫時,它一般將呼叫請求消息發(fā)送給本域的出向代理服務器。媒體描述信息以SDP (SessionDescriptionProtocol)的形式在SIP消息體中被封裝并發(fā)送出去。代理服務器檢查被叫地址,將請求轉發(fā)(可能經過多個中間代理服務器的轉發(fā)),直至到達被叫域的代理服務器。被叫域的代理服務器通過查詢定位服務器確定被叫的確切位置,然后將請求轉發(fā)給被叫用戶代理服務器 UAS。被叫UAS收到請求后,生成響應消息。響應消息將按照請求消息經過的路徑,原路返回到主叫UAC。主叫UAC根據(jù)響應消息的內容選擇是建立呼叫、重新發(fā)起呼叫或取消該呼叫。如果被叫沒有在歸屬地,主叫將通過重定位服務器重新定位被叫的位置,然后發(fā)起請求。

SIP有兩種類型的消息:

(1)請求:從客戶機發(fā)到服務器的消息。SIP核心規(guī)范定義了6種SIP請求:

INVITE—邀請用戶加入呼叫。

BYE—終止兩個用戶之間的呼叫。

OPTIONS—請求關于服務器能力的信息。

ACK—確認客戶機已經收到對INVITE的最終響應。

REGISTER—提供地址解析的映射,讓服務器知道其他用戶的位置。

INFO—用于會話中信令。

(2)應答:從服務器發(fā)到客戶機的消息,當服務器收到請求時,它就發(fā)出一個或多個應答。每個應答都有一個代表事務狀態(tài)的狀態(tài)碼(100-699的整數(shù))。下面是常用的幾種應答及它們的狀態(tài)碼:

trying(100)—正在嘗試

ringing(180)—正在振鈴

sessionprogress(183)—會話進行

OK(200)—好

二、3GPP R5中IMS的基本結構

根據(jù)3GPP的定義,3G網絡被劃分為3個域:電路交換域、分組交換域、IP多媒體域(如圖2)。

圖2 3GPP R5基本結構

電路交換域與現(xiàn)有的2G網絡類似,采用電路交換技術提供話音業(yè)務。分組交換域是2.5G網絡中引入的,主要網元設備有SGSN (ServiceGPRSSwitchNode)和GGSN(Gateway GPRS Switch Node)。它們負責向終端提供IP連接,用戶通過該域進入因特網,用戶可以由此發(fā)送郵件,瀏覽網頁。它并沒有在IP之上定義任何特殊的體系結構,它主要是一種接入技術。IP多媒體域(即IMS,IP MulTImedia Subsystem)是3GPP制定的UMTS R5版本中引入的,采用SIP作為主要的信令協(xié)議,使得移動運營商可以為用戶提供端到端的全IP的多媒體業(yè)務。

IMS由呼叫狀態(tài)控制功能CSCF(CallSessionControlFunction)、媒體網關控制功能MGCF(Media Gateway Control Function)、媒體網關MGW(Media Gateway)、歸屬地用戶服務器H

SS(Home Subscriber Server)等功能實體組成。CSCF的種類包括P-CSCF(Proxy-CACF,代理CSCF)、I-CSCF(Interrogating CSCF,查詢CSCF)和S-CSCF(Serving CSCF,服務CSCF),本質上它們都是SIP服務器,處理SIP信令。

●P-CSCF是UE聯(lián)系IMS的第一步,是UE在被訪問域(漫游時)首先要訪問的點,進出的SIP消息都要通過P-CSCF。P-CSCF相當于SIP協(xié)議定義的邊界代理服務器。

●I-CSCF的功能是提供到歸屬網絡的入口,將歸屬網絡的拓撲圖對其它網絡隱藏起來,并通過HSS為特定用戶找出相應的S-CSCF。它是用戶終端漫游或者外來任務進入本地服務提供商網絡中的聯(lián)系點。當I-CSCF接到一個請求時,它將把請求路由到相應的S-CSCF。

●S-CSCF給用戶提供服務。當終端注冊時,它同本地域的S-CSCF聯(lián)系,本地S-CSCF向用戶提供用戶預定的服務。這樣的好處是用戶即使漫游到不支持某項業(yè)務的網絡也能像在本地一樣得到需要的服務。

HSS(HomeSubscriberServer)相當于2G網絡中的HLR,存儲了與一個單獨用戶相關的S-CSCF和相應的用戶簡介。因此它知道用戶現(xiàn)在的位置和用戶指定的服務。CSCF可以向HSS詢問以獲得這些信息。HSS和CSCF之間交互用的是Cx接口,它不是IETF制定的,當也是基于 IP的。

三、用戶SIP注冊

用戶在發(fā)起一次會話之前必須先完成SIP服務注冊。UE(UserEquipment)將告訴HSS它現(xiàn)在的位置,HSS更新相應用戶的信息;注冊前要進行驗證,HSS根據(jù)用戶信息和操作限制檢查該用戶是否可以注冊;在服務注冊中,本地域還要為UE選擇一個S-CSCF,并把用戶信息發(fā)往S- CSCF。這個過程是在應用層完成的,所以注冊前要建立信令鏈路。因此,首先要建立UE到SGSN和SGSN到GGSN的鏈路。這條鏈路建立以后,用戶就可以注冊了。

如圖3,描述了一個用戶在3G網絡中注冊的全部過程。注冊之后,系統(tǒng)會給用戶分配一個S-CSCF,由這個S-CSCF來負責向用戶提供服務。首先,用戶從UE發(fā)送一個注冊請求給所在地P- CSCF。P-CSCF是UE和網絡之間的聯(lián)系點。P-CSCF向用戶歸屬地I-CSCF轉發(fā)該注冊請求。歸屬地I- CSCF向HSS咨詢,I-CSCF根據(jù)從HSS得來的有關該用戶的信息給用戶選擇一個S-CSCF。因此,原來的注冊請求就可以交由這個S-CSCF處理。一旦收到請求,S-CSCF就從HSS下載用戶的信息,該信息告訴S-CSCF用戶預定了哪些服務。最終,它發(fā)出一個約定的應答信號。

圖3 用戶注冊的信令流

四、在漫游用戶間的會話

一旦UE注冊到一個S-CSCF,語音和多媒體呼叫就可以建立了。兩用戶之間建立鏈路的過程實際上就是穿越各個CSCF的過程??偟膩碚f是按照“主叫用戶 ◇主叫所在地P-CSCF◇主叫歸屬地S-CSCF◇被叫歸屬地S-CSCF ◇被叫所在地P-CSCF ◇被叫用戶”的路線。

用戶訪問地的SIPCSCF服務器是不會處理用戶業(yè)務的,它只起到了接入網絡、轉發(fā)信息的作用,給用戶提供業(yè)務服務以及用戶接入其他網絡(例如PSTN) 都要依靠歸屬地的S-CSCF。用戶進入網絡時首先到訪問地的P-CSCF登記,告訴P-CSCF自己的歸屬地在哪里,就猶如外地人口到來先到訪問地公安局登記領取暫住證,并登記自己是誰,戶口所在地等信息。接著通過訪問地P-CSCF告訴歸屬地的S-CSCF自己的位置并更新HSS中的位置信息。當用戶發(fā)出會話請求時,訪問地P-CSCF將請求發(fā)往用戶歸屬地交由S-CSCF處理,同樣的,當有發(fā)往用戶的會話請求時,請求先到達歸屬地,歸屬地找到用戶的位置后再通過用戶訪問地P-CSCF與用戶取得聯(lián)系,建立鏈路。

如圖4所示是最普通的兩個漫游用戶的會話建立過程。一個完整的IMS呼叫分為會話邀請、資源預留、會話提供、會話連接、會話終止五個階段。

呼叫的過程如下:

(1)會話邀請

A向P-CSCF發(fā)送一個INVITE請求消息。該消息中有B和A的SIPURI。P-CSCF注意到A不屬于本地用戶并向A的歸屬地轉發(fā)該 INVITE 消息并返回100trying臨時應答A(表示已經發(fā)送A的請求,正在嘗試建立鏈路,A需要等待)。A的本地域I-CSCF向HSS查詢,并向A注冊時分配的S-CSCF轉發(fā)INVITE并返回100trying給外地P-CSCF。S-CSCF收到請求后將INVITE轉發(fā)給被叫B的本地域并返回 100trying給I-CSCF。同樣,B歸屬地的I-CSCF

接到請求后向HSS查詢并將請求轉發(fā)到B的歸屬地S-CSCF,該S-CSCF發(fā)現(xiàn)B正處在外地網絡中,于是將INVITE轉發(fā)到B目前所在地的P-CSCF,接著P-CSCF將請求最后傳給B。

(2)資源預留

B接受了這個會話請求,但此時他不回鈴通知A,他返回183sessionprocess應答表示他接受該會話,同時要求A對此表示確定,這個應答通過各個CSCF傳給A。同時B激活一個GPRSPDP上下文,它被用來通過IMS的IP接入點來建立語音通道。

A收到183應答后,同樣激活一個PDP上下文并通過CSCF建立的通道發(fā)送一個COMET消息給B,該消息含有A的語音通道的地址細節(jié),并起確認作用。

(3)會話提供和會話連接

當接到COMET,B知道傳送語音的IP通道和服務質量參數(shù)已經被雙方預留,并且知道了語音通道的地址,因此B返回200OK確認消息。該消息包含了B的語音通道的地址細節(jié)。

A接到確認后,給B一個180振鈴信息,B聽到振鈴即給A一個200OK消息,最后A給B發(fā)送ACK確認信息,到此通信鏈路建立完成,接下來A和B可以進行通話了。

(4)會話終止

為了終止會話,A發(fā)送一個BYE消息給B。同時A撤銷他的PDP上下文。

B接到BYE消息后,它會撤消自己的PDP上下文,并返回一個200OK應答給A是房改呼叫使用的所有CSCF。

五、結束語

SIP協(xié)議是一個簡單、靈活的協(xié)議,具有很強的包容性,在保持其核心協(xié)議簡捷的基礎上建立了強大的擴充機制,所以利用SIP技術可以很容易的實現(xiàn)大量應用。我們可以毫無疑問,基于SIP的3GIMS將會給廣大用戶帶來更快捷、更豐富、更靈活的通信體驗。

此內容為AET網站原創(chuàng),未經授權禁止轉載。