999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

高速網絡環境下的流量采集系統設計

2017-05-12 09:22:56江天宇胡洋瑞
現代計算機 2017年9期
關鍵詞:系統

江天宇,胡洋瑞

(四川大學計算機學院,成都 610065)

高速網絡環境下的流量采集系統設計

江天宇,胡洋瑞

(四川大學計算機學院,成都 610065)

為了使網絡異常檢測系統能夠在高速網絡環境中正常工作,實現一種高效的流量采集系統。它利用雙緩沖機制減少多線程鎖的開銷,使用多線程技術提高系統處理效率,并且該系統具有很好擴展性,可以遷移到其他平臺,最終將該系統應用在高速網絡環境下的網絡數據包在線捕獲處理。

網絡流量;異常檢測;網絡安全

0 引言

隨著互聯網變得越來越龐大,網絡也越來越復雜,網絡中的各種惡意軟件、病毒、木馬也越來越多。網絡異常檢測系統架設在系統邊界,對邊界流量進行審計、檢測,隨著網絡流量的增大,采集系統壓力也越來越大。因此,研究高速網絡流量采集系統對提升網絡異常檢測系統的性能非常關鍵。

在目前的網絡異常檢測檢測領域,網絡流量數據通常有兩種格式,一種是基于會話流數據,一種是基于數據包數據。根據C.Barakat等人[1]給出的定義,會話流是一個由源IP地址和端口、目標IP地址和端口以及應用協議組成的五元組(源IP地址、源端口、目標IP地址、目標端口、應用協議);后者是使用原始數據包來進行網絡流量分析[2]。基于會話流的異常檢測是目前的主流,目前流行的NetFlow、NetStream等協議都提取了會話流信息,因為它最大限度地保留了網絡流量的摘要信息,同時又不涉及隱私問題。

1 Winpcap工作原理

在Windows平臺上,捕獲數據包的途徑有很多種,例如,Raw Socket、Winpcap等。通過Raw Socket方式捕獲的數據包是完整的網絡層數據包,不包含鏈路層信息,它不能接收到與IP層相同層次的網絡層數據包。而通過使用Winpcap則可以捕獲到數據鏈路層的數據包,并且還能實現過濾。

Winpcap是用于網絡封包抓取的一套工具[3],可適用于32/64位的Windows操作系統上捕獲網絡數據包,包含了內核層的數據包過濾,一個底層動態鏈接庫,和一個高層系統函數庫。大多數網絡應用程序訪問網絡是通過操作系統提供的Socket(套接字)方式。利用這種方式實現網絡通信比較容易,因為操作系統負責底層的細節以及向上層提供了類似于文件讀寫的調用接口,程序員只需要調用Socket進行編程就可以實現網絡通信,而網絡中復雜的協議實現被完全屏蔽。

從圖1可以看出,Winpcap由一個核心態的包過濾器和兩個動態鏈接庫組成,NPF(Netgroup Packet Filter)網絡組包過濾器首先負責從網絡中采集數據包,完成數據的過濾,拷貝到內核層緩沖區,然后調用應用層動態鏈接庫文件將數據傳遞到應用層緩沖區,最后交由應用程序處理。具體工作原理如下所示:

①當數據包到達時,網卡接收數據到達的信號,然后產生硬件中斷,通知CPU調度處理,中斷服務程序判斷數據包的有效性,若有效則分配一個緩沖。

②BPF模塊根據用戶的規則過濾數據包,并把數據包插入到內核的網卡驅動緩沖隊列中。Winpcap和通常的TCP/IP協議驅動處于同一等級。這里Winpcap采用環狀緩沖區,可以有效提高效率,減少讀寫次數。在BPF工作的模塊中,數據包先經過過濾器過濾然后才決定是否寫入緩沖區,這個大大提高了效率。

③用戶程序通過系統調用來讀取內核緩沖區的數據包,完成數據采集。

圖1 Winpcap的原理圖

2 高速網絡環境下的流量采集

流量采集不僅僅只是捕獲到網絡中的所有分組,還必須能夠還原出用戶的網絡行為,為后期用戶行為分析提供依據。如果前期數據采集的過程中丟失了太多關于網絡流量的信息,將會導致后期分析出現特征不足的問題,但是如果完全保留原始網絡信息對存儲是巨大壓力,而且也是一種浪費存儲空間的表現,因為并不是所有的原始數據信息都需要保存并對后期分析有用的[4]。本文采集的網絡流量元數據主要是TCP/UDP會話流,定義如下:

定義1 TCP會話流 假設所有五元組〈源IP,源端口,目的IP,目的端口,TCP協議〉相同或者反轉相同的數據包的集合為C,并且C中的數據包以發送第一個SYN數據包開始,到服務端接收最后一個FIN或者RST數據包結束,并且滿足數據包的時間間隔不超過時間T,本文設置T為2分鐘,則集合C所有的數據包構成一條TCP會話流。

