本文件說明如何在思科路由器上,設定服務品質 (QoS) 組態的區別服務代碼點 (DSCP) 值。
您必須熟悉 IP 標頭和 Cisco IOS®CLI 的欄位。
本文件所述內容不限於特定軟體和硬體版本。
本文中的資訊是根據特定實驗室環境內的裝置所建立。文中使用到的所有裝置皆從已清除(預設)的組態來啟動。如果您的網路運作中,請確保您瞭解任何指令可能造成的影響。
如需文件慣例的詳細資訊,請參閱思科技術提示慣例。
區分服務(DiffServ)是一種架構,其中網路節點根據區分服務(DS)欄位應用區分的每跳處理。在RFC 2474和RFC 2475中定義,DiffServ標準取代原始規範,以定義RFC 791中所述的封包優先順序。RFC 2474將IPv4服務型別(ToS)八位元重新定義為DS欄位,並將其六個最重要的位指派給區分服務代碼點(DSCP)。
DiffServ架構定義DiffServ(DS)欄位,取代IPv4中的ToS欄位,就封包分類和流量調節功能(例如計量、標籤、整形和管制)作出每躍點行為(PHB)決策。
RFC並不規定實作PHB的方式;這是供應商的責任。思科實施排隊技術,可根據資料包的IP報頭中的IP優先順序或DSCP值來確定其PHB。根據 DSCP 或 IP 優先順序,流量可以放到特定服務類別中。服務類別中的封包也以相同方式處理。
附註:文中參考的一些方法和技術(包括承諾存取速率(CAR)、優先順序佇列(PQ)、自訂佇列(CQ)、介面型加權公平佇列(WFQ)、訊框中繼QoS和基於IP優先順序的分類)都視為現有Cisco平台的舊版。保留此內容以提供基本DSCP概念和歷史實施上下文。
對於當前部署,請檢視模組化QoS CLI(MQC)、基於類的策略、基於類的加權公平隊列(CBWFQ)、低延遲隊列(LLQ)和基於DSCP的WRED。在目標平台和軟體版本的配置指南中驗證功能可用性和命令語法。
DS欄位的六個最高有效位構成DSCP。RFC 2474最初將兩個最低有效位指定為當前未使用(CU),而RFC 3168將這些位定義為顯式擁塞通知(ECN)欄位。位於網路邊緣的路由器對資料包進行分類,並使用Diffserv網路中的IP Precedence或DSCP值標籤它們。核心中支援Diffserv的其他網路裝置使用IP報頭中的DSCP值為資料包選擇PHB行為並提供適當的QoS處理。
本節中的圖表顯示 RFC 791 定義的 ToS 位元組和 DiffServ 欄位的比較結果。
ToS 位元組
| P2 |
P1 |
P0 |
T2 |
T1 |
T0 |
CU1 |
CU0 |
延遲、吞吐量和可靠性-三位(T2至T0)
CU(當前未使用)-兩位(CU1-CU0)
DiffServ 欄位
| DS5 | DS4 | DS3 | DS2 | DS1 | DS0 | ECN | ECN |
|---|
ECN -兩位
封包的標準化DiffServ欄位會標有一個值,以便封包在每個網路節點上接受特定轉送處理或PHB。
預設DSCP為000 000,類選擇器DSCP是向後相容IP優先順序的值。在IP優先順序和DSCP之間進行轉換時,請匹配三個最高有效位。也就是:
IP Prec 5 (101) maps to IP DSCP 101 000
ToS 位元組
| 1 | 0 | 1 | T2 | T1 | T0 | CU2 | CU0 |
DiffServ 欄位
| 1 | 0 | 1 | 0 | 0 | 0 | ECN | ECN |
|---|
DiffServ 標準會對優先順序設定使用相同的優先位元(最高有效位元:DS5、DS4 和 DS3),但會進一步釐清定義,並透過使用 DSCP 中接下來的三個位元來提供更精細的粒度。DiffServ 會重新組織並重新命名優先層級(依然由 DSCP 的三個最高有效位元定義)為下列類別(本文件將進一步詳細說明相關層級):
| 優先層級 | 說明 |
|---|---|
| 7 |
保持不變(鏈路層和路由協定保持活動) |
| 6 |
保持不變(用於IP路由協定) |
| 5 |
快速轉送 (EF) |
| 4 |
第4類 |
| 3 |
第3類 |
| 2 |
類別 2 |
| 1 |
類別 1 |
| 0 |
盡力 |
在此系統中,裝置會先以類別決定流量的優先順序。接著,裝置會區分和優先處理相同類別的流量,並考慮捨棄可能性。
DiffServ標準沒有指定低、中、高丟棄概率的精確定義。並非所有裝置都能識別DiffServ(DS2和DS1)設定;即使識別了這些設定,它們也不一定會在每個網路節點觸發相同的PHB轉發操作。每個節點會根據設定實作個別的回應。
RFC 2597定義了保證轉發(AF)PHB,並將其描述為提供商DS域為從客戶端DS域接收的IP資料包提供不同級別的轉發保證的一種方法。保證轉發PHB可保證向AF類提供一定量的頻寬,並允許訪問額外的頻寬(如果可用)。共有四種 AF 類別,從 AF1x 到 AF4x。在每個類別中,有三種捨棄可能性。根據指定網路原則,能以所需的輸送量、延遲、抖動、損耗或存取網路服務的優先順序,來為 PHB 選取封包。
1到4類稱為AF類。此表說明了指定概率的AF類的DSCP代碼。位DS5、DS4和DS3定義了類;位DS2和DS1指定丟棄概率;位DS0始終為零。
| drop | 類別 1 | 類別 2 | 第3類 | 第4類 |
|---|---|---|---|---|
| 低 |
001010 AF11 DSCP 10 |
010010 AF21 DSCP 18 |
011010 AF31 DSCP 26 |
100010 AF41 DSCP 34 |
| 中 |
001100 AF12 DSCP 12 |
010100 AF 22 DSCP 20 |
011100 AF32 DSCP 28 |
100100 AF42 DSCP 36 |
| 高 |
001110 AF13 DSCP 14 |
010110 AF23 DSCP 22 |
011110 AF33 DSCP 30 |
100110 AF43 DSCP 38 |
RFC 3246(取代RFC 2598)定義加速轉送(EF)PHB。EF PHB可用於通過DS(Diffserv)域構建低丟失、低延遲、低抖動、保證頻寬的端到端服務。此服務對端點顯示,如點對點連線或虛擬租用線路。此服務也稱為高級服務。建議的EF代碼點為二進位制101110,它對應於DSCP 46。
同樣,必須配置特定於供應商的機制來實施這些PHB。有關EF PHB的詳細資訊,請參閱RFC 3246。
您共有三種使用 DSCP 欄位的方式:
分類器:根據資料包報頭某些部分的內容選擇資料包,並根據DSCP值定義的服務特性應用PHB。
標籤:根據流量配置檔案設定DSCP欄位。
Metering:使用整形器或滴管功能檢查流量量變曲線的符合性。
如果有流量以加權公平佇列(WFQ)、加權隨機早期偵測(WRED)或加權輪詢法(WRR)排隊,Cisco IOS軟體會考慮ToS欄位的優先位元。 設定原則路由、優先順序佇列 (PQ)、自訂佇列 (CQ) 或類別型加權公平佇列 (CBWFQ) 後,就不會考慮優先位元。有關更多資訊,請參見基於類的加權公平隊列(CBWFQ)
封包分類包含使用流量描述元來將封包分類至特定群組,並讓封包便於存取,方便 QoS 在網路中管理。使用封包分類時,可以將網路流量劃分為多個優先順序層級或服務類別(CoS)。
您可以使用訪問控制清單(ACL)或在模組化QoS CLI中運行match命令來匹配DSCP值。Cisco IOS 軟體版本 12.1(5)T 導入了在 match 命令中選取 DSCP 值的功能。
Router1(config)#access-list 101 permit ip any any ? dscp Match packets with given dscp value fragments Check non-initial fragments log Log matches against this entry log-input Log matches against this entry, including input interface precedence Match packets with given precedence value time-range Specify a time-range tos Match packets with given TOS value
在class map命令中指定IP dscp值時,您可以:
Router(config)#class-map match-all VOIP 1751-uut1(config-cmap)#match ip dscp ? <0-63> Differentiated services codepoint value af11 Match packets with AF11 dscp (001010) af12 Match packets with AF12 dscp (001100) af13 Match packets with AF13 dscp (001110) af21 Match packets with AF21 dscp (010010) af22 Match packets with AF22 dscp (010100) af23 Match packets with AF23 dscp (010110) af31 Match packets with AF31 dscp (011010) af32 Match packets with AF32 dscp (011100) af33 Match packets with AF33 dscp (011110) af41 Match packets with AF41 dscp (100010) af42 Match packets with AF42 dscp (100100) af43 Match packets with AF43 dscp (100110) cs1 Match packets with CS1(precedence 1) dscp (001000) cs2 Match packets with CS2(precedence 2) dscp (010000) cs3 Match packets with CS3(precedence 3) dscp (011000) cs4 Match packets with CS4(precedence 4) dscp (100000) cs5 Match packets with CS5(precedence 5) dscp (101000) cs6 Match packets with CS6(precedence 6) dscp (110000) cs7 Match packets with CS7(precedence 7) dscp (111000) default Match packets with default dscp (000000) ef Match packets with EF dscp (101110) Router1(config-cmap)#match ip dscp af31
可以在網路邊緣將DSCP設定為所需值,以允許核心裝置按Packet Classification部分所示對資料包進行分類,並提供適當的服務級別。Class-Based Packet Marking可用於設定DSCP值:
policy-map pack-multimedia-5M
!--- Creates a policy map named pack-multimedia-5M.
class management
!--- Specifies the policy to be created for the !--- traffic classified by class management.
bandwidth 50
set ip dscp 8
!--- Sets the DSCP value of the packets matching !--- class management to 8.
class C1
priority 1248
set ip dscp 40
class voice-signalling
bandwidth 120
set ip dscp 24
承諾訪問速率和基於類的策略是流量管制機制,用於管制流量以符合商定的服務引數。這些機制和DSCP可用於提供不同等級的服務,當流量適當修改DSCP值時,這些服務不會也確實符合流量,如本節所示。
如需詳細資訊,請參閱「流量」和「比較類別型管制和認可存取速率」。 ConfiguringPolicing
interface Serial1/0.1 point-to-point bandwidth 5000 ip address 192.168.126.134 255.255.255.252 rate-limit output access-group 150 8000 1500 2000 conform-action set-dscp-transmit 10 exceed-action set-dscp-transmit 20 !--- For traffic matching access list 150, sets the DSCP value of conforming traffic !--– to 10 and that of non-conforming traffic to 20. rate-limit output access-group 152 8000 1500 2000 conform-action set-dscp-transmit 15 exceed-action set-dscp-transmit 25 rate-limit output access-group 154 8000 1500 2000 conform-action set-dscp-transmit 18 exceed-action set-dscp-transmit 28 frame-relay interface-dlci 17 class shaper-multimedia-5M
加權隨機早期偵測 (WRED) 會在介面開始壅塞時,選擇性捨棄低優先順序的流量。WRED 可為不同 CoS 提供差異化的效能特徵。此區別服務可以基於DSCP:
class C2
bandwidth 1750
random-detect dscp-based
!--- Enable dscp-based WRED as drop policy.
random-detect exponential-weighting-constant 7
!--- Specifies the exponential weight factor for the !--- average queue size calculation for the queue.
random-detect dscp 16 48 145 10
!--- Specifies the minimum and maximum queue thresholds !--- for each DSCP value.
random-detect dscp 32 145 435 10
有關詳細資訊,請參閱擁塞迴避概述的DiffServ相容WRED部分。
| 修訂 | 發佈日期 | 意見 |
|---|---|---|
5.0 |
03-Sep-2026
|
更新拼寫/語法,插入水平線以分隔可讀部分,修復CCW錯誤。 |
4.0 |
08-Sep-2025
|
更新的SEO和格式。 |
3.0 |
05-Sep-2024
|
標題過長,CCW未標籤標題的原因有很多。已更正奇怪的間距/格式。 |
2.0 |
24-Aug-2022
|
初始版本 |
1.0 |
27-Nov-2001
|
初始版本 |