簡介
本文檔介紹流量整形和流量管制之間的功能差異,兩者都限制了輸出速率。
必要條件
需求
本文件沒有特定需求。
採用元件
本文件所述內容不限於特定軟體和硬體版本。
本文中的資訊是根據特定實驗室環境內的裝置所建立。文中使用到的所有裝置皆從已清除(預設)的組態來啟動。如果您的網路運作中,請確保您瞭解任何指令可能造成的影響。
慣例
如需文件慣例的詳細資訊,請參閱思科技術提示慣例。
背景資訊
本文檔闡明了流量整形和策略管制之間的功能差異。這兩個功能都限制了流量輸出速率。兩種機制都使用令牌桶作為流量計量器來測量資料包速率。有關令牌桶的詳細資訊,請參閱什麼是令牌桶
管制與整形
流量管制會傳播突發流量。當流量速率達到配置的最大速率時,會丟棄(或重新標籤)多餘流量。結果是輸出速率顯示為具有頂部和槽的鋸齒。與管制相反,流量整形在隊列中保留超額資料包,然後排程超額資料包以隨著時間增加進行後續傳輸。流量整形的結果是平滑的資料包輸出速率。
下圖說明了兩個流量選項之間的主要區別。
管制與整形
整形意味著存在隊列和足夠的記憶體來緩衝延遲的資料包,而監察則不是。隊列是一個出站概念;離開介面的資料包將進入隊列,並可對其進行整形。只有策略可以應用於介面上的入站流量。啟用整形時,請確保有足夠的記憶體。此外,整形需要排程任何延遲資料包的後續傳輸的功能。此排程功能允許您將整形隊列組織到不同的隊列中。此功能的範例包括類別型加權公平 Queuing 值(CBWFQ)和低延遲 Queuing 值(LLQ)。
選取條件
下表列出了整形和管制之間的區別,以幫助您選擇適當的流量解決方案。
|
整形 |
管制 |
目標 |
將超額資料包緩衝並排隊,使其超過承諾速率。 |
丟棄(或註釋)超過承諾速率的超額資料包。不緩衝。* |
權杖重新整理速率 |
在時間間隔開始時遞增。(需要最小間隔數。) |
基於公式:1 /承諾資訊速率連續 |
記號值 |
配置單位為每秒位數。 |
以位元組為單位配置。 |
組態選項 |
- 模組化服務品質命令列介面(MQC)中的Shape命令可實現基於類的整形。
- Frame-relay traffic-shape命令可實現幀中繼流量整形(FRTS)。
- Traffic-shape命令可實現通用流量整形(GTS)。
|
- MQC中的police命令可實現基於類的策略。
- Rate-limit命令可實現承諾接入速率(CAR)。
|
適用於入站 |
否 |
是 |
適用於出站 |
是 |
是 |
突發 |
控制至少八個時間間隔內的突發和平滑輸出速率。使用漏斗來延遲流量,這可以達到平滑效果。 |
傳播突發。不進行平滑處理。 |
優點 |
由於緩衝了過量的資料包,因此不太可能丟棄過量的資料包。(以隊列長度來緩衝資料包。如果高速維持過多的流量,則可能發生丟棄。) 通常可避免因丟棄資料包而重新傳輸。 |
透過丟包控制輸出速率。避免由於 queuing而導致的延遲。 |
缺點 |
可能由於 queuing(尤其是深度隊列)而引入延遲。 |
丟棄多餘的資料包(配置時),限制TCP窗口大小,並降低受影響流量流的整體輸出速率。過大的突發量可能導致過多的丟包並限制整體輸出速率,尤其是對於基於TCP的流量。 |
可選資料包重標籤 |
否 |
是(具有傳統CAR功能)。 |
* 雖然策略不應用緩衝區,但已配置的機 queuing 制適用於需要排隊等待在物理介面上序列化的已配置資料包。
權杖重新整理速率
整形和策略管制之間的一個關鍵區別是令牌的補充速率。 整形和策略都使用令牌桶比喻。令牌桶本身沒有丟棄或優先順序策略。
使用令牌桶功能:
-
令牌以一定的速率放入桶中。
-
每個令牌都允許源向網路中傳送一定數量的位。
-
要傳送資料包,流量調節器必須能夠從桶中刪除表示資料包大小的多個令牌。
-
如果桶中沒有足夠的令牌來傳送資料包,資料包將一直等到桶中有足夠的令牌(在整形器的情況下),或者資料包被丟棄或降級(在監察器的情況下)。
-
時段本身具有指定產能。如果桶裝滿容量,則會丟棄到達的新令牌,未來資料包將無法使用該令牌。因此,在任何時候,源可以傳送到網路的最大突發量都與桶的大小成正比。令牌桶允許突發但限制突發量。
整形會以使用每秒位數(bps)值的定時間隔增加令牌桶。整形器使用下一個公式:
Tc = Bc/CIR (in seconds)
在此等式中,Bc代表承諾突發量,而CIR代表承諾資訊速率。(有關詳細資訊,請參閱配置幀中繼流量整形。) Tc的值定義了傳送Bc位的時間間隔,以保持CIR的平均速率(以秒為單位)。
Tc的範圍介於10 ms和125 ms之間。使用Cisco 7500系列上的分散式流量整形(DTS),最小Tc為4 ms。路由器根據CIR和Bc值在內部計算此值。如果Bc/CIR小於125毫秒,它將使用該等式計算的Tc。如果Bc/CIR大於或等於125毫秒,如果Cisco IOS®確定以更小間隔傳輸的資料流更穩定,它就會使用內部Tc值。使用show traffic-shape命令確定路由器是使用Tc的內部值還是使用在命令列配置的值。show traffic-shape命令的下一個示例輸出在幀中繼流量整形的show命令中進行了說明。
show traffic output
當超額突發量(Be)配置為0以外的值時,整形器允許令牌儲存在桶中,最大值為Bc + Be。令牌桶可以到達的最大值為Bc + Be,並且會丟棄溢位令牌。桶中擁有多個Bc令牌的唯一方法是在一個或多個Tc期間不使用所有Bc令牌。由於令牌桶每Tc都使用Bc令牌進行補充,因此您可以累積未使用的令牌供以後使用,最多可達Bc + Be。
相反,基於類的策略和速率會limiting 不斷向桶中增加令牌。具體而言,令牌到達率計算如下:
(time between packets<which is equal to t-t1>* policer rate)/8 bits per byte
換句話說,如果資料包的先前到達時間是t1,而當前時間是t,則基於令牌到達速率以t-t1位元組值更新時段。
注意:流量監察器使用以位元組為單位指定的突發值,並且先前的公式從位轉換為位元組。
以下示例使用8000 bps的CIR(或監察器速率)和1000位元組的正常突發:
Router(config)# policy-map police-setting
Router(config-pmap)# class access-match
Router(config-pmap-c)# police 8000 1000 conform-action transmit exceed-action drop
令牌桶從1000個位元組開始。如果450位元組的封包到達,則封包符合,因為記號桶中有足夠的可用位元組。資料包將採取符合操作(傳輸),並從令牌桶中刪除450位元組(並保留550位元組)。如果下一個資料包在0.25秒後到達,將根據下一個公式將250個位元組增加到令牌桶:
(0.25 * 8000)/8
計算在令牌桶中留下700個位元組。如果下一個資料包為800位元組,則資料包將超出並採取超出操作(丟棄)。不會從令牌桶中獲取任何位元組。
流量調節
Cisco® IOS支援以下流量整形方法:
所有流量整形方法在實現上都是相似的,儘管它們的命令列介面(CLI)有些不同,並且它們使用不同型別的隊列來包含和整形被延遲的流量。Cisco推薦使用模組化QoS CLI配置的基於類的整形和分散式整形。
下圖說明QoS策略如何將流量安排到類中,並將超過配置整形速率的資料包排入隊列。
流量管制
Cisco IOS支援流量管制的以下方法:
這兩種機制在功能上具有重要區別,比較基於類的策略和承諾接入速率。應用QoS策略時,思科建議使用基於類的策略以及模組化QoS CLI的其他功能。
使用police命令指定流量等級必須有一個強加的最大速率,如果超出該速率,必須立即採取行動。換句話說,在police命令下,不能選擇緩衝資料包後將其發出,而shape命令則可以這樣做。
此外,使用管制時,令牌桶可確定資料包是否超過或符合應用的速率。無論哪種情況,策略都會實施可配置的操作,包括IP優先順序或差分服務代碼點(DSCP)。
下圖說明了在通常應用QoS功能的擁塞點執行流量策略的常見應用。
最小與最大頻寬控制
shape 和police 命令都會將輸出速率限制為最大kbps值。重要的是,這兩種機制在擁塞期間都不提供最低頻寬保證。可以使用bandwidth 或priority命令提供這種保證。
分層策略使用兩個服務策略-父策略將QoS機制應用於流量聚合,子策略將QoS機制應用於聚合的流或子集。邏輯介面(如子介面和隧道介面)需要分層策略,在父級具有流量功limiting 能,在較低級別進行排隊。流量功limiting 能可降低輸出速率並(假設)造成擁塞,如過 queuing 量資料包所示。
下一個配置不是最理想的,目的是顯示在流量聚合(在此種情況下級別預設)到最大速率時, limiting police
與shape 命令之間的區別。在此配置中,police命令根據資料包的大小和符合及超額令牌桶中剩餘的位元組數量從子類中傳送資料包。(請參閱流量策略。) 其結果是,由於police功能會覆寫由priority功能所做的保證,因此無法保證為Voice over IP (VoIP)和Internet Protocol (IP)類別指定的速率。
然而,如果使用shape命令,則結果為分層隊列系統,並做出所有保證。換句話說,當提供的負載超過整形速率時,VoIP和IP類將保證它們的速率,並且類預設流量(在子級)將發生任何丟棄。
注意:建議不要使用此配置,並顯示此設定以說明在限制流量聚合時police和shape命令之間的區別。
class-map match-all IP
match ip precedence 3
class-map match-all VoIP
match ip precedence 5
policy-map child
class VoIP
priority 128
class IP
priority 1000
policy-map parent
class class-default
police 3300000 103000 103000 conform-action transmit exceed-action drop
service-policy child
為了讓先前的配置有意義,策略必須替換為整形。
舉例來說:
policy-map parent
class class-default
shape average 3300000 103000 0
service-policy child
注意:要瞭解有關父策略和子策略的更多資訊,請參閱優先順序類的QoS子服務策略。
相關資訊