?

基于永久在線應用識別的信令風暴解決方案研究

2015-10-21 19:27許石多
科技致富向導 2015年9期
關鍵詞:智能終端

許石多

【摘 要】智能終端,尤其是智能手機近些年的快速普及和廣泛應用,促使大量PC 端應用軟件逐步向智能終端轉移。智能終端新出現的大量應用需要傳統互聯網的支持。其中需要通過向服務器發送心跳包,并以此維護自身在線狀態的永久在線應用,會占用大量的信令資源對傳統移動互聯網運營造成了巨大的壓力。為了解決這個問題,作者從永久在線應用對傳統互聯網影響的原因探索出發,對目前傳統移動互聯網信令風暴的解決方案進行深入調研,重點研究了解決信令風暴中的幾項關鍵技術:對傳統移動互聯網基站的改造,以及與改造相對應的永久在線應用識別技術的研究。

【關鍵詞】永久在線;智能終端;信令風暴

1.研究背景

隨著智能終端的快速普及,以及無線通信技術的快速發展,使得移動互聯網隨之快速興起,據Gartner 公司的數據,2011年全球智能手機終端用戶銷量達到4.72億部,在所有移動設備銷量中占比為31%,同比增長58%。然而跟隨終端出現的大量移動應用對網絡的信令處理能力產生了巨大挑戰。

根據SRG2011 年數據,信令流量目前已經超過數據流量的30% 到50%,而信令流量逐年的增速在70% 遠大于數據流量逐年增速的20%[1],這意味著移動網絡運營商在提供相同的數據接入能力時,需要付出更多的信令網絡資源,而信令資源的消耗并不能為移動網絡運營商帶來收益。心跳包對信令資源的大量占用已經威脅到了網絡的安全穩定運行。

心跳包對網絡資源的占用主要包括無線接入承載(RAB)、用戶承載上下文(PDP),以及長期占用公網IP 地址等。主要由于以下兩方面的原因加劇了信令資源的大量占用和浪費。

1.1大量永久在線應用

永久在線應用(Long-term online application, LOA)是指那些長時在線,并通過心跳包來維持連接的應用。這些應用有非常長的連接時間,但是平均流量非常少。

1.2終端快速休眠

當移動網絡數據進行傳輸時,手機終端的電量會大量被消耗,而LOA每隔較短時間會向服務器發送“心跳包”以維護在線狀態,目前大多移動智能終端為了提供更長時間的待機時間,智能終端在短時間內沒有數據傳輸時釋放連接,當后續再次有數據發送時再次建立連接。[2]這種“心跳包機制”和“快速休眠機制”導致無線連接反復建立釋放,占用了大量移動網絡信令資源,產生信令風暴。

本文將基于識別LOA技術,發現網絡中的LOA和其心跳包,從而為解決信令風暴提供有效的數據依據。

2.解決方案

對LOA的探測面臨著許多困難,首先,LOA長時間在線,意味著對于其狀態的監測也需要維持較長時間,在當前核心網絡設備中網絡流數目爆炸式增長的背景下,長時間維護流狀態是系統不可接受的負載;其次,使用抽樣方法難以評估LOA的狀態,由于LOA流量很小,甚至很長一段時間內沒有流量產生,使用抽樣方法無法確認該流的狀態,從而也無法探測到LOA;最后,使用統計方法進行流量統計也會有較大的誤差問題。由于LOA也有突發流量,統計方法給出的探測結果會受突發流量的影響而造成錯判。這些特點給LOA的探測帶來了巨大的挑戰。

我們使用DPI深度包檢測技術進行心跳包的檢測。深度包檢測(Deep Packet Inspection,DPI)一直是網絡測量中非常重要的技術手段,之前,DPI 技術較多的應用在入侵檢測系統(Intrusion Detection System,IDS)中,近年來,隨著網絡服務提供商逐漸從“銷售帶寬”轉向“銷售服務”,DPI 技術越來越多的被應用在控制識別用戶行為中,從而實現網絡服務提供商差異化服務的依據。DPI 深度包檢測技術需要維護一個應用特征數據庫,當有數據包到來時,需要解包之后將包信息與后臺特征數據庫來進行對比從而確定應用的類型,因此需要根據新協議與新應用的產生而不斷更新維護后臺特征數據庫。

