SIP協議在3G網路中的應用

2021-08-25 18:29:38 字數 4654 閱讀 1868

會話起始協議sip是3g的ip

多**子系統中提供多**業務的核心技術。文章首先介紹了sip的基本工作原理,然後對3gppumtsr5定義的ims進行了簡要描述,最後詳細闡述了sip在ims提供服務的過程及對漫遊使用者的處理。

會話起始協議(sessioninitiationprotocol)是由ietf定義的乙個基於ip網路中實現實時通訊應用的一種信令控制協議。 3gpp定義了ip多**子系統(ip********** subsystem:ims)的網路架構,並基於sip來承載各種多**業務(voip,流**,網路遊戲等)。

一、sip協議簡介

會話起始協議sip(sessioninitiationprotocol)被描述用來生成,修改和終結乙個或多個參與者之間的會話,是由ietf於 2023年提出的乙個基於ip網路中實現實時通訊應用的一種信令控制協議。它打破了傳統電信業務的傳輸模式,採用基於網際網路的準則,將蜂窩系統與網際網路應用融合在一起提供基於ip的多**業務,具有開放性,可擴充套件性,安全性的特點。3gpp

已將sip作為第三代移動通訊系統多**域的控制協議。

經常出現這種情況,乙個使用者在多個位置之間移動,如乙個公司職員,可能處在公司,家裡或是咖啡廳等位置。為了給使用者提供方便的移動性,sip使用統一資源定位符uri(uniformresourceidentifier)來表示使用者。通常由乙個網域名稱加上使用者名稱組成,例如sip:john@ eastcom.com,類似於電子郵件位址。sip uri只是用來唯一標示使用者的邏輯標記符,使用者註冊時它將與使用者的ip位址繫結並記錄到定位伺服器。

在sip中,系統採用了網際網路常用的客戶機/伺服器結構,由使用者**和伺服器兩大部分組成。其中使用者**又分為使用者**客戶(uac: useragentclient)和使用者**伺服器(uas:useragent server)兩種。uac用來發起會話請求,uas用來接受並響應會話請求。這兩者只是邏輯上的功能,實際上網路終端應同時具備這兩種功能,既能發起會話,又能接受、相應會話。伺服器分為**伺服器(proxy server)、重定向伺服器(redirected server)和註冊伺服器(registrar)。

圖1 sip的網路體系結構

圖1描述了sip的基本網路體系結構。使用者接入網路後首先要向註冊伺服器註冊,註冊資訊寫入定位伺服器中(定向伺服器不屬於sip網元,只是乙個資料庫)。當使用者**客戶uac要發起呼叫時,它一般將呼叫請求訊息傳送給本域的出向**伺服器。**描述資訊以sdp (sessiondescriptionprotocol)的形式在sip訊息體中被封裝並傳送出去。**伺服器檢查被叫位址,將請求**(可能經過多個中間**伺服器的**),直至到達被叫域的**伺服器。被叫域的**伺服器通過查詢定位伺服器確定被叫的確切位置,然後將請求**給被叫使用者**伺服器 uas。被叫uas收到請求後,生成響應訊息。響應訊息將按照請求訊息經過的路徑,原路返回到主叫uac。主叫uac根據響應訊息的內容選擇是建立呼叫、重新發起呼叫或取消該呼叫。如果被叫沒有在歸屬地,主叫將通過重定位伺服器重新定位被叫的位置,然後發起請求。

sip有兩種型別的訊息:

(1)請求:從客戶機發到伺服器的訊息。sip核心規範定義了6種sip請求:

invite—邀請使用者加入呼叫。

bye—終止兩個使用者之間的呼叫。

options—請求關於伺服器能力的資訊。

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

register—提供位址解析的對映,讓伺服器知道其他使用者的位置。

info—用於會話中信令。

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

trying(100)—正在嘗試

ringing(180)—正在振鈴

sessionprogress(183)—會話進行

ok(200)—好

二、3gpp r5中ims的基本結構

根據3gpp的定義,3g網路被劃分為3個域:電路交換域、分組交換域、ip多**域(如圖2)。

圖2 3gpp r5基本結構

電路交換域與現有的2g網路類似,採用電路交換技術提供話音業務。分組交換域是2.5g網路中引入的,主要網元裝置有sgsn (servicegprsswitchnode)和ggsn(gateway gprs switch node)。它們負責向終端提供ip連線,使用者通過該域進入網際網路,使用者可以由此傳送郵件,瀏覽網頁。它並沒有在ip之上定義任何特殊的體系結構,它主要是一種接入技術。ip多**域(即ims,ip ********** subsystem)是3gpp制定的umts r5版本中引入的,採用sip作為主要的信令協議,使得移動運營商可以為使用者提供端到端的全ip的多**業務。

ims由呼叫狀態控制功能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聯絡ims的第一步,是ue在被訪問域(漫遊時)首先要訪問的點,進出的sip訊息都要通過p-cscf。p-cscf相當於sip協議定義的邊界**伺服器。

●i-cscf的功能是提供到歸屬網路的入口,將歸屬網路的拓撲圖對其它網路隱藏起來,並通過hss為特定使用者找出相應的s-cscf。它是使用者終端漫遊或者外來任務進入本地服務提供商網路中的聯絡點。當i-cscf接到乙個請求時,它將把請求路由到相應的s-cscf。