定義2 UDP會話流 假設所有五元組〈源IP,源端口,目的IP,目的端口,UDP協議〉相同或者反轉相同的數據包集合為C,并且,滿足所有數據包時間間隔不超過時間T,本文設置T為2分鐘,則集合C中所有的數據包構成一條UDP會話流。

在高速的網絡環境中,需要對采集程序進行優化。本文采取的優化措施主要包括以下4點:

①使用雙緩沖機制技術減少采集程序線程鎖的開銷。

②使用多線程技術。

③將從網卡捕獲的數據包根據傳輸層協議還原成會話流的形式保存。提取網絡流量元數據,減少了對原始數據包的存儲。

④設計Hash算法,使用哈希表完成會話流的快速查找、刪除工作。

在高速的網絡環境中,完全存儲原始數據包將會對磁盤存儲造成巨大壓力,然而后期的實際分析中只需要原始數據包中的一部分,這就造成了大量的磁盤空間的浪費,而且還需要額外的計算資源來處理這些數據。

圖2 雙緩沖多線程技術

圖2是本文設計的系統雙緩沖多線程技術,它采用了雙緩沖機制,減少了多線程鎖的開銷,而且使用多線程技術,避免應用層來不及處理而造成丟包。具體流程如下:

①數據包到達時,網卡接收數據到達信號,產生硬中斷,通知CPU進行調度處理。

②中斷服務程序判斷數據包的有效性,若有效則分配一個緩沖,并把數據包插入到內核的NIC Buffer隊列中;否則直接返回。

③程序通過系統調用將內核中的數據包拷貝到用戶空間,由于數據包到達速率很快,這里使用雙緩沖機制。即當數據包到達時,存入緩沖隊列1中。

④后臺處理線程啟動,數據包捕獲線程將捕獲到的數據存入緩沖隊列2中,后臺處理線程開始處理緩沖隊列1中的數據包,兩個線程交替進行,減少了內存使用上的沖突,提高了效率。后臺處理線程根據數據包的〈源IP,目的IP,源端口,目的端口,傳輸層協議〉計算出它的Hash值,并且從Conversation池中找出Hash值對應的會話流信息,并判斷流當前狀態。如果Conversation已經結束,就將Conversation移入待轉移流池,反之,將數據包加入流中。

圖3 采集程序流程圖

如圖3所示,這是實際的流量采集程序工作流程圖,為了達到實時捕獲的要求,數據包捕獲速度與數據包處理速度相匹配,本文使用多線程進行處理,程序中比較關鍵的有以下幾個線程。

①Winpcap數據包捕獲線程:調用底層Winpcap捕獲數據包,并將原始數據包存入隊列中。這里采用兩個緩沖區,數據包存入隊列1時,后臺線程處理隊列2,避免了內存的同步互斥,大大提高了效率。

②后臺線程:每隔0.2秒掃描原始包隊列,將數據包加入處理隊列,并通知數據處理線程進行處理。

③數據處理線程:根據數據包五元組〈源IP,目的IP,源端口,目的端口,傳輸層協議〉的HASH值在Conversation池中找到對應的Conversation,根據TCP的標志位(SYN,FIN,RST)決定一條流是否結束。如果流結束,將流移出內存,通知數據庫保存線程存入數據庫。

④內存管理線程:一直后臺運行,掃描Conversation池,移出超時的會話流(120s內沒有新包到達)。

⑤數據庫保存線程:負責將流寫入數據庫。

3 實驗

本文采用的系統采用C#編程實現,并且分別在Windows平臺和Linux平臺進行了測試,在Windows平臺使用.NET、SharpPcap和Winpcap技術,而在Linux平臺采用Mono,SharpPcap和PF_RING進行抓包。

表1 真實網絡環境丟包率

如上表1所示,前兩項是使用Windows平臺的Winpcap對校園網絡的流量進行抓取產生的丟包率,第三項是采用Linux平臺下的PF_RING抓包的效果。從表中可以看出,采用PF_RING之后,比Winpcap取得了更好的效果,這是因為PF_RING利用內存中的環狀緩沖區減少了內存拷貝,提高了效率。在用戶空間,分別采用單線程和多線程進行會話流重組統計,在千兆以太網環境下,單線程丟包十分嚴重,而多線程則明顯改善了效率。

4 結語

本文首先研究了網絡流量采集組件Winpcap的原理,然后利用雙緩沖機制減少了多線程鎖的開銷,利用多線程技術提高了數據包處理效率。實驗證明,該系統可以有效地減少利用的丟包率,在千兆以太網環境下,利用PF_RING替換Winpcap,實現了零丟包。

參考文獻:

[1]Barakat C,Thiran P,Iannaccone G,et al.A Flow-Based Model for Internet Backbone Traffic[C].Proceedings of the 2nd ACM SIGCOMM Workshop on Internet measurment.ACM,2002:35-47.

[2]Fraleigh C,Moon S,Lyles B,et al.Packet-Level Traffic Measurements from the Sprint IP Backbone[J].Network,IEEE,2003,17(6):6-16.

[3]Winpcap技術文檔[EB/OL].http://www.Winpcap.org/,2014.

[4]謝鯤,張大方,文吉剛,等.基于 Winpcap的實時網絡監測系統[J].湖南大學學報(自然科學版),2006,33(2).

Design of Network Traffic Capture System on High Speed Network

JIAGN Tian-yu,HU Yang-rui
(College of Computer Scicece,Sichuan University,Chengdu 610065)

In order to let network anomaly detection system to work in high speed network environment,implements a network traffic collection system.Uses double buffering mechanism to reduce the overhead of thread lock and uses multithreading to improve system efficiency.The system also has good scalability,and can migrate to other platforms.Eventually the system is used to solve packets online capture problem in high speed network.

Network Traffic;Anomaly Detection;Network Security

1007-1423(2017)09-0137-04

10.3969/j.issn.1007-1423.2017.09.032

江天宇(1991-),男,江蘇無錫人,在校學生,研究方向為信息安全

胡洋瑞(1991-),男,四川成都人,在校學生,研究方向為信息安全

2017-03-06

2017-03-15

猜你喜歡
系統
Smartflower POP 一體式光伏系統
工業設計(2022年8期)2022-09-09 07:43:20
WJ-700無人機系統
ZC系列無人機遙感系統
北京測繪(2020年12期)2020-12-29 01:33:58
基于PowerPC+FPGA顯示系統
基于UG的發射箱自動化虛擬裝配系統開發
半沸制皂系統(下)
FAO系統特有功能分析及互聯互通探討
連通與提升系統的最后一塊拼圖 Audiolab 傲立 M-DAC mini
一德系統 德行天下
PLC在多段調速系統中的應用
主站蜘蛛池模板: 中文字幕在线欧美| 天天激情综合| 亚洲专区一区二区在线观看| 69精品在线观看| 国产高清不卡| 亚国产欧美在线人成| 欧美精品aⅴ在线视频| 久久99精品久久久久纯品| 天堂成人av| 国产亚洲精品91| 国产精品一区在线麻豆| 久久不卡国产精品无码| 国产成人精品第一区二区| 国产精品久久久精品三级| 亚洲三级影院| 一级香蕉人体视频| 亚洲精品无码抽插日韩| 国产国产人在线成免费视频狼人色| 最新日韩AV网址在线观看| 亚洲国产欧美自拍| 久一在线视频| 亚洲三级片在线看| 国产欧美日韩精品综合在线| 青青青草国产| 国产精品性| 亚洲天堂.com| 日韩美一区二区| 国产成人久久综合一区| 无码在线激情片| 538国产在线| 日韩精品久久久久久久电影蜜臀| 欧美综合区自拍亚洲综合绿色| 人妻精品全国免费视频| 国产成人超碰无码| 国产精品hd在线播放| 欧美综合成人| 亚洲专区一区二区在线观看| 久久五月视频| 国产另类乱子伦精品免费女| 91成人免费观看在线观看| 久久这里只有精品2| 亚洲中文在线看视频一区| 日韩免费视频播播| 国产成a人片在线播放| 毛片网站在线看| 亚洲va在线∨a天堂va欧美va| 丁香五月亚洲综合在线 | 国内丰满少妇猛烈精品播| 成人无码一区二区三区视频在线观看| 99re热精品视频国产免费| 性视频久久| 人妻免费无码不卡视频| 92午夜福利影院一区二区三区| 在线观看亚洲天堂| 国产精品人人做人人爽人人添| 毛片免费视频| 99久久精品免费观看国产| 久久精品国产精品一区二区| 欧美午夜视频在线| 国产在线一区视频| 久一在线视频| 国产黄在线观看| 青草免费在线观看| 国产成人精品一区二区秒拍1o| 91在线国内在线播放老师| 亚洲精品无码在线播放网站| 呦女精品网站| 2021国产精品自产拍在线| 国产三级国产精品国产普男人| 国产制服丝袜91在线| 91人妻日韩人妻无码专区精品| 99在线视频精品| 国产欧美日韩资源在线观看| 亚洲一区波多野结衣二区三区| 激情综合激情| 亚洲成人福利网站| 人人妻人人澡人人爽欧美一区| 精品少妇人妻av无码久久| 国产免费高清无需播放器| 伊在人亞洲香蕉精品區| 黄片一区二区三区| 午夜国产小视频|