


下載本文檔
版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
1、防火墻帶寬控制技術(shù)的研究與實現(xiàn)(1) 摘要 隨著網(wǎng)絡(luò)應(yīng)用的不斷豐富,人們對網(wǎng)絡(luò)服務(wù)質(zhì)量提出了更高的要求,帶寬控制則日益受到人們的關(guān)注。本文深入研究了Linux系統(tǒng)下的帶寬控制工具TC,以及HTB隊列規(guī)定,針對防火墻中不同的應(yīng)用和服務(wù),實現(xiàn)了帶寬控制。 關(guān)鍵詞 QoS;TC;HTB;隊列;分類;過濾規(guī)則 1引言 隨著網(wǎng)絡(luò)多媒體技術(shù)的飛速發(fā)展,Internet上的多媒體應(yīng)用層出不窮,如IP電話、視頻會議、視頻點播(VOD)、遠程教育等多媒體實時業(yè)
2、務(wù);另外,電子商務(wù)作為一種新興的網(wǎng)絡(luò)經(jīng)濟模式日益受到人們的青睞。同時,在很多企業(yè)的局域網(wǎng)內(nèi)部,網(wǎng)絡(luò)應(yīng)用也極為豐富,如MIS系統(tǒng)、Web服務(wù)、郵件服務(wù),甚至還有數(shù)據(jù)流量較大的視頻點播等業(yè)務(wù)。面對網(wǎng)絡(luò)服務(wù)與應(yīng)用的不斷增長,人們對其質(zhì)量提出了更高的要求。 近年來,網(wǎng)絡(luò)帶寬不斷擴大,但是依然無法滿足網(wǎng)絡(luò)應(yīng)用的要求。為此,帶寬控制逐漸為人們所關(guān)注。一般說來,企業(yè)內(nèi)部網(wǎng)絡(luò)有足夠的帶寬可以使用。但是,企業(yè)接入Internet的帶寬是有限的。為了提高網(wǎng)絡(luò)帶寬的利用率,保證用戶關(guān)鍵性業(yè)務(wù)的正常運行,越來越多的企業(yè)和組織意識到了帶寬控制的重要性。
3、0; QoS,即質(zhì)量服務(wù),是網(wǎng)絡(luò)中的一種安全機制, 用來解決網(wǎng)絡(luò)延遲和阻塞等問題。帶寬控制是實現(xiàn)QoS的重要組成部分,它根據(jù)源/目的端口(服務(wù)類型)、源/目的地址等數(shù)據(jù)包的關(guān)鍵字段,對網(wǎng)絡(luò)帶寬進行分類,限制每個分類中數(shù)據(jù)包發(fā)送的速率,從而達到控制網(wǎng)絡(luò)流量,保障關(guān)鍵業(yè)務(wù)帶寬的目的。 防火墻是目前最有效、使用最廣泛的網(wǎng)絡(luò)安全產(chǎn)品,它處于網(wǎng)絡(luò)的邊界處,而這里也是實現(xiàn)帶寬控制最合適的位置。本文深入分析了Linux下的帶寬控制工具TC,并且結(jié)合最新的HTB隊列規(guī)定和iptables工具,給出了在防火墻上實現(xiàn)帶寬控制的具體實現(xiàn)。2Linux下的帶寬控制工具TC
4、; TC(Traffic Control),即帶寬控制,是Linux中功能強大的帶寬控制工具。通過TC,可以很方便地管理網(wǎng)絡(luò)帶寬,實現(xiàn)QoS。TC擁有數(shù)據(jù)包分類、優(yōu)先級設(shè)定、數(shù)據(jù)共享、輸入和輸出流量限制等多種功能。2.1 TC的結(jié)構(gòu) TC共分為三個模塊:隊列規(guī)定模塊、分類模塊和過濾模塊。它們之間的關(guān)系如圖1所示,隊列規(guī)定模塊是TC實現(xiàn)的基礎(chǔ),在這個模塊中封裝了其它兩個模塊。而分類和過濾規(guī)則是實現(xiàn)TC的主體。2.1.1 隊列 每一個網(wǎng)絡(luò)接口上都可以綁定一個隊列規(guī)定,用于控制經(jīng)過這個接口的數(shù)
5、據(jù)流。它把一條物理鏈路模擬成幾條更慢的鏈路或者把發(fā)出的不同類型的流量模擬成不同的連接。Linux內(nèi)核中支持的隊列規(guī)定有許多。有些是不可以分類的,如FIFO,pfifo-fast,red,sfq,tbf,另一些是可以分類的,如CBQ、HTB、優(yōu)先級隊列規(guī)定。其中,CBQ和HTB的功能最為豐富,它們可以為每個模擬鏈路設(shè)置優(yōu)先級,優(yōu)先級高的先發(fā)送;還可以實現(xiàn)鏈路共享,當一個分類上的帶寬空閑時可以借用給其它的分類;還有突發(fā)流量控制,速率限制等。如果一個接口上沒有綁定任何隊列,則使用默認的FIFO隊列。2.1.2 分類 在一個隊列上必須有一個主干分類,它擁有全部的帶寬
6、。在主干分類上可創(chuàng)建多個分類,每個分類可以再創(chuàng)建它們的子類,以此類推,但是每一個子類只能有一個父類。它們的主要作用是將數(shù)據(jù)流依據(jù)各種條件進行分類,便于對它們進行控制。針對各個不同的網(wǎng)絡(luò)接口可創(chuàng)建相同的分類,但是同一個接口上的分類不能相同。每個分類都分配了一定的帶寬值,屬于同一個父類的所有子類的帶寬總和不能超過父類的帶寬值。分類就好像是為數(shù)據(jù)包建立了幾條通道,而數(shù)據(jù)包的流向則由過濾規(guī)則來決定。2.1.3過濾規(guī)則 每一個分類可以設(shè)置一條或者多條過濾規(guī)則,每一條規(guī)則由兩部分組成:匹配和判決。匹配部分根據(jù)數(shù)據(jù)報的某些特征來區(qū)分數(shù)據(jù)報,如數(shù)據(jù)報的源IP地址、目地IP地
7、址,協(xié)議類型、TOS字節(jié)、網(wǎng)絡(luò)接口、端口等。如果沒有匹配到,就調(diào)用下一條過濾規(guī)則;如果匹配到了就通過判決部分來決定是將它丟棄、延遲還是傳入下層分類。目前,Linux可以使用的過濾器有:fwmark分類器,u32分類器,RSVP分類器等。其中,fwmark 分類器允許使用Linux netfilter代碼選擇流量,而u32分類器允許選擇基于ANY頭的流量。圖1隊列規(guī)定、分類和過濾模塊三者的關(guān)系2.2 TC的實現(xiàn)原理 TC將流經(jīng)網(wǎng)絡(luò)接口的數(shù)據(jù)放入一個隊列中,對它們進行分類,并根據(jù)過濾規(guī)則把數(shù)據(jù)包放入每個分類的分隊列中,通過控制每個分隊列數(shù)據(jù)包發(fā)送的速率來限制每個
8、分類的帶寬。 首先,TC在網(wǎng)絡(luò)接口處綁定一個隊列規(guī)定,并為這個隊列創(chuàng)建多個分類,如果需要,還可以為每個分類創(chuàng)建多個子分類,每個子分類都有一個數(shù)據(jù)包分隊列,它們形成了一個樹型的結(jié)構(gòu)(如圖1)。同屬一個父類的各個分類之間可以互相共享帶寬,當然在創(chuàng)建分類時也可以設(shè)置為不共享自己的帶寬。 其次,針對每個分類,設(shè)置一條或多條過濾規(guī)則與它相對應(yīng)。當數(shù)據(jù)包進入分類后,相應(yīng)的過濾規(guī)則根據(jù)數(shù)據(jù)包的各個字段或者標志位進行匹配,這些字段或者標志位中,有的是數(shù)據(jù)包創(chuàng)建的時候就有的,如源、目的端口,源、目的地址等;有些是在數(shù)據(jù)包進入系統(tǒng)時由ipta
9、bles命令設(shè)置的(用以區(qū)分不同的數(shù)據(jù)流),如mark值。當一個數(shù)據(jù)包被匹配后就會對它執(zhí)行相應(yīng)的判決,決定這個數(shù)據(jù)包是丟棄、延遲還是繼續(xù)流入下一層分類。 最后,所有沒有被丟棄,需要通過網(wǎng)絡(luò)接口發(fā)送的數(shù)據(jù)包都會被放入某個子類的分隊列中等待發(fā)送。TC按照不同的速率到每個隊列中取出數(shù)據(jù)包,交給網(wǎng)絡(luò)接口進行發(fā)送。每個分隊列都有它的優(yōu)先級,優(yōu)先級高(設(shè)置的數(shù)值低)的隊列先發(fā)送,當優(yōu)先級高的隊列中的數(shù)據(jù)包全部發(fā)送完畢后,再發(fā)送優(yōu)先級低的。也可以為分隊列設(shè)置其它排隊方法,防止優(yōu)先級高的隊列長期占用網(wǎng)絡(luò)接口。3帶寬控制在防火墻中的實現(xiàn)3.1 隊列的選擇
10、; 對于防火墻來說,選擇一個功能強大,適合具體應(yīng)用環(huán)境的隊列規(guī)定有助于提高系統(tǒng)實現(xiàn)帶寬控制的成功率和精確度。相對于其它的隊列規(guī)定,CBQ和HTB提供了分類、鏈路共享、限速等豐富的功能,是構(gòu)建帶寬控制模塊的首選隊列。 CBQ作為一個經(jīng)歷長久考驗的排隊算法,它功能強大,且較早地被Linux所支持,有許多成功的實例。CBQ隊列在內(nèi)核中依靠粗糙的計時信息來固定帶寬,雖然在一個較長的時間段內(nèi),可以維持很好的精度,但是在以秒為單位進行計量的時間段內(nèi),其結(jié)果就不準確了。CBQ是通過計算連接的空閑時間來限制帶寬的,如果要把某個應(yīng)用的帶寬限制為整個帶寬的10%,則
11、這個應(yīng)用的相關(guān)連接的空閑時間應(yīng)為90%。其空閑時間的計算標準是數(shù)據(jù)包離隊事件發(fā)生的頻率和下層連接(數(shù)據(jù)鏈路層)的帶寬。當一個連接長期處于空閑時,就會造成對空閑時間計算的偏差,導(dǎo)致帶寬限制失效。雖然CBQ中也可以通過設(shè)定某些參數(shù)(如maxidle,minburst等)來糾正這個問題,但是由于糾正參數(shù)不止一個,且每一個參數(shù)的改變都會影響到其它參數(shù),較為復(fù)雜。所以在這個問題上,CBQ始終無法很好地解決。 HTB是一個更好理解更容易掌握的可以快速替換CBQ隊列規(guī)定的隊列,它是CBQ的一個精簡改進版,繼承了CBQ的多項功能,去掉了一些復(fù)雜且不實用的部分。HTB可以實現(xiàn)帶寬分類、帶寬共享、設(shè)置優(yōu)先級、設(shè)定突發(fā)流量等功能。更重要的是,HTB改變了限制帶寬的方法。它通過限制每個分隊列上數(shù)據(jù)包的發(fā)送速率來限制每個分類的帶寬。提高了帶寬限制的精確度。對于每一個網(wǎng)絡(luò)接口來說,同一時刻只能發(fā)送一個數(shù)據(jù)包,所以網(wǎng)絡(luò)接口處數(shù)據(jù)包的發(fā)送速率是一定的。HTB隊列規(guī)定通過在一個固定
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
- 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 行政管理師證書考試的案例分析及試題答案
- 提升證券從業(yè)資格證考試口語表達能力的建議試題及答案
- 2025年注冊會計師考試的心理建設(shè)建議試題及答案
- 2025年銀行從業(yè)資格證考試分析推理試題及答案
- 就業(yè)課題申報書
- 項目風險評估與響應(yīng)的結(jié)合試題及答案
- 2025年銀行從業(yè)資格證考試分析工具試題及答案
- Module 3 Unit 2 Reading and vocabulary-教學(xué)設(shè)計 2023-2024學(xué)年外研版八年級英語下冊
- 律師給公司提供培訓(xùn)服務(wù)實操指引
- 小班幼兒綜合素質(zhì)提升方案計劃
- 寵物醫(yī)院安樂協(xié)議書范文模板
- 鄉(xiāng)村振興大數(shù)據(jù)基礎(chǔ)數(shù)據(jù)元與代碼集
- 五年級語文下冊期中復(fù)習課件
- 布置我們的家(課件)三年級下冊綜合實踐活動滬科黔科版
- 畢業(yè)論文(設(shè)計)多功能臺燈設(shè)計
- 三級動火安全技術(shù)措施方案
- 化工基礎(chǔ)知識題庫
- 前程無憂國企招聘筆試題庫
- 2024年廣東省汕尾市陸豐市第13屆“玉燕杯”小學(xué)數(shù)學(xué)六年級競賽試卷
- 名人-魏源-人物介紹
- “小小科學(xué)家”廣東省少年兒童科學(xué)教育體驗活動+生物試題4
評論
0/150
提交評論