朱劍鋒
(海南熱帶海洋學(xué)院 電子通信工程學(xué)院,海南 三亞 572022)
?
SIP軟交換系統(tǒng)健壯性的改良
朱劍鋒
(海南熱帶海洋學(xué)院 電子通信工程學(xué)院,海南 三亞 572022)
在研究基于SIP協(xié)議的多媒體通信時(shí),發(fā)現(xiàn)目前SIP軟交換系統(tǒng)存在健壯性方面的缺陷和隱患.提出了數(shù)據(jù)包過濾的方法,控制SIP數(shù)據(jù)的風(fēng)險(xiǎn),實(shí)現(xiàn)了SIP軟交換系統(tǒng)健壯性的改良.
SIP;軟交換系統(tǒng);數(shù)據(jù)包過濾;健壯性
多媒體通信是指在因特網(wǎng)上相交互雙方或多方的多媒體通信活動(dòng),包括Internet多媒體會(huì)議、Internet電話、遠(yuǎn)程教育、遠(yuǎn)程醫(yī)療以及遠(yuǎn)程監(jiān)控等.會(huì)話初始化協(xié)議SIP (session initiation protocol)[1]是在網(wǎng)絡(luò)模型應(yīng)用層上的進(jìn)行多媒體通信的信令協(xié)議,用來解決IP網(wǎng)上軟交換的信令控制,進(jìn)行會(huì)話管理,如發(fā)起、建立、修改及終止等多媒體會(huì)話進(jìn)程控制.SIP與會(huì)話描述協(xié)議SDP(Session Description Protocol)[2]配合,會(huì)話雙方動(dòng)態(tài)調(diào)整多媒體通信屬性,如多媒體的類型及編解碼格式等,確保不同終端間的多媒體通信.
基于SIP協(xié)議的軟交換技術(shù),通過多協(xié)議操作來指揮多媒體網(wǎng)關(guān)的交換行為,在分組交換網(wǎng)上提供實(shí)時(shí)語音及多媒體業(yè)務(wù)的網(wǎng)絡(luò)稱為SIP軟交換系統(tǒng).目前,SIP軟交換系統(tǒng)中主要用于語音、視頻[3]與IP數(shù)據(jù)網(wǎng)相結(jié)合的業(yè)務(wù),完成多媒體通信的呼叫發(fā)起、建立、修改及釋放等信令控制.SIP以其簡單、靈活的特點(diǎn)越來越受到青睞,3GPP(3rd Generation Partnership Project)將SIP作為移動(dòng)通信系統(tǒng)多媒體領(lǐng)域的全I(xiàn)P網(wǎng)絡(luò)的核心控制協(xié)議.
隨著Internet的規(guī)模不斷擴(kuò)大及網(wǎng)絡(luò)越來越復(fù)雜,在網(wǎng)絡(luò)中傳輸?shù)臄?shù)據(jù)也越來越頻繁,大量無用的數(shù)據(jù)虛耗系統(tǒng)資源,存在“黑客”、病毒和DoS(Denial of Service)等眾多安全因素的威脅.SIP軟交換系統(tǒng)處于UAS和UAC都可見的位置,一些SIP數(shù)據(jù)包會(huì)引發(fā)系統(tǒng)拋出異常,影響系統(tǒng)穩(wěn)定運(yùn)行.針對(duì)以上問題,主要討論如何結(jié)合SIP軟交換系統(tǒng)的運(yùn)作模式、SIP數(shù)據(jù)包和SDP消息的特點(diǎn)等,解析從以太網(wǎng)獲取的SIP數(shù)據(jù)包,控制非正常業(yè)務(wù)的SIP數(shù)據(jù)包和可能引發(fā)系統(tǒng)異常的數(shù)據(jù)包,提出了SIP數(shù)據(jù)包的過濾方法,節(jié)省處理異常數(shù)據(jù)包的時(shí)間開銷和內(nèi)存開銷,節(jié)約系統(tǒng)資源,保證系統(tǒng)穩(wěn)定高效運(yùn)行,提高SIP軟交換系統(tǒng)的健壯性和服務(wù)質(zhì)量.
圖1 GSM網(wǎng)關(guān)連接圖
SIP終端A呼叫SIP終端B的會(huì)話過程:SIP終端A發(fā)出INVITE信息呼叫被叫方B,SIP服務(wù)器Proxy Server收到之后查詢被叫方實(shí)際的SIP地址,Proxy Server便向SIP終端B發(fā)出INVITE信息.SIP終端B在回復(fù)200 OK的時(shí)候, Proxy Server將轉(zhuǎn)送200 OK給SIP終端A[4].
為了實(shí)現(xiàn)IP網(wǎng)絡(luò)與GSM網(wǎng)絡(luò)的多媒體通信,引入了GSM網(wǎng)關(guān)WG2001,WG2001通過以太網(wǎng)與Proxy Server相連,Proxy Server通過GSM2001與GSM網(wǎng)絡(luò)相連,這樣注冊(cè)在Proxy Server上的SIP終端就能通過GSM網(wǎng)關(guān)與GSM網(wǎng)絡(luò)的非SIP終端會(huì)話.如圖1所示.
引入GSM網(wǎng)關(guān)的呼叫控制流程參照?qǐng)D2.其中F1,F2,F3為認(rèn)證流程,F4-F13為會(huì)話發(fā)起與通話過程,F14-F17為會(huì)話結(jié)束過程.
在引入GSM網(wǎng)關(guān)之后,該網(wǎng)關(guān)向SIP服務(wù)器不斷送出虛假的SIP數(shù)據(jù)包,接受大量不良SIP數(shù)據(jù)包的SIP服務(wù)器,將產(chǎn)生內(nèi)存泄漏(Memory Leak)等異?,F(xiàn)象.這些異常現(xiàn)象會(huì)時(shí)時(shí)造成SIP服務(wù)器資源浪費(fèi),運(yùn)行前期不斷降低SIP服務(wù)器的運(yùn)行性能,在嚴(yán)重情況下將導(dǎo)致SIP服務(wù)器的系統(tǒng)服務(wù)失效及系統(tǒng)運(yùn)行中止.如果被網(wǎng)絡(luò)黑客利用,還引發(fā)SIP服務(wù)器的安全問題,會(huì)引發(fā)故障.說明該SIP軟交換系統(tǒng)本身存在穩(wěn)定性、健壯性及安全性的風(fēng)險(xiǎn).
SIP服務(wù)器Proxy Server在接收到一個(gè)以太網(wǎng)數(shù)據(jù)幀時(shí),數(shù)據(jù)從協(xié)議棧中由底層向頂層逐層上升的同時(shí),剝離各層協(xié)議上的報(bào)文首部及相應(yīng)尾部[5].并且,各層協(xié)議檢查報(bào)文首部的協(xié)議標(biāo)識(shí),以確定本層接收應(yīng)用數(shù)據(jù)的協(xié)議首部,并按以太網(wǎng)數(shù)據(jù)幀的分用過程規(guī)則分析出需要的內(nèi)容,如數(shù)據(jù)包的源IP地址、目的IP地址、源端口號(hào)、及SIP協(xié)議的請(qǐng)求行(Request-Line)和狀態(tài)行(Status-Line)等.
IP數(shù)據(jù)包的首部將在網(wǎng)絡(luò)層被“剝?nèi)ァ?剩下數(shù)據(jù)部分,如圖3所示.數(shù)據(jù)首部8字節(jié)數(shù)據(jù)是固定的,起始行長度不定,但必須含有SIP關(guān)鍵字:SIP/版本號(hào)(如SIP/2.0),起始行分為請(qǐng)求行(Request-Line)和狀態(tài)行(Status-Line)兩類.請(qǐng)求行是客戶端發(fā)送到服務(wù)器的,狀態(tài)行是服務(wù)器發(fā)給客戶端的,這里只考慮請(qǐng)求行的起始行.SIP請(qǐng)求消息的一般格式:
SIP請(qǐng)求消息 = SIP請(qǐng)求起始行
*(通用頭部 | 請(qǐng)求頭部 | 實(shí)體頭部)
空行
[消息體]
SIP請(qǐng)求消息從請(qǐng)求行開始,SIP的請(qǐng)求行由SIP方法名(Method)、SIP請(qǐng)求(Request-URL) 和SIP版本號(hào)(SIP-Version)組成,各部分之間用空格符分隔,SIP請(qǐng)求行的結(jié)束采用CRLF符號(hào),請(qǐng)求IP數(shù)據(jù)包的格式如下:
Request-Line = Method +空格+ Request-URL+空格+SIP-Version+CRLF
圖3 SIP數(shù)據(jù)包格式
方法名(Method):有6種方法,如REGISTER用于注冊(cè),INVITE、ACK、CANCEL用于建立多媒體會(huì)話,BYE用于結(jié)束多媒體會(huì)話,OPTIONS用于查詢服務(wù)器或UA的能力.
Request-URI:Request-URI是一個(gè)SIP或者SIPS URI,禁止包含空白字符或者控制字符,并且禁止用“<>”括上.
通過對(duì)SIP系統(tǒng)的運(yùn)作模式和數(shù)據(jù)包的分析,通過檢驗(yàn)可以得出:
①SIP消息分為請(qǐng)求消息和應(yīng)答消息,只有請(qǐng)求消息才會(huì)引發(fā)系統(tǒng)異常;
②SIP數(shù)據(jù)包的IP數(shù)據(jù)包首部和數(shù)據(jù)首部是固定的格式,消息頭和消息體是可以沒有的,所以起始行是進(jìn)行消息“合法性”判斷的關(guān)鍵部位;
③系統(tǒng)缺陷具有集群效應(yīng).
參照數(shù)據(jù)包的分析,解析數(shù)據(jù)起始行的請(qǐng)求消息即能丟棄“非法”的SIP數(shù)據(jù)包.具體方法如下,結(jié)構(gòu)圖如圖4.
圖4 數(shù)據(jù)包的過濾
步驟一:檢證“合法”數(shù)據(jù)最小長度;
步驟二:檢證是否含有行結(jié)束標(biāo)志CRLF或LF;
步驟三:檢證Request-Line中是否含有SIP版本信息(如SIP/2.0);
步驟四:檢證Request-Line中是否包含Method關(guān)鍵字;
步驟五:檢證Request-Line中Request-URI是否符合規(guī)定格式.
要確保SIP軟交換系統(tǒng)高效穩(wěn)定的運(yùn)行,除了提高系統(tǒng)的健壯性之外,系統(tǒng)的安全性同樣重要.通過GSM網(wǎng)關(guān)的動(dòng)作,發(fā)現(xiàn)SIP軟交換系統(tǒng)存在穩(wěn)定性問題,對(duì)問題進(jìn)行匯總分析,對(duì)該系統(tǒng)健壯性問題進(jìn)行了改良.但在安全性方面還需要進(jìn)一步的深入研究,提出確實(shí)可行的安全機(jī)制.
通過對(duì)影響SIP軟交換系統(tǒng)的健壯性與穩(wěn)定性的因素進(jìn)行分析,提出了對(duì)其所處環(huán)境中的不良SIP數(shù)據(jù)包的過濾策略,并結(jié)合系統(tǒng)運(yùn)作模式與SIP消息的特點(diǎn)實(shí)現(xiàn)了對(duì)以太網(wǎng)數(shù)據(jù)包進(jìn)行分析過濾,控制了不良網(wǎng)絡(luò)數(shù)據(jù)的干擾風(fēng)險(xiǎn),SIP軟交換系統(tǒng)的健壯性進(jìn)行改良,保證了系統(tǒng)相對(duì)安全穩(wěn)定運(yùn)行,提高了系統(tǒng)工作效率,節(jié)約了系統(tǒng)資源.
[1]J. Rosenberg, H. Schulzrinne, G. Camarillo, A. Johnston, J. Peterson, R. Sparks, M. Handley, E. Schooler. SIP:Session Initiation Protocol (RFC3261)[S].IETF Network Working Group, June 2002.
[2]J. Rosenberg, H. Schulzrinne. An Offer/Answer Model with the Session Description Protocol (RFC3264)[S].2 002.
[3]Schulzrinne H., Casner S., Frederick R., and V. Jacobson. “RTP:A Transport Protocol for Real-Time Applications”, STD 64, RFC 3550[S].July 2003.
[4]朱劍鋒, 李壯, 馬玉春. IP-PBX呼叫傳送功能的實(shí)現(xiàn)[J].福建電腦, 2010(1):165,153.
[5]劉應(yīng)平. 局域網(wǎng)異常數(shù)據(jù)包監(jiān)控與處理系統(tǒng)的設(shè)計(jì)[J].電腦開發(fā)與運(yùn)用, 2010,23(12):21-22, 25.
(編校:何軍民)
Robustness Improvement for SIP Soft-switch System
ZHU Jian-feng
(School of Electronics and Communication Engineering, Hainan Tropic Ocean University, Sanya Hainan, 572022, China)
Based on the SIP protocol multimedia communication, the existing SIP Soft-switch system robustness aspects of defects and hidden dangers are found. In order to control the risk of SIP Message and to realize robustness improved for SIP Soft-switch System successfully, a new solution is proposed through packet filtering.
SIP; soft-switch System; packet filtering; robustness
2015-11-25
2014年海南省高等學(xué)??茖W(xué)研究項(xiàng)目(HNKY2014-64)
朱劍鋒(1966-), 男, 吉林永吉人, 海南熱帶海洋學(xué)院電子通信工程學(xué)院教授, 碩士,研究方向?yàn)榫W(wǎng)絡(luò)通信技術(shù).
TP393
A
1008-6722(2016) 02-0013-05
10.1 3307/j.issn.1 008-6722.2 016.02.03