張 睿,劉澤忠
(中國電子科技集團公司第三十研究所,四川 成都 610041)
基于開源軟件的IMS通信網(wǎng)絡(luò)的設(shè)計與實現(xiàn)*
張 睿,劉澤忠
(中國電子科技集團公司第三十研究所,四川 成都 610041)
隨著IP多媒體子系統(tǒng)技術(shù)的應(yīng)用和發(fā)展,如何有效建立IMS通信網(wǎng)絡(luò)環(huán)境是進行IMS網(wǎng)絡(luò)架構(gòu)與功能研究的前提與重點,為此,針對目前IMS小規(guī)模網(wǎng)絡(luò)構(gòu)建的需求,研究提出了一種基于開源軟件的IMS通信網(wǎng)絡(luò)構(gòu)建方案,以解決標準IMS網(wǎng)絡(luò)構(gòu)建成本高、難度大等問題。此方案基于Open IMS Core開源項目,從虛擬機構(gòu)建、通信協(xié)議配置以及通信業(yè)務(wù)配置等多方面闡述了網(wǎng)絡(luò)構(gòu)建的初步設(shè)想,為IMS相關(guān)的科學(xué)研究提供了新的學(xué)習(xí)、試驗以及測試平臺。
開源軟件;Open IMS Core;IMS通信網(wǎng)絡(luò)
IP多媒體系統(tǒng)[1](IP Multimedia Subsystem,IMS),是一種全新的多媒體業(yè)務(wù)形式,能夠滿足現(xiàn)在終端客戶更新穎、更多樣的化多媒體業(yè)務(wù)需求。目前,IMS被認為是下一代網(wǎng)絡(luò)(Next Generation NetWork,NGN)通信網(wǎng)絡(luò)的核心技術(shù),也是解決移動通信網(wǎng)絡(luò)與固定電話網(wǎng)絡(luò)融合,引入語音、數(shù)據(jù)、視頻三重融合等差異化業(yè)務(wù)的重要方式。IMS最初是由3GPP(第三代合作伙伴計劃)組織制定的一項3G網(wǎng)絡(luò)核心技術(shù)標準。現(xiàn)在這項標準已為ITU-T(國際電聯(lián)標準化部門)和ETSI(歐洲電信標準化委員會)認可,被納入NGN的核心框架之中。它被認為是實現(xiàn)固定網(wǎng)和移動網(wǎng)融合(FMC)的重要技術(shù)基礎(chǔ)。隨著4G LTE網(wǎng)絡(luò)的大規(guī)模部署和應(yīng)用,IMS已經(jīng)進入實用化部署階段。可以說當前的IMS的應(yīng)用主要是跟移動應(yīng)用相關(guān)的,因此,本文對IMS的描述主要以移動應(yīng)用為主。
3GPP在UMTS R5版本的核心網(wǎng)中最早引入了IMS,IMS疊加在UMTS分組域之上,通過UMTS接入網(wǎng),主要與分組域的GGSN通過Go接口連接(見下圖),分組核心網(wǎng)與移動用戶交換SIP控制信令。IMS本身只負責控制信令的處理,由IMS引發(fā)的應(yīng)用數(shù)據(jù)傳輸是直接從GGSN連接到外部應(yīng)用服務(wù)器和數(shù)據(jù)網(wǎng)。

圖1 UMTS R5核心網(wǎng)架構(gòu)[2]
IMS功能實體可分為六大類[3]:會話管理和路由類(CSCF)、數(shù)據(jù)庫(HSS、SLF)、網(wǎng)間協(xié)調(diào)(BGCF、MGCF、IM-MGW、SGW)、服務(wù)提供(應(yīng)用服務(wù)器、MRFC、MRFP)、策略與支撐(THIG、SEG、PDF)和計費。在上述功能實體中CSCF和HSS是IMS的核心。
1.1 呼叫會話控制功能(CSCF)
呼叫會話控制功能[4](Call Session Control Function,CSCF)是通信服務(wù)器,是IMS的核心功能實體。CSCF除了提供SIP協(xié)議處理功能和用戶對話狀態(tài)管理外,還提供移動管理,包括用戶等級,鑒權(quán)和用戶profile管理[5];QoS管理;與外部IP數(shù)據(jù)網(wǎng)和應(yīng)用服務(wù)器互連等功能。
根據(jù)CSCF在網(wǎng)絡(luò)中的位置及所完成的功能不同,分為:
(1)代理呼叫會話控制功能(Proxy-CSCF,P-CSCF)
P-CSCF是IMS拜訪域控制平面同一的初步入口點,即UE接入IMS的第一個接觸點,P-CSCF將來自拜訪地接入網(wǎng)絡(luò)的SIP消息,包括登記、多媒體會話、IM/Presence等,代理轉(zhuǎn)接到其歸屬地的S-CSCF或I-CSCF,即所有SIP信息流無論來自UE或者發(fā)給UE,都必須通過P-CSCF。P-CSCF完成的功能包括SIP Proxy、SIP用戶代理、SIP消息壓縮/解壓縮、計費、加/解密等。
(2)問詢呼叫會話控制功能(Interrogating-CSCF,I-CSCF)
I-CSCF是運營商歸屬IMS網(wǎng)絡(luò)的同一的初步入口點,即拜訪網(wǎng)絡(luò)與歸屬網(wǎng)絡(luò)之間交互的第一個接觸點。在一個運營商網(wǎng)絡(luò)中,I-CSCF為所有連接到這個運營商的某一用戶連接提供聯(lián)系點,所有從IMS外來到IMS的信息都要先訪問I-CSCF,相當于為IMS提供一個關(guān)口功能。I-CSCF完成的功能包括為用戶指派S-CSCF、查詢被叫用戶S-CSCF路由信息、SIP轉(zhuǎn)發(fā)等。
(3)服務(wù)呼叫會話控制功能(Serving-CSCF,S-CSCF)
S-CSCF在這個IMS核心網(wǎng)的會話控制中處于核心地位,它是IMS核心中的核心。它位于歸屬網(wǎng)絡(luò),為UE進行會話控制和注冊服務(wù)。也就是說,S-CSCF接收來自訪問網(wǎng)絡(luò)IMS用戶警告P-CSCF轉(zhuǎn)發(fā)的注冊請求,與HSS配合對IMS終端用戶進行鑒權(quán),并從HSS下載用戶IMS簽約信息;當UE處于會話狀態(tài)時,S-CSCF維持會話狀態(tài),執(zhí)行針對主叫端及被叫端IMS用戶的基本會話路由功能,評估IMS簽約觸發(fā)規(guī)則和網(wǎng)絡(luò)運營商對服務(wù)支持的需要,與服務(wù)平臺和計費功能進行交互。
1.2 歸屬用戶服務(wù)器(HSS)
無論是第一代移動通信網(wǎng)絡(luò)還是第二代移動通信網(wǎng)絡(luò),乃至第三代移動通信網(wǎng)絡(luò),HLR一直是用來儲存、管理移動用戶簽約數(shù)據(jù),簽約數(shù)據(jù)產(chǎn)生和提供移動用戶位置管理功能的網(wǎng)絡(luò)實體。發(fā)展到第三代移動通信R5版本,HLR升級為歸屬用戶管理服務(wù)器HSS(Home Subcriber Server)。HSS不單服務(wù)于CS和PS域,提供原HLR/AuC功能,還為R5網(wǎng)絡(luò)的IMS提供IP多媒體業(yè)務(wù)數(shù)據(jù)的管理能力,即為IMS控制平面提供呼叫、會話管理功能及IMS用戶簽約信息的管理。HSS是歸屬網(wǎng)絡(luò)中保存用戶的簽約信息,包括:用戶標識(IMS公共和私有標識);用戶安全數(shù)據(jù):控制用戶接入網(wǎng)絡(luò)的鑒權(quán)數(shù)據(jù)、漫游限制信息、數(shù)據(jù)完整性保護和加密等;用戶位置信息:支持包括CS、PS和IMS的用戶位置信息的注冊和管理;用戶服務(wù)簽約信息:包括在往外AS的增值業(yè)務(wù)簽約信息;用戶接入?yún)?shù):用于會話建立,他包括諸如用戶認證、漫游授權(quán)和分配S-CSCF的名字等。
1.3 接口及協(xié)議
下圖為CSCF、HSS以及UE之間的接口[6]。各接口運行的協(xié)議主要有兩種:SIP和Diameter。其中運行SIP的接口包括Gm和Mw,運行Diameter協(xié)議的接口包括Cx。

圖2 IMS網(wǎng)絡(luò)接口
開源IMS核心項目[7](Open IMS Core)是德國Fraunhofer FOKUS研究所開發(fā)并管理的IMS開源項目,旨在填補IMS開源軟件的空白,為IMS業(yè)務(wù)系統(tǒng)開發(fā)以及IMS概念學(xué)習(xí)提供測試床和平臺。Open IMS Core具備高度的可配置性和可擴展性,在一些國家和國際開發(fā)項目中,已經(jīng)得到應(yīng)用。因此,Open IMS Core是進行IMS系統(tǒng)開發(fā)、測試、學(xué)習(xí)的理想工具。
Open IMS Core由呼叫會話控制功能(CSCFs)、IMS信令路由單元和用于管理用戶配置文件[8]及路由規(guī)則的歸屬用戶服務(wù)器[9](HSS)組成(見下圖)。Open IMS Core的核心組件是CSCFs(代理、問詢和服務(wù)),它們基于FOUKS的SER開發(fā),并成功與商用的IMS系統(tǒng)進行了對接測試。由于基本的信令路由功能需要在IMS HSS中進行查找,沒有HSS的IMS網(wǎng)絡(luò)無法正常運行,因此一個簡單的FOKUS歸屬用戶服務(wù)器(HSS)-FHoSS也是開源IMS核心項目的一部分。

圖3 Open IMS Core組成
針對開源的Open IMS Core,網(wǎng)絡(luò)上有很多介紹安裝的版本,不過都存在一些問題。同時也由于Open IMS Core的資料缺乏導(dǎo)致實際調(diào)通時花費一些時間[10]。下面是安裝在Ubuntu 14.04 Desktop版本上的過程,Ubuntu的其他版本也應(yīng)該可以這樣安裝。
3.1 軟硬件平臺準備
首先,要為Open IMS Core準備編譯、運行的軟硬件平臺。為了盡量節(jié)省資源和使試驗更容易開展,采用運行于單機的多個虛擬機作為Open IMS Core 編譯、運行的平臺。需建立的虛擬機平臺包括P-CSCF虛擬機、I-CSCF虛擬機、 S-CSCF[11]虛擬機、HSS虛擬機和用戶虛擬機。其中,HSS虛擬機還負責運行DNS服務(wù)器,提供IMS域名解析功能。關(guān)于虛擬機支撐軟硬件平臺及虛擬機必備軟件見下表。

表1 試驗環(huán)境軟硬件平臺列表
以MySQL為例,說明一下Ubuntu[13]系統(tǒng)安裝軟件的過程[14]。首先保證計算機(包括虛擬機)能夠訪問互聯(lián)網(wǎng),然后進入命令行模式,以超級用戶身份運行“apt-get install mysql-server mysql-client”命令,具體見下圖。
(1)第一步:運行“apt-get install mysql-server mysql-client”命令;

圖4 啟動MySql數(shù)據(jù)庫的安裝過程
(2)第二步:輸入“Y”,選擇安裝;

圖5 解壓并安裝MySql數(shù)據(jù)庫
(3)第三步:輸入MySql數(shù)據(jù)庫root用戶的密碼;

圖6 輸入MySql數(shù)據(jù)庫的管理員用戶口令
3.2 安裝Open IMS Core
支撐軟硬件平臺部署完成后,接下來就是要下載、編譯、安裝Open IMS Core項目了。首先,第一步使下載源碼。
(1)獲取源碼
因為源碼編譯路徑已經(jīng)在配置文件中固化,因此,源碼的本地存儲也要遵循一定的規(guī)則。在HSS虛擬機的“/opt”目錄下建立 “OpenIMSCore”文件夾,并在“/OpenIMSCore”建立“ser_ims”和“FHoSS”兩個子文件夾。在“/opt/OpenIMSCore/ser_ims/”路徑下運行:
svn checkouthttps://svn.code.sf.net/p/openimscore/code/ser_ims/trunkser_ims
在“/opt/OpenIMSCore/FHoSS /”路徑下運行:
svn checkout https://svn.code.sf.net/p/openimscore/code/FHoSS/trunk FHoSS
通過上述兩條命令的執(zhí)行,Open IMS Core的源碼就分別下載到本地的相應(yīng)目錄下了。
(2)編譯
在“……/ser_ims”目錄下運行:
make install-libs all
在“……/FHoSS”目錄下運行:
ant compile
ant deploy
通過上述命令的執(zhí)行,CSCFs和HSS程序編譯完成。
(3)配置
1)配置各虛擬機的局域網(wǎng)IP地址,確保各虛擬機之間局域網(wǎng)可達。
2)將HSS虛擬機中的OpenIMSCOre文件夾整體拷貝至P/I/S-CSCF虛擬機的“/opt”目錄,運行:
cp ser_ims/cfg/*.cfg .
cp ser_ims/cfg/*.xml .
cp ser_ims/cfg/*.sh .
上述命令主要是用于將運行程序及相關(guān)的配置文件拷貝至OpenIMSCore文件夾根目錄下。
3)在全部虛擬機的“/ser_ims”目錄下運行“./configurator.sh”命令,然后“Domain Name:”屬性配置為“open-ims.test”,“IP Adress”屬性配置為虛擬機本地IP地址。該步驟主要完成CSCFs的域名和IP地址配置。
4)利用文本編輯工具(gedit)打開并編輯P/I/S-CSCF虛擬機的resolv.conf文件(在/etc目錄下),更改“nameserver”的IP地址為HSS(DNS服務(wù)器)的IP地址。
5)配置DNS服務(wù)器。將“/ser_ims/cfg/”目錄下的“open-ims.dnszone”文件拷貝至“/etc/bind/”目錄下,并利用文本編輯工具打開,更改相關(guān)CSCF的IP地址。在同目錄下的“name.conf.local”文件中增加以下語句:
zone "open-ims.test" IN {
type master;
file "pri/open-ims.dnszone";}
完成上述DNS配置后,重啟bind9服務(wù)。
(4)運行
在HSS虛擬機“……/FHoSS/deploy/”目錄下運行“./startup.sh”;
在P-CSCF虛擬機的“……/ser-ims/”目錄下運行“./pscscf.sh”;
在I-CSCF虛擬機的“……/ser-ims /”目錄下運行“./icscf.sh”;
在S-CSCF虛擬機的“……/ser-ims /”目錄下運行“./scscf.sh”。
在以上IMS核心網(wǎng)絡(luò)的基礎(chǔ)上,加入UCT IMS Client軟件模擬的IMS用戶,通過檢驗用戶間的通話質(zhì)量,測試IMS試驗環(huán)境的VoIP基本業(yè)務(wù)功能;并通過改變用戶的QoS等級等簽約信息的方式,測試QoS參數(shù)中的帶寬對用戶通話質(zhì)量的影響,測試網(wǎng)絡(luò)如下圖所示。

圖7 業(yè)務(wù)測試網(wǎng)絡(luò)結(jié)構(gòu)圖
4.1 試驗環(huán)境的VoIP業(yè)務(wù)質(zhì)量測試
在系統(tǒng)默認帶寬(68kbps)情況下,客戶端A、B能夠正常建立呼叫,通話過程中,聲音清晰,對話內(nèi)容能清晰辨認,且基本無延遲和回聲現(xiàn)象。
在用戶通話過程中,在運行P-CSCF的主機上使用命令行查看流經(jīng)P-CSCF的數(shù)據(jù)流量,數(shù)據(jù)信息如下所示。可以發(fā)現(xiàn),客戶端A、B之間的帶寬為68kbps,與授權(quán)的帶寬一致,試驗環(huán)境可很好地對VoIP業(yè)務(wù)提供支持。

圖8 客戶端通話時的流量監(jiān)測情況
4.2 修改帶寬參數(shù)后的通話質(zhì)量測試
修改客戶端A、B的簽約帶寬,均修改為50 kbps。根據(jù)用戶訂閱情況,P-CSCF經(jīng)過判斷,將為客戶端重新分配50 kbps的帶寬。測試過程中,由于分配帶寬比默認帶寬小,通話時,發(fā)現(xiàn)聲音斷續(xù),通話質(zhì)量無法保證,在運行P-CSCF的主機上使用命令行查看流經(jīng)P-CSCF的數(shù)據(jù)流量,數(shù)據(jù)信息如下所示。該測試證明,試驗環(huán)境可根據(jù)用戶簽約參數(shù)的變化情況,對QoS規(guī)則進行動態(tài)調(diào)整,符合真實網(wǎng)絡(luò)的特征。

圖9 改變QoS參數(shù)后客戶端通話時的流量監(jiān)測情況
采用本文方案完成包含CSCFs和HSS關(guān)鍵網(wǎng)元節(jié)點的IMS試驗環(huán)境構(gòu)建后,就可以依托試驗環(huán)境開展各項試驗了。在進行網(wǎng)絡(luò)分析時,可以通過例如Wireshark等以太網(wǎng)協(xié)議分析軟件,進行信令數(shù)據(jù)的跟蹤分析,當需要在試驗環(huán)境中運行IMS業(yè)務(wù)時,則可以構(gòu)建IMS用戶虛擬機,并添加到試驗環(huán)境中來。通過后續(xù)的業(yè)務(wù)測試,模擬用戶能夠正常使用VoIP業(yè)務(wù),話音清晰,無延遲和回聲;并可根據(jù)用戶簽約參數(shù)的變化情況,對QoS規(guī)則進行動態(tài)調(diào)整,表明該試驗環(huán)境可很好地支持基本IMS業(yè)務(wù),性能良好。
[1] 楊放春,孫其博.軟交換與IMS技術(shù)[M].北京:北京郵電大學(xué)出社,2007:307. YANG Fang-chun, SUN Qi-bo. Softswitch and IMS Technology[M].Beijing: Beijing University of Posts and Telecommunications Press,2007:307.
[2] 樊燦,汪小燕.3G中IP多媒體子系統(tǒng)體系結(jié)構(gòu)[J].通信術(shù),2002,10:67-69. FAN Chan, WANG Xiao-yan.System Architecture of IP Multimedia Subsystem in 3G[J].Communications Technology, 2002,10:67-69.
[3] 3GPP.TS 23.002,Network Architecture[S].American:3GPP:223[2015.7.23]. http://www.3gpp.org/ftp/Specs/2015-06/Rel-5/23_series/23002-5c0.zip.
[4] 3GPP.TS 23.218,IP Multimedia(IM)Session Handling;IM Call Model[S]. American:3GPP:108-110[2015.7.23]. http://www.3gpp.org/ftp/Specs/2015-06/Rel-5/23_series/23218-590.zip.
[5] 李曉濤.基于開放源碼實現(xiàn)緊湊式IMS系統(tǒng)[D]. 北京,北京郵電大學(xué),2011. LI Xiao-tao. Compact IMS System based on Open Source [D]. Beijing: Beijing University of Posts and Telecommunications,2011.
[6] 趙鵬,周生,望玉梅.IMS:移動領(lǐng)域的IP多媒體概念和服務(wù)[M].北京,機械工業(yè)出版社,2005:234. ZHAO Peng, ZHOU Sheng, WANG Yu-mei.IMS: Mobile Field of IP Multimedia Concepts and Services[M]. Beijing: China Machine Press,2005:234.
[7] 3GPP.TS 22.140,Service Requirements for 3GPP Generic User Profile[S]. American:3GPP:58-60[2015.7.23]. http://www.3gpp.org/ftp/Specs/2015-06/Rel-5/22_series/22140-540.zip.
[8] 3GPP.TS 22.228,Service Requirements for the Internet Protocol(IP) Multimedia Core Network Subsystem[S]. American:3GPP:22[2015.7.23]. http://www.3gpp.org/ftp/Specs/2015-06/Rel-5/22_series/22228-570.zip.
[9] Core Network Dynamics GmbH.The Open IMS Core is an Open Source implementation[EB/OL],2015-7-15/2015-7-25. http://www.openimscore.org/documentation/installation-guide/.
[10] 李同康.基于IMS架構(gòu)的流媒體服務(wù)器的研究和應(yīng)用[D].南京:南京郵電大學(xué),2010. LI Tong-kang.Research and Application of IMS-based Streaming Media Server[D].NanJing: Nanjing University Of Posts And Telecommunications,2010.
[11] 陳思遠.基于IMS架構(gòu)的LBS系統(tǒng)的設(shè)計與實現(xiàn)[D].廣州:華南理工大學(xué),2010. CHEN Si-yuan. Design and Implementation of LBS System based on IMS Architecture [D].Guangzhou: South China University of Technology,2010.
[12] Ulf Lamping. Wireshark Developer′s Guide[EB/OL],2014-11-9/2015-7-25. https://www.wireshark.org/docs/wsug_html_chunked/.
[13] Canonical Ltd.Ubuntu Server-for scale out computing[EB/OL],2014-9-1/2015-7-26. http://developer.ubuntu.com/zh-cn/start/ubuntu-for-devices/installing-ubuntu-for-devices/.
[14] Oracle Corporation.MySQL 5.1 Reference Manual[EB/OL],2015-8-30/2015-8-31. http://dev.mysql.com/doc/refman/5.1/en/.
Design and Implementation of IMS Communication Network based on Open-Source Software
ZHANG Rui,LIU Ze-zhong
(No.30 Institute of CETC, Chengdu Sichuan 610041, China)
With the application and development of IP multimedia subsystem, how to effectively establish the IMS communication network environment becomes the premise and key of IMS network architecture and function research. For this reason and aiming at the demands of small-scale IMS network construction, a novel construction scheme of IMS communication network based on open source software is proposed,thus to solve the problems of high cost, great difficulty and so on. Based on open-source project of Open IMS Core, preliminary idea of network construction is described from the prospective of virtual machine construction, communication protocol configuration and communication service configuration,thus providing a new platform for the study, experiment and test of IMS-related scientific research.
open-source software; Open IMS Core; IMS communication network
10.3969/j.issn.1002-0802.2015.10.013
2015-05-01;
2015-08-27 Received date:2015-05-01;Revised date:2015-08-27
TN915.02
A
1002-0802(2015)10-1162-06

張 睿(1980—),男,碩士,工程師,主要研究方向為信令網(wǎng)安全防護;
劉澤忠(1979—),男,碩士,高級工程師,主要研究方向為偽移動通信安全防護。