2.1數據包采集

在對現有智能終端數據包采集文獻的調研中,發現大多數文獻中分析采用的智能終端數據包通過兩種方法得到。第一種是通過在電腦端模擬智能終端客戶端,然后使用Wireshark 等數據包截取軟件獲得虛擬終端的數據包。第二種是使用計算機網卡建立無線網絡鏈接,將智能終端連接到計算機網卡架設的無線網絡上,再使用Wireshark在計算機上直接截取計算機與智能終端的通信數據包。這兩種方法采集到的數據包均混雜有智能終端與計算機之間通信的數據,并且在模擬條件下智能終端行為與實際智能終端應用數據行為有偏差。因此,本文采用直接在智能終端上采集數據包的方法來避免上述偏差的產生。

2.2對心跳包進行初步分析

在使用Wireshark 對LOA數據包進行分析的時候,我們發現,永久在線發送的心跳包一般會在比較固定的時間間隔內發送數據。正如之前我們看到的那樣,Android 下QQ 約每隔300s 向服務器發送一次心跳包,MSN 大約150s 向服務器發送一次心跳包,摩托羅拉系統應用大約每隔240s 向服務器發送一次心跳包。

因此我們可以簡單的通過對數據包到來時間間隔的統計來判定智能終端是否開啟了LOA。在判斷之前,我們首先需要得到數據到來的特征時間間隔。

我們通過算法,讓程序自動探測數據包中存在的特征時間間隔。并將以特征時間間隔到來的數據包進行統計,以此判定LOA的狀態。我們將每一條流中的前兩次數據包到來的時間間隔作為第一個特征時間間隔。并以此來判定之后的數據包是否按照此時間間隔到來。若不按照此時間間隔,那么我們繼續通過一定算法擴充時間間隔數據庫。特征時間間隔法適用于LOA以固定時間間隔發送心跳包數據的情況。

在隨后的實驗中我們對兩種方法進行了測試,對LOA的心跳包與非LOA的數據包到來的時間間隔進行了統計分析。在對msn,qq 等LOA進行分析之后,我們發現在類似的LOA中固定的時間間隔十分明顯,因此我們采用特征時間間隔的方法來對LOA進行探測是可行的。

3.系統驗證與結論

對包含心跳包的LOA探測程序的輸入為離線數據包,輸出為此數據包中包含心跳包的流信息(包括數據包時間間隔,以及特征時間間隔,特征時間間隔到達次數,流中是否為心跳包流),和對數據包中是否存在包含心跳包的LOA的判別。輸出結果儲存在與離線數據包同名的txt 文件中。

我們使用對采集到的共285MB,617 種不同應用的不同行為數據包進行分析,LOA探測程序的探測結果進行分析。由于測試環境為Linux,使用了Shell 編程對617 種數據包進行一次性處理。

結果表明該系統可準確的判定包含心跳包的LOA,通過特征時間間間隔法,對每條流的時間間隔進行統計識別,最后達到了對包含心跳包的LOA的識別目的。測試的結果顯示了高識別率和高正確率。 [科]

【參考文獻】

[1]The Impact of Smartphones on 3G Network Performance[Z/OL].Signals Research Group,2010.

[2]Behavior Analysis of Smartphone[R/OL].HUAWEI,2011.www.huawei.com/ilink/en/download/HW_001545.

猜你喜歡
智能終端
基于大數據環境下的數字圖書館面向用戶的服務組織研究
基層部隊心理健康教育形式的新發展
微媒體研究現狀綜述
Wi—Fi環境下自助式點餐系統設計與實現
基于智能終端的移動電子商務商業模式探究
基于智能終端的照護保險服務管理系統的架構設計
《移動應用軟件開發》實踐教學改革與探索
在醫院如何實現BYOD
大學生移動學習的理念和培養策略
智能變電站過程層二次設備調試技術研究進展
91香蕉高清国产线观看免费-97夜夜澡人人爽人人喊a-99久久久无码国产精品9-国产亚洲日韩欧美综合