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

一種AMP架構下的處理器負載均衡改進方法

2015-11-17 11:56:52蔣建軍劉彤
關鍵詞:檢測

蔣建軍,劉彤

1.上海電機學院電子信息學院,上海200240

2.武漢理工大學信息工程學院,湖北武漢430070

3.北京天融信網絡安全技術有限公司,北京100085

一種AMP架構下的處理器負載均衡改進方法

蔣建軍1,2,劉彤3

1.上海電機學院電子信息學院,上海200240

2.武漢理工大學信息工程學院,湖北武漢430070

3.北京天融信網絡安全技術有限公司,北京100085

在多核異構方式下,由于數據流大小差異很大,在檢測處理器檢測數據流時耗時較長,導致了檢測處理器之間的負載處于不均衡狀態。同時,在網絡處理器和檢測處理器之間由于是固定任務分配,不可能做到完全均衡。針對存在的這些缺陷,提出了循環工作隊列方法,可以動態感知處理器負載均衡態勢,改進了檢測處理器均衡方法,進一步提高了檢測處理器的性能發揮,解決了網絡處理器和檢測處理器之間無法均衡的問題,提升了系統的整體性能。

IPS;AMP構架;異構方式;檢測處理器;負載均衡

近幾年,入侵防御系統IPS(Intrusion Prevention System,入侵防御系統)[1]產品已成為安全產品市場的熱點,不僅保持了每年100%以上的市場增長率,而且應用領域不斷擴大,應用技術也逐步普及。與傳統的IDS[2]旁路接入不同,IPS產品采用在線工作方式,即對接收的數據進行檢測,然后按照其目的轉發,這與安全網關類產品如防火墻、VPN(Virtual Private Network,虛擬專用網)[3]等非常相似。這種工作方式決定了IPS產品除了要有準確的檢測能力,還要有與應用網絡相適應的性能要求。

實際上自IPS產品誕生以來,一直采用協議識別和攻擊特征模式匹配等成熟技術,困擾其應用范圍的主要是性能要求。目前的防火墻達到千兆線速、4 G、甚至10 G轉發能力已屬平常,但IPS要實現這一性能絕非易事。在IPS中不僅需要檢查數據報文的頭部,還要針對具體的應用協議檢查數據報文的內容,這就使得在IPS中五元組相同的數據報文也不能“加速處理”,也就是說在IPS處理數據報文的整個路途中沒有“捷徑”,IPS需要對流經自身的每一個報文進行逐一檢測。這樣IPS成為CPU[4]資源的主要耗費者,其性能很大程度上取決于硬件處理器的處理能力。

近年來多核處理器的發展為利用并行處理技術提升IPS產品性能提供了廣闊的空間,由于處理器計算能力的提升對IPS檢測全路徑都是有效的,所以從理論上講內核數量與性能提升成正比。但是理論不等于實踐,實際性能的提升主要取決于IPS對各個處理器均衡的利用,即發揮每一個處理器的最大計算能力。

1 現有處理器工作架構

1.1 同構方式與異構方式

在多核并行計算環境中一般有兩種處理器工作構架,一種是SMP(Symmetrical Multiprocessing,對稱多處理)[5]方式,也稱為同構方式,SMP方式顧名思義就是將多個內核平等看待,每個內核擔負的工作都相同,且每個內核上都運行一套IPS系統,這樣從數據接收、連接建立、數據檢測到數據發送都是并發執行的,相當于多個IPS系統在同時運行。這種架構比較簡潔,各個處理器內核負載均衡,但是因為所有內核都擔負相同的工作,勢必產生對共享資源(內存數據、文件描述符、I/O[6]設備等)的大量爭用,為處理這些并發與同步使用的大量鎖機制,又嚴重制約了性能發揮,更嚴重的是隨著內核數量的增多,并發與同步的消耗達到一定的量級,性能不但不會增長反而會有所下降。

