1、優先級的映射: 算法
配置802.1p優先級到本地優先級映射表,將802.1p優先級3、4、5對應的本地優先級配置爲2、6、4。保證訪問服務器的優先級爲研發部門(6)>管理部門(4)>市場部門(2)。數據庫
[Router] qos map-table dot1p-lp緩存
[Router-maptbl-dot1p-lp] import 3 export 2服務器
[Router-maptbl-dot1p-lp] import 4 export 6網絡
[Router-maptbl-dot1p-lp] import 5 export 4app
[Router-maptbl-dot1p-lp] quittcp
配置重標記ide
將本地優先級6、2重標記爲2、3,本地優先級4保持不變。保證訪問Internet的優先級爲管理部門(4)>市場部門(3)>研發部門(2)。ui
[Router] traffic classifier H3CAspa
[Router-classifier-rd] if-match local-precedence 6
[Router-classifier-rd] quit
[Router] traffic classifier H3CB
[Router-classifier-market] if-match local-precedence 2
[Router-classifier-market] quit
[Router] traffic behavior H3CA
[Router-behavior-rd] remark local-precedence 2
[Router-behavior-rd] quit
[Router] traffic behavior H3CB
[Router-behavior-market] remark local-precedence 3
[Router-behavior-market] quit
[Router] qos policy CCIE
[Router-qospolicy-policy1] classifier H3CA behavior H3CA
[Router-qospolicy-policy1] classifier H3CB behavior H3CB
[Router-qospolicy-policy1] quit
[Router] interface gigabitethernet 2/1/4
[Router-GigabitEthernet2/1/4] qos apply policy CCIE outbound
2、流量監管和流量×××:
1. 令牌桶的特色
令牌桶能夠看做是一個存放必定數量令牌的容器。系統按設定的速度向桶中放置令牌,當桶中令牌滿時,多出的令牌溢出,桶中令牌再也不增長
2. 用令牌桶評估流量
在用令牌桶評估流量規格時,是以令牌桶中的令牌數量是否足夠知足報文的轉發爲依據的。若是桶中存在足夠的令牌能夠用來轉發報文,稱流量遵照或符合這個規格,不然稱爲不符合或超標
評估流量時令牌桶的參數包括:
(1)平均速率:向桶中放置令牌的速率,即容許的流的平均速度。一般配置爲CIR。
(2)突發尺寸:令牌桶的容量,即每次突發所容許的最大的流量尺寸。一般配置爲CBS,突發尺寸必須大於最大報文長度。
每到達一個報文就進行一次評估。每次評估,若是桶中有足夠的令牌可供使用,則說明流量控制在容許的範圍內,此時要從桶中取走知足報文的轉發的令牌;不然說明已經耗費太多令牌,流量超標了。
3. 複雜評估
爲了評估更復雜的狀況,實施更靈活的調控策略,能夠配置兩個令牌桶(分別稱爲C桶和E桶)。例如流量監管中有四個參數:
(1)CIR:表示向C桶中投放令牌的速率,即C桶容許傳輸或轉發報文的平均速率;
(2)CBS:表示C桶的容量,即C桶瞬間可以經過的承諾突發流量;
(3)PIR:表示向E桶中投放令牌的速率,即E桶容許傳輸或轉發報文的最大速率;
(4)EBS:表示E桶的容量,即E桶瞬間可以經過的超出突發流量。
CBS和EBS是由兩個不一樣的令牌桶承載的。每次評估時,依據下面的狀況,能夠分別實施不一樣的流控策略:
(1)若是C桶有足夠的令牌,報文被標記爲green,即綠色報文;
(2)若是C桶令牌不足,但E桶有足夠的令牌,報文被標記爲yellow,即×××報文;
(3)若是C桶和E桶都沒有足夠的令牌,報文被標記爲red,即紅色報文
注意:
流量×××與流量監管的主要區別在於流量×××對流量監管中須要丟棄的報文進行緩存——一般是將它們放入緩衝區或隊列內,當令牌桶有足夠的令牌時,再均勻的向外發送這些被緩存的報文。流量×××可能會增長延遲,而流量監管幾乎不引入額外的延遲
實驗要求:(拓撲見QQ收藏)
· 設備Router A經過接口GigabitEthernet2/1/2【g0/0】和設備Router B的接口 g2/1/0【g0/0】互連
· Server、Host A、Host B可經由Router A和Router B訪問Internet
· Server、Host A與Router A的GigabitEthernet2/1/0接口在同一網段
· Host B與Router A的GigabitEthernet2/1/1接口在同一網段
要求在設備Router A上對接口GigabitEthernet0/0接收到的源自Server和Host A的報文流分別實施流量控制以下:
· 來自Server的報文流量約束爲54kbps,流量小於54kbps時能夠正常發送,流量超過54kbps時則將 違規報文的優先級設置爲0後進行發送;
· 來自Host A的報文流量約束爲8kbps,流量小於8kbps時能夠正常發送,流量超過8kbps時則丟棄違 規報文;
對設備Router B的GigabitEthernet0/0和s1/0接口收發報文有以下要求:
· Router B的GigabitEthernet0/0接口接收報文的總流量限制爲500kbps,若是超過流量限制則將 違規報文丟棄;
· 經由Router B的s1/0接口進入Internet的報文流量限制爲1000kbps,若是超過 流量限制則將違規報文丟棄。
配置:
router A:
[router A]int g0/0
[router A-GigabitEthernet0/0]qos gts any cir 500
[router A-GigabitEthernet0/0]quit (對發送的報文進行×××,下降router B的丟包率)
[router A]acl basic 2000
[router A-acl-ipv4-basic-2000]rule permit source 1.1.1.1 0
[router A-acl-ipv4-basic-2000]quit
[router A]acl basic 2001
[router A-acl-ipv4-basic-2001]rule permit source 1.1.1.2 0
[router A-acl-ipv4-basic-2001]quit (匹配流量)
[router A]int g0/1
[router A-GigabitEthernet0/1]qos car inbound acl 2001 cir 8 cbs 4000 ebs 0 green pass red discard (丟棄)
[router A-GigabitEthernet0/1]qos car inbound acl 2000 cir 54 cbs 4000 ebs 0 green pass red remark-prec-pass 0 (優先級下降爲0)
router B:
[router B]int g0/0
[router B-GigabitEthernet0/0]qos car inbound any cir 500 cbs 40000 ebs 0 green pass red discard
[router B-GigabitEthernet0/0]quit (超過500k流量丟棄)
[router B]int s1/0
[router B-Serial1/0]qos car outbound any cir 1000 cbs 60000 ebs 0 green pass red discard
[router B-Serial1/0]quit (進入internet的流量超過1000k丟棄)
3、接口限速:
實驗要求:
對接口g0/0接收到的報文流進行限速:對HostA~HostZ(源地址屬於IP地址段2.1.1.1~2.1.1.100)進行IP限速,逐IP地址流量限速5kbps,網段內各IP地址的流量共享剩餘帶寬
[S1-if-range]qos lr outbound cir 1000 出接口限速1M/S
配置:
[router]qos carl 1 source-ip-address range 2.1.1.1 to 2.1.1.100 per-address shared-bandwidth
[router]int g0/0
[router-GigabitEthernet0/0]qos car inbound carl 1 cir 500 cbs 20000 ebs 0 green pass red discard
4、擁塞管理:
擁塞有可能會引起一系列的負面影響:
(1)擁塞增長了報文傳輸的延遲和抖動,可能會引發報文重傳,從而致使更多的擁塞產生。
(2)擁塞使網絡的有效吞吐率下降,形成網絡資源的利用率下降。
(3)擁塞加重會耗費大量的網絡資源(特別是存儲資源),不合理的資源分配甚至可能致使系統陷入資源死鎖而崩潰。
處理擁塞的幾種隊列:
1.FIFO隊列:(先進先出)
FIFO按照時間到達的前後決定分組的轉發次序,先進的先出,後進的後出,不須要進行流分類和隊列調度,FIFO關心的只是隊列的長度,隊列的長度對延遲和丟包率的影響
注意:若是設備的每一個端口只有一個基於FIFO的輸入或輸出隊列,那麼惡性的應用可能會佔用全部的網絡資源,嚴重影響關鍵業務數據的傳送
2.WFQ隊列:(加權公平隊列)
WFQ使高優先權的報文得到優先調度的機會多於低優先權的報文。WFQ可以按流的「會話」信息(協議類型、源和目的TCP或UDP端口號、源和目的IP地址、ToS域中的優先級位等)自動進行流分類,而且儘量多地提供隊列,以將每一個流均勻地放入不一樣隊列中,從而在整體上均衡各個流的延遲。在出隊的時候,WFQ按流的優先級來分配每一個流應占有出口的帶寬。優先級的數值越小,所得的帶寬越少。優先級的數值越大,所得的帶寬越多。
例如:接口中當前共有5個流,它們的優先級分別爲0、一、二、三、4,則帶寬總配額爲全部(流的優先級+1)的和,即1+2+3+4+5=15。
每一個流所佔帶寬比例爲:(本身的優先級數+1)/(全部(流的優先級+1)的和)。即每一個流可得的帶寬分別爲:1/15,2/15,3/15,4/15,5/15
3.CBQ隊列
CBQ是對WFQ的一個擴張,它提供了一下隊列
(1)緊急隊列:CBQ提供一個緊急隊列,緊急報文入該隊列,該隊列採用FIFO調度,沒有帶寬限制
(2)LLQ:即EF隊列。若是CBQ加權公平對待全部類的隊列,實時業務報文(包括語音與視頻業務,對延遲比較敏感)就可能得不到及時發送。爲此引入一個EF隊列,爲實時業務報文提供嚴格優先發送服務。LLQ將嚴格優先隊列機制與CBQ結合起來使用,用戶在定義類時能夠指定其享受嚴格優先服務,這樣的類稱做優先類。全部優先類的報文將進入同一個優先隊列,在入隊列以前需對各種報文進行帶寬限制的檢查。報文出隊列時,將首先發送優先隊列中的報文,直到發送完後才發送其餘類對應的隊列的報文。爲了避免讓其餘隊列中的報文延遲時間過長,在使用LLQ時將會爲每一個優先類指定可用最大帶寬,該帶寬值用於擁塞發生時監管流量。若是擁塞未發生,優先類容許使用超過度配的帶寬。若是擁塞發生,優先類超過度配帶寬的數據包將被丟棄。最多支持64個EF隊列
(3)BQ:即AF隊列。爲AF業務提供嚴格、精確的帶寬保證,而且保證各種AF業務之間按必定的比例關係進行隊列調度。最多支持64個AF隊列
(4)缺省隊列:一個WFQ隊列,用來支撐BE業務,使用接口剩餘帶寬進行發送
系統在爲報文匹配規則時,規則以下:
(1)先匹配優先類,而後再匹配其餘類;
(2)對多個優先類,按照配置順序逐一匹配;
(3)對其餘類,也是按照配置順序逐一匹配;
(4)對類中多個規則,按照配置順序逐一匹配。
隊列的配置:
實驗要求:
(1)Router C發出的數據流根據IP報文的DSCP域分爲3類,要求配置QoS策略,對於DSCP域爲AF11和AF21的流進行確保轉發(AF),最小帶寬爲5%;
(2)對於DSCP域爲EF的流進行加速轉發(EF),最大帶寬爲30%。
在進行配置以前,應保證:
(3)Router C發出的流可以經過Router A和Router B可達Router D。
(4)報文的DSCP域在進入Router A以前已經設置完畢。
命令:
[router A]traffic classifier AF11
[router A-classifier-AF11]if-match dscp af11
[router A-classifier-AF11]quit
[router A]traffic classifier AF21
[router A-classifier-AF21]if-match dscp af21
[router A-classifier-AF21]quit
[router A]traffic classifier EF
[router A-classifier-EF]if-match dscp ef
[router A-classifier-EF]quit
[router A]traffic behavior AF11
[router A-behavior-AF11]queue af bandwidth pct 5
[router A-behavior-AF11]quit
[router A]traffic behavior AF21
[router A-behavior-AF21]queue af bandwidth pct 5
[router A-behavior-AF21]quit
[router A]traffic behavior EF
[router A-behavior-EF]queue ef bandwidth pct 30
[router A-behavior-EF]quit
[router A]qos policy H3C
[router A-qospolicy-H3C]classifier AF11 behavior AF11
[router A-qospolicy-H3C]classifier AF21 behavior AF21
[router A-qospolicy-H3C]classifier EF behavior EF
[router A-qospolicy-H3C]quit
[router A]int g0/1
[router A-GigabitEthernet0/1]ip add 1.1.1.1 24
[router A-GigabitEthernet0/1]un sh
[router A-GigabitEthernet0/1]qos apply policy H3C outbound
[router A-GigabitEthernet0/1]quit
5、擁塞避免:
在RED類算法中,爲每一個隊列都設定上限和下限,對隊列中的報文進行以下處理:
(1)當隊列的長度小於下限時,不丟棄報文;
(2)當隊列的長度超過上限時,丟棄全部到來的報文;
(3)當隊列的長度在上限和下限之間時,開始隨機丟棄到來的報文。隊列越長,丟棄機率越高,但有一個最大丟棄機率。
注意:直接採用隊列的長度和上限、下限比較並進行丟棄,將會對突發性的數據流形成不公正的待遇,不利於數據流的傳輸。
WRED採用平均隊列和設置的隊列上限、下限比較來肯定丟棄的機率。隊列平均長度既反映了隊列的變化趨勢,又對隊列長度的突發變化不敏感,避免了對突發性數據流的不公正待遇。當隊列機制採用WFQ時,能夠爲不一樣優先級的報文設定計算隊列平均長度時的指數、上限、下限、丟棄機率,從而對不一樣優先級的報文提供不一樣的丟棄特性。當隊列機制採用FIFO時,能夠爲每一個隊列設定計算隊列平均長度時的指數、上限、下限、丟棄機率,爲不一樣類別的報文提供不一樣的丟棄特性。
配置:
[router A]int g0/0
[router A-GigabitEthernet0/0]qos wfq 配置接口模式爲WFQ
[router A-GigabitEthernet0/0]qos wred ip-precedence enable (開啓基於優先級的WRED)
[router A-GigabitEthernet0/0]qos wred ip-precedence 3 low-limit 20 high-limit 40 discard-probability 15 (上限40,下限20,,丟棄機率分母15)
[router A-GigabitEthernet0/0]qos wred weighting-constant 6 (指數爲6)
查看:[router A]dis qos wred interface
6、流量過濾:
[router B]acl advanced 3000
[router B-acl-ipv4-adv-3000]rule permit tcp source-port neq 21 (匹配源端口不等於21數據)
[router B-acl-ipv4-adv-3000]quit
[router B]traffic classifier H3C
[router B-classifier-H3C]if-match acl 3000
[router B-classifier-H3C]quit
[router B]traffic behavior H3C
[router B-behavior-H3C]filter deny
[router B-behavior-H3C]quit
[router B]qos policy H3C
[router B-qospolicy-H3C]classifier H3C behavior H3C
[router B-qospolicy-H3C]quit
[router B]int g0/0
[router B-GigabitEthernet0/0]qos apply policy H3C inbound
7、重標記:
實驗要求:
經過配置重標記功能,Router上實現以下需求:
(1)優先處理Host A和Host B訪問數據庫服務器的報文;
(2)其次處理Host A和Host B訪問郵件服務器的報文;
(3)最後處理Host A和Host B訪問文件服務器的報文
配置:
[router B]acl advanced 3000
[router B-acl-ipv4-adv-3000]rule permit ip destination 192.168.0.1 0
[router B-acl-ipv4-adv-3000]quit
[router B]acl advanced 3001
[router B-acl-ipv4-adv-3001]ru permit ip destination 192.168.0.2 0
[router B-acl-ipv4-adv-3001]quit
[router B]acl advanced 3002
[router B-acl-ipv4-adv-3002]ru permit ip destination 192.168.0.3 0
[router B-acl-ipv4-adv-3002]quit
[router B]traffic classifier DaTa
[router B-classifier-DaTa]if-match acl 3000
[router B-classifier-DaTa]quit
[router B]traffic classifier Mail
[router B-classifier-Mail]if-match acl 3001
[router B-classifier-Mail]quit
[router B]traffic classifier File
[router B-classifier-File]if-match acl 3002
[router B-classifier-File]quit
[router B]traffic behavior DaTa
[router B-behavior-DaTa]remark local-precedence 4
[router B-behavior-DaTa]quit
[router B]traffic behavior Mail
[router B-behavior-Mail]remark local-precedence 3
[router B-behavior-Mail]quit
[router B]traffic behavior File
[router B-behavior-File]remark local-precedence 2
[router B-behavior-File]quit
[router B]qos policy H3C
[router B-qospolicy-H3C]classifier DaTa behavior DaTa
[router B-qospolicy-H3C]classifier Mail behavior Mail
[router B-qospolicy-H3C]classifier File behavior File
[router B-qospolicy-H3C]quit
[router B]int g0/0
[router B-GigabitEthernet0/0]qos apply policy H3C inbound
8、重定向:
實驗要求:
有兩個源網段地址分別爲2.2.2.0/24、3.3.3.0/24的報文都從g0/0接口進入設備,要求作重定向功能,使得這兩個網段的報文分別轉發至g0/1接口和g0/2接口
配置:
[router B]acl basic 2000
[router B-acl-ipv4-basic-2000]ru permit source 2.2.2.0 0.0.0.255
[router B-acl-ipv4-basic-2000]quit
[router B]acl basic 2001
[router B-acl-ipv4-basic-2001]rule permit source 3.3.3.0 0.0.0.255
[router B-acl-ipv4-basic-2001]quit
[router B]traffic classifier A
[router B-classifier-A]if-match acl 2000
[router B-classifier-A]quit
[router B]traffic classifier B
[router B-classifier-B]if-match acl 2001
[router B-classifier-B]quit
[router B]traffic behavior A
[router B-behavior-A]redirect interface g0/1
[router B]traffic behavior B
[router B-behavior-B]redirect interface g02
[router B]qos policy H3C
[router B-qospolicy-H3C]classifier A behavior A
[router B-qospolicy-H3C]classifier B behavior B
[router B-qospolicy-H3C]quit
[router B]int g0/0
[router B-GigabitEthernet0/2]qos apply policy H3C inbound