防火牆架構解析


  防火牆本身就是一台為網絡而設計的計算機,與通用計算機一樣防火牆是由硬件和軟件組成,現今防火牆有着多種硬件技術架構,不同的硬件架構有着各自不同的特點。先說明一下什么是處理器體系結構和體系架構。
體 系 架 構 :
  CPU架構是CPU廠商給屬於同一系列的CPU產品定的一個規范,主要目的是為了區分不同類型的CPU 。
體 系 結 構 :
  在計算世界的 " 體系結構 " 一詞被用來描述一個抽象的機器而不是一個具體的機器實現 。一般而言,一個CPU的體系結構有一個指令集加上一些寄存器而組成。 “ 指令集”與“ 體系結構 ” 這兩個術語是同義詞 。
指令集:
  指令集可分為復雜指令集(CISC)和精簡指令集(RISC)兩個類型。MIPS是一種RISC處理器, X86是一種cisc架構的處理器。

 

X86架構  

優點:靈活性高,擴展性好。
缺點:性能差,小包速率低(30%-40%)。
  X86是由Intel推出的一種復雜指令集,用於控制芯片的運行的程序,現在X86處理器已經廣泛運用到了PC領域。基於X86架構的防火牆,由於CPU處理能力和PCI總線速度的制約,在實際應用中,尤其在小包情況下,這種結構的千兆防火牆遠遠達不到千兆的轉發速度,難以滿足千兆骨干網絡的應用要求。  
  X86架構是一種通用的“CPU+Linux”操作系統的架構。其處理機制是,數據從網卡到CPU之間的傳輸是依靠“中斷”實現,這導致了不可逾越的性能瓶頸,尤其在傳送小包的情況下(如64 Bytes的小包),數據包的通過率只能達到20%~30%左右,並且它的設計是必須依靠CPU計算,因此,很占CPU資源,這也是為什么X86防火牆性能上不去的原因。雖然Intel提出了解決方案,將32位的PCI總線升級到了PCI-E ,總線速度最高可達16GBps,但是,小包傳送問題依然沒有解決。但X86的產業化規模最大,隨着Intel的不斷優化性能已經不差且在應用層的處理速度要比MIPS架構好。

 

ASIC架構

優點:性能高。
缺點:靈活性低,擴展性差,開發費用高,開發周期長。
  專用集成芯片(Application Specific Integrated Circuit,簡稱ASIC),為特定要求和特定電子系統而設計、制造的集成電路。ASIC的特點是面向特定需求,ASIC在批量生產時與通用集成電路相比具有體積更小、功耗更低、可靠性提高、性能提高、保密性增強、成本降低等優點。
  國外的大部分防火牆設計都采用了ASIC架構,以Juniper和Fortinet的產品為首,因為它的性能高,並且開發門檻高,一度成為國際國內廠商的技術分水嶺。   
基於ASIC架構的防火牆從架構上改進了中斷機制,數據通過網卡進入系統后,無需經過主CPU處理,而是由集成在系統中的芯片直接處理,完成防火牆的功能,如路由、NAT、防火牆規則匹配等,因此,其性能得到了大幅度的提升: 性能可以達到萬兆,並且64 Bytes的小包都可以達到線速。 但問題是,這種防火牆在設計時,就必須將安全功能固化進ASIC芯片中,所以它的靈活性不夠,如果想要增添新的功能或進行系統升級,開發周期較長,對技術的要求也很高。此外,用ASIC開發復雜的功能,如垃圾郵件過濾、網絡監控、病毒防護等,其開發比較復雜,對技術要求很高。因此,ASIC架構非常適用於功能簡單的防火牆,但不適合用於功能復雜的UTM。  
  線速,達到線速標准的設備,避免了非線速設備的轉發瓶頸,稱作“無阻塞處理”。即廠商標稱交換能力大於設備上所有類型各個接口的帶寬總和的2倍(全雙工)。

 

NP架構

