近年來隨著千兆網(wǎng)絡(luò)開始在國內(nèi)大規(guī)模推廣應(yīng)用,用戶對(duì)千兆防火墻的需求已逐漸升溫。在很多網(wǎng)絡(luò)環(huán)境下,傳統(tǒng)的基于X86體系結(jié)構(gòu)的防火墻已不能滿足千兆防火墻高吞吐量、低時(shí)延的要求,因此,兩種新的技術(shù),即網(wǎng)絡(luò)處理器(Network Processor)和專用集成電路(ASIC)技術(shù)成為眾多國內(nèi)廠家實(shí)現(xiàn)千兆防火墻的主要選擇??梢哉f,防火墻的硬件體系結(jié)構(gòu)正面臨著一次變革。
百兆防火墻的不足
在百兆防火墻時(shí)代,國內(nèi)防火墻廠商普遍采用的是通用CPU配合軟件的技術(shù)方案。雖然很多廠家也把它稱之為硬件防火墻,但實(shí)際上都是基于X86架構(gòu)的服務(wù)器或工控機(jī)。這類防火墻一般運(yùn)行在經(jīng)過裁減的操作系統(tǒng)上(通常是linux或BSD),所有的數(shù)據(jù)包解析和審查工作都由軟件來完成。雖然這種技術(shù)方案在百兆防火墻市場(chǎng)取得了很大的成功,但由于CPU處理能力和PCI總線速度的制約,在實(shí)際應(yīng)用中,尤其在小包情況下,這種結(jié)構(gòu)的千兆防火墻遠(yuǎn)遠(yuǎn)達(dá)不到千兆的轉(zhuǎn)發(fā)速度(64字節(jié)包長時(shí),雙向轉(zhuǎn)發(fā)速率一般為百分之二十以下),難以滿足千兆骨干網(wǎng)絡(luò)的應(yīng)用要求。
千兆防火墻的兩種技術(shù)實(shí)現(xiàn)
要實(shí)現(xiàn)真正的千兆防火墻,目前的技術(shù)途徑基本上有兩條:一種是采用網(wǎng)絡(luò)處理器,另一種是采用ASIC。下面我們來分析一下這兩種技術(shù)架構(gòu)各自的特點(diǎn)。
網(wǎng)絡(luò)處理器是專門為處理數(shù)據(jù)包而設(shè)計(jì)的可編程處理器,它的特點(diǎn)是內(nèi)含了多個(gè)數(shù)據(jù)處理引擎,這些引擎可以并發(fā)進(jìn)行數(shù)據(jù)處理工作,在處理2到4層的分組數(shù)據(jù)上比通用處理器具有明顯的優(yōu)勢(shì)。網(wǎng)絡(luò)處理器對(duì)數(shù)據(jù)包處理的一般性任務(wù)進(jìn)行了優(yōu)化,如TCP/IP數(shù)據(jù)的校驗(yàn)和計(jì)算、包分類、路由查找等。同時(shí)硬件體系結(jié)構(gòu)的設(shè)計(jì)也大多采用高速的接口技術(shù)和總線規(guī)范,具有較高的I/O能力。這樣基于網(wǎng)絡(luò)處理器的網(wǎng)絡(luò)設(shè)備的包處理能力得到了很大的提升。它具有以下幾個(gè)方面的特性:完全的可編程性、簡單的編程模式、最大化系統(tǒng)靈活性、高處理能力、高度功能集成、開放的編程接口、第三方支持能力?;诰W(wǎng)絡(luò)處理器架構(gòu)的防火墻與基于通用CPU架構(gòu)的防火墻相比,在性能上可以得到很大的提高。網(wǎng)絡(luò)處理器能彌補(bǔ)通用CPU架構(gòu)性能的不足,同時(shí)又不需要具備開發(fā)基于ASIC技術(shù)的防火墻所需要的大量資金和技術(shù)積累,最近在國內(nèi)信息安全廠商中備受關(guān)注,成為國內(nèi)廠商實(shí)現(xiàn)高端千兆防火墻的熱門選擇。
第二種方案是采用基于ASIC技術(shù)的架構(gòu)。Netscreen是采用該技術(shù)的代表廠家。采用ASIC技術(shù)可以為防火墻應(yīng)用設(shè)計(jì)專門的數(shù)據(jù)包處理流水線,優(yōu)化存儲(chǔ)器等資源的利用,是公認(rèn)的使防火墻達(dá)到線速千兆,滿足千兆環(huán)境骨干級(jí)應(yīng)用的技術(shù)方案。Netscreen公司也因此取得了令人矚目的成功。但ASIC技術(shù)開發(fā)成本高、開發(fā)周期長且難度大,一般的防火墻廠商難以具備相應(yīng)的技術(shù)和資金實(shí)力。
哪種方案更適合用戶應(yīng)用
網(wǎng)絡(luò)處理器與ASIC方案哪種更適合千兆防火墻的應(yīng)用是目前爭論的一個(gè)熱點(diǎn)。用戶可以從性能、靈活性、功能完備性、成本、開發(fā)難度、技術(shù)成熟性等方面來進(jìn)行比較。從性能上說,由于基于網(wǎng)絡(luò)處理器的防火墻本質(zhì)是基于軟件的解決方案,它在很大的程度上依賴于軟件設(shè)計(jì)的性能,而ASIC由于是將算法固化在硬件中,因而在性能上有比較明顯的優(yōu)勢(shì)。
目前國內(nèi)基于ASIC技術(shù)的首信防火墻已可達(dá)到4個(gè)千兆網(wǎng)口的全線速包轉(zhuǎn)發(fā)速率,而一般基于網(wǎng)絡(luò)處理器的防火墻在小包情況下還不能完全作到2網(wǎng)口的千兆線速轉(zhuǎn)發(fā)。反過來說,網(wǎng)絡(luò)處理器的軟件色彩使它具有更好的靈活性,在升級(jí)維護(hù)方面有較大的優(yōu)勢(shì)。純硬件的ASIC防火墻缺乏可編程性,這使得它缺乏靈活性從而跟不上防火墻功能的快速發(fā)展。
現(xiàn)代的ASIC技術(shù)通過增加ASIC芯片的可編程性,使其與軟件更好地配合,從而同時(shí)滿足來自靈活性和運(yùn)行性能的要求。從實(shí)現(xiàn)功能方面看,ASIC技術(shù)可以比較容易地集成IDS、VPN等功能,也有產(chǎn)品已經(jīng)實(shí)現(xiàn)了內(nèi)容過濾和防病毒功能,而網(wǎng)絡(luò)處理器受限于它的計(jì)算能力,這些功能一般只能靠協(xié)處理器來實(shí)現(xiàn)。從今后產(chǎn)品的成本上看,一片網(wǎng)絡(luò)處理器的價(jià)格在三、四百美金左右,如果需要協(xié)處理器,還要加上協(xié)處理器的成本。ASIC技術(shù)前期如果使用FPGA(Field Programmable Gate Arrays,現(xiàn)場(chǎng)可編程門陣列)來實(shí)現(xiàn),兩者價(jià)格大致相當(dāng)。不過如果量產(chǎn)投片以后,ASIC的價(jià)格可以降低一個(gè)量級(jí),因而長遠(yuǎn)來看ASIC技術(shù)更有潛力。
在開發(fā)難度、開發(fā)成本和開發(fā)周期方面,網(wǎng)絡(luò)處理器技術(shù)有比較明顯的優(yōu)勢(shì),畢竟網(wǎng)絡(luò)處理器產(chǎn)生的一大原因就是降低這方面的門檻,這也是國內(nèi)很多防火墻企業(yè)選中網(wǎng)絡(luò)處理器的原因。不過從技術(shù)成熟度方面來看,相比ASIC這樣已經(jīng)為實(shí)踐證明了的成熟技術(shù),網(wǎng)絡(luò)處理器用于防火墻其實(shí)是近一年多才出現(xiàn)的。在此之前網(wǎng)絡(luò)處理器在市場(chǎng)上的表現(xiàn)并不理想,一般只被用于低端路由器、交換機(jī)等數(shù)據(jù)通信產(chǎn)品。究其原因,主要是網(wǎng)絡(luò)處理器開發(fā)需要的編程技術(shù)比預(yù)期的復(fù)雜困難,而且在實(shí)際應(yīng)用中的性能往往并不理想,遠(yuǎn)低于其廠家的標(biāo)稱性能。這種技術(shù)應(yīng)用在防火墻這樣的復(fù)雜網(wǎng)絡(luò)設(shè)備上究竟能否在不影響功能的前提下達(dá)到預(yù)期的性能還有待檢驗(yàn)。
目前防火墻的體系結(jié)構(gòu)已經(jīng)處于一個(gè)更新?lián)Q代的門檻上,未來的發(fā)展趨勢(shì)基本上是網(wǎng)絡(luò)處理器與ASIC兩條道路。從性能、功能、技術(shù)成熟度方面考慮,ASIC方案較好,從進(jìn)入門檻、研發(fā)成本和靈活性考慮則網(wǎng)絡(luò)處理器占優(yōu)。
從目前的情況來看,國外的高端防火墻大部分采用的是ASIC技術(shù),國內(nèi)廠商則選用網(wǎng)路處理器的居多。今后高端防火墻的技術(shù)將是ASIC和網(wǎng)絡(luò)處理器這兩種主流技術(shù)并存,它們各自都會(huì)繼續(xù)向前發(fā)展,在速度、功能方面都還有很大的發(fā)展空間。究竟誰將成為最后的贏家,只能有待時(shí)間的檢驗(yàn)了。而用戶在選擇千兆防火墻產(chǎn)品時(shí)也要綜合考慮廠商實(shí)力、實(shí)際應(yīng)用需求、采購成本、防火墻技術(shù)與產(chǎn)品的成熟度等多種因素全盤考慮為宜。