承諾存取速率(CAR)是一種速率限制功能,可用於提供分類和管制服務。CAR可用於根據某些標準(例如使用訪問清單的IP地址和埠值)對資料包進行分類。可以定義符合速率限制值並超過此值的資料包的操作。有關如何配置CAR的詳細資訊,請參閱配置承諾訪問速率。
本檔案將說明show interface x/x rate-limit命令的輸出在conformed bps值小於已設定的承諾資訊速率(CIR)時為什麼會顯示非零超出bps值。
本文件沒有特定需求。
本文件所述內容不限於特定軟體和硬體版本。
如需文件慣例的詳細資訊,請參閱思科技術提示慣例。
在以下三種情況下,您可以在此命令的輸出中看到非零超額比率:
突發值設定得太低,無法提供足夠的吞吐率。例如,請參閱Cisco錯誤ID CSCdw42923(僅限註冊客戶)。
已解決Cisco IOS®軟體中的雙重記賬問題
Cisco IOS中的軟體錯誤
請檢視虛擬訪問介面的示例輸出。在此配置中,RADIUS用於為動態建立的虛擬接入介面分配速率限制。
AV Pair from Radius Cisco-AVPair = "lcp:interface-config#1=rate-limit input 256000 7500 7500 conform-action continue exceed-action drop", Cisco-AVPair = "lcp:interface-config#2=rate-limit output 512000 7500 7500 conform-action continue exceed-action drop",
使用show interface x rate-limit命令以監控思科舊版監察器CAR的效能。在本例中,此命令的輸出提供有關為什麼存在非零超出bps的提示。當前突發值為7392位元組,而由限制值指示的承諾突發量(Bc)值設定為7500位元組。
router#show interfaces virtual-access 26 rate-limit Virtual-Access26 Cable Customers Input matches: all traffic params: 256000 bps, 7500 limit, 7500 extended limit conformed 2248 packets, 257557 bytes; action: continue exceeded 35 packets, 22392 bytes; action: drop last packet: 156ms ago, current burst: 0 bytes last cleared 00:02:49 ago, conformed 12000 bps, exceeded 1000 bps Output matches: all traffic params: 512000 bps, 7500 limit, 7500 extended limit conformed 3338 packets, 4115194 bytes; action: continue exceeded 565 packets, 797648 bytes; action: drop last packet: 188ms ago, current burst: 7392 bytes last cleared 00:02:49 ago, conformed 194000 bps, exceeded 37000 bps
當您配置基於類的思科的CAR或更新策略器時,您必須配置足夠高的突發值,以確保預期的吞吐量,並確保策略器僅丟棄資料包以懲罰短期擁塞。
選擇突發值時,必須適應隊列大小的瞬時增加。您不能簡單地假設資料包同時到達和離開。您也不能假定隊列從空變為一個資料包,並且根據一致的一進/一出到達時間,隊列保持在一個資料包。如果典型流量具有相當的突發性,那麼突發值需要相應地變大,以允許鏈路利用率保持在可接受的較高水準。如果突發大小太小或最小閾值太低,則可能導致鏈路利用率低得不可接受。
突發可以簡單地定義為一系列背對背的MTU大小的幀,例如來自乙太網路的1500位元組幀。當此類幀的突發到達輸出介面時,它可能超出輸出緩衝區,並瞬間超過令牌桶的配置深度。通過使用令牌計量系統,策略器對到達的包是否符合、超過或違反配置的策略值做出二進位制決定。對於突發流量(例如FTP流),這些資料包的即時到達率可能超過配置的突發值,並導致CAR丟棄。
此外,擁塞期間的整體吞吐量隨監察器評估的流量型別而變化。雖然TCP流量響應擁塞,但其它流量則不響應。無響應流的示例包括基於UDP的資料包和基於ICMP的資料包。
TCP基於帶重傳的正確認。TCP使用滑動視窗作為其肯定確認機制的一部分。滑動視窗協定可以更好地使用網路頻寬,因為它們允許傳送方在等待確認之前傳輸多個資料包。例如,在視窗大小為8的滑動視窗協定中,允許傳送方在收到確認之前傳輸8個資料包。如果增加視窗大小,網路空閒時間將大大減少。經過良好調整的滑動視窗協定使網路保持資料包完全飽和並保持高吞吐量。
由於終端並不知道網路的特定擁塞狀態,因此TCP作為一種協定設計在出現擁塞時,通過降低其傳輸速率來應對網路擁塞。具體來說,它使用兩種技術:
技術 | 說明 |
---|---|
乘性減少擁塞規避 | 丟失資料段(相當於TCP的資料包)時,將擁塞視窗減少一半。擁塞視窗是第二個值或視窗,用於限制傳送方在等待確認之前可以傳輸到網路的資料包數量。 |
緩慢啟動恢復 | 在新連線上啟動流量或在擁塞一段時間後增加流量時,以單個網段的大小啟動擁塞視窗,並在每次確認到達時增加一個網段。TCP將擁塞視窗初始化為1,傳送初始資料段並等待。當確認到達時,它將擁塞視窗增加到2,傳送兩個資料段並等待。如需更多詳細資訊,請參閱RFC 2001 。 |
當傳輸錯誤干擾資料、網路硬體發生故障或網路負載過重無法承受負載時,資料包可能會丟失或損壞。TCP假定丟失的資料包,或由於極端延遲未能在時間間隔內確認的資料包表示網路擁塞。
在每次分組到達時呼叫監察器的令牌桶計量系統。具體來說,一致速率和超過速率是基於以下簡單公式計算的:
(conformed bits since last clear counter)/(time in seconds elapsed since last clear counter)
由於該公式計算從上次清除計數器起一段時間內的速率,Cisco建議清除計數器以便監視當前速率。如果未清除計數器,則上面的公式速率實際上意味著show命令輸出顯示了一個在可能很長的週期內計算的平均值,並且這些值在確定當前速率時可能沒有意義。
在一段時間內,平均吞吐量應匹配配置的承諾資訊速率(CIR)。突發大小允許在給定時間達到最大突發持續時間。如果沒有流量或小於CIR的流量值,且令牌桶未滿,則非常大的突發量仍會限製為根據正常突發量和擴展突發量計算的特定大小。
此機制導致丟棄率
記下當前時間。
使用自上次資料包到達後持續累積的令牌數更新令牌桶。
累計的令牌總數不能超過maxtokens值。刪除多餘的令牌。
檢查資料包一致性。
使用管制也可以實現速率限制。這是一個配置示例,用於在使用基於類的策略的乙太網介面上提供速率限制。
class-map match-all rtp1 match ip rtp 2000 10 ! policy-map p3b class rtp1 police 200000 6250 6250 conform-action transmit exceed-action drop violate-action drop policy-map p2 class rtp1 police 250000 7750 7750 conform-action transmit exceed-action drop violate-action drop ! interface Ethernet3/0 service-policy output p3b service-policy input p2
show policy-map interface命令的輸出示例正確說明了所提供的速率和丟棄速率以及一致和超過bps速率的計算和同步值。
router#show policy-map interface ethernet 3/0 Ethernet3/0 Service-policy input: p2 Class-map: rtp1 (match-all) 88325 packets, 11040625 bytes 30 second offered rate 400000 bps, drop rate 150000 bps Match: ip rtp 2000 10 police: 250000 bps, 7750 limit, 7750 extended limit conformed 55204 packets, 6900500 bytes; action: transmit exceeded 33122 packets, 4140250 bytes; action: drop conformed 250000 bps, exceed 150000 bps violate 0 bps Service-policy : p3b Class-map: rtp1 (match-all) 88325 packets, 11040625 bytes 30 second offered rate 400000 bps, drop rate 50000 bps Match: ip rtp 2000 10 police: 200000 bps, 6250 limit, 6250 extended limit conformed 44163 packets, 5520375 bytes; action: transmit exceeded 11041 packets, 1380125 bytes; action: drop conformed 200000 bps, exceed 50000 bps violate 0 bps Class-map: class-default (match-any) 0 packets, 0 bytes 30 second offered rate 0 bps, drop rate 0 bps Match: any
此表列出show policy-map或show interface rate-limit命令中顯示的計數器的已解決問題。已登入的註冊客戶可在Bug Search Tool中檢視錯誤資訊。
症狀 | 已解決的錯誤ID和解決方法 |
---|---|
低於預期的丟棄計數器 |
|
使預期丟棄率和吞吐量加倍 |
|
無捨棄或捨棄率 | 通常,當您應用基於類的QoS功能時,故障排除的第一步是確保QoS分類機制正常工作。換句話說,請確保在類對映的match語句中指定的資料包命中正確的類。 router#show policy-map interface ATM4/0.1 Service-policy input: drop-inbound-http-hacks (1061) Class-map: http-hacks (match-any) (1063/2) 149 packets, 18663 bytes 5 minute offered rate 2000 bps, drop rate 0 bps Match: protocol http url "*cmd.exe*" (1067) 145 packets, 18313 bytes 5 minute rate 2000 bps Match: protocol http url "*.ida*" (1071) 0 packets, 0 bytes 5 minute rate 0 bps Match: protocol http url "*root.exe*" (1075) 4 packets, 350 bytes 5 minute rate 0 bps Match: protocol http url "*readme.eml*" (1079) 0 packets, 0 bytes 5 minute rate 0 bps police: 1000000 bps, 31250 limit, 31250 extended limit conformed 0 packets, 0 bytes; action: drop exceeded 0 packets, 0 bytes; action: drop violated 0 packets, 0 bytes; action: drop conformed 0 bps, exceed 0 bps violate 0 bps
|
異常或不一致的丟包率 |
|
修訂 | 發佈日期 | 意見 |
---|---|---|
1.0 |
15-Feb-2019 |
初始版本 |