防火牆、UTM產品硬體平臺架構詳細解析(轉)
防火牆、UTM產品硬體平臺架構詳細解析(轉)[@more@] 現在市場上的防火牆、UTM產品從其架構上來說,大概分為三大類。
第一類是基於X86平臺的,這種平臺通常使用一顆或多顆主CPU來處理業務資料,網路卡晶片和CPU透過PCI匯流排來傳輸資料。
由於傳統的32位PCI匯流排頻率為33MHZ,所以,理論通訊速率為:132 MB Bytes/S即:1056 MBits/S。單從PCI通訊的速率上來說是可以滿足千兆防火牆的需要,但實際上PCI匯流排在X86系統中是共享的,也就是說,如果有兩個網路卡同時傳輸資料,那麼每個網路卡所能獲得的速率就只有 66 MB Bytes/S,即:528 Mbits/S ,如果有四個網口同時傳輸資料,則每個網路卡所能獲得的速度只有16 MB Bytes/S,即128Mbit/S。
從匯流排速度來看基於32位PCI匯流排的X86平臺,做為百兆防火牆的方案是沒有任何問題的。但X86平臺的防火牆方案,資料從網路卡到CPU之間的傳輸機制是靠“中斷”來實現的,中斷機制導致在有大量資料包的需要處理的情況下(如:64 Bytes的小包,以下簡稱小包),X86平臺的防火牆吞吐速率不高,大概在30%左右,並且CPU佔用會很高。這是所有基於X86平臺的防火牆所共同存在的問題。
因此,基於32位PCI匯流排的X86平臺是不能做為千兆防火牆使用的,因為32位PCI匯流排的通訊速率不能達到千兆防火牆的要求。針對這個問題,Intel提出瞭解決方案,可以把32位的PCI匯流排升級到了PCI-E ,即:PCI-Express,這樣,PCI-E 4X的匯流排的速度就可以達到 2000MB Bytes/S,即:16Gbits/S,並且PCI-E各個PCI裝置之間互相獨立不共享匯流排頻寬,每個基於PCI-E的網口可以使用的頻寬為:2000MB Bytes/S,即:16Gbits/S,所以基於PCI-E 4X的X86從系統頻寬上來說,做為千兆防火牆是沒有任何問題的。但是,基於PCI-E的防火牆資料從網路卡到CPU之間傳輸同樣使用“中斷”機制來傳輸資料,所以小包(64 Bytes)的透過率仍然為:30-40%。
第二類,基於ASIC架構的防火牆、UTM產品。
從上面對X86架構防火牆的分析中,我們瞭解到X86平臺的防火牆其最大的缺點就是小包通速率低,只有30%-40%,造成這個問題的主要原因是因為X86平臺的中斷機制以及X86平臺的防火牆所有資料都要經過主CPU處理。基於ASCI架構的防火牆從架構上改進了中斷機制,資料從網路卡收到以後,不經過主CPU處理,而是經過整合在系統中的一些晶片直接處理,由這些晶片來完成傳統防火牆的功能,如:路由、NAT、防火牆規則匹配等。這樣資料不經過主CPU處理,不使用中斷機制,理所當然,ASIC是做為功能簡單的防火牆的最佳選擇。
但隨之而來的問題是,ASIC架構的防火牆是晶片一級的,所有的防火牆動作由晶片來處理。這些晶片的功能比較單一,要升級維護的開發週期比較長。尤其是作為多功能整合的UTM閘道器來說,無法在晶片一級完成防毒、垃圾郵件過濾、網路監控等比較複雜的功能,所以說,ASIC架構用來做功能簡單的防火牆,是完全適用的,64 Bytes的小包都可以達到線速。但ASIC架構做為UTM就不是理想的選擇,因為ASIC架構不可能把像閘道器防毒、垃圾郵件過濾、網路監控等這些功能做到晶片一級去。
第三類,基於NP架構的防火牆。
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來使用。
言歸正傳,那什麼才是UTM閘道器合適的硬體方案呢?如果要在上述三種方案中選擇一種的話,非X86架構莫屬,當然,隨著技術的發展,還有可能出現第四種防火牆的解決方案,可以做為實現UTM閘道器的完美平臺,但這是後話,值得我們期待。X86平臺的主要缺陷在於64Bytes的小包不能達到線速。但在實際使用者中,除非是DOS、DDOS攻擊才會產生大量的的小包,使用者正常的應用不可能產生大量的小包。如果在基於X86平臺的UTM產品中,解決好DOS和DDOS攻擊的問題,那麼,X86平臺就是UTM閘道器理所當然的解決方案。對於這個問題,已經有產品開發了防DOS、DDOS攻擊的功能,不但可以防禦來自外網的DOS攻擊而且能夠防禦來自企業內部網路的DOS、DDOS攻擊,這樣我們的UTM產品就解決了這個問題,使閘道器的穩定性和可靠性大大加強,在UTM整體效能方面優越於NP、ASIC。在遇到大規模的DOS、DDOS攻擊時,也不會佔用太多的CPU資源。
既然選擇了X86做為UTM閘道器的硬體平臺,那麼,還會存在一個問題:“如果UTM閘道器處理的業務比較多,是否會影響網路速度?”,比較簡單的答覆是這樣的:在CPU佔用低於90%的時候,是不會影響網路速度的。因為UTM閘道器雖然整合了眾多的功能,並且要求主CPU來處理這所有的業務。但從業務的方面來看,是獨立的,如:收發郵件的資料就不會被做為透過HTTP上網的資料來處理,透過HTTP上網的資料也不會被做為郵件的資料來處理,所以當一個資料包透過UTM時,是分業務分流程處理的,在CPU佔用90%以下時,CPU完全可以實時的處理這些業務。但如果CPU佔用超過了90%,那怎麼辦?X86的平臺是不是不能解決了?答案是否定的,對於這個問題,X86的平臺的方案有兩種解決方法:
方法一:支援多顆CPU。部分高階裝置都配備了2顆以上CPU,更高階的裝置甚至配備4顆CPU,這樣CPU的處理能力也就不會成為瓶頸。
方法二:使用加速卡。比如把郵件過濾做成一個加速卡安全在系統中,在主CPU發現某個資料包為郵件資料時,把該資料包交給加速卡來完成,不佔用主CPU資源。
綜上所述可以得出一個結論,X86架構是UTM閘道器理想的硬體平臺,目前來看,沒有其它平臺可以代替。
註解:
NP:網路處理器(Network Processor)
ASIC:專用積體電路(Application Specific Integrated Circuit)
百兆裝置:指資料傳輸能力在 100Mbits/S 以上的網路傳輸裝置,即:10Mbytes/S。
千兆裝置:指資料傳輸能力在 1000Mbits/S以上的網路傳輸裝置,即:100Mbytes/S
第一類是基於X86平臺的,這種平臺通常使用一顆或多顆主CPU來處理業務資料,網路卡晶片和CPU透過PCI匯流排來傳輸資料。
由於傳統的32位PCI匯流排頻率為33MHZ,所以,理論通訊速率為:132 MB Bytes/S即:1056 MBits/S。單從PCI通訊的速率上來說是可以滿足千兆防火牆的需要,但實際上PCI匯流排在X86系統中是共享的,也就是說,如果有兩個網路卡同時傳輸資料,那麼每個網路卡所能獲得的速率就只有 66 MB Bytes/S,即:528 Mbits/S ,如果有四個網口同時傳輸資料,則每個網路卡所能獲得的速度只有16 MB Bytes/S,即128Mbit/S。
從匯流排速度來看基於32位PCI匯流排的X86平臺,做為百兆防火牆的方案是沒有任何問題的。但X86平臺的防火牆方案,資料從網路卡到CPU之間的傳輸機制是靠“中斷”來實現的,中斷機制導致在有大量資料包的需要處理的情況下(如:64 Bytes的小包,以下簡稱小包),X86平臺的防火牆吞吐速率不高,大概在30%左右,並且CPU佔用會很高。這是所有基於X86平臺的防火牆所共同存在的問題。
因此,基於32位PCI匯流排的X86平臺是不能做為千兆防火牆使用的,因為32位PCI匯流排的通訊速率不能達到千兆防火牆的要求。針對這個問題,Intel提出瞭解決方案,可以把32位的PCI匯流排升級到了PCI-E ,即:PCI-Express,這樣,PCI-E 4X的匯流排的速度就可以達到 2000MB Bytes/S,即:16Gbits/S,並且PCI-E各個PCI裝置之間互相獨立不共享匯流排頻寬,每個基於PCI-E的網口可以使用的頻寬為:2000MB Bytes/S,即:16Gbits/S,所以基於PCI-E 4X的X86從系統頻寬上來說,做為千兆防火牆是沒有任何問題的。但是,基於PCI-E的防火牆資料從網路卡到CPU之間傳輸同樣使用“中斷”機制來傳輸資料,所以小包(64 Bytes)的透過率仍然為:30-40%。
第二類,基於ASIC架構的防火牆、UTM產品。
從上面對X86架構防火牆的分析中,我們瞭解到X86平臺的防火牆其最大的缺點就是小包通速率低,只有30%-40%,造成這個問題的主要原因是因為X86平臺的中斷機制以及X86平臺的防火牆所有資料都要經過主CPU處理。基於ASCI架構的防火牆從架構上改進了中斷機制,資料從網路卡收到以後,不經過主CPU處理,而是經過整合在系統中的一些晶片直接處理,由這些晶片來完成傳統防火牆的功能,如:路由、NAT、防火牆規則匹配等。這樣資料不經過主CPU處理,不使用中斷機制,理所當然,ASIC是做為功能簡單的防火牆的最佳選擇。
但隨之而來的問題是,ASIC架構的防火牆是晶片一級的,所有的防火牆動作由晶片來處理。這些晶片的功能比較單一,要升級維護的開發週期比較長。尤其是作為多功能整合的UTM閘道器來說,無法在晶片一級完成防毒、垃圾郵件過濾、網路監控等比較複雜的功能,所以說,ASIC架構用來做功能簡單的防火牆,是完全適用的,64 Bytes的小包都可以達到線速。但ASIC架構做為UTM就不是理想的選擇,因為ASIC架構不可能把像閘道器防毒、垃圾郵件過濾、網路監控等這些功能做到晶片一級去。
第三類,基於NP架構的防火牆。
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來使用。
言歸正傳,那什麼才是UTM閘道器合適的硬體方案呢?如果要在上述三種方案中選擇一種的話,非X86架構莫屬,當然,隨著技術的發展,還有可能出現第四種防火牆的解決方案,可以做為實現UTM閘道器的完美平臺,但這是後話,值得我們期待。X86平臺的主要缺陷在於64Bytes的小包不能達到線速。但在實際使用者中,除非是DOS、DDOS攻擊才會產生大量的的小包,使用者正常的應用不可能產生大量的小包。如果在基於X86平臺的UTM產品中,解決好DOS和DDOS攻擊的問題,那麼,X86平臺就是UTM閘道器理所當然的解決方案。對於這個問題,已經有產品開發了防DOS、DDOS攻擊的功能,不但可以防禦來自外網的DOS攻擊而且能夠防禦來自企業內部網路的DOS、DDOS攻擊,這樣我們的UTM產品就解決了這個問題,使閘道器的穩定性和可靠性大大加強,在UTM整體效能方面優越於NP、ASIC。在遇到大規模的DOS、DDOS攻擊時,也不會佔用太多的CPU資源。
既然選擇了X86做為UTM閘道器的硬體平臺,那麼,還會存在一個問題:“如果UTM閘道器處理的業務比較多,是否會影響網路速度?”,比較簡單的答覆是這樣的:在CPU佔用低於90%的時候,是不會影響網路速度的。因為UTM閘道器雖然整合了眾多的功能,並且要求主CPU來處理這所有的業務。但從業務的方面來看,是獨立的,如:收發郵件的資料就不會被做為透過HTTP上網的資料來處理,透過HTTP上網的資料也不會被做為郵件的資料來處理,所以當一個資料包透過UTM時,是分業務分流程處理的,在CPU佔用90%以下時,CPU完全可以實時的處理這些業務。但如果CPU佔用超過了90%,那怎麼辦?X86的平臺是不是不能解決了?答案是否定的,對於這個問題,X86的平臺的方案有兩種解決方法:
方法一:支援多顆CPU。部分高階裝置都配備了2顆以上CPU,更高階的裝置甚至配備4顆CPU,這樣CPU的處理能力也就不會成為瓶頸。
方法二:使用加速卡。比如把郵件過濾做成一個加速卡安全在系統中,在主CPU發現某個資料包為郵件資料時,把該資料包交給加速卡來完成,不佔用主CPU資源。
綜上所述可以得出一個結論,X86架構是UTM閘道器理想的硬體平臺,目前來看,沒有其它平臺可以代替。
註解:
NP:網路處理器(Network Processor)
ASIC:專用積體電路(Application Specific Integrated Circuit)
百兆裝置:指資料傳輸能力在 100Mbits/S 以上的網路傳輸裝置,即:10Mbytes/S。
千兆裝置:指資料傳輸能力在 1000Mbits/S以上的網路傳輸裝置,即:100Mbytes/S
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/10617542/viewspace-960288/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- 軟體防火牆與硬體防火牆詳解防火牆
- 八種防火牆產品評測(企業級防火牆)(轉)防火牆
- UTM與下一代防火牆(轉)防火牆
- 防火牆三大體系架構前景分析(轉)防火牆架構
- 硬體防火牆選購指南(轉載)防火牆
- 看不懂的硬體防火牆(轉)防火牆
- 抗DoS、DDoS防火牆產品大檢閱(轉)防火牆
- 大型 SaaS 平臺產品架構設計思路架構
- 防火牆入侵於檢測——————3、思科 PIX 防火牆和 ASA 防火牆產品線防火牆
- UTM與傳統防火牆有什麼本質區別(轉)防火牆
- 全面分析低程式碼平臺:各大熱門產品詳細對比
- 2024最流行的網站架構----邊緣平臺架構:概念與產品網站架構
- 企業選擇硬體防火牆的一點建議(轉載)防火牆
- 中介軟體產品架構師招聘架構
- Linux 防火牆配置(iptables和firewalld)詳細教程。Linux防火牆
- 鑑別硬體防火牆效能優劣的幾個標準(轉載)防火牆
- PS5詳細硬體架構公佈:極速SSD與全新GPU架構GPU
- 選擇硬體防火牆應注意的幾點事宜防火牆
- 阿里雲產品之資料中臺架構阿里架構
- 大規模機器學習平臺的整體架構和實現細節(萬字解析,附PPT)機器學習架構
- 細緻解析:kubernets整體架構架構
- 【細品架構4/100】架構之架構切分架構
- 一張圖讀懂基於微信硬體平臺的物聯網架構架構
- 雲平臺和雲管平臺的三大區別詳細解析
- 【細品架構10/100】架構由術至道的轉變(1)架構
- 【細品架構11/100】架構由術至道的轉變(2)架構
- 全面分析防火牆及防火牆的滲透(轉)防火牆
- 打造10億產品線 綠盟科技魔力防火牆線上釋出防火牆
- 防火牆產品的技術現狀及發展趨勢防火牆
- 用Linux防火牆構建軟路由(轉)Linux防火牆路由
- 2022年Q1中國統一威脅管理(UTM)防火牆硬體市場份額(附原資料表) 防火牆
- 平臺產品研發思考
- 防火牆技術詳解防火牆
- 最多 200 美元,黑客就能用微型晶片破解硬體防火牆黑客晶片防火牆
- 硬體防火牆的技術演變及發展趨勢防火牆
- 構築Unix系統內防火牆體系的多種方案(轉)防火牆
- win10系統dnf防火牆怎麼解除_win10dnf解除防火牆的詳細步驟Win10防火牆
- 如何記錄產品和軟體架構決策?架構