曾繁超

【摘要】 VoIP是用lP數據包代替傳統的電路交換進行語言數據傳輸的一種技術。隨著這種技術日益廣泛的應用,帶來了一些新的安全問題,必須進行有效的識別。本文通過分析VoIP數據包的特性,給出了兩個基于網絡流量行為的統計特征,從而可以對Voip語音通訊進行有效識別。
【關鍵字】 VoIP Skype 流量識別
一、引言
VOIP是一種網絡應用,它利用分組交換網絡傳輸語音數據包。傳統的語音數據是通過電路交換網進行傳輸的,電路交換網雖然可以提供更可靠通訊,但成本更昂貴。而利用分組交換網進行聲音數據,成本更低,同樣也能提供比較可靠的通訊。現在有很多VOIP軟件,其中應用比較廣泛的是Skype。在越來越廣泛應用的同時,VOIP也嚴重增加了網絡營運的設備負荷,同難于管理。要對其進行控制,必須要對它的流量進行監測。
二、傳統的流量識別方法
當前Internet中的流量依據應用的不同可以分成不同類別。傳統的流量識別方法,大概分為三種:1、基于端口的流量識別方法;2、基于字符特征的流量識別方法;3、基于協議流程分析的流量識別方法。流量識別技術有如下要求:準確性、實時性、可擴展、健壯性。如何在這四個要求之間做到有效的權衡是流量識別方法研究要解決的問題。
三、基于數據包大小的概率分布特征
基于網絡流量行為的特征,進行VOIP的流量識別,應該是一種可行的方法。所謂網絡流量行為,就是指流量的一些主要要素所表現出來的相似性,或者穩定性。比如,流量的數據包大小固定在某一范圍內,再比如流量數據包大小,隨著時間的推移,有個明顯的變化等。這些都是流量行為的特征。voIP的數據包,數量巨大,用統計的方法對其網絡流量行為進行分析,應該是一個可行的方法。首先,每個數據包都有一些特性,包長,包到達時間等,其次數據包之間也有一些關聯特性,如包長的變化,前后兩個數據包的到達時間間隔等。根據這些特性,就可以不考慮數據包的負載數據的內容,不通過字符特征進行分析,直接對這些特性進行分析,這樣可以顯著地提高識別的速度。當抓取了一系列數據包后,數據包的大少的分布就確定了,根據這可以對這些數據包進行分析。首先,數據包負載的大小必定大于等于O。而且,根據IP數據包的特性,其最大長度理論上為65535,但一般上遠小于這一數值,一般小于1500字節。由于,skype主要使用UDP包進行傳輸語音數據,所以這里先對UDP包進行分析。對十次skype通話進行抓包,得到五組UDP包,用a,b,c,d,e代表這五組數據。為了便于觀察,先劃分出以下區間[0,40),[40,50),[50,60),[60,80),[80,100),[100,130),[130,150),[150,200),[200,250), [250,300),[300,350),[350,400),[400,512),[512,+∞)?skype的包長都處于這些區間中。skype通話的UDP數據包在包長分布上有比較相似的特性:主要為包長在[130,150),[100,130)這連個區間的數據包;而在[40,50)這個區間的數據包,是在skype通話雙方靜音時產生的,數量也比較巨大。
每一個到達的UDP數據包,其大小都是隨機的,而且為大于28,小于65535的整數。這樣,數據包的抓取,可以看作隨機試驗E,事件Ai為抓到的IP數據包大小為i,所以隨機試驗E有A0到A65535,共65536個事件。事件Ai出現的概率為Pi,所以有以下等式(1):
事件Ai的概率如何確定?每抓到一個數據包,就可以認為完成了一次隨機試驗E,當抓了N次數據包,就認為完成了N次隨機試驗E。在這N次隨機試驗中.ni表示事件Aj在這N次試驗中出現的次數,所以 為事件Ai出現的頻率,當N比較大時,該頻率就趨于穩定,我們就認為 是事件Ai的概率Pi,即公式(2):
由以上分析可知,數據包的大小為一離散隨機變量X,其取值范圍為大于等于0,小于等于512的整數。隨機變量X的概率分布為公式(3):
所以,必須分別統計出大小為x的數據包的個數,然后再計算X=x時的概率
四、結束語
本文從網絡流量行為的角度得到了SKYPE的兩個特征,都是根據數據包的統計數據進行分析的。對其它的VOIP應用,我們也可以同樣提取出它們的數據包包長的概率分布特征,從而對這些VOIP流量進行識別。