另一種為AMP(Asymmetric Multi-processing,非對稱多處理)[7]方式,也稱為異構方式,如圖1所示為AMP方式示意圖(以4核為例)。

圖1 AMP方式示意圖Fig.1 Schematic diagram of AMP

AMP方式就是將多個內核區別看待,可以運行不同的操作系統也可以在相同的操作系統上運行不同的任務,各個處理器內核按照任務劃分,各負其責,規避共享資源的競爭,做到“術有專攻”,從而提升IPS產品的綜合性能。完整的操作系統往往比較龐大,耗費資源較多,效率也較低。拿出幾個物理內核,在其上建立一種簡易的系統環境(有時候直接叫做“裸核”環境),在這個“潔凈的空間”內運行單一任務(比如收發數據、模式匹配等)往往可以獲得極高的性能,這是AMP方式的特點,也是其優勢。雖然AMP構架比較復雜,但因其性能提升非常有效,目前已被廣泛應用。

AMP構架的難點在于需要仔細權衡各個內核的任務分擔,否則會造成內核負載不均衡,影響性能發揮。目前普遍采用的方法是將處理器內核分為兩類,一類叫作網絡處理器,用于處理網絡數據報文的接收和發送,另一類叫做檢測處理器,用于進行IPS檢測。網絡處理器接收到網絡數據報文后,根據其五元組建立連接(數據流),然后用hash[8]算法將連接平均地定位到唯一的檢測處理器上,這樣實現負載均衡,即將數據流平均地分配到檢測處理器上,同時保障將同一個數據流分配到同一個檢測處理器上,保障一個數據流始終由一個檢測處理器處理。

1.2 現有工作構架的技術缺陷

如圖2所示為原有的處理器負載均衡方法示意圖,該方法的缺陷是,雖然數據流被相對均衡地分配到檢測處理器上,但是因為不同的數據流中包含的數據報文個數、報文大小、報文內容都差異很大,這直接導致檢測處理器檢測數據流的速度不相同,如有的報文比較小甚至不包含應用層數據,無須進行IPS檢測,可以快速地處理完畢,而有的數據報文是http協議[9]且包含豐富的uri[10]信息,有大量的IPS規則需要逐一匹配檢測,勢必耗時較長。這導致了檢測處理器之間的負載實際上處于不均衡狀態,影響了性能發揮。另一方面,在網絡處理器和檢測處理器之間是固定任務分配,而網絡處理與檢測處理兩種工作不可能正好均衡,這也影響了整體性能的提升。

圖2 原有的處理器負載均衡方法示意圖Fig.2 The original processor load balance method diagram

2 一種改進的處理器負載均衡方法

為解決上述問題,提出了一種改進的處理器負載均衡方法,以最大限度地發揮處理器計算能力,如圖3所示為改進的處理器負載均衡方法。

圖3 改進的處理器負載均衡方法示意圖Fig.3 Improved processor load balance method diagram

主要方法如下:

(1)建立環形工作隊列,動態感知處理器均衡態勢。

(2)在檢測處理器之間進行數據流重定向

(3)在網絡處理器與檢測處理器之間進行工作任務動態調整。

2.1 建立環形工作隊列

(1)為每個檢測處理器創建一個普通的隊列數據結構,并建立隊列頭和隊列尾指針。

(2)網絡處理器接收到數據報文后,需要提交檢測處理器檢測時,將該數據報文的報文信息(包括協議類型、所屬數據流、報文大小等信息,但不包含數據報文本身)加入到隊列尾部,隊列尾可以循環從頭開始,但不能超過隊列頭。

(3)檢測處理器從隊列頭中依次取出報文信息,根據該信息對數據報文內容進行IPS檢測處理,處理后隊列頭依次后移,隊列頭也可以循環從頭開始,但不能超過隊列尾。

2.2 動態感知處理器均衡態勢

(1)定時依次檢查每一個循環工作隊列的隊列頭和隊列尾。