特點:平衡方案
  網絡處理器(Network Processor,簡稱NP),采用NP架構的防火牆,各種算法可以通過硬件實現,在實現復雜的擁塞管理、隊列調度、流分類和QoS功能的前提下,還可以達到極高的查找、轉發性能,實現“硬轉發”。
  NP是專門為網絡設備處理網絡流量而設計的處理器,其體系結構和指令集對於數據處理都做了專門的優化,同時輔助一些協處理器完成搜索、查表等功能,可以對網絡流量進行快速的並發處理。硬件結構設計采用高速的接***術和總線規范,具有較高的I/O能力。這是一種硬件加速的完全可編程的架構,軟硬件都易於升級,因此產品的生命周期更長。 NP最大的優點在於它是通過專門的指令集和配套的軟件開發系統提供強大的編程能力,因而便於開發應用,可擴展性強,而且研制周期短,成本較低。但是,相比於X86架構,由於應用開發、功能擴展受到NP的配套軟件的限制,基於NP技術的防火牆的靈活性要差一些。采用微碼編程,在性能方面NP不如ASIC。NP開發的難度和靈活性都介於ASIC和X86構架之間,應該說NP是X86架構和ASIC之間的平衡方案。
  NP架構實現的原理和ASIC類似,但升級、維護遠遠好於ASIC 架構。NP架構在的每一個網口上都有一個網絡處理器,即:NPE,用來處理來自網口的數據。每個網絡處理器上所運行的程序使用微碼編程,其軟件實現的難度比較大,開發周期比ASIC短,但比X86長。作為UTM,由於NP架構每個網口上的網絡處理器性能不高,所以同樣無法完成像網關殺毒、垃圾郵件、過濾、訪問監控等復雜功能。 可能有人會問?ASIC 和 NP為什么不可以把網關殺毒、和垃圾郵件過濾、訪問監控等這些功能放在主CPU上來實現?這樣不就可以作為UTM方案使用了嗎?這個問題問得很好,目前有很多基於NP和ASIC的UTM都是這樣做的,但問題是ASIC和NP架構的防火牆,其主CPU性能很低,如:Intel基於IXP2400的千高端NP方案,主CPU只有1.0G,處理能力還比不上Celeron 1.0G,大家可以對照一下與其主頻相當的X86平台的處理能力。所以如果以ASIC和NP架構來實現一個UTM網關,只能是作為低端的方案來使用,如桌面型的UTM,而並不能作為中、高端的UTM來使用。
 
MIPS架構
特點:多核方案
  MIPS (Microprocessor without interlocked piped stages) 是RISC精簡指令集處理器。它最早是在80年代初期由斯坦福(Stanford)大學Hennessy教授領導的研究小組研制出來的。MIPS是高性能、低功耗嵌入式系統處理器,廣泛應用於網絡/通訊、無線、存儲和控制應用等領域的安全產品,國際上主要的網絡/通訊/無線等廠商都有使用MIPS的解決方案。
MIPS多核技術則是近年來新出現的處理器技術,它一出現,就被認為是解決信息安全產品功能與性能之間矛盾的一大硬件法寶。國外許多廠商,如SonicWall等,都推出了其多核產品。多核是在同一個硅晶片上集成了多個獨立物理核心,每個核心都具有獨立的邏輯結構,包括緩存、執行單元、指令級單元和總線接口等邏輯單元,通過高速總線、內存共享進行通信。在實際工作中,每個核心都可以達到2Ghz以上的主頻。因此,多核技術無論在性能、靈活性還是在開發的成本和難度方面,都是其他架構不能比擬的。目前各種芯片廠商推出的多核芯片共分三種:一種是Intel、AMD推出的2核、4核的通用處理器,適用於桌面筆記本電腦等通用領域;一種是IBM、SUN分別推出的Cell和SPARC架構的多核處理器,主要用於圖形處理和運算;第三種是RMI和Cavium推出的基於MIPS架構的嵌入式多核處理器,主要應用於數據通信領域,它最適合用於信息安全產品的開發。
  同時,MIPS架構同ARM架構對比來看也存在一些不足之處:一是MIPS的內存地址起始有問題,這導致了MIPS在內存和cache的支持方面都有限制,即MIPS單內核無法面對高容量內存配置;二是MIPS技術演進方向是並行線程,類似INTEL的超線程,而ARM未來的發展方向是物理多核,從目前核心移動設備的發展趨勢來看物理多核占據了上風;三是MIPS雖然結構更加簡單,但是到現在還是順序單/雙發射,ARM則已經進化到了亂序雙/三發射,執行指令流水線周期遠不如ARM高效;四是MIPS學院派發展風格導致其商業進程遠遠滯后於ARM,當ARM與高通、蘋果、NVIDIA等芯片設計公司合作大舉進攻移動終端的時候,MIPS還停留在高清盒子、打印機等小眾市場產品中;五是MIPS自身系統的軟件平台也較為落后,應用軟件與ARM體系相比要少很多。
 
資料來自於網絡,歡迎大家探討!


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM