qos在前提是有限的帶寬情況下(提升帶寬能夠直接有效的解決擁塞問(wèn)題,
但隨之而來(lái)會(huì)增加高額的成本),利用有保證的技術(shù)策略實(shí)現(xiàn)不同流量
獲得不同的優(yōu)先服務(wù)。
FIFO:(first in first out)先進(jìn)先出服務(wù)模式,是一種傳統(tǒng)的網(wǎng)絡(luò)設(shè)備
處理報(bào)文方式,依據(jù)報(bào)文到達(dá)時(shí)間的先后順序分配轉(zhuǎn)發(fā),所有報(bào)文共享
網(wǎng)絡(luò)和設(shè)備的帶寬資源,報(bào)文所獲得的資源多少與時(shí)機(jī)有關(guān);
FIFO盡最大努力將報(bào)文發(fā)送到目的地,但對(duì)報(bào)文的延遲、抖動(dòng)、丟包率
和可靠性不提供任何保證,故對(duì)語(yǔ)音和視頻流量的通信無(wú)法保證;
提升服務(wù)質(zhì)量從以下方面考慮:
1.提高帶寬;
2.降低抖動(dòng);
3.降低丟包率;
4.提高可靠性;
帶寬:鏈路的最大帶寬是根據(jù)該條鏈路上最小帶寬定義的;
即BWmax=鏈路上最小帶寬;(bandwidth帶寬)
時(shí)延是指報(bào)文從一段發(fā)送到另一端所需時(shí)間,ping包時(shí)延是雙向的;
單個(gè)網(wǎng)絡(luò)設(shè)備的時(shí)延包括傳輸時(shí)延、串行化時(shí)延、處理時(shí)延、隊(duì)列時(shí)延;
1.傳輸時(shí)延:一個(gè)數(shù)據(jù)位從發(fā)送方到達(dá)接收方所需要的時(shí)間。該時(shí)延取決于傳
輸距離和傳輸介質(zhì),與帶寬無(wú)關(guān)。
2.串行化時(shí)延:指發(fā)送節(jié)點(diǎn)在傳輸鏈路上開(kāi)始發(fā)送報(bào)文的第一個(gè)比特至發(fā)完該
報(bào)文的最后一個(gè)比特所需的時(shí)間。該時(shí)延取決于鏈路帶寬以及報(bào)文大小。
3.處理時(shí)延:指路由器把報(bào)文從入接口放到出接口隊(duì)列需要的時(shí)間。它的大小
跟路由器的處理性能有關(guān)。
4.隊(duì)列時(shí)延:指報(bào)文在隊(duì)列中等待的時(shí)間。它的大小跟隊(duì)列中報(bào)文的大小和數(shù)
量、帶寬以及隊(duì)列機(jī)制有關(guān)。
抖動(dòng):是指每個(gè)報(bào)文端到端時(shí)延不相等導(dǎo)致的,抖動(dòng)的大小與時(shí)延有著直接的
關(guān)系,時(shí)延小則抖動(dòng)小,時(shí)延大則抖動(dòng)大;
丟包率:是指網(wǎng)絡(luò)傳輸過(guò)程中丟包數(shù)量占報(bào)文總數(shù)量的百分比,丟包率可以用
來(lái)衡量網(wǎng)絡(luò)的可靠性;
丟包可能出現(xiàn)在傳輸過(guò)程當(dāng)中的任何一個(gè)環(huán)節(jié);
1.處理過(guò)程:cpu繁忙無(wú)法處理報(bào)文導(dǎo)致丟包;
2.排隊(duì)過(guò)程:報(bào)文調(diào)度到隊(duì)列中因隊(duì)列已裝滿從而導(dǎo)致丟包;
3.傳輸過(guò)程:報(bào)文在傳輸過(guò)程中可能因?yàn)殒溌饭收系仍驅(qū)е聛G包;
模型:
盡力而為服務(wù)模式:
可通過(guò)提高網(wǎng)絡(luò)帶寬或升級(jí)網(wǎng)絡(luò)設(shè)備從而提高網(wǎng)絡(luò)服務(wù)質(zhì)量;
1.提高網(wǎng)絡(luò)帶寬:
優(yōu)點(diǎn):可以改善帶寬瓶頸,串行化延遲、丟包的問(wèn)題;
缺點(diǎn):網(wǎng)絡(luò)建設(shè)成本高;
2.升級(jí)網(wǎng)絡(luò)設(shè)備:
優(yōu)點(diǎn):可以改善處理延遲、隊(duì)列延遲、丟包等問(wèn)題;
缺點(diǎn):成本較高,設(shè)備替換增大業(yè)務(wù)中斷風(fēng)險(xiǎn);
綜合服務(wù)模型:
通過(guò)運(yùn)行RSVP(源保留)協(xié)議來(lái)保障關(guān)鍵業(yè)務(wù)的通信質(zhì)量;
RSVP協(xié)議:在應(yīng)用程序發(fā)送報(bào)文前,向網(wǎng)絡(luò)中申請(qǐng)?zhí)囟ǖ膸捄退杼囟?/p>
服務(wù)質(zhì)量的需求,等收到確認(rèn)消息后才發(fā)送報(bào)文;
優(yōu)點(diǎn):可以為某些特定業(yè)務(wù)提供帶寬、延遲保證;
缺點(diǎn):實(shí)現(xiàn)較為復(fù)雜;所有設(shè)備均需要支持RSVP協(xié)議,且該協(xié)議在相鄰節(jié)點(diǎn)
間周期發(fā)送,即使無(wú)流量發(fā)送,仍會(huì)獨(dú)占帶寬,會(huì)導(dǎo)致帶寬利用率低;
該服務(wù)模式在現(xiàn)行網(wǎng)絡(luò)當(dāng)中并不多見(jiàn);
區(qū)分服務(wù)模型:(差分服務(wù)模型)
為了解決綜合服務(wù)模型的協(xié)議實(shí)現(xiàn)復(fù)雜性及帶寬利用率低等問(wèn)題,在網(wǎng)絡(luò)中可
通過(guò)部署diff'se'rv(different service)區(qū)分服務(wù)模型來(lái)實(shí)現(xiàn)關(guān)鍵業(yè)務(wù)的通信質(zhì)量;
1. 在網(wǎng)絡(luò)入口對(duì)報(bào)文進(jìn)行分類,完成對(duì)報(bào)文的標(biāo)記。
2.根據(jù)標(biāo)記,將其映射成本地對(duì)其定義的服務(wù)等級(jí)值。
3. 根據(jù)不同的服務(wù)等級(jí)值進(jìn)入相應(yīng)的緩存隊(duì)列,根據(jù)隊(duì)列間的調(diào)度機(jī)制,實(shí)現(xiàn)
不同的轉(zhuǎn)發(fā)服務(wù)。
Diffserv服務(wù)模型概述:
1.業(yè)務(wù)流分類和標(biāo)記由邊緣路由器來(lái)完成。邊界路由器可以通過(guò)多種條件
(比如報(bào)文的源地址和目的地址、ToS(路由域)域中的優(yōu)先級(jí)、協(xié)議類型等)
靈活地對(duì)報(bào)文進(jìn)行分類,然后對(duì)不同類型的報(bào)文設(shè)置不同的標(biāo)記字段,而
其他路由器只需要簡(jiǎn)單地識(shí)別報(bào)文中的這些標(biāo)記,然后對(duì)其進(jìn)行相應(yīng)的
資源分配和流量控制即可。因此,DiffServ是一種基于報(bào)文流的QoS模型。
它只包含有限數(shù)量的服務(wù)等級(jí),少量的狀態(tài)信息來(lái)提供無(wú)差別的流量控制
和轉(zhuǎn)發(fā)。
2.DS節(jié)點(diǎn):實(shí)現(xiàn)DiffServ功能的網(wǎng)絡(luò)節(jié)點(diǎn)稱為DS節(jié)點(diǎn)。
3.DS邊界節(jié)點(diǎn):負(fù)責(zé)連接另一個(gè)DS域或者連接一個(gè)沒(méi)有DS功能的域的節(jié)點(diǎn)。
4.DS邊界節(jié)點(diǎn)負(fù)責(zé)將進(jìn)入此DS域的業(yè)務(wù)流進(jìn)行分類和流量調(diào)整。
5.DS內(nèi)部節(jié)點(diǎn):用于在同一個(gè)DS域中連接DS邊界節(jié)點(diǎn)和其他內(nèi)部節(jié)點(diǎn)。
DS內(nèi)部節(jié)點(diǎn)僅需基于報(bào)文中的EXP、802.1p、IPP等字段值進(jìn)行簡(jiǎn)單的
流分類以及對(duì)相應(yīng)的流進(jìn)行流量控制。
6.DS域(DS Domain):一組采用相同的服務(wù)提供策略和實(shí)現(xiàn)了相同PHB
(Per Hop Behaviors 單跳行為)的相連DS節(jié)點(diǎn)組成。一個(gè)DS域由相同管
理部門的一個(gè)或多個(gè)網(wǎng)絡(luò)組成,如一個(gè)DS域可以是一個(gè)ISP,也可以是一個(gè)
企業(yè)的內(nèi)部網(wǎng)絡(luò)。
DiffServ模型充分考慮了IP網(wǎng)絡(luò)本身所具有的靈活性、可擴(kuò)展性強(qiáng)等特點(diǎn),
將復(fù)雜的服務(wù)質(zhì)量保證通過(guò)報(bào)文自身攜帶的信息轉(zhuǎn)換為單跳行為,從而大
大減少了信令的工作。該模型是目前應(yīng)用最廣的服務(wù)模型。
三種服務(wù)模型的對(duì)比:
1.盡力而為服務(wù)模型:
優(yōu)點(diǎn):實(shí)現(xiàn)機(jī)制簡(jiǎn)單;
缺點(diǎn):對(duì)不同業(yè)務(wù)流不能進(jìn)行區(qū)分對(duì)待;
2.綜合服務(wù)模型:
優(yōu)點(diǎn):可提供端到端QoS服務(wù),并保證帶寬、延遲;
缺點(diǎn):需要跟蹤和記錄每個(gè)數(shù)據(jù)流的狀態(tài),實(shí)現(xiàn)較復(fù)雜,且擴(kuò)展性較差,
帶寬利用率較低;
3.區(qū)分服務(wù)模型:
優(yōu)點(diǎn):不需要跟蹤每個(gè)數(shù)據(jù)流狀態(tài),資源占用少,擴(kuò)展性較強(qiáng);且能實(shí)現(xiàn)對(duì)
不同業(yè)務(wù)流提供不同的服務(wù)質(zhì)量;
缺點(diǎn):需要在端到端每個(gè)節(jié)點(diǎn)都進(jìn)行手工部署,對(duì)人員能力要求較高;
核心:提供差分服務(wù)
作用:對(duì)不同類型流量進(jìn)行分類和識(shí)別,以解決因網(wǎng)絡(luò)不斷發(fā)展而導(dǎo)致網(wǎng)絡(luò)
類型的不斷增加;
報(bào)文分類的必要性:
要實(shí)現(xiàn)差分服務(wù),進(jìn)入Diffserve(different service)域,按照一定的規(guī)則進(jìn)行
分類,根據(jù)不同的流量提供不同的服務(wù);
ACL訪問(wèn)控制列表是通過(guò)五元組進(jìn)行分類;
五元組:源、目的IP,協(xié)議號(hào),源、目的端口號(hào);
簡(jiǎn)單流分類:
QOS中是根據(jù)不同類型報(bào)文自身含有的標(biāo)識(shí)的qos優(yōu)先級(jí)值來(lái)實(shí)現(xiàn)的;
數(shù)據(jù)鏈路層:vlan幀中802.1Q域中的priority字段值來(lái)實(shí)現(xiàn)的,該字段
有3bit位,范圍為0~7,以大為優(yōu);
網(wǎng)絡(luò)層:
1.mpls報(bào)文中的label域中的exp字段值來(lái)實(shí)現(xiàn)的,該字段有3bit位,范圍
位0~7,以大為優(yōu);
2.IP報(bào)文中的TOS域中的ipp或dscp字段值來(lái)實(shí)現(xiàn)的,因ipp字段只有3bit位,
范圍位0~7,以大為優(yōu),不能滿足IP報(bào)文多樣的類型;故采用dscp字段,該
字段有6個(gè)bit位,范圍為0~63,以大為優(yōu);
同時(shí)dscp中含有如下字段:
CS、EF、AF、BE;
優(yōu)先級(jí)由高到低排序?yàn)椋海ǜ鶕?jù)dscp值,以大為優(yōu))
CS7>CS6>EF>AF4>AF3>AF2>AF1>BE;
AF中以AF1為例,丟包率由低到高分為:AF11<AF12<AF13;
復(fù)雜流分類:
針對(duì)簡(jiǎn)單流分類不夠精細(xì)的缺點(diǎn),提出了復(fù)雜流分類;
1.數(shù)據(jù)鏈路層復(fù)雜流分類:
匹配項(xiàng):vlan內(nèi)/外tag的802.1p、源/目的MAC地址;
以上匹配項(xiàng)可任意組合;
2.網(wǎng)絡(luò)層復(fù)雜流分類:
匹配項(xiàng):ipp、源/目的IPv4地址、TCP/UDP源端口號(hào)、TCP/UDP目的端口號(hào)
、協(xié)議號(hào);
以上匹配項(xiàng)可任意組合;
擁塞管理:
網(wǎng)絡(luò)中間歇出現(xiàn)擁塞,關(guān)鍵報(bào)文要求優(yōu)先轉(zhuǎn)發(fā),采用擁塞管理技術(shù),即采用隊(duì)列技術(shù)
及不同的調(diào)度算法來(lái)發(fā)送對(duì)列中的報(bào)文流;
擁塞避免:
當(dāng)某些突發(fā)的,非關(guān)鍵性的報(bào)文裝滿隊(duì)列,則后續(xù)發(fā)往該隊(duì)列的報(bào)文將會(huì)全部丟棄,此時(shí)
擁塞管理技術(shù)也不能達(dá)到理想的效果,需要配和擁塞避免技術(shù)來(lái)實(shí)現(xiàn);
設(shè)備性能常用pps,帶寬常用bps
pps=packet peer second
bps=bit peer second
擁塞管理通過(guò)隊(duì)列機(jī)制來(lái)實(shí)現(xiàn):
第一步:將準(zhǔn)備從一個(gè)接口發(fā)出的所有報(bào)文放入不同的緩存隊(duì)列中;
根據(jù)報(bào)文所攜帶標(biāo)記對(duì)應(yīng)的LP值與隊(duì)列索引號(hào)的對(duì)應(yīng)關(guān)系表,來(lái)實(shí)
現(xiàn)將不同的報(bào)文送入不同隊(duì)列。
LP(本地優(yōu)先級(jí),又稱為內(nèi)部?jī)?yōu)先級(jí)):優(yōu)先級(jí)映射實(shí)現(xiàn)從數(shù)據(jù)原
始攜帶的QoS優(yōu)先級(jí)到內(nèi)部?jī)?yōu)先級(jí)或從內(nèi)部?jī)?yōu)先級(jí)到QoS優(yōu)先級(jí)的映射。
對(duì)于進(jìn)入設(shè)備的報(bào)文,設(shè)備將報(bào)文攜帶的優(yōu)先級(jí)或者端口優(yōu)先級(jí)映射
為內(nèi)部?jī)?yōu)先級(jí),然后根據(jù)內(nèi)部?jī)?yōu)先級(jí)與隊(duì)列之間的映射關(guān)系確定報(bào)文進(jìn)入的隊(duì)列。
第二步:根據(jù)各隊(duì)列間的調(diào)度機(jī)制實(shí)現(xiàn)不同報(bào)文的差分轉(zhuǎn)發(fā);
1. 提供差分服務(wù)的核心就是擁塞發(fā)生時(shí)如何決定不同隊(duì)列報(bào)文
的轉(zhuǎn)發(fā)次序,這就用到了隊(duì)列的調(diào)度機(jī)制。
2. 常見(jiàn)的隊(duì)列調(diào)度算法包括:FIFO,PQ,WRR,WFQ,CBQ等。
不同調(diào)度算法的介紹:
1.FIFO(first in firist out 先進(jìn)先出):
優(yōu)點(diǎn):實(shí)現(xiàn)機(jī)制簡(jiǎn)單且處理速度快。
缺點(diǎn):不能有差別地對(duì)待優(yōu)先級(jí)不同的報(bào)文。
2.PQ(priority queuing優(yōu)先級(jí)隊(duì)列):
PQ調(diào)度算法將隊(duì)列分為四類:分別為top(高優(yōu)先級(jí)隊(duì)列),middle(中優(yōu)先級(jí)隊(duì)列),
normal(正常優(yōu)先級(jí)隊(duì)列),bottom(低優(yōu)先級(jí)隊(duì)列),出隊(duì)列時(shí)按照優(yōu)先級(jí)高低
進(jìn)行傳送,較低優(yōu)先級(jí)隊(duì)列等待高一級(jí)優(yōu)先級(jí)隊(duì)列處理完再進(jìn)行處理;
優(yōu)點(diǎn):對(duì)高優(yōu)先級(jí)的報(bào)文提供了優(yōu)先轉(zhuǎn)發(fā)。
缺點(diǎn):低優(yōu)先級(jí)隊(duì)列可能出現(xiàn)“餓死”現(xiàn)象。
3.WRR(weighted round robin加權(quán)循環(huán)調(diào)度):
在RR(循環(huán)調(diào)度)的基礎(chǔ)上演變而來(lái),即權(quán)重為1的WRR;按照隊(duì)列順序循環(huán)調(diào)度,
再根據(jù)權(quán)重值確定單一隊(duì)列調(diào)度傳送的報(bào)文個(gè)數(shù);
優(yōu)點(diǎn):避免了PQ調(diào)度的“餓死”現(xiàn)象。
缺點(diǎn):基于報(bào)文個(gè)數(shù)來(lái)調(diào)度,容易出現(xiàn)包長(zhǎng)尺寸不同的報(bào)文出現(xiàn)不平等
調(diào)度;低時(shí)延業(yè)務(wù)得不到及時(shí)調(diào)度。
4.WFQ(weighted fair queuing公平加權(quán)隊(duì)列):
1.WFQ對(duì)報(bào)文按流特征進(jìn)行分類,對(duì)于IP網(wǎng)絡(luò),相同源IP地址、目的IP地址、
源端口號(hào)、目的端口號(hào)、協(xié)議號(hào)、ToS的報(bào)文屬于同一個(gè)流,而對(duì)于MPLS網(wǎng)絡(luò),
具有相同的標(biāo)簽和EXP域值的報(bào)文屬于同一個(gè)流。每一個(gè)流被分配到一個(gè)隊(duì)列,
該過(guò)程稱為散列,采用HASH算法來(lái)自動(dòng)完成,這種方式會(huì)盡量將不同特征的流
分入不同的隊(duì)列中。WFQ允許的隊(duì)列數(shù)目是有限的,用戶可以根據(jù)需要配置該值。
在出隊(duì)的時(shí)候,WFQ按流的優(yōu)先級(jí)來(lái)分配每個(gè)流應(yīng)占有的出口帶寬。優(yōu)先級(jí)的數(shù)
值越小,所得的帶寬越少。優(yōu)先級(jí)的數(shù)值越大,所得的帶寬越多。這樣就保證了
相同優(yōu)先級(jí)業(yè)務(wù)之間的公平,體現(xiàn)了不同優(yōu)先級(jí)業(yè)務(wù)之間的權(quán)值。
2.WFQ優(yōu)點(diǎn)在于配置簡(jiǎn)單,但由于流是自動(dòng)分類,無(wú)法手工干預(yù),故缺乏一定的
靈活性;且受資源限制,當(dāng)多個(gè)流進(jìn)入同一個(gè)隊(duì)列時(shí)無(wú)法提供精確服務(wù),無(wú)法保
證每個(gè)流獲得的實(shí)際資源量。WFQ均衡各個(gè)流的延遲與抖動(dòng),同樣也不適合延遲
敏感的業(yè)務(wù)應(yīng)用。
優(yōu)點(diǎn):可完全按照權(quán)重分配帶寬;自動(dòng)分類,配置簡(jiǎn)單。
缺點(diǎn):低時(shí)延業(yè)務(wù)仍得不到及時(shí)調(diào)度;無(wú)法實(shí)現(xiàn)用戶自定義分類規(guī)則。
5.PQ+WFQ(優(yōu)先級(jí)隊(duì)列+公平加權(quán)隊(duì)列):
PQ+WFQ調(diào)度過(guò)程:
如圖,在進(jìn)行調(diào)度時(shí),首先按照PQ方式優(yōu)先調(diào)度Queue7、Queue6和Queue5
隊(duì)列中的報(bào)文流,只有這些隊(duì)列中的報(bào)文流全部調(diào)度完畢后,才開(kāi)始以WFQ方式
調(diào)度Queue4、Queue3、Queue2、Queue1和Queue0隊(duì)列中的報(bào)文流。其中,
Queue4、Queue3、Queue2、Queue1和Queue0隊(duì)列包含自己的權(quán)值。
重要的協(xié)議報(bào)文以及有低時(shí)延需求的業(yè)務(wù)報(bào)文應(yīng)放入PQ調(diào)度隊(duì)列中,得到優(yōu)先調(diào)
度的機(jī)會(huì),其他報(bào)文則可放入以WFQ方式調(diào)度的各隊(duì)列中。
PQ+WFQ優(yōu)缺點(diǎn):
其集合了PQ調(diào)度和WFQ調(diào)度各自的優(yōu)缺點(diǎn)。單純采用PQ調(diào)度時(shí),低優(yōu)先級(jí)隊(duì)列中
的報(bào)文流可能會(huì)長(zhǎng)期得不到帶寬,而單純采用WFQ調(diào)度時(shí),低延時(shí)需求業(yè)務(wù)可能得
不到及時(shí)調(diào)度,而如果將兩種調(diào)度方式結(jié)合起來(lái)形成PQ+WFQ調(diào)度方式,其不僅能
發(fā)揮兩種調(diào)度的優(yōu)勢(shì),而且能互補(bǔ)一些各自特有的缺點(diǎn)。
優(yōu)點(diǎn):可保證低時(shí)延業(yè)務(wù)得到及時(shí)調(diào)度;實(shí)現(xiàn)按權(quán)重分配帶寬等。
缺點(diǎn):無(wú)法實(shí)現(xiàn)根據(jù)用戶自定義靈活分類報(bào)文的需求。
CBQ(class-based queuing基于類的加權(quán)公平隊(duì)列):
CBQ是對(duì)WFQ的擴(kuò)展,為用戶提供了自定義類的支持;
CBQ首先根據(jù)IP優(yōu)先級(jí)或者DSCP優(yōu)先級(jí)、入接口、IP報(bào)文的五元組等規(guī)則
來(lái)對(duì)報(bào)文進(jìn)行分類,然后讓不同類別的報(bào)文進(jìn)入不同的隊(duì)列。對(duì)于不匹配任
何類別的報(bào)文,會(huì)送入系統(tǒng)定義的缺省類。
CBQ提供了三類隊(duì)列:EF、AF、BE(EF>AF>BE);
EF隊(duì)列:滿足低時(shí)延業(yè)務(wù)。
EF隊(duì)列擁有絕對(duì)優(yōu)先級(jí),僅當(dāng)EF隊(duì)列中的報(bào)文調(diào)度完畢后,才會(huì)調(diào)度其他隊(duì)
列中的報(bào)文。
AF隊(duì)列:滿足需要帶寬保證的關(guān)鍵數(shù)據(jù)業(yè)務(wù)。
每個(gè)AF隊(duì)列分別對(duì)應(yīng)一類報(bào)文,用戶可以設(shè)定每類報(bào)文占用的帶寬。當(dāng)系統(tǒng)
調(diào)度報(bào)文出隊(duì)的時(shí)候,會(huì)按用戶為各類報(bào)文設(shè)定的帶寬將報(bào)文進(jìn)行出隊(duì)發(fā)送,
可實(shí)現(xiàn)各個(gè)類的隊(duì)列的公平調(diào)度。
BE隊(duì)列:滿足不需要嚴(yán)格QoS保證的盡力發(fā)送業(yè)務(wù)。
當(dāng)報(bào)文不匹配用戶設(shè)定的所有類別時(shí),報(bào)文會(huì)被送入系統(tǒng)定義的缺省BE
(Best Effort,盡力傳送)類。BE隊(duì)列使用接口剩余帶寬和WFQ調(diào)度方式進(jìn)行發(fā)送。
優(yōu)點(diǎn):提供了自定義類的支持;可為不同的業(yè)務(wù)定義不同的調(diào)度策略。
缺點(diǎn):由于涉及到復(fù)雜的流分類,故啟用CBQ會(huì)耗費(fèi)一定的系統(tǒng)資源。
隊(duì)列算法的優(yōu)缺點(diǎn)比較:
類型 優(yōu)點(diǎn) 缺點(diǎn)
FIFO 實(shí)現(xiàn)簡(jiǎn)單,處理速度快 不能有差別地對(duì)待優(yōu)先級(jí)不同的報(bào)文
PQ 低延遲業(yè)務(wù)能得到保障 低優(yōu)先級(jí)隊(duì)列可能出現(xiàn)“餓死”現(xiàn)象
WRR 避免了低優(yōu)先級(jí)隊(duì)列的 不平等調(diào)度;低時(shí)延業(yè)務(wù)得不到保障
“餓死”現(xiàn)象
WFQ 按權(quán)重實(shí)現(xiàn)公平調(diào)度; 低時(shí)延業(yè)務(wù)得不到保障;無(wú)法支持自定義類
自動(dòng)分類,配置簡(jiǎn)單
PQ+WFQ 低時(shí)延業(yè)務(wù)能得到保障; 無(wú)法支持自定義類
按權(quán)重實(shí)現(xiàn)公平調(diào)度等
CBQ 支持自定義類 耗費(fèi)較多的系統(tǒng)資源
報(bào)文隊(duì)列被裝滿后的傳統(tǒng)處理方式為尾丟棄:
尾丟棄:由于每個(gè)隊(duì)列長(zhǎng)度有限,當(dāng)某一隊(duì)列已經(jīng)被裝滿時(shí),傳統(tǒng)的處理方法會(huì)將
后續(xù)向該隊(duì)列發(fā)送的報(bào)文全部丟棄,直至擁塞解除,這種處理方式稱為尾丟棄(Tail Drop)。
尾丟棄的缺點(diǎn):
1.引發(fā)TCP全局同步;
TCP全局同步:對(duì)于TCP報(bào)文,如果大量的報(bào)文被丟棄,將造成TCP超時(shí),從而引發(fā)TCP
慢啟動(dòng),使得TCP減少報(bào)文的發(fā)送。當(dāng)隊(duì)列同時(shí)丟棄多個(gè)TCP連接的報(bào)文時(shí),將造成多
個(gè)TCP連接同時(shí)進(jìn)入擁塞避免和慢啟動(dòng)狀態(tài)以調(diào)整并降低流量,這就被稱為TCP全局
同步現(xiàn)象。這樣多個(gè)TCP連接發(fā)往隊(duì)列的報(bào)文將同時(shí)減少,而后又會(huì)在某個(gè)時(shí)間同時(shí)
出現(xiàn)流量高峰,如此反復(fù),使網(wǎng)絡(luò)資源利用率低。
解決辦法:RED(Random Early Detection早期隨機(jī)檢測(cè)):
為避免TCP全局同步,可在隊(duì)列未裝滿時(shí)先隨機(jī)丟棄一部分報(bào)文。通過(guò)預(yù)先降低一部分
TCP連接的傳輸速率來(lái)盡可能延緩TCP全局同步的到來(lái)。這種預(yù)先隨機(jī)丟棄報(bào)文的行為
被稱為早期隨機(jī)檢測(cè)(RED);
RED通過(guò)隨機(jī)地丟棄數(shù)據(jù)報(bào)文,讓多個(gè)TCP連接不同時(shí)降低發(fā)送速度,從而避免了TCP
的全局同步現(xiàn)象。使TCP速率及網(wǎng)絡(luò)流量都趨于穩(wěn)定。
RED為每個(gè)隊(duì)列的長(zhǎng)度都設(shè)定了閾值門限,并規(guī)定:
1.當(dāng)隊(duì)列的長(zhǎng)度小于低門限時(shí),不丟棄報(bào)文。
2.當(dāng)隊(duì)列的長(zhǎng)度大于高門限時(shí),丟棄所有收到的報(bào)文。
3.當(dāng)隊(duì)列的長(zhǎng)度在低門限和高門限之間時(shí),開(kāi)始隨機(jī)丟棄到來(lái)的報(bào)文。方法是為每個(gè)到來(lái)
的報(bào)文賦予一個(gè)隨機(jī)數(shù),并用該隨機(jī)數(shù)與當(dāng)前隊(duì)列的丟棄概率比較,如果大于丟棄概率
則報(bào)文被丟棄。隊(duì)列越長(zhǎng),報(bào)文被丟棄的概率越高。
2.引起TCP餓死現(xiàn)象:
導(dǎo)致原因:尾丟棄無(wú)法對(duì)流量進(jìn)行區(qū)分丟棄;
當(dāng)隊(duì)列裝滿時(shí),后續(xù)發(fā)往該隊(duì)列的大量TCP報(bào)文將進(jìn)行尾丟棄,并造成Window
Size減小,TCP流量整體減小,而UDP流量并不會(huì)減少,反而可能會(huì)占滿整個(gè)隊(duì)列,
造成TCP餓死現(xiàn)象。
3.無(wú)差別的丟棄:
導(dǎo)致原因:尾丟棄無(wú)法對(duì)流量進(jìn)行區(qū)分丟棄;
當(dāng)隊(duì)列裝滿時(shí),尾丟棄很可能導(dǎo)致大量非關(guān)鍵數(shù)據(jù)被轉(zhuǎn)發(fā),而大量關(guān)鍵數(shù)據(jù)被丟棄。
解決方法:WRED(Weighted Random Early Detection加權(quán)早期隨機(jī)檢測(cè)):
WRED技術(shù)可以通過(guò)對(duì)不同優(yōu)先級(jí)數(shù)據(jù)包或隊(duì)列設(shè)置相應(yīng)的丟棄策略,以實(shí)現(xiàn)對(duì)不
同流量進(jìn)行區(qū)分丟棄。
WRED可以彌補(bǔ)尾丟棄的三個(gè)缺點(diǎn),且大大提高了鏈路帶寬利用率。
基于RED技術(shù),又實(shí)現(xiàn)了WRED(Weighted Random Early Detection)技術(shù),可
實(shí)現(xiàn)每一種優(yōu)先級(jí)都能獨(dú)立設(shè)置報(bào)文的丟包的高門限、低門限及丟包率,報(bào)文到達(dá)低
門限時(shí),開(kāi)始丟包,到達(dá)高門限時(shí)丟棄所有的報(bào)文,隨著門限的增高,丟包率不斷增
加,最高丟包率不超過(guò)設(shè)置的最大丟包率,直至到達(dá)高門限,報(bào)文全部丟棄。這樣按
照一定的丟棄概率主動(dòng)丟棄隊(duì)列中的報(bào)文,從一定程度上避免了尾丟棄帶來(lái)的所有缺點(diǎn)。
流量監(jiān)管和流量整形就是一類通過(guò)對(duì)流量規(guī)格的監(jiān)督來(lái)限制流量及其資源使用的流控策略。
流量監(jiān)管技術(shù):
1.流量監(jiān)管功能可對(duì)接收或發(fā)送的流量進(jìn)行限速控制,限制進(jìn)入網(wǎng)絡(luò)的突發(fā)流量,為網(wǎng)絡(luò)提
供了基本的QoS功能。
2.流量監(jiān)管TP(Traffic Policing)的典型應(yīng)用是監(jiān)督進(jìn)入網(wǎng)絡(luò)的某一流量的規(guī)格,把它限制
在一個(gè)合理的范圍之內(nèi),并對(duì)超出部分的流量進(jìn)行“懲罰”,以保護(hù)網(wǎng)絡(luò)資源和運(yùn)營(yíng)商的利益。
3.流量監(jiān)管通常使用承諾訪問(wèn)速率CAR(Committed Access Rate)來(lái)限制某類報(bào)文的流量。
CIR(Committed Information Rate)承諾信息速率;
優(yōu)點(diǎn):可實(shí)現(xiàn)對(duì)不同類別的報(bào)文分別進(jìn)行限速。
缺點(diǎn):當(dāng)鏈路空閑時(shí),造成帶寬浪費(fèi);丟棄的流量可能要進(jìn)行重傳。
流量整形技術(shù):
1.流量整形TS(Traffic Shaping)的典型作用是限制流出某一網(wǎng)絡(luò)的某一連接的正常流量
與突發(fā)流量,使這類報(bào)文以比較均勻的速度向外發(fā)送,是一種主動(dòng)調(diào)整流量輸出速率的措
施,故只能對(duì) 輸出 的流量進(jìn)行速率控制。常用GTS(Generic Traffic Shaping通用流量
整形)技術(shù)來(lái)限制某類流量。
2.應(yīng)用場(chǎng)景:當(dāng)網(wǎng)絡(luò)中上下游的接口帶寬不匹配,尤其是上游接口的帶寬資源大于下游的帶
寬資源時(shí),容易在下游網(wǎng)絡(luò)形成擁塞。如果不希望下游網(wǎng)絡(luò)因?yàn)樯嫌伟l(fā)送數(shù)據(jù)流量過(guò)大造成
擁塞,可在上游的出接口配置流量整形,使上游發(fā)送的流量與下游接收的能力相匹配。報(bào)文
可以均勻向外發(fā)送,而且部分超出規(guī)格的報(bào)文不直接丟棄,而是進(jìn)行緩存,等待鏈路空閑的
時(shí)候再發(fā)送出去。
優(yōu)點(diǎn):可實(shí)現(xiàn)對(duì)不同報(bào)文分別進(jìn)行限速;緩沖機(jī)制可減少帶寬浪費(fèi),減少流量重傳。
缺點(diǎn):可能會(huì)增加延遲。
流量監(jiān)管和流量整形的比較:
限速類型 優(yōu)點(diǎn) 缺點(diǎn)
流量監(jiān)管 可實(shí)現(xiàn)對(duì)不同報(bào)文地限速及重標(biāo)記。 造成較高的丟包率;鏈路空閑時(shí)帶寬得
不到充分利用。
流量整形 較少丟棄報(bào)文,充分利用帶寬。 引入額外的時(shí)延和抖動(dòng),需要較多的設(shè)
備緩沖資源。