專利名稱:一種基于網(wǎng)絡(luò)處理器的流量限制系統(tǒng)及其方法
技術(shù)領(lǐng)域:
本發(fā)明涉及網(wǎng)絡(luò)信息安全領(lǐng)域,特別涉及一種基于網(wǎng)絡(luò)處理器的流量限制系統(tǒng)及其方法。
背景技術(shù):
隨著網(wǎng)絡(luò)的快速發(fā)展,網(wǎng)絡(luò)安全問題也日益嚴(yán)重。從對(duì)大多數(shù)網(wǎng)絡(luò)安全事件的分 析來看,發(fā)生安全威脅時(shí)的網(wǎng)絡(luò)流量都會(huì)表現(xiàn)出異常,所以對(duì)網(wǎng)絡(luò)流量進(jìn)行檢測(cè)和限制,對(duì) 保障網(wǎng)絡(luò)的安全有著非常積極的意義。網(wǎng)絡(luò)流量異常是指某段時(shí)間內(nèi)網(wǎng)絡(luò)中流量發(fā)生明顯 的不規(guī)則變化??偟膩碚f,導(dǎo)致網(wǎng)絡(luò)流量異常的原因可以大致分為兩類系統(tǒng)或者網(wǎng)絡(luò)配 置錯(cuò)誤致使網(wǎng)絡(luò)流量達(dá)到環(huán)境承受限度;發(fā)生惡意的網(wǎng)絡(luò)攻擊行為。至今為止,有大量的 國(guó)內(nèi)外研究人員對(duì)網(wǎng)絡(luò)異常流量的檢測(cè)技術(shù)進(jìn)行了深入的研究,并且取得了很多積極的成 果。比較經(jīng)典的網(wǎng)絡(luò)異常流量檢測(cè)方法有基于統(tǒng)計(jì)學(xué)模型的異常流量檢測(cè)法、基于正常閾 值基線的檢測(cè)法、基于馬爾可夫鏈的檢測(cè)方法和基于小波分析的檢測(cè)方法等等。根據(jù)這些 方法檢測(cè)出網(wǎng)絡(luò)流量出現(xiàn)異常之后,就可以采取相應(yīng)的措施進(jìn)行限流了。但是,和異常流量檢測(cè)技術(shù)相匹配的異常流量限制技術(shù)就相對(duì)滯后。目前,流 量限制一般都是與負(fù)載均衡關(guān)聯(lián)在一起的,為了達(dá)到系統(tǒng)負(fù)載均衡的目的才采取流量限 制,這雖然可以保證系統(tǒng)的穩(wěn)定性,但是比較難保證優(yōu)質(zhì)的QoS(服務(wù)質(zhì)量,Quality of Service) 0另一方面,TCP/IP協(xié)議自身有與流量限制相關(guān)的擁塞控制技術(shù),這對(duì)于正常的 流量有著較好的控制作用,并且也可以保證必要的QoS,但是當(dāng)涉及到異常流量時(shí),就顯得 力不從心,無法保證必要的QoS。再者,現(xiàn)有的流量限制方法,大都缺乏自適應(yīng)性和智能性。根據(jù)國(guó)際網(wǎng)絡(luò)處理器會(huì)議(Network Processors Conference)的定義網(wǎng)絡(luò)處理 器是一種可編程器件,它特定地應(yīng)用于通信領(lǐng)域的各種任務(wù),比如包處理、協(xié)議分析、路由 查找、聲音/數(shù)據(jù)的匯聚、防火墻或QoS等等。所以,將網(wǎng)絡(luò)處理器應(yīng)用于網(wǎng)絡(luò)中的檢測(cè)是 個(gè)很合適的方案。
發(fā)明內(nèi)容
本發(fā)明的目的在于克服上述現(xiàn)有技術(shù)的缺點(diǎn)與不足,提供一種基于網(wǎng)絡(luò)處理器的 流量限制系統(tǒng),本發(fā)明采用基于流量狀態(tài)來制定限流策略,這不僅可以保證系統(tǒng)的穩(wěn)定性, 并且可以很好地保證了 QoS。本發(fā)明的另一目的在于提供上述一種基于網(wǎng)絡(luò)處理器的流量限制系統(tǒng)的流量限 制方法。本發(fā)明的目的是通過下述技術(shù)方案實(shí)現(xiàn)的一種基于網(wǎng)絡(luò)處理器的流量限制系 統(tǒng),包括網(wǎng)絡(luò)處理器和上位機(jī);所述網(wǎng)絡(luò)處理器連接有用于存儲(chǔ)數(shù)據(jù)包原始信息的DRAM存 儲(chǔ)器和用于存儲(chǔ)流量狀態(tài)信息和限流策略表的SRAM存儲(chǔ)器;所述網(wǎng)絡(luò)處理器設(shè)置有與外部網(wǎng)絡(luò)相連的MSF交換結(jié)構(gòu)(介質(zhì)交換結(jié)構(gòu),Media SwitchFabric),用于接 收網(wǎng)絡(luò)數(shù)據(jù)包,并將數(shù)據(jù)包原始信息存入DRAM存儲(chǔ)器;
流量嗅探微模塊,用于讀取DRAM存儲(chǔ)器中的數(shù)據(jù)包原始信息并進(jìn)行流量嗅探,得 出相應(yīng)的流量狀態(tài)信息存入SRAM存儲(chǔ)器并上傳給學(xué)習(xí)機(jī);流量過濾微模塊,用于執(zhí)行SRAM存儲(chǔ)器中限流策略表中的限流策略;學(xué)習(xí)機(jī),用于實(shí)時(shí)學(xué)習(xí)DRAM存儲(chǔ)器的數(shù)據(jù)包原始信息及其相應(yīng)的流量狀態(tài)信息 以調(diào)整相應(yīng)的限流策略,將調(diào)整后的限流策略更新到SRAM存儲(chǔ)器的限流策略表,并將調(diào)整 限流策略的信息通過Xscale管理界面反饋給上位機(jī);Xscale管理界面,用于實(shí)現(xiàn)學(xué)習(xí)機(jī)與上位機(jī)之間的通信。所述MSF交換結(jié)構(gòu)與DRAM存儲(chǔ)器、流量嗅探微模塊與DRAM存儲(chǔ)器、流量嗅探微模 塊與SRAM存儲(chǔ)器、MSF交換結(jié)構(gòu)與流量過濾微模塊、以及Xscale管理界面與上位機(jī)之間均 通過PCI總線相連接,有效提供了網(wǎng)絡(luò)處理器的內(nèi)部通信、處理速度,以及網(wǎng)絡(luò)處理器和上 位機(jī)的通信速度。所述學(xué)習(xí)機(jī)通過學(xué)習(xí)機(jī)的芯片內(nèi)部總線,分別與DRAM存儲(chǔ)器、SRAM存儲(chǔ)器、流量 嗅探微模塊、流量過濾微模塊以及Xscale管理界面相連接。為更好地實(shí)現(xiàn)本發(fā)明,本發(fā)明采用的網(wǎng)絡(luò)處理器為Intel公司的第二代網(wǎng)絡(luò)處理器Intel IXP2850,與第一代相比,它充分而全面地考慮了網(wǎng)絡(luò)數(shù)據(jù)流的統(tǒng)計(jì)特性,并采 取了相應(yīng)硬件加速設(shè)備和軟件技術(shù),極大地提高了網(wǎng)絡(luò)數(shù)據(jù)包的處理速度,并且在很大程 度上縮短了網(wǎng)絡(luò)應(yīng)用的開發(fā)周期。上述一種基于網(wǎng)絡(luò)處理器的流量限制系統(tǒng)的流量限制方法,具體如下a.上位機(jī)經(jīng)Xscale管理界面下達(dá)預(yù)定的限流策略到學(xué)習(xí)機(jī),學(xué)習(xí)機(jī)將該預(yù)定限 流策略存入SRAM存儲(chǔ)器的限流策略表;b. MSF交換結(jié)構(gòu)接收網(wǎng)絡(luò)數(shù)據(jù)包,并將數(shù)據(jù)包原始信息存入DRAM存儲(chǔ)器;c.流量嗅探微模塊實(shí)時(shí)讀取DRAM存儲(chǔ)器中的數(shù)據(jù)包原始信息并進(jìn)行流量嗅探, 得出相應(yīng)的流量狀態(tài)信息存入SRAM存儲(chǔ)器并上傳給學(xué)習(xí)機(jī);d.學(xué)習(xí)機(jī)實(shí)時(shí)學(xué)習(xí)DRAM存儲(chǔ)器的數(shù)據(jù)包原始信息及其相應(yīng)的流量狀態(tài)信息,調(diào) 整相應(yīng)的限流策略,將調(diào)整后的限流策略更新到SRAM存儲(chǔ)器的限流策略表,并將調(diào)整限流 策略的信息通過Xscale管理界面反饋給上位機(jī);流量過濾微模塊執(zhí)行SRAM存儲(chǔ)器中限流 策略表中的限流策略。上述方法中,所述上位機(jī)可以設(shè)置用戶界面,所述Xscale管理界面采用套接字 (socket)通信協(xié)議與上位機(jī)進(jìn)行通信,以將學(xué)習(xí)機(jī)調(diào)整限流策略的信息反饋給上位機(jī),而 上位機(jī)下達(dá)預(yù)定的限流策略到學(xué)習(xí)機(jī),也是通過用戶界面采用套接字(socket)通信協(xié)議 進(jìn)行下達(dá)。采用的套接字是select模型的,它可以自動(dòng)地判斷套接字上是否存在數(shù)據(jù),或 者能否向一個(gè)套接字寫入數(shù)據(jù)。select函數(shù)在制定的集合中篩選出滿足要求的套接字,應(yīng) 用程序只需要遍歷套接字鏈表,逐個(gè)處理。這種協(xié)議機(jī)制的優(yōu)點(diǎn)是可以使通信更加快捷,而 且由于服務(wù)器端始終存在一個(gè)有效的服務(wù),就可以實(shí)時(shí)地進(jìn)行通信傳遞數(shù)據(jù);另外,由于是 select模型的,所以只有需要傳數(shù)據(jù)時(shí)才建立連接,有效地利用了系統(tǒng)資源。上述方法中,步驟a所述上位機(jī)經(jīng)Xscale管理界面下達(dá)預(yù)定的限流策略到學(xué)習(xí)機(jī) 后,學(xué)習(xí)機(jī)還將該預(yù)定的限流策略放在自身獨(dú)立的存儲(chǔ)區(qū)的限流策略表中;步驟d所述學(xué) 習(xí)機(jī)調(diào)整相應(yīng)的限流策略后,學(xué)習(xí)機(jī)還將該調(diào)整后的限流策略更新到所述自身獨(dú)立的存儲(chǔ) 區(qū)的限流策略表,以達(dá)到及時(shí)地更新其獨(dú)立的存儲(chǔ)區(qū)的目的,方便學(xué)習(xí)機(jī)快速地參考限流策略。上述方法中,步驟d所述學(xué)習(xí)機(jī)實(shí)時(shí)學(xué)習(xí)DRAM存儲(chǔ)器的數(shù)據(jù)包原始信息及其相應(yīng)的流量狀態(tài)信息,調(diào)整相應(yīng)的限流策略,將調(diào)整后的限流策略更新到SRAM存儲(chǔ)器的限流策 略表,并將調(diào)整限流策略的信息通過Xscale管理界面反饋給上位機(jī);流量過濾微模塊執(zhí)行 SRAM存儲(chǔ)器中限流策略表中的限流策略,其具體操作為學(xué)習(xí)機(jī)對(duì)DRAM存儲(chǔ)器中的數(shù)據(jù)包原始信息進(jìn)行解析,先提取其包頭信息以確認(rèn) 所屬用戶,再根據(jù)該用戶遍歷自身獨(dú)立的存儲(chǔ)區(qū)中的限流策略表,如果該用戶不在限流策 略表中,則讀取流量嗅探微模塊傳來的該數(shù)據(jù)包原始信息所對(duì)應(yīng)的流量狀態(tài)信息,根據(jù)流 量狀態(tài)信息進(jìn)行異常流量分析以判斷流量是否異常,若是正常數(shù)據(jù)流,則讓其正常通過,若 是異常流量,則將該用戶添加到限流策略表中并關(guān)聯(lián)具體的限流策略,同時(shí)更新SRAM存儲(chǔ) 器中的限流策略表,由流量過濾微模塊執(zhí)行SRAM存儲(chǔ)器中限流策略表中對(duì)應(yīng)的限流策略;如果該用戶在限流策略表中,則由流量過濾微模塊執(zhí)行SRAM存儲(chǔ)器中限流策略 表中對(duì)應(yīng)的限流策略;限流策略執(zhí)行后,流量嗅探微模塊進(jìn)行流量嗅探并將限流后的流量狀態(tài)傳給學(xué)習(xí) 機(jī),學(xué)習(xí)機(jī)根據(jù)該流量狀態(tài)所對(duì)應(yīng)的限流策略判斷限流后的流量狀態(tài)是否達(dá)標(biāo),若達(dá)標(biāo),則 將該對(duì)應(yīng)的限流策略從其自身獨(dú)立的存儲(chǔ)區(qū)的限流策略表中刪除,并更新SRAM存儲(chǔ)器中 限流策略表;若不達(dá)標(biāo),則調(diào)整該流量狀態(tài)所對(duì)應(yīng)的限流策略,并更新其自身獨(dú)立的存儲(chǔ)區(qū) 以及SRAM存儲(chǔ)器中限流策略表,由流量過濾微模塊執(zhí)行調(diào)整后的限流策略。這樣,學(xué)習(xí)機(jī) 就完成了一次自學(xué)習(xí)過程。上述方法中,所述限流策略具體包括可信任用戶名單及其對(duì)應(yīng)的基于狀態(tài)的限 流策略、未知信任關(guān)系的用戶名單及其對(duì)應(yīng)的無狀態(tài)的限流策略,以及黑名單及其對(duì)應(yīng)的 完全過濾策略。流量過濾微模塊執(zhí)行所述基于狀態(tài)的限流策略,其操作具體為基于SRAM存儲(chǔ)器 中的流量狀態(tài)信息來保護(hù)可信任用戶的正常通信,保護(hù)正在交互的通信流。流量過濾微模塊執(zhí)行無狀態(tài)的限流策略,其操作具體為以保護(hù)系統(tǒng)安全為前提 對(duì)未知信任關(guān)系的用戶采取相應(yīng)的無狀態(tài)選擇性地限流,即如果由未知信任關(guān)系的用戶產(chǎn) 生的通信流量在系統(tǒng)的存儲(chǔ)容量的合理承受范圍之內(nèi),則不進(jìn)行限流,否則就進(jìn)行部分或 者全部限流。流量過濾微模塊完全過濾策略,其操作具體為只要是屬于黑名單中的通信用戶, 就完全限制其通信流,將其帶來的安全威脅完全隔離到系統(tǒng)之外。對(duì)應(yīng)于上述限流策略的具體內(nèi)容,步驟d所述流量過濾微模塊執(zhí)行SRAM存儲(chǔ)器中 限流策略表中的限流策略,該限流的具體操作為對(duì)于收到的網(wǎng)絡(luò)數(shù)據(jù)包,先提取其包頭信息以確認(rèn)所屬用戶,再判斷是否要限 流;首先判斷所屬用戶是否屬于黑名單用戶,若是,則執(zhí)行完全過濾策略進(jìn)行限流;若 不是,則判斷其是否為未知信任關(guān)系的用戶,若為未知信任關(guān)系的用戶,采取無狀態(tài)的限流 策略進(jìn)行限流;若不屬于黑名單用戶也不屬于未知信任關(guān)系的用戶,則判斷是否為可信任 用戶,若是,則執(zhí)行基于狀態(tài)的限流策略。上述方法中,所述SRAM存儲(chǔ)器的限流策略表包括一元限流策略表和三元限流策略表,一元限流策略表中存儲(chǔ)的是可信任用戶名單及基于狀態(tài)的限流策略,以及黑名單及 完全過濾策略;三元限流策略表存儲(chǔ)的是未知信任關(guān)系的用戶名單及無狀態(tài)的限流策略。與現(xiàn)有技術(shù)相比,本發(fā)明的優(yōu)點(diǎn)在于本發(fā)明采用基于流量狀態(tài)來不斷調(diào)整限流策略,以獲取穩(wěn)定的限流策略進(jìn)行流量限制,這不僅可以保證系統(tǒng)的穩(wěn)定性,并且可以很 好地保證QoS,彌補(bǔ)了現(xiàn)有技術(shù)的缺陷;另一方面,本發(fā)明采用了學(xué)習(xí)機(jī)自學(xué)習(xí)的原理,這 就使得本限流方法具有了自適應(yīng)性和智能性;最后,本發(fā)明采用高速網(wǎng)絡(luò)處理器Intel IXP2850來開發(fā),不僅可以縮短開發(fā)周期,而且充分發(fā)揮了網(wǎng)絡(luò)處理器的高速性能,使得該 方法可以應(yīng)用于高速的網(wǎng)絡(luò)環(huán)境中。
圖1所示的是本發(fā)明一種基于網(wǎng)絡(luò)處理器的流量限制系統(tǒng)的系統(tǒng)框圖;圖2所示的是在圖1所示系統(tǒng)中實(shí)現(xiàn)流量限制方法的流程圖;圖3所示的是圖1所示系統(tǒng)中學(xué)習(xí)機(jī)的自學(xué)習(xí)過程示意圖。
具體實(shí)施例方式下面結(jié)合實(shí)施方式以及附圖對(duì)本發(fā)明作進(jìn)一步的詳細(xì)闡述,但是本發(fā)明的實(shí)施方 式不僅限于此。如圖1所示,一種基于網(wǎng)絡(luò)處理器的流量限制系統(tǒng),包括網(wǎng)絡(luò)處理器和上位機(jī);所 述網(wǎng)絡(luò)處理器連接有DRAM存儲(chǔ)器和SRAM存儲(chǔ)器。其中,DRAM存儲(chǔ)器用于存儲(chǔ)數(shù)據(jù)包原始信息,包括源地址、目的地址、源端口號(hào)、 目的端口號(hào)、協(xié)議類型以及數(shù)據(jù)包大小等;SRAM存儲(chǔ)器用于存儲(chǔ)流量狀態(tài)信息和限流策略 表,流量狀態(tài)信息包括流量大小和時(shí)間等。網(wǎng)絡(luò)處理器在硬件上由微引擎簇、Xscale Core和MSF交換結(jié)構(gòu)構(gòu)成。網(wǎng)絡(luò)處理器在軟件中包括MSF交換結(jié)構(gòu)、流量嗅探微模塊、流量過濾微模塊、學(xué)習(xí) 機(jī)和Xscale管理界面。其中,流量嗅探微模塊以及流量過濾微模塊設(shè)置在微引擎簇中,所 述Xscale管理界面和學(xué)習(xí)機(jī)設(shè)置在Xscale Core中。其中,MSF交換結(jié)構(gòu)與外部網(wǎng)絡(luò)相連,負(fù)責(zé)連接外界網(wǎng)絡(luò)與高速網(wǎng)絡(luò)處理器 IXP2850,網(wǎng)絡(luò)數(shù)據(jù)流通過MSF交換結(jié)構(gòu)流入/流出高速網(wǎng)絡(luò)處理器IXP2850,具體用于接收 網(wǎng)絡(luò)數(shù)據(jù)包,并將數(shù)據(jù)包原始信息存入DRAM存儲(chǔ)器。流量嗅探微模塊是策略執(zhí)行情況的監(jiān)督者,通過對(duì)限流策略執(zhí)行前后的流量嗅探 再對(duì)比就可以看出限流的具體效果,然后讓學(xué)習(xí)機(jī)適當(dāng)?shù)刈鞒稣{(diào)整策略的決定。具體用 于讀取DRAM存儲(chǔ)器中的數(shù)據(jù)包原始信息并進(jìn)行流量嗅探,得出相應(yīng)的流量狀態(tài)信息存入 SRAM存儲(chǔ)器并上傳給學(xué)習(xí)機(jī)。流量過濾微模塊是限流策略的執(zhí)行者,用于執(zhí)行SRAM存儲(chǔ)器中限流策略表中的 限流策略,控制MSF交換結(jié)構(gòu)以進(jìn)行限流。學(xué)習(xí)機(jī)負(fù)責(zé)限流策略的下達(dá)以及策略執(zhí)行情況的反饋,其用于實(shí)時(shí)學(xué)習(xí)DRAM存 儲(chǔ)器的數(shù)據(jù)包原始信息及其相應(yīng)的流量狀態(tài)信息以調(diào)整相應(yīng)的限流策略,將調(diào)整后的限流 策略更新到SRAM存儲(chǔ)器的限流策略表,并將調(diào)整限流策略的信息通過Xscale管理界面反 饋給上位機(jī)。
Xscale管理界面,用于實(shí)現(xiàn)學(xué)習(xí)機(jī)與上位機(jī)之間的通信。連接關(guān)系上,MSF交換結(jié)構(gòu)與DRAM存儲(chǔ)器、流量嗅探微模塊與DRAM存儲(chǔ)器、流量 嗅探微模塊與SRAM存儲(chǔ)器、MSF交換結(jié)構(gòu)與流量過濾微模塊、以及Xscale管理界面與上位 機(jī)之間均通過PCI總線相連接,有效提供了網(wǎng)絡(luò)處理器的內(nèi)部通信、處理速度,以及網(wǎng)絡(luò)處 理器和上位機(jī)的通信速度。學(xué)習(xí)機(jī)通過學(xué)習(xí)機(jī)的芯片內(nèi)部總線,分別與DRAM存儲(chǔ)器、SRAM存儲(chǔ)器、流量嗅探 微模塊、流量過濾微模塊以及Xscale管理界面相連接。為更好地實(shí)現(xiàn)本發(fā)明,本發(fā)明采用的網(wǎng)絡(luò)處理器為Intel公司的第二代網(wǎng)絡(luò)處理 器Intel IXP2850,與第一代相比,它充分而全面地考慮了網(wǎng)絡(luò)數(shù)據(jù)流的統(tǒng)計(jì)特性,并采 取了相應(yīng)硬件加速設(shè)備和軟件技術(shù),極大地提高了網(wǎng)絡(luò)數(shù)據(jù)包的處理速度,并且在很大程 度上縮短了網(wǎng)絡(luò)應(yīng)用的開發(fā)周期。所述上位機(jī)設(shè)置有用戶界面,用戶界面提供了與所述Xscale管理界面友好的交 互模式,所述Xscale管理界面采用socket通信協(xié)議與上位機(jī)進(jìn)行通信,以將學(xué)習(xí)機(jī)調(diào)整限 流策略的信息反饋給上位機(jī),而上位機(jī)下達(dá)預(yù)定的限流策略到學(xué)習(xí)機(jī),也是通過用戶界面 采用socket通信協(xié)議進(jìn)行下達(dá),提供了與所述Xscale管理界面友好的交互模式,。如圖2所示,上述流量限制系統(tǒng)的流量限制方法,具體如下a.初始化系統(tǒng)包括上位機(jī)制定最初的限流策略,即制定可信任用戶名單及其對(duì) 應(yīng)的基于狀態(tài)的限流策略、未知信任關(guān)系的用戶名單及其對(duì)應(yīng)的無狀態(tài)的限流策略,以及 黑名單及其對(duì)應(yīng)的完全過濾策略,上位機(jī)經(jīng)Xscale管理界面下達(dá)預(yù)定的限流策略到學(xué)習(xí) 機(jī),學(xué)習(xí)機(jī)將該預(yù)定限流策略存入SRAM存儲(chǔ)器的限流策略表;包括上位機(jī)將程序代碼加載 到網(wǎng)絡(luò)處理器中;包括將網(wǎng)絡(luò)處理器與外部網(wǎng)絡(luò),如局域網(wǎng)相連,以使系統(tǒng)可以獲得實(shí)時(shí)的 網(wǎng)絡(luò)數(shù)據(jù)。b.通過MSF交換結(jié)構(gòu)進(jìn)入系統(tǒng)的網(wǎng)絡(luò)數(shù)據(jù)包原始信息存入DRAM存儲(chǔ)器,需要存儲(chǔ) 的信息包括源IP地址、目的IP地址、源端口(若有)、目的端口(若有)、協(xié)議類型、交互狀 態(tài)(若有),這個(gè)收集過程由MSF交換結(jié)構(gòu)完成。c.微引擎的流量嗅探微模塊實(shí)時(shí)讀取DRAM存儲(chǔ)器中的數(shù)據(jù)包原始信息并進(jìn)行流 量嗅探,得出相應(yīng)的流量狀態(tài)信息存入SRAM存儲(chǔ)器并上傳給學(xué)習(xí)機(jī),需要獲取的流量狀態(tài) 信息包括源IP地址、目的IP地址、目的端口(若有)、協(xié)議類型、流量大小、時(shí)間點(diǎn),由于網(wǎng) 絡(luò)處理器IXP2850的微引擎頻率達(dá)1400兆赫茲,所以可以滿足流量為lGbit/s的網(wǎng)絡(luò)處理 要求。d.學(xué)習(xí)機(jī)實(shí)時(shí)學(xué)習(xí)DRAM存儲(chǔ)器的數(shù)據(jù)包原始信息及其相應(yīng)的流量狀態(tài)信息,調(diào) 整相應(yīng)的限流策略,將調(diào)整后的限流策略更新到SRAM存儲(chǔ)器的限流策略表,并將調(diào)整限流 策略的信息通過Xscale管理界面反饋給上位機(jī);流量過濾微模塊執(zhí)行SRAM存儲(chǔ)器中限流 策略表中的限流策略。步驟a所述上位機(jī)經(jīng)Xscale管理界面下達(dá)預(yù)定的限流策略到學(xué)習(xí)機(jī)后,學(xué)習(xí)機(jī)還 將該預(yù)定的限流策略放在自身獨(dú)立的存儲(chǔ)區(qū)的限流策略表中;步驟d所述學(xué)習(xí)機(jī)調(diào)整相應(yīng) 的限流策略后,學(xué)習(xí)機(jī)還將該調(diào)整后的限流策略更新到所述自身獨(dú)立的存儲(chǔ)區(qū)的限流策略 表,以達(dá)到及時(shí)地更新其獨(dú)立的存儲(chǔ)區(qū)的目的,方便學(xué)習(xí)機(jī)快速地參考限流策略。 流量過濾微模塊執(zhí)行所述基于狀態(tài)的限流策略,其操作具體為基于SRAM存儲(chǔ)器中的流量狀態(tài)信息來保護(hù)可信任用戶的正常通信,保護(hù)正在交互的通信流。流量過濾微模塊執(zhí)行無狀態(tài)的限流策略,其操作具體為以保護(hù)系統(tǒng)安全為前提對(duì)未知信任關(guān)系的用戶采取相應(yīng)的無狀態(tài)選擇性地限流,即如果由未知信任關(guān)系的用戶產(chǎn) 生的通信流量在系統(tǒng)的存儲(chǔ)容量的合理承受范圍之內(nèi),則不進(jìn)行限流,否則就進(jìn)行部分或 者全部限流。流量過濾微模塊完全過濾策略,其操作具體為只要是屬于黑名單中的通信用戶, 就完全限制其通信流,將其帶來的安全威脅完全隔離到系統(tǒng)之外。對(duì)應(yīng)于上述限流策略的具體內(nèi)容,步驟d所述流量過濾微模塊執(zhí)行SRAM存儲(chǔ)器中 限流策略表中的限流策略,該限流的具體操作為對(duì)于收到的網(wǎng)絡(luò)數(shù)據(jù)包,先提取其包頭信息以確認(rèn)所屬用戶,再判斷是否要限 流;首先判斷所屬用戶是否屬于黑名單用戶,若是,則執(zhí)行完全過濾策略進(jìn)行限流;若 不是,則判斷其是否為未知信任關(guān)系的用戶,若為未知信任關(guān)系的用戶,采取無狀態(tài)的限流 策略進(jìn)行限流,具體是對(duì)照SRAM中的限流策略表,看屬于哪種無狀態(tài)的選擇性過濾,比如 限制80%,或者50%,或者是完全通過等等;若不屬于黑名單用戶也不屬于未知信任關(guān)系 的用戶,則判斷是否為可信任用戶,若是,則執(zhí)行基于狀態(tài)的限流策略,比如先保護(hù)其所有 正在進(jìn)行的交互再限流50%,或者一直保護(hù)其所有的交互,不進(jìn)行任何的過濾等等。所述SRAM存儲(chǔ)器的限流策略表包括一元限流策略表和三元限流策略表,一元限 流策略表中存儲(chǔ)的是可信任用戶名單及基于狀態(tài)的限流策略,以及黑名單及完全過濾策 略;三元限流策略表存儲(chǔ)的是未知信任關(guān)系的用戶名單及無狀態(tài)的限流策略。如圖3所示,步驟d所述學(xué)習(xí)機(jī)實(shí)時(shí)學(xué)習(xí)DRAM存儲(chǔ)器的數(shù)據(jù)包原始信息及其相應(yīng) 的流量狀態(tài)信息,調(diào)整相應(yīng)的限流策略,將調(diào)整后的限流策略更新到SRAM存儲(chǔ)器的限流策 略表,并將調(diào)整限流策略的信息通過Xscale管理界面反饋給上位機(jī);流量過濾微模塊執(zhí)行 SRAM存儲(chǔ)器中限流策略表中的限流策略,其具體操作為學(xué)習(xí)機(jī)對(duì)DRAM存儲(chǔ)器中的數(shù)據(jù)包原始信息進(jìn)行解析,先提取其包頭信息以確認(rèn) 所屬用戶,再根據(jù)該用戶遍歷自身獨(dú)立的存儲(chǔ)區(qū)中的限流策略表,如果該用戶不在限流策 略表中,則讀取流量嗅探微模塊傳來的該數(shù)據(jù)包原始信息所對(duì)應(yīng)的流量狀態(tài)信息,根據(jù)流 量狀態(tài)信息進(jìn)行異常流量分析以判斷流量是否異常,若是正常數(shù)據(jù)流,則讓其正常通過,若 是異常流量,則將該用戶添加到限流策略表中并關(guān)聯(lián)具體的限流策略,同時(shí)更新SRAM存儲(chǔ) 器中的限流策略表,由流量過濾微模塊執(zhí)行SRAM存儲(chǔ)器中限流策略表中對(duì)應(yīng)的限流策略;如果該用戶在限流策略表中,則由流量過濾微模塊執(zhí)行SRAM存儲(chǔ)器中限流策略 表中對(duì)應(yīng)的限流策略;限流策略執(zhí)行后,流量嗅探微模塊進(jìn)行流量嗅探并將限流后的流量狀態(tài)傳給學(xué)習(xí) 機(jī),學(xué)習(xí)機(jī)根據(jù)該流量狀態(tài)所對(duì)應(yīng)的限流策略判斷給限流后的流量狀態(tài)是否達(dá)標(biāo),若達(dá)標(biāo), 則將該對(duì)應(yīng)的限流策略從其自身獨(dú)立的存儲(chǔ)區(qū)中限流策略表的刪除,并更新SRAM存儲(chǔ)器 中限流策略表;若不達(dá)標(biāo),則調(diào)整該流量狀態(tài)所對(duì)應(yīng)的限流策略,并更新其自身獨(dú)立的存儲(chǔ) 區(qū)以及SRAM存儲(chǔ)器中限流策略表,由流量過濾微模塊執(zhí)行調(diào)整后的限流策略。例如,限流策略表中有條限流策略為源IP地址是16. 6. 0. 8的用戶為未知關(guān)系用 戶,當(dāng)其通信流量達(dá)到6M時(shí)需要將其限制到3M以下。流量過濾微模塊根據(jù)此條限流策略對(duì)源IP為16. 6. 0. 8的通信進(jìn)行限流,采取通過1個(gè)數(shù)據(jù)包再丟棄1個(gè)數(shù)據(jù)包的方法,經(jīng)過時(shí)間間隔T(可以根據(jù)具體要求設(shè)置大小)之后,嗅探到其流量仍然為4. 5Μ,即還沒有達(dá)到標(biāo)準(zhǔn),則要調(diào)整限流策略,可以調(diào)整為接收3個(gè)數(shù)據(jù)包只通過1個(gè)的方法,再經(jīng)過時(shí)間間隔Τ,嗅探到其流量已經(jīng)降到2. 5Μ,即達(dá)到了標(biāo)準(zhǔn),反饋過程完成。對(duì)于其他兩種用戶,操作類 似。 以上描述了根據(jù)本發(fā)明的原理實(shí)現(xiàn)的特定裝置系統(tǒng)和方法步驟,但是本發(fā)明的 圍不僅限于此。本發(fā)明涵蓋落在所附權(quán)利要求及其同等物范圍內(nèi)的所有實(shí)例。
權(quán)利要求
一種基于網(wǎng)絡(luò)處理器的流量限制系統(tǒng),其特征在于包括網(wǎng)絡(luò)處理器和上位機(jī);所述網(wǎng)絡(luò)處理器連接有用于存儲(chǔ)數(shù)據(jù)包原始信息的DRAM存儲(chǔ)器和用于存儲(chǔ)流量狀態(tài)信息和限流策略表的SRAM存儲(chǔ)器;所述網(wǎng)絡(luò)處理器設(shè)置有與外部網(wǎng)絡(luò)相連的MSF交換結(jié)構(gòu),用于接收網(wǎng)絡(luò)數(shù)據(jù)包,并將數(shù)據(jù)包原始信息存入DRAM存儲(chǔ)器;流量嗅探微模塊,用于讀取DRAM存儲(chǔ)器中的數(shù)據(jù)包原始信息并進(jìn)行流量嗅探,得出相應(yīng)的流量狀態(tài)信息存入SRAM存儲(chǔ)器并上傳給學(xué)習(xí)機(jī);流量過濾微模塊,用于執(zhí)行SRAM存儲(chǔ)器中限流策略表中的限流策略;學(xué)習(xí)機(jī),用于實(shí)時(shí)學(xué)習(xí)DRAM存儲(chǔ)器的數(shù)據(jù)包原始信息及其相應(yīng)的流量狀態(tài)信息以調(diào)整相應(yīng)的限流策略,將調(diào)整后的限流策略更新到SRAM存儲(chǔ)器的限流策略表,并將調(diào)整限流策略的信息通過Xscale管理界面反饋給上位機(jī);Xscale管理界面,用于實(shí)現(xiàn)學(xué)習(xí)機(jī)與上位機(jī)之間的通信。
2.根據(jù)權(quán)利要求1所述的一種基于網(wǎng)絡(luò)處理器的流量限制系統(tǒng),其特征在于所述網(wǎng)絡(luò)處理器為Intel公司的第二代網(wǎng)絡(luò)處理器Intel IXP2850,所述MSF交換結(jié)構(gòu)與DRAM 存儲(chǔ)器、流量嗅探微模塊與DRAM存儲(chǔ)器、流量嗅探微模塊與SRAM存儲(chǔ)器、MSF交換結(jié)構(gòu)與 流量過濾微模塊、以及Xscale管理界面與上位機(jī)之間均通過PCI總線相連接,所述學(xué)習(xí)機(jī) 通過學(xué)習(xí)機(jī)的芯片內(nèi)部總線,分別與DRAM存儲(chǔ)器、SRAM存儲(chǔ)器、流量嗅探微模塊、流量過濾 微模塊以及Xscale管理界面相連接。
3.根據(jù)權(quán)利要求1所述的一種基于網(wǎng)絡(luò)處理器的流量限制系統(tǒng)實(shí)現(xiàn)的流量限制方法,其特征在于,具體如下a.上位機(jī)經(jīng)Xscale管理界面下達(dá)預(yù)定的限流策略到學(xué)習(xí)機(jī),學(xué)習(xí)機(jī)將該預(yù)定限流策略存入SRAM存儲(chǔ)器的限流策略表;b.MSF交換結(jié)構(gòu)接收網(wǎng)絡(luò)數(shù)據(jù)包,并將數(shù)據(jù)包原始信息存入DRAM存儲(chǔ)器;c.流量嗅探微模塊實(shí)時(shí)讀取DRAM存儲(chǔ)器中的數(shù)據(jù)包原始信息并進(jìn)行流量嗅探,得出相應(yīng)的流量狀態(tài)信息存入SRAM存儲(chǔ)器并上傳給學(xué)習(xí)機(jī);d.學(xué)習(xí)機(jī)實(shí)時(shí)學(xué)習(xí)DRAM存儲(chǔ)器的數(shù)據(jù)包原始信息及其相應(yīng)的流量狀態(tài)信息,調(diào)整相應(yīng)的限流策略,將調(diào)整后的限流策略更新到SRAM存儲(chǔ)器的限流策略表,并將調(diào)整限流策略 的信息通過Xscale管理界面反饋給上位機(jī);流量過濾微模塊執(zhí)行SRAM存儲(chǔ)器中限流策略 表中的限流策略。
4.根據(jù)權(quán)利要求3所述的一種基于網(wǎng)絡(luò)處理器的流量限制方法,其特征在于步驟a所述上位機(jī)經(jīng)Xscale管理界面下達(dá)預(yù)定的限流策略到學(xué)習(xí)機(jī)后,學(xué)習(xí)機(jī)還將該預(yù)定的限 流策略放在自身獨(dú)立的存儲(chǔ)區(qū)的限流策略表中;步驟d所述學(xué)習(xí)機(jī)調(diào)整相應(yīng)的限流策略 后,學(xué)習(xí)機(jī)還將該調(diào)整后的限流策略更新到所述自身獨(dú)立的存儲(chǔ)區(qū)的限流策略表。
5.根據(jù)權(quán)利要求3所述的一種基于網(wǎng)絡(luò)處理器的流量限制方法,其特征在于所述上位機(jī)設(shè)置有用戶界面,所述Xscale管理界面采用套接字通信協(xié)議與上位機(jī)進(jìn)行通信,將學(xué) 習(xí)機(jī)調(diào)整限流策略的信息反饋給上位機(jī);而上位機(jī)下達(dá)預(yù)定的限流策略到學(xué)習(xí)機(jī),也是通 過用戶界面采用套接字通信協(xié)議進(jìn)行下達(dá)。
6.根據(jù)權(quán)利要求3所述的一種基于網(wǎng)絡(luò)處理器的流量限制方法,其特征在于步驟d 所述學(xué)習(xí)機(jī)實(shí)時(shí)學(xué)習(xí)DRAM存儲(chǔ)器的數(shù)據(jù)包原始信息及其相應(yīng)的流量狀態(tài)信息,調(diào)整相應(yīng)的限流策略,將調(diào)整后的限流策略更新到SRAM存儲(chǔ)器的限流策略表,并將調(diào)整限流策略的信息通過Xscale管理界面反饋給上位機(jī);流量過濾微模塊執(zhí)行SRAM存儲(chǔ)器中限流策略表 中的限流策略,其具體操作為學(xué)習(xí)機(jī)對(duì)DRAM存儲(chǔ)器中的數(shù)據(jù)包原始信息進(jìn)行解析,先提取其包頭信息以確認(rèn)所屬 用戶,再根據(jù)該用戶遍歷自身獨(dú)立的存儲(chǔ)區(qū)中的限流策略表,如果該用戶不在限流策略表 中,則讀取流量嗅探微模塊傳來的該數(shù)據(jù)包原始信息所對(duì)應(yīng)的流量狀態(tài)信息,根據(jù)流量狀態(tài)信息進(jìn)行異常流量分析以判斷流量是否異常,若是正常數(shù)據(jù)流,則讓其正常通過,若是異 常流量,則將該用戶添加到限流策略表中并關(guān)聯(lián)具體的限流策略,同時(shí)更新SRAM存儲(chǔ)器中 的限流策略表,由流量過濾微模塊執(zhí)行SRAM存儲(chǔ)器中限流策略表中對(duì)應(yīng)的限流策略;如果該用戶在限流策略表中,則由流量過濾微模塊執(zhí)行SRAM存儲(chǔ)器中限流策略表中 對(duì)應(yīng)的限流策略;限流策略執(zhí)行后,流量嗅探微模塊進(jìn)行流量嗅探并將限流后的流量狀態(tài)傳給學(xué)習(xí)機(jī), 學(xué)習(xí)機(jī)根據(jù)該流量狀態(tài)所對(duì)應(yīng)的限流策略判斷給限流后的流量狀態(tài)是否達(dá)標(biāo),若達(dá)標(biāo),則 將該對(duì)應(yīng)的限流策略從其自身獨(dú)立的存儲(chǔ)區(qū)中限流策略表的刪除,并更新SRAM存儲(chǔ)器中限流策略表;若不達(dá)標(biāo),則調(diào)整該流量狀態(tài)所對(duì)應(yīng)的限流策略,并更新其自身獨(dú)立的存儲(chǔ)區(qū) 以及SRAM存儲(chǔ)器中限流策略表,由流量過濾微模塊執(zhí)行調(diào)整后的限流策略。
7.根據(jù)權(quán)利要求3所述的一種基于網(wǎng)絡(luò)處理器的流量限制方法,其特征在于所述限 流策略具體包括可信任用戶名單及其對(duì)應(yīng)的基于狀態(tài)的限流策略、未知信任關(guān)系的用戶 名單及其對(duì)應(yīng)的無狀態(tài)的限流策略,以及黑名單及其對(duì)應(yīng)的完全過濾策略。
8.根據(jù)權(quán)利要求7所述的一種基于網(wǎng)絡(luò)處理器的流量限制方法,其特征在于流量過濾微模塊執(zhí)行所述基于狀態(tài)的限流策略,其操作具體為基于SRAM存儲(chǔ)器中的流量狀態(tài)信 息來保護(hù)可信任用戶的正常通信,保護(hù)正在交互的通信流;流量過濾微模塊執(zhí)行無狀態(tài)的限流策略,其操作具體為以保護(hù)系統(tǒng)安全為前提對(duì)未知信任關(guān)系的用戶采取相應(yīng)的無狀態(tài)選擇性地限流,即如果由未知信任關(guān)系的用戶產(chǎn)生的 通信流量在系統(tǒng)的存儲(chǔ)容量的合理承受范圍之內(nèi),則不進(jìn)行限流,否則就進(jìn)行部分或者全 部限流;流量過濾微模塊完全過濾策略,其操作具體為只要是屬于黑名單中的通信用戶,就完全限制其通信流,將其帶來的安全威脅完全隔離到系統(tǒng)之外。
9.根據(jù)權(quán)利要求7所述的一種基于網(wǎng)絡(luò)處理器的流量限制方法,其特征在于步驟d 所述流量過濾微模塊執(zhí)行SRAM存儲(chǔ)器中限流策略表中的限流策略,該限流的具體操作為對(duì)于收到的網(wǎng)絡(luò)數(shù)據(jù)包,先提取其包頭信息以確認(rèn)所屬用戶,再判斷是否要限流;判斷所屬用戶是否屬于黑名單用戶,若是,則執(zhí)行完全過濾策略進(jìn)行限流;若不是,則判斷其是否為未知信任關(guān)系的用戶,若為未知信任關(guān)系的用戶,采取無狀態(tài)的限流策略進(jìn) 行限流;若不屬于黑名單用戶也不屬于未知信任關(guān)系的用戶,則判斷是否為可信任用戶,若 是,則執(zhí)行基于狀態(tài)的限流策略。
全文摘要
本發(fā)明提供一種基于網(wǎng)絡(luò)處理器的流量限制系統(tǒng)及其方法,系統(tǒng)包括網(wǎng)絡(luò)處理器和上位機(jī);所述網(wǎng)絡(luò)處理器連接有DRAM存儲(chǔ)器和SRAM存儲(chǔ)器;所述網(wǎng)絡(luò)處理器設(shè)置有MSF交換結(jié)構(gòu)、流量嗅探微模塊、流量過濾微模塊、學(xué)習(xí)機(jī)和Xscale管理界面。本發(fā)明充分利用了網(wǎng)絡(luò)處理器的高速性能,并且通過學(xué)習(xí)機(jī)的自學(xué)習(xí)功能制定相應(yīng)的限流策略,根據(jù)存儲(chǔ)在DRAM存儲(chǔ)器中的網(wǎng)絡(luò)數(shù)據(jù)包的狀態(tài)以及SRAM存儲(chǔ)器中的策略表來實(shí)行不同的限流策略,既可以保證正常的網(wǎng)絡(luò)流量暢通,又可以快速有效地限制不可信任用戶和黑名單用戶的數(shù)據(jù)流,達(dá)到保護(hù)系統(tǒng)的目的。
文檔編號(hào)H04L29/06GK101800698SQ20101010455
公開日2010年8月11日 申請(qǐng)日期2010年1月29日 優(yōu)先權(quán)日2010年1月29日
發(fā)明者關(guān)廣才, 謝勝利, 賴粵, 賴運(yùn)娥 申請(qǐng)人:華南理工大學(xué)