(2)如果隊列頭尾距離很遠,說明隊列中積壓了很多待處理數據報文,該檢測處理器負載較重。當頭尾距離等于隊列數據結構長度時,說明隊列已滿,該檢測處理器負載已達到極限,已無法再接收數據報文。

(3)如果隊列頭尾距離很近,說明隊列中沒有積壓的待處理數據報文,該檢測處理器負載較輕。當頭尾距離等于零時,說明隊列為空,該檢測處理器沒有負載,處于“吃不飽”狀態。

(4)通過不斷地檢查各個檢測處理器的負載情況,就能夠有效地動態感知到處理器均衡態勢。

2.3 在檢測處理器之間進行數據流重定向

(1)網絡處理器接收到數據報文,根據其五元組建立連接,再根據連接確定其捆綁的檢測處理器。

(2)利用循環工作隊列動態感知該檢測處理器的負荷,如果負荷較重,則重定向連接到其它的檢測處理器上。此時負載均衡方法由原來的“按連接均衡地分給檢測處理器”改進為“按連接均衡地分給負載最輕的檢測處理器”。

2.4 在網絡處理器與檢測處理器之間進行工作任務動態調整

(1)將一些報文后續處理工作(如記錄日志、報文轉發等)獨立出來,使得它們既可以在網絡處理器上運行,也可以在檢測處理器上運行。

(2)正常情況下,這些獨立的工作由網絡處理器負責,檢測處理器由開關控制,默認關閉。

(3)利用循環工作隊列動態感知檢測處理器的負載,如果發現所有檢測處理器負載均很輕,則打開開關,使得檢測處理器參加后續報文處理工作,增加檢測處理器負載,同時減輕網絡處理器負載,在兩種處理器之間進行工作任務動態調整。

3 一個具體實施實例介紹

以四核處理器為例,詳細說明一種改進的處理器負載均衡方法的具體處理流程,是如何以最大限度地發揮處理器計算能力的。

3.1 建立環形工作隊列

分別為檢測處理器0、檢測處理器1和檢測處理器2創建一個普通的隊列數據結構,隊列長度為512,即最大可以緩存512個報文信息,同時分別建立隊列頭和隊列尾指針。

環形工作隊列的工作方式是,當網絡處理器接收到數據報文后,根據其源地址、目的地址、源端口、目的端口查找連接,如果查找不到需要新建立一個連接結構,然后將報文協議類型、報文大小、報文數據地址、連接句柄(指向連接結構的指針)等信息組成一個報文信息結構,加入到隊列尾部,隊列尾可以循環從頭開始,但不能超過隊列頭。

檢測處理器從隊列頭中依次取出報文信息,根據該信息對數據報文內容進行IPS檢測處理,處理后隊列頭依次后移,隊列頭也可以循環從頭開始,但不能超過隊列尾。

3.2 在檢測處理器之間進行數據流重定向

實現過程如下:

(1)網絡處理器接收到數據報文,進行初步分析,非TCP/UDP報文[11]不處理直接轉發,對于TCP/UDP報文根據其五元組(源地址、目的地址、源端口、目的端口、協議)[12]計算hash值,再根據Hash值查找連接,如果查找到連接直接進行(4)。

(2)對于沒有查找到連接的,需要新建立一個連接結構,一個連接結構實際上對應一個數據流。

(3)對連接的hash值除以cpu個數減1,然后取余,得到的值在0~2之間,這個值就是這個連接對應的檢測處理器序號,將序號記錄到連接結構中,這樣不用每次都計算。

(4)取出連接中記錄的檢測處理器序號,找到其一一對應的環形工作隊列,檢查環形工作隊列的頭尾指針,如果頭尾指針差距小于512則說明隊列未滿,直接進行(6)。

(5)隊列已滿則繼續檢查下一個處理器的環形工作隊列,如果未滿,則更改連接中的檢測處理器序號,將連接重定向到新的檢測處理器。如果所有檢測處理器的環形工作隊列均滿,則只能放棄檢測,直接轉發該連接。

(6)生成一個報文信息結構,包含報文協議類型、報文大小、報文數據地址、連接句柄(指向連接結構的指針)等信息,從隊列尾部加入環形工作隊列,等待檢測處理器檢測。

3.3 將發送報文工作獨立出來

(1)將發送報文部分程序獨立成一個模塊,使得網絡處理器可以調用,同時檢測處理器也可以調用。當網絡處理器調用發送報文模塊時,該模塊代碼是在網絡處理器上運行的,占用網絡處理器負載。當檢測處理器調用發送報文模塊時,該模塊代碼是在檢測處理器上運行的,占用檢測處理器負載。

(2)設置一個開關,正常情況下處于關閉狀態。該開關關閉時由網絡處理器調用發送報文模塊,檢測處理器不調用。開關打開時正好相反。

3.4 工作任務動態調整

在網絡處理器與檢測處理器之間進行工作任務動態調整,方法如下:

(1)設置一個定時器,定時檢查各個檢測處理器的環形工作隊列。

(2)如果所有環形工作隊列均隊列頭與隊列尾相等,則說明檢測處理器負載較輕,此時打開開關,在網絡處理器與檢測處理器之間進行工作任務動態調整。

4 結論

改進后的技術方案,與現有技術相比,具有以下優點,改進后的辦法提出了循環工作隊列方法,可以動態感知處理器負載均衡態勢。改進了檢測處理器均衡方法,進一步提高了檢測處理器性能發揮。解決了網絡處理器和檢測處理器之間無法均衡的問題,實現了系統整體性能的提升。

[1]Kivity A,Kamay Y.kvm:the Linux virtual machine monitor.In 2007 Ottawa Linux Symposium,2007:225-230

[2]Ashoor,Asmaa Shaker.Difference between Intrusion Detection System(IDS)and Intrusion Prevention System(IPS). Communications in Computer and Information Science,v 196 CCIS,Advances in Network Security and Applications-4th International Conference,2011:497-501

[3]Chen Fei;Wu Kehe.The research and implementation of the VPN gateway based on SSL.Proceedings-2013 International Conference on Computational and Information Sciences,ICCIS 2013,2013:1376-1379

[4]陳曉嬌,哈力木拉提·買買提.一種基于HMM的維吾爾文聯機手寫識別的方法[J].計算機工程與應用,2013,49(24):1 75-178

[5]胡亮,解男男,努爾布力,等.基于智能規劃的多步攻擊場景識別算法[J].電子學報,2013,41(9):1753-1759

[6]陶文君,胡斌.一個可抵抗臨時指數泄露的密鑰協商協議形式化安全模型[J].計算機科學,2013,40(11):97-102

[7]張思亮,李廣霞.子空間聚類在入侵檢測中的應用[J].計算機安全,2013,12:2-6

[8]王文迪,湯文.基于Hash索引的高通量基因序列比對并行加速技術研究[J].計算機研究與發展,2013,50(11):2463-2471

[9]王麗娜,劉炎,何軍.基于IPSec和GRE的VPN實驗仿真[J].實驗室研究與探索,2013,32(9):70-75

[10]Richard Deal.Cisco VPN完全配置指南[M].北京:人民郵電出版社,2012:67-74

[11]應宇鋒,王楨珍,王曉云.MPLS VPN技術在WLAN接入分組域中的應用與研究[J].軟件,2012,33(9):74-76,80

[12]Wendell Odom,Rus Healy,Denise Donohue.CCIE routing and switching[M].北京:人民郵電出版社,2009:350-380

An Improved Method to Optimize the Load Balance of Processor under AMP Pattern

JIANG Jian-jun1,2,LIU Tong3
1.School of Electronic Information,shanghai Dianji University,Shanghai 200240,China
2.School of Information Engineering,Wuhan University of Technology,Wuhan 430070,China
3.Beijing Topsec Network Security Technology Co.,Ltd.,Beijing 100085,China

In the heterogeneous multi-core mode,the data stream size difference is very big,in the detection of the processor detects data stream is time-consuming,so as to lead to the load detection between processors is actually not equilibrium state. Because it is a fixed task allocation between network processor and detection processor,it is not possible to completely balance.Aiming at these defects,this paper proposed the circular queue method to perceived the load balancing situation of dynamic processor,and to improve the equalization method of the detection processor,to further improve the detection processor performance,to solve that the network processor and detection processor cannot balance problems,to improve the overall performance of the system.

Intrusion prevention system;Asymmetric Multi-Processing framework;heterogeneous;detection processor;load balance

TP3

A

1000-2324(2015)01-0096-05

2013-05-10

2013-05-19

上海市科委基金資助(14511108003)

蔣建軍(1967-),男,上海市人,副教授,碩士,主要研究方向:信息技術、網絡、虛擬化技術及應用.E-mail:Jjjiang@189.cn

猜你喜歡
檢測
QC 檢測
“不等式”檢測題
“一元一次不等式”檢測題
“一元一次不等式組”檢測題
“幾何圖形”檢測題
“角”檢測題
“有理數的乘除法”檢測題
“有理數”檢測題
“角”檢測題
“幾何圖形”檢測題
主站蜘蛛池模板: 国产素人在线| 欧美特黄一级大黄录像| 久久一本精品久久久ー99| 亚洲开心婷婷中文字幕| 日韩一区精品视频一区二区| 小说区 亚洲 自拍 另类| 国产乱人激情H在线观看| 亚洲人妖在线| 91小视频在线观看免费版高清| 国产福利影院在线观看| 老司国产精品视频| 日韩av在线直播| 国产国拍精品视频免费看| 欧美在线视频不卡第一页| 一级毛片无毒不卡直接观看 | 人妻无码中文字幕第一区| 亚洲精品国产首次亮相| a毛片在线播放| 国禁国产you女视频网站| 国产主播在线一区| 久久国产热| 欧美成人区| 亚洲午夜福利在线| 全色黄大色大片免费久久老太| 免费国产一级 片内射老| 欧美伊人色综合久久天天| 夜夜操天天摸| 国产香蕉国产精品偷在线观看| 9cao视频精品| 69国产精品视频免费| 在线播放国产99re| 久久性妇女精品免费| 亚洲国产综合精品一区| 99re在线视频观看| 精品欧美日韩国产日漫一区不卡| 免费无遮挡AV| 欧美国产菊爆免费观看| 91国内在线观看| 国产视频一区二区在线观看 | 九九视频免费在线观看| 亚洲一区二区三区中文字幕5566| 伦精品一区二区三区视频| 久久综合色天堂av| 亚洲欧美日韩成人高清在线一区| 国产爽爽视频| 亚洲国产日韩在线观看| 亚洲天堂日韩av电影| 亚洲视频a| 亚洲中文字幕无码爆乳| 国产精品不卡片视频免费观看| a毛片在线| 亚洲视频免费在线看| 色色中文字幕| 91精品aⅴ无码中文字字幕蜜桃| 操国产美女| 色首页AV在线| 国产簧片免费在线播放| 国产又粗又猛又爽视频| 一级毛片在线免费看| 成人在线不卡| 精品久久久久成人码免费动漫| 第一页亚洲| 香蕉eeww99国产在线观看| 国产精品护士| 亚洲精品国产自在现线最新| 国产一区二区三区夜色| 欧美一道本| 亚洲色图狠狠干| 性欧美精品xxxx| 日本三区视频| 国产欧美又粗又猛又爽老| 欧美精品成人| 国产精品无码翘臀在线看纯欲| 国产丝袜无码一区二区视频| 伊人成色综合网| 在线播放真实国产乱子伦| 最近最新中文字幕在线第一页| 毛片免费视频| 亚洲成在人线av品善网好看| 极品国产一区二区三区| 成人一级免费视频| 人妻91无码色偷偷色噜噜噜|