●s-cscf給使用者提供服務。當終端註冊時,它同本地域的s-cscf聯絡,本地s-cscf向使用者提供使用者預定的服務。這樣的好處是使用者即使漫遊到不支援某項業務的網路也能像在本地一樣得到需要的服務。

hss(homesubscriberserver)相當於2g網路中的hlr,儲存了與乙個單獨使用者相關的s-cscf和相應的使用者簡介。因此它知道使用者現在的位置和使用者指定的服務。cscf可以向hss詢問以獲得這些資訊。hss和cscf之間互動用的是cx介面,它不是ietf制定的,當也是基於 ip的。

三、使用者sip註冊

使用者在發起一次會話之前必須先完成sip服務註冊。ue(userequipment)將告訴hss它現在的位置,hss更新相應使用者的資訊;註冊前要進行驗證,hss根據使用者資訊和操作限制檢查該使用者是否可以註冊;在服務註冊中,本地域還要為ue選擇乙個s-cscf,並把使用者資訊發往s-cscf。這個過程是在應用層完成的,所以註冊前要建立信令鏈路。因此,首先要建立ue到sgsn和sgsn到ggsn的鏈路。這條鏈路建立以後,使用者就可以註冊了。

如圖3,描述了乙個使用者在3g

圖3 使用者註冊的信令流

四、在漫遊使用者間的會話

一旦ue註冊到乙個s-cscf,語音和多**呼叫就可以建立了。兩使用者之間建立鏈路的過程實際上就是穿越各個cscf的過程。總的來說是按照「主叫使用者 ◇主叫所在地p-cscf◇主叫歸屬地s-cscf◇被叫歸屬地s-cscf ◇被叫所在地p-cscf ◇被叫使用者」的路線。

如圖4所示是最普通的兩個漫遊使用者的會話建立過程。乙個完整的ims呼叫分為會話邀請、資源預留、會話提供、會話連線、會話終止五個階段。

圖4 兩個漫遊使用者會話的sip信令交換

呼叫的過程如下:

(1)會話邀請

a向p-cscf傳送乙個invite請求訊息。該訊息中有b和a的sipuri。p-cscf注意到a不屬於本地使用者並向a的歸屬地**該invite 訊息並返回100trying臨時應答a(表示已經傳送a的請求,正在嘗試建立鏈路,a需要等待)。a的本地域i-cscf向hss查詢,並向a註冊時分配的s-cscf**invite並返回100trying給外地p-cscf。s-cscf收到請求後將invite**給被叫b的本地域並返回 100trying給i-cscf。同樣,b歸屬地的i-cscf

接到請求後向hss查詢並將請求**到b的歸屬地s-cscf,該s-cscf發現b正處在外地網路中,於是將invite**到b目前所在地的p-cscf,接著p-cscf將請求最後傳給b。

(2)資源預留

b接受了這個會話請求,但此時他不回鈴通知a,他返回183sessionprocess應答表示他接受該會話,同時要求a對此表示確定,這個應答通過各個cscf傳給a。同時b啟用乙個gprspdp上下文,它被用來通過ims的ip接入點來建立語音通道。

a收到183應答後,同樣啟用乙個pdp上下文並通過cscf建立的通道傳送乙個comet訊息給b,該訊息含有a的語音通道的位址細節,並起確認作用。

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

當接到comet,b知道傳送語音的ip通道和服務質量引數已經被雙方預留,並且知道了語音通道的位址,因此b返回200ok確認訊息。該訊息包含了b的語音通道的位址細節。

a接到確認後,給b乙個180振鈴資訊,b聽到振鈴即給a乙個200ok訊息,最後a給b傳送ack確認資訊,到此通訊鏈路建立完成,接下來a和b可以進行通話了。

(4)會話終止

為了終止會話,a傳送乙個bye訊息給b。同時a撤銷他的pdp上下文。

b接到bye訊息後,它會撤消自己的pdp上下文,並返回乙個200ok應答給a是房改呼叫使用的所有cscf。

五、結束語

sip協議是乙個簡單、靈活的協議,具有很強的包容性,在保持其核心協議簡捷的基礎上建立了強大的擴充機制,所以利用sip技術可以很容易的實現大量應用。我們可以毫無疑問,基於sip的3gims將會給廣大使用者帶來更快捷、更豐富、更靈活的通訊體驗。

3G的應用原則

size small color red 3g的應用原則 color 上述的業務領域只是3g時代各種商機中我們認為最有可能成功的一些領域,肯定不能包含全部。但是我們正處在乙個創新的時代,相信會有很多令人驚訝的創新服務湧現。要想在3g時代獲得成功,有一些 原則 是非常重要的 免費很重要 當網際網路與通...

Linux下3G的應用

弄了幾天的3g和簡訊,簡單記錄一下。用的3g模組是華為的e1750 wcdma無線資料終端。在linux下,插入3g模組,系統會自動識別為ttyusb0,ttyusb1,ttyusb2,其中ttyusb1不知道有什麼用處,不可讀寫,而其他兩個介面都是可讀寫的,ttyusb0用作3g無線上網的介面,在...

龍尚3G模組在arm板上的應用

最近專案需要在arm板上裝一塊3g的無線模組,於是查了很多資料,弄了很久才發現是資料中出了些問題,故將整個除錯過程寫成部落格,以後方便查閱。一 3g模組現在手上的這塊模組是龍尚u7309系列 o o,沒有打廣告 的,上這個系列好像都沒得買了。以前沒接觸過這類東西,於是各種查詢資料 二 移植步驟 簡單...