國家保密局網(wǎng)站>>保密科技

防火墻性能測試研究

2018年04月16日    來源:國家保密科技測評中心【字體: 打印

一、引言

防火墻是在被保護(hù)網(wǎng)絡(luò)和互聯(lián)網(wǎng)之間,或是在其他網(wǎng)絡(luò)之間限制訪問的一種或一系列部件,主要具有過濾網(wǎng)絡(luò)數(shù)據(jù)包、管理網(wǎng)絡(luò)訪問行為、封堵禁止訪問行為、記錄通過的信息內(nèi)容和活動(dòng)、對網(wǎng)絡(luò)攻擊進(jìn)行檢測和告警等基本功能。防火墻作為網(wǎng)絡(luò)安全保護(hù)的第一道屏障,直接影響著網(wǎng)絡(luò)的正常應(yīng)用。

二、防火墻性能測試指標(biāo)

建立一套科學(xué)合理的測試指標(biāo)是保證測試有效進(jìn)行的必要前提。一般來說,選取的測試指標(biāo)應(yīng)具備以下特征。代表性:所選指標(biāo)在體現(xiàn)網(wǎng)絡(luò)設(shè)備特征方面應(yīng)具有代表性?蓤(zhí)行性:所選取指標(biāo)在測試時(shí)應(yīng)便于執(zhí)行?蓪Ρ刃裕核x取指標(biāo)應(yīng)使不同設(shè)備的測試結(jié)果可進(jìn)行對比。完整性:所選取指標(biāo)應(yīng)能完全反映設(shè)備的性能狀況。

網(wǎng)絡(luò)互聯(lián)設(shè)備基準(zhǔn)方法(RFC2544)中定義了4個(gè)網(wǎng)絡(luò)設(shè)備的性能指標(biāo):吞吐量、延遲、丟包率和背靠背。防火墻性能基準(zhǔn)方法

(RFC3511)中則定義了10個(gè)網(wǎng)絡(luò)設(shè)備的性能指標(biāo):IP吞吐率、傳輸控制協(xié)議(TCP)并發(fā)連接數(shù)、最大TCP連接建立速率、最大TCP連接拆除速率、抗攻擊能力、HTTP傳輸速率、最大HTTP處理速率、異常流量處理、IP分片處理及延遲。GB/T20281-2015《信息安全技術(shù)防火墻技術(shù)要求和測試評價(jià)方法》中則對防火墻規(guī)定了4個(gè)性能指標(biāo):吞吐量、延遲、最大并發(fā)連接數(shù)和最大新建連接速率。

為建立一套科學(xué)合理的測試指標(biāo)體系,本文綜合以上標(biāo)準(zhǔn)要求并結(jié)合測試經(jīng)驗(yàn),在進(jìn)行實(shí)際防火墻測試時(shí),主要考慮6個(gè)性能指標(biāo):吞吐量、延遲、丟包率、背靠背、最大并發(fā)連接數(shù)和最大新建連接速率。吞吐量:在沒有數(shù)據(jù)幀丟失的情況下,設(shè)備能接受的最大包轉(zhuǎn)發(fā)速率。延遲:數(shù)據(jù)幀最后一位的末尾達(dá)到防火墻內(nèi)部網(wǎng)絡(luò)輸入端口,至數(shù)據(jù)幀第一位的首部到達(dá)防火墻外部網(wǎng)絡(luò)輸出端口之間的時(shí)間間隔。丟包率:在連續(xù)負(fù)載的情況下,防火墻由于資源不足,應(yīng)轉(zhuǎn)發(fā)但卻未轉(zhuǎn)發(fā)的幀百分比。背靠背:從空閑狀態(tài)開始,以達(dá)到傳輸設(shè)備最小合法間隔極限的傳輸速率發(fā)送相當(dāng)數(shù)量的固定長度的幀,當(dāng)出現(xiàn)第一個(gè)幀丟失時(shí),發(fā)送的幀數(shù)。最大并發(fā)連接數(shù):防火墻能保持的最大TCP連接數(shù)。最大新建連接速率:防火墻在單位時(shí)間內(nèi)所建立的最大TCP連接數(shù)。

三、防火墻性能測試方法

防火墻性能是硬件和軟件的綜合表現(xiàn),硬件的設(shè)計(jì)和配置直接影響設(shè)備的性能。在相同硬件配置條件下,高效的算法和優(yōu)化的管理軟件也能大大提高防火墻性能。

測試指標(biāo)會(huì)針對每個(gè)性能提供多個(gè)測試用例,在執(zhí)行性能測試用例過程中,主要涉及測試環(huán)境的搭建和性能測試工具參數(shù)的設(shè)置,而參數(shù)的設(shè)置將直接影響測試結(jié)果的準(zhǔn)確性和公正性。防火墻性能測試中的主要測試儀表包括:Spirent公司的性能分析儀(TestCenter)、Avalanche和IXIA公司的Ixload等。

(一)吞吐量。作為衡量防火墻性能的重要指標(biāo)之一,吞吐量小會(huì)造成網(wǎng)絡(luò)的瓶頸,從而影響整個(gè)網(wǎng)絡(luò)的性能。性能測試儀測定的是被測設(shè)備在不丟包的情況下,正常轉(zhuǎn)發(fā)的最大吞吐量。一般選端口的理論最大值(如100%),通過二分算法得出最終不丟包的情況下的最大吞吐量。延長測試時(shí)間和選取不同幀長的數(shù)據(jù)包等方法可提高吞吐量性能測試結(jié)果的精確度。但測試時(shí)間的延長及選取不同幀長的數(shù)據(jù)包又將大幅增加測試時(shí)間。所以綜合考慮,根據(jù)RFC2544的要求,每一輪數(shù)據(jù)包的發(fā)送時(shí)間為120秒。此外,不同幀長的數(shù)據(jù)包吞吐量的差別很大,這是因?yàn)橥粠捪,幀長與數(shù)據(jù)包數(shù)成反比,幀長越小,包數(shù)越大,防火墻對包的處理耗費(fèi)時(shí)間就越多,從而導(dǎo)致吞吐量下降,反之亦然。根據(jù)RFC2544的要求,測試時(shí)的幀長一般選取為64字節(jié)、128字節(jié)、256字節(jié)、512字節(jié)、1280字節(jié)、1518字節(jié)。

(二)延遲。延遲能力將體現(xiàn)防火墻的數(shù)據(jù)處理速度。一般延遲是通過按一個(gè)固定的持續(xù)時(shí)間發(fā)送幀,每一秒會(huì)有一個(gè)打了時(shí)間戳T1的幀被傳輸出去,當(dāng)測試儀收到這個(gè)幀時(shí),將完成傳輸時(shí)的時(shí)間與幀攜帶的時(shí)間戳T2的比較,從而計(jì)算出延時(shí)值為T2-T1?紤]時(shí)鐘同步問題,一般將發(fā)出的幀環(huán)回到發(fā)送方進(jìn)行比較。延遲測試是建立在吞吐量指標(biāo)測試的基礎(chǔ)上,首先要進(jìn)行吞吐量測試,然后根據(jù)吞吐量的測試結(jié)果向設(shè)備發(fā)送對應(yīng)每個(gè)幀長吞吐量的數(shù)據(jù)包。

(三)丟包率。丟包率對防火墻的穩(wěn)定性、可靠性有很大影響。一般測試時(shí)按初始速率開始發(fā)送幀,記錄收到的幀數(shù)量,如果被測設(shè)備不能完全轉(zhuǎn)發(fā),會(huì)降低一點(diǎn)速率再次發(fā)送,測試會(huì)一直持續(xù)到防火墻可完全轉(zhuǎn)發(fā)為止,最后的結(jié)果會(huì)顯示出各種幀長度的幀丟失情況。丟包率測試是通過發(fā)送端向防火墻發(fā)送一定數(shù)量的測試幀,幀數(shù)計(jì)為A;接收端在收到數(shù)據(jù)包后對其進(jìn)行統(tǒng)計(jì),得出成功轉(zhuǎn)發(fā)的數(shù)據(jù)幀個(gè)數(shù)為B;則可得丟包率為B/A×100%。

(四)背靠背。該指標(biāo)能體現(xiàn)出被測防火墻的緩沖能力。通過向被測設(shè)備連續(xù)發(fā)送具有最小幀間隔的N個(gè)幀,并統(tǒng)計(jì)被測設(shè)備轉(zhuǎn)發(fā)幀的個(gè)數(shù)。如果發(fā)送幀的個(gè)數(shù)和轉(zhuǎn)發(fā)幀的個(gè)數(shù)相等,則增加N值,再重復(fù)上述測試過程。

(五)最大并發(fā)連接數(shù)。主要用來測試被測防火墻建立和維持TCP連接的性能。利用性能測試儀測試最大并發(fā)連接數(shù)時(shí),在服務(wù)器上設(shè)定一定大小的時(shí)延,使服務(wù)器和客戶端一直保持聯(lián)接狀態(tài),然后使客戶端和服務(wù)器快速建立大量聯(lián)接,直到設(shè)備達(dá)到最大承受的連接數(shù)。

(六)最大新建連接速率。主要用來衡量單位時(shí)間內(nèi)防火墻建立和維持TCP連接的能力。利用性能測試儀測試每秒新建聯(lián)接時(shí),客戶端向服務(wù)器發(fā)起建立聯(lián)接并請求一個(gè)設(shè)定好的網(wǎng)頁,收到請求的網(wǎng)頁立即關(guān)閉聯(lián)接,不斷提高建立聯(lián)接的速率,直到設(shè)備中有聯(lián)接沒有成功建立為止。

四、防火墻性能測試的考慮因素

筆者通過性能測試儀進(jìn)行的是一種模擬測試,希望盡可能逼近現(xiàn)實(shí)網(wǎng)絡(luò)環(huán)境,這里真實(shí)的環(huán)境可以是防火墻的使用場景,也可以是防火墻中的流量內(nèi)容。防火墻各個(gè)性能指標(biāo)值之間是強(qiáng)關(guān)聯(lián),但按照RFC測試?yán)碚,測試某一個(gè)性能指標(biāo)時(shí),應(yīng)盡量排除其他指標(biāo)的影響,實(shí)際測試的是這個(gè)指標(biāo)的最優(yōu)值。在實(shí)際應(yīng)用中,往往對各種指標(biāo)進(jìn)行綜合考慮,但在實(shí)驗(yàn)室環(huán)境中,會(huì)受到一些因素的限制。

(一)性能設(shè)置的各個(gè)參數(shù)都是強(qiáng)關(guān)聯(lián)的,并將影響結(jié)果的準(zhǔn)確性。筆者在進(jìn)行TCP連接性能測試時(shí),沒有考慮并發(fā)連接數(shù)對新建數(shù)產(chǎn)生的影響,同樣對新建數(shù)進(jìn)行測試時(shí),也沒有考慮并發(fā)連接數(shù)對其的影響。實(shí)際上,防火墻在某一時(shí)間內(nèi)運(yùn)行TCP連接時(shí),可能存在3種情況:正在建立聯(lián)接、正在傳輸數(shù)據(jù)、正在關(guān)閉聯(lián)接。測試并沒有考慮這樣復(fù)雜的情況,性能測試儀所創(chuàng)建的測試流量模型是不斷地建立聯(lián)接,再傳輸數(shù)據(jù),而后依次關(guān)閉聯(lián)接,失去了一定的真實(shí)性。

(二)用戶在實(shí)際上網(wǎng)時(shí)會(huì)考慮認(rèn)證時(shí)間、接入速度、網(wǎng)頁聯(lián)接時(shí)間等,而這些因素往往在性能測試中被忽略。

(三)在相同網(wǎng)絡(luò)環(huán)境背景下,防火墻一些功能的開啟將會(huì)對其性能產(chǎn)生影響:網(wǎng)絡(luò)地址轉(zhuǎn)換(NAT)是將防火墻的源地址、目的地址及端口進(jìn)行轉(zhuǎn)換,從而隱藏受保護(hù)的網(wǎng)絡(luò)真實(shí)地址。防火墻的性能應(yīng)考慮最真實(shí)性能,因此要求防護(hù)功能全部開啟,才能更真實(shí)地體現(xiàn)防火墻的性能。

(四)在實(shí)際網(wǎng)絡(luò)流量中,混合加密的SSL流越來越普遍,防火墻應(yīng)能迅速截獲SSL數(shù)據(jù)流并進(jìn)行解密。在性能測試時(shí),加載一定加密流量也是應(yīng)該考量的一部分。

(五)性能優(yōu)良的防火墻能不僅阻攔來自外部的惡意攻擊,還能使內(nèi)部網(wǎng)絡(luò)與外界正常通信,對外提供服務(wù)。因此,應(yīng)考慮防火墻在正常聯(lián)接情況下的防攻擊能力,在正常流量中增加各種攻擊流量也是對真實(shí)環(huán)境的考量。

防火墻的性能逐漸成為衡量防火墻的一個(gè)重要指標(biāo),隨著測試設(shè)備的升級、測試標(biāo)準(zhǔn)的更新及測試手法的多樣化,防火墻性能測試也在不斷接近真實(shí)的網(wǎng)絡(luò)環(huán)境。因此,只有在測試前對相關(guān)因素進(jìn)行嚴(yán)格分析、統(tǒng)一檢測方法標(biāo)準(zhǔn),才能對防火墻進(jìn)行科學(xué)、合理、公正的測試。

 

(原載于《保密科學(xué)技術(shù)》雜志2017年8月刊)