目錄

簡介

必要條件

需求

採用元件

背景資訊

技術

檢視與QoS相關的系統日誌

驗證硬體利用率和策略狀態

瞭解QoS硬體資源的當前利用率

使用示例(9200L 17.3.4)

硬體利用率故障排除

場景：QoS TCAM規模估計

場景：QoS TCAM規模增加（未超過）

方案：超出QoS TCAM規模

補救技術

為TAC收集的命令

相關資訊

思科錯誤ID

簡介

本文描述如何瞭解和驗證基於UADP ASIC的Catalyst 9000系列交換機上的服務品質(QoS)硬體利用率

必要條件

需求

思科建議您瞭解以下主題：

- Cisco MQC QoS配置；策略對映、類對映、訪問控制清單、訪問控制條目

採用元件

本文中的資訊係根據以下軟體和硬體版本：

- Cisco Catalyst 9200L Cisco IOS®-XE 17.3.4

其他Cisco Catalyst 9000系列交換器可以看到一般概念、想法和各種輸出。

本文中的資訊是根據特定實驗室環境內的裝置所建立。文中使用到的所有裝置皆從已清除（預設）的組態來啟動。如果您的網路運作中，請確保您瞭解任何指令可能造成的影響。

相關產品

本文件也適用於以下硬體和軟體版本：

- Catalyst 9300 - 9600系列交換器

- Catalyst 9300X和9400X

- Cisco IOS® XE 16.x和17.x軟體版本

背景資訊

- Catalyst 9000系列交換器上的各種功能耗用有限的硬體資源。這些資源可用於加速這些功能的效能，並提供交換機預期的高轉發速率。

- 這些資源的規模可能因交換機型號而異，但是在採用UADP ASIC的Catalyst 9000系列交換機中，故障排除的基本方法保持不變

- 通常，帶有交換機的主要有限硬體資源稱為TCAM — 三重內容可定址儲存器

- 在Catalyst 9000系列交換器中，在TCAM之外使用多種記憶體型別，以滿足特定功能的特定需求

本檔案可幫助您：

- 瞭解服務品質(QoS)如何消耗硬體專案

- 瞭解表示QoS硬體資源問題的日誌或錯誤消息

- 確定要採取哪些操作來修復與QoS相關的硬體資源問題

技術

Qos

服務品質

與網路裝置進出流量分類、標籤、排隊和排程有關的概念/相關功能組

TCAM

三重內容可定址儲存器

一種記憶體，用於儲存和查詢具有三個不同輸入（0、1和X）的條目。這種記憶體型別用於存在多個與同一條目的匹配項的情況，並且每個條目的結果雜湊不是唯一的。此表包含一個掩碼或X值，通過該值，它可以知道它是否與此項匹配。

DSCP

區別服務代碼點

封包的IP標頭中包含的流量分類機制

CoS

服務類別

資料包的乙太網幀報頭中包含的流量分類機制

ACE

訪問控制條目

存取控制清單(ACL)中的單一規則或線路

ACL

訪問控制清單

一組訪問控制條目(ACE)，各種功能使用它來匹配流量並採取措施

FED

轉發引擎驅動程式

對裝置硬體進行程式設計的軟體元件

檢視與QoS相關的系統日誌

如果與QoS相關的資源用盡，則系統生成SYSLOG消息：

與QoS相關的系統日誌消息

定義

恢復操作

%FED_QOS_ERRMSG-4-TCAM_OVERFLOW：交換機1 R0/0：饋送：無法在GigabitEthernet1/0/10上為策略對映ingress_pmap2程式設計TCAM。

為QoS實體保留的硬體(TCAM)空間不足

確保您具有有效/支援的配置。然後，檢視本文檔的其餘部分，驗證您的交換機的當前規模利用率，以及如果過度使用則可能採取的減少措施。

%FED_QOS_ERRMSG-3-QUEUE_SCHEDULER_HW_ERROR：交換機1的R0/0: fed：無法為GigabitEthernet1/0/27配置隊列排程程式

QoS隊列計畫程式的硬體安裝失敗

驗證您的配置是否受支援，檢視特定平台和軟體版本的QoS配置指南。

僅適用於9200L：檢視思科錯誤ID CSCvz54607和思科錯誤ID CSCvz76172

FED_QOS_ERRMSG-3-QUEUE_BUFFER_HW_ERROR: R0/0: fed：無法配置預設隊列緩衝區

QoS隊列緩衝區的硬體安裝失敗

驗證您的配置是否受支援，檢視特定平台和軟體版本的QoS配置指南。

檢視思科錯誤ID CSCvs49401

驗證硬體利用率和策略狀態

驗證當前的QoS TCAM利用率

show platform hardware fed switch active fwd-asic resource tcam utilization

注意：有關此命令的更多詳細資訊，請參閱

16.X versions:

CAM Utilization for ASIC  [0]

Table                                              Max Values        Used Values

--------------------------------------------------------------------------------

Unicast MAC addresses                              16384/256          15/21

L3 Multicast entries                               1024/256           0/7

L2 Multicast entries                               1024                 9

Directly or indirectly connected routes            8192/3072          2/19

QoS Access Control Entries                         1024                40 <<< QoS Entries

Security Access Control Entries                    1408               125

Ingress Netflow ACEs                                128                 8

Policy Based Routing ACEs                           512                 9

Egress Netflow ACEs                                 128                 8

Flow SPAN ACEs                                      256                13

Control Plane Entries                               512               211

Tunnels                                             128                17

Lisp Instance Mapping Entries                       128                 3

SGT_DGT                                            2048/256           0/1

CLIENT_LE                                          2048/64            0/0

INPUT_GROUP_LE                                     1024                 0

OUTPUT_GROUP_LE                                    1024                 0

Macsec SPD                                          128                 2

17.x Versions:

Codes: EM - Exact_Match, I - Input, O - Output, IO - Input & Output, NA - Not Applicable

CAM Utilization for ASIC  [0]

Table                  Subtype      Dir      Max     Used    %Used       V4       V6     MPLS    Other

------------------------------------------------------------------------------------------------------

Mac Address Table      EM           I       16384       17    0.10%        0        0        0       17

Mac Address Table      TCAM         I         256       21    8.20%        0        0        0       21

L3 Multicast           EM           I        1024        0    0.00%        0        0        0        0

L3 Multicast           TCAM         I         256        9    3.52%        3        6        0        0

L2 Multicast           TCAM         I        1024       11    1.07%        3        8        0        0

IP Route Table         EM           I        4096        3    0.07%        2        0        1        0

IP Route Table         TCAM         I        2048       19    0.93%        6       10        2        1

QOS ACL                TCAM         IO       1024       85    8.30%       28       38        0       19  <-- QoS Entries

Security ACL           TCAM         IO       1408      129    9.16%       26       58        0       45

Netflow ACL            TCAM         I         128        6    4.69%        2        2        0        2

PBR ACL                TCAM         I         512        9    1.76%        3        6        0        0

Netflow ACL            TCAM         O         128        6    4.69%        2        2        0        2

Flow SPAN ACL          TCAM         IO        256       13    5.08%        3        6        0        4

Control Plane          TCAM         I         512      262   51.17%      114      106        0       42

Tunnel Termination     TCAM         I         128       18   14.06%        8       10        0        0

Lisp Inst Mapping      TCAM         I         128        1    0.78%        0        0        0        1

CTS Cell Matrix/VPN

Label                  EM           O        2048        0    0.00%        0        0        0        0

CTS Cell Matrix/VPN

Label                  TCAM         O         256        1    0.39%        0        0        0        1

Client Table           EM           I        2048        0    0.00%        0        0        0        0

Client Table           TCAM         I          64        0    0.00%        0        0        0        0

Input Group LE         TCAM         I        1024        0    0.00%        0        0        0        0

Output Group LE        TCAM         O        1024        0    0.00%        0        0        0        0

Macsec SPD             TCAM         I         128        2    1.56%        0        0        0        2

驗證硬體中是否成功安裝了QoS策略。確保狀態為VALID和SET_INHW。檢視清單底部的物理介面條目。在交換器堆疊或stackwise-virtual中，使用交換器編號或主用/備用模式，以準確反映您要驗證硬體安裝的交換器。

C9200(config)#policy-map egress_pmap

C9200(config-pmap)#interface gi2/0/9

C9200(config-if)#service-policy output egress_pmap

C9200#show platform software fed switch 2 qos policy target status         <-- switch 2 is used because the interface in question is Gi2/0/9 which is on switch 2

TCG status summary:

Loc Interface             IIF-ID           Dir State:(cfg,opr) Policy

--- --------------------- ---------------- --- --------------- --------------------

<snip>

L:0 GigabitEthernet2/0/9  0x00000000000010 OUT VALID,SET_INHW  egress_pmap <-- VALID / SET_INHW indicates the policy is understood by software and installed to hardware successfully

如果發現無效策略或錯誤，而不是目標介面的VALID / SET_INHW，請檢查QoS策略並驗證長度和語法。還要驗證硬體利用率。本文檔後面的部分詳細說明了如何理解策略可以使用的資源。

C9200#show run policy-map egress_pmap

Current configuration : 624 bytes

!

policy-map egress_pmap

class COS_DSCP6

priority level 1

queue-buffers ratio 5

class COS_DSCP5

bandwidth remaining percent 10

queue-buffers ratio 5

<snip...>

C9200#show run class-map COS_DSCP6

Current configuration : 66 bytes

!

class-map match-any COS_DSCP6

match ip dscp ef

!

end

瞭解QoS硬體資源的當前利用率

使用示例(9200L 17.3.4)

C9200#show platform hardware fed switch active fwd-asic resource tcam utilization | i Codes|ASIC|-|QOS

Codes: EM - Exact_Match, I - Input, O - Output, IO - Input & Output, NA - Not Applicable

CAM Utilization for ASIC  [0]

Table                  Subtype      Dir      Max     Used    %Used       V4       V6     MPLS    Other

------------------------------------------------------------------------------------------------------

QOS ACL                TCAM         IO       1024       85    8.30%       28       38        0       19 <-- Baseline utilization with minimal configuration

配置並附加空白策略對映 — 在此策略對映中未呼叫任何類對映，因此此策略沒有預期效果。

C9200(config)#policy-map egress_pmap

C9200(config-pmap)#interface gi1/0/9

C9200(config-if)#service-policy output egress_pmap

C9200#show platform hardware fed switch active fwd-asic resource tcam utilization | i Codes|ASIC|-|QOS

Codes: EM - Exact_Match, I - Input, O - Output, IO - Input & Output, NA - Not Applicable

CAM Utilization for ASIC  [0]

Table                  Subtype      Dir      Max     Used    %Used       V4       V6     MPLS    Other

------------------------------------------------------------------------------------------------------

QOS ACL                TCAM         IO       1024       89    8.69%       29       40        0       20 <-- 4 additional entries consumed

請注意，即使連線了零類對映或已執行操作，仍會使用4個硬體條目，這些條目在V4、V6和Other之間拆分。

在此示例中，新增了一個空白測試類。在正常情況下，此match-any類對映將允許匹配多種型別的DSCP、CoS或IPP標籤。但是在本例中，沒有呼叫任何值，因此類對映不會匹配任何流量。

C9200(config)#class-map match-any TEST_CLASS

C9200(config-cmap)#policy-map egress_pmap

C9200(config-pmap)#class TEST_CLASS

C9200#show platform hardware fed switch active fwd-asic resource tcam utilization | i Codes|ASIC|-|QOS

Codes: EM - Exact_Match, I - Input, O - Output, IO - Input & Output, NA - Not Applicable

CAM Utilization for ASIC  [0]

Table                  Subtype      Dir      Max     Used    %Used       V4       V6     MPLS    Other

------------------------------------------------------------------------------------------------------

QOS ACL                TCAM         IO       1024       92    8.92%       30       42        0       20 <-- 3 additional entries consumed

該示例顯示，對於呼叫的每個附加類，即使沒有任何匹配的特定流量，也會消耗一個v4條目和兩個v6條目的基線。

向每個類添加match語句時，會使用其他條目：

C9200(config)#class-map match-any TEST_CLASS

C9200(config-cmap)#match precedence 0

C9200(config-cmap)#do show platform hardware fed switch ac fwd resource tcam utilization | i QOS

QOS ACL                TCAM         IO       1024       96    9.38%       31       44        0       21 <-- 4 additional entries

C9200(config-cmap)#match precedence 1

C9200(config-cmap)#do show platform hardware fed switch ac fwd resource tcam utilization | i QOS

QOS ACL                TCAM         IO       1024       99    9.67%       32       46        0       21 <-- 3 additional entries

C9200(config-cmap)#match cos 1

C9200(config-cmap)#do show platform hardware fed switch ac fwd resource tcam utilization | i QOS

QOS ACL                TCAM         IO       1024      100    9.77%       32       46        0       22 <-- 1 additional entry

C9200(config-cmap)#match dscp 21

C9200(config-cmap)#do show platform hardware fed switch ac fwd resource tcam utilization | i QOS

QOS ACL                TCAM         IO       1024      103   10.06%       33       48        0       22 <-- 3 addditional entries

C9200(config-cmap)#match dscp 22

C9200(config-cmap)#do show platform hardware fed switch ac fwd resource tcam utilization | i QOS

QOS ACL                TCAM         IO       1024      103   10.06%       33       48        0       22 <-- 0 additional entries

C9200(config-cmap)#match dscp 23

C9200(config-cmap)#do show platform hardware fed switch ac fwd resource tcam utilization | i QOS

QOS ACL                TCAM         IO       1024      106   10.35%       34       50        0       22 <-- 3 additional entries

C9200(config-cmap)#match dscp 31

C9200(config-cmap)#do show platform hardware fed switch ac fwd resource tcam utilization | i QOS

QOS ACL                TCAM         IO       1024      109   10.64%       35       52        0       22 <-- 3 additional entries

C9200(config-cmap)#match dscp 32

C9200(config-cmap)#do show platform hardware fed switch ac fwd resource tcam utilization | i QOS

QOS ACL                TCAM         IO       1024      109   10.64%       35       52        0       22 <-- 3 additional entries

C9200(config-cmap)#match dscp 33

C9200(config-cmap)#do show platform hardware fed switch ac fwd resource tcam utilization | i QOS

QOS ACL                TCAM         IO       1024      112   10.94%       36       54        0       22 <-- 3 additional entries

請注意，某些情況下，單個match語句不會佔用進一步的條目。進一步觀察到，後來的match語句使用多個條目。

在網路範圍內實施策略之前，請定期測試策略，並在執行過程中進行最佳化。

注意：對於QoS相關的硬體利用率，硬體使用情況並不總是使用match語句或訪問控制條目(ACE)進行一對一擴展。硬體根據值掩碼結果或VMR運行。在某些情況下，可能需要多個VMR來完全分類實現ACE所必需的資料範圍。Catalyst 9000系列交換器UADP系列ASIC包含用於最佳化這些區域的硬體，例如用於具有連線埠範圍作業(L4OP)的ACE，以減少擴充的需要。

硬體利用率故障排除

本部分介紹多個結合硬體和軟體使用的場景，以幫助說明問題場景和補救。

- 平台 — C9200L-48T-4X

- Cisco IOS®-XE 17.3.4

所展示的場景說明：

- 為總體利用率新增相對少量條目的小策略

- 一種大型策略，為總體利用率新增相對大量的條目

- 導致無法安裝該策略的第二個大型策略

- 修復安裝失敗

場景：QoS TCAM規模估計

注意：這些示例使用基於對象組的ACL。  對象組有效地代表更大的傳統訪問清單。它們本身不會消耗更多或更少的TCAM。相反，它們是一種簡化且模組化的方式，以表示若沒有它們，ACE清單將是非常長的模式化清單。

此範例使用輸入原則標籤封包。它涉及對象組、IP訪問清單和基於TCP/UDP埠的匹配。

對象組

使用對象組的訪問清單

類對映

策略對映

object-group network RFC1918-Private-IPv4

10.0.0.0 255.0.0

172.16.0.0 255.240.0.0

192.168.0.0 255.255.0.0

object-group network app_1

group-object RFC1918-Private-IPv4

ip access-list extended APP_1_PORTS_1

10 permit udp any object-group app_1 range 1433 1434

20 permit udp object-group app_1 range 1433 1434 any

30 permit tcp any object-group app_1 range 1433 1434

40 permit tcp object-group app_1 range 1433 1434 any

50 permit tcp any object-group app_1 range 14300 14400

60 permit tcp object-group app_1 range 14300 14400 any

class-map match-any BigClass

match access-group name APP_1_PORTS_1

policy-map ingress_pmap

類BigClass

set dscp cs2

查看圖表，注意對象組網路RFC1918-Private-IPv4中有3個子網

object-group network app_1

group-object RFC1918-Private-IPv4

object-group network RFC1918-Private-IPv4

10.0.0.0 255.0.0.0

172.16.0.0 255.240.0.0

192.168.0.0 255.255.0.0

此外，ip access-list extended APP_1_PORTS_1中還包含6個match語句。

ip access-list extended APP_1_PORTS_1

10 permit udp any object-group app_1 range 1433 1434 <-- permits any source, to group app_1 on UDP ports 1433 - 1434

20 permit udp object-group app_1 range 1433 1434 any <-- reverse of previous line, reminder that app_1 is made up of RFC1918-Private-IPv4, which is 3 separate subnets

30 permit tcp any object-group app_1 range 1433 1434

40 permit tcp object-group app_1 range 1433 1434 any

50 permit tcp any object-group app_1 range 14300 14400

60 permit tcp object-group app_1 range 14300 14400 any

object-group network app_1將object-group network RFC1918-Private-IPv4 中的每個條目應用於ip access-list extended APP_1_PORTS_1中的每個條目

這具有乘法效果，因為對於APP_1_PORTS_1中的每個ACE，它引用了對象組app_1，該對象組本身代表RFC1918-Private-IPv4中的3個附加ACE

連線到類對映和策略對映時，ip access-list extended APP_1_PORTS_1的總利用率估計值為：

APP_1使用6次x 3對象組ACE = 18

應用策略並觀察TCAM利用率：

C9200#show platform hardware fed switch 2 fwd-asic resource tcam utilization | i Codes|ASIC|-|QOS

Codes: EM - Exact_Match, I - Input, O - Output, IO - Input & Output, NA - Not Applicable

CAM Utilization for ASIC  [0]

Table                  Subtype      Dir      Max     Used    %Used       V4       V6     MPLS    Other

------------------------------------------------------------------------------------------------------

QOS ACL                TCAM         IO       1024      85    8.69%       29       40        0       20 <-- baseline utilization

C9200(config-pmap)#interface gi1/0/9

C9200(config-if)#service-policy input ingress_pmap

C9200#show platform hardware fed switch active fwd-asic resource tcam utilization | i Codes|ASIC|-|QOS

Codes: EM - Exact_Match, I - Input, O - Output, IO - Input & Output, NA - Not Applicable

CAM Utilization for ASIC  [0]

Table                  Subtype      Dir      Max     Used    %Used       V4       V6     MPLS    Other

------------------------------------------------------------------------------------------------------

QOS ACL                TCAM         IO       1024      107    10.45%     47       40        0       20 <-- 22 entries consumed

摘要

- 由於對象組的乘法效應，ACL定義了對象組，這些對象組擴展為使用18個額外條目

- 預設情況下，策略對映使用4個條目

- 這將新增到 使用22個條目

場景：QoS TCAM規模增加（未超過）

本示例是上一示例的延續，它有一個更大的策略。這樣可以確定如何快速消耗大量TCAM。

策略1:

對象組

使用對象組的訪問清單

類對映

策略對映

object-group network experimental_1

240.1.192.0 255.255.192.0

240.2.96.0 255.255.224.0

240.3.160.0 255.255.240.0

240.4.32.0 255.255.224.0

240.5.160.0 255.255.224.0

240.6.192.0 255.255.224.0

240.7.128.0 255.255.128.0

240.8.0.0 255.255.0.0

240.9.128.0 255.255.192.0

240.10.224.0 255.255.224.0

240.11.0.0 255.255.240.0

240.12.160.0 255.255.224.0

240.13.192.0 255.255.224.0

240.14.192.0 255.255.240.0

240.15.128.0 255.255.224.0

object-group network experimental_2

241.0.0.0 255.255.192.0

241.4.0.0 255.252.0.0

241.8.0.0 255.252.0.0

主機241.12.1.1

主機241.13.1.1

主機241.14.1.1

主機241.15.1.1

241.16.0.0 255.252.0.0

主機241.20.1.1

主機241.21.1.1

主機241.22.1.1

主機241.23.1.1

object-group network RFC1918-Private-IPv4

10.0.0.0 255.0.0

172.16.0.0 255.240.0.0

192.168.0.0 255.255.0.0

object-group network app_1

group-object RFC1918-Private-IPv4

object-group network app_2

group-object RFC1918-Private-IPv4

object-group network app_3

group-object RFC1918-Private-IPv4

object-group network app_4

group-object RFC1918-Private-IPv4

group-object experimental_1

group-object experimental_2

ip access-list extended APP_1_PORTS_1

10 permit udp any object-group app_1 range 1433 1434

20 permit udp object-group app_1 range 1433 1434 any

<還有4行>

ip access-list extended APP_1_PORTS_2

10 permit udp any object-group app_1 range 7750 7759

20 permit udp object-group app_1 range 7750 7759 any

<還有18行>

ip access-list extended APP_1_PORTS_3

10 permit udp any object-group app_1 range 22030 22031

20 permit udp object-group app_1 range 22030 22031 any

<還有6行>

ip access-list extended APP_2_PORTS_1

10 permit udp any object-group app_2 range 6000 9291

20 permit udp object-group app_2 range 6000 9291 any

ip access-list extended APP_3_PORTS_1

10 permit tcp any object-group app_3 eq 7563

20 permit tcp object-group app_3 eq 7563 any

<還有4行>

ip access-list extended APP_3_PORTS_2

10 permit udp any object-group app_3 eq 554

20 permit udp object-group app_3 eq 554 any

<還有2行>

ip access-list extended APP_3_PORTS_3

10 permit udp any object-group app_3 eq 22331

20 permit udp object-group app_3 eq 22331 any

<還有2行>

ip access-list extended APP_3_PORTS_4

10 permit tcp any object-group app_3 eq 5432

20 permit tcp object-group app_3 eq 5432 any

<還有6行>

ip access-list extended APP_4_PORTS_1

10 permit udp any object-group app_4 range 1718 1719

20 permit udp object-group app_4 range 1718 1719 any

<14行>

class-map match-any BigClass_1

match access-group name APP_3_PORTS_2

class-map match-any BigClass_2

match access-group name APP_4_PORTS_1

class-map match-any BigClass_3

match access-group name APP_1_PORTS_2

match access-group name APP_3_PORTS_3

match access-group name APP_2_PORTS_1

class-map match-any BigClass_4

match access-group name APP_1_PORTS_3

match access-group name APP_3_PORTS_4

class-map match-any BigClass_5

match access-group name APP_1_PORTS_1

match access-group name APP_3_PORTS_1

policy-map big_ingress_pmap

類BigClass_1

set dscp cs4

類BigClass_2

set dscp af41

類BigClass_3

set dscp cs3

類BigClass_4

set dscp af31

類BigClass_5

set dscp cs2

class class-default

觀察圖表右側的策略對映及其旁邊的類對映是否簡單。但是類對映由一組更長的訪問清單和對象組組成，在策略對映應用於介面時，一旦軟體將所有元件合併在一起，類對映就會擴展。

應用策略時：

C9200#show platform hardware fed switch active fwd-asic resource tcam utilization | i Codes|ASIC|-|QOS

Codes: EM - Exact_Match, I - Input, O - Output, IO - Input & Output, NA - Not Applicable

CAM Utilization for ASIC  [0]

Table                  Subtype      Dir      Max     Used    %Used       V4       V6     MPLS    Other

------------------------------------------------------------------------------------------------------

QOS ACL                TCAM         IO       1024      85    8.69%       29       40        0       20

C9200(config-pmap)#interface gi1/0/9

C9200(config-if)#service-policy input big_ingress_pmap

C9200#show platform hardware fed switch active fwd-asic resource tcam utilization | i Codes|ASIC|-|QOS

Codes: EM - Exact_Match, I - Input, O - Output, IO - Input & Output, NA - Not Applicable

CAM Utilization for ASIC  [0]

Table                  Subtype      Dir      Max     Used    %Used       V4       V6     MPLS    Other

------------------------------------------------------------------------------------------------------

QOS ACL                TCAM         IO       1024     633    61.82%     573       40        0       20 <-- 548 increase in used value

QOS ACL TCAM表項的已用值從85增加到633，增加了548個條目

方案：超出QoS TCAM規模

在此方案中，如果採用以前的策略對映，並且僅在單獨策略中將set dscp cs4 更改為set dscpef，則在該策略附加時，所有條目必須在硬體中重復。

注意：在設計QoS策略時，降低硬體利用率的一個重要方法是將操作和規則組合到一個策略對映中，以滿足多個使用情形。兩個策略對映之間重疊的分類ACE在硬體中重複。當合併策略時，不再需要重新安裝重疊的ACE。

策略對映1

策略對映2

policy-map big_ingress_pmap

類BigClass_1

set dscp cs4

類BigClass_2

set dscp af41

類BigClass_3

set dscp cs3

類BigClass_4

set dscp af31

類BigClass_5

set dscp cs2

class class-default

policy-map big_ingress_pmap2

類BigClass_1

set dscp ef

類BigClass_2

set dscp af41

類BigClass_3

set dscp cs3

類BigClass_4

set dscp af31

類BigClass_5

set dscp cs2

class class-default

觀察安裝big_ingress_pmap2後，未發現使用率增加並記錄錯誤。

C9200#show platform hardware fed switch active fwd-asic resource tcam utilization | i Codes|ASIC|-|QOS

Codes: EM - Exact_Match, I - Input, O - Output, IO - Input & Output, NA - Not Applicable

CAM Utilization for ASIC  [0]

Table                  Subtype      Dir      Max     Used    %Used       V4       V6     MPLS    Other

------------------------------------------------------------------------------------------------------

QOS ACL                TCAM         IO       1024      85    8.69%       29       40        0       20

C9200(config-pmap)#int gi1/0/9

C9200(config-if)#service-policy input big_ingress_pmap

C9200#show platform hardware fed switch active fwd-asic resource tcam utilization | i Codes|ASIC|-|QOS

Codes: EM - Exact_Match, I - Input, O - Output, IO - Input & Output, NA - Not Applicable

CAM Utilization for ASIC  [0]

Table                  Subtype      Dir      Max     Used    %Used       V4       V6     MPLS    Other

------------------------------------------------------------------------------------------------------

QOS ACL                TCAM         IO       1024     633    61.82%     573       40        0       20 <-- Utilization increased

C9200(config-pmap)#int gi1/0/10

C9200(config-if)#service-policy input big_ingress_pmap2

C9200#show platform hardware fed switch active fwd-asic resource tcam utilization | i Codes|ASIC|-|QOS

Codes: EM - Exact_Match, I - Input, O - Output, IO - Input & Output, NA - Not Applicable

CAM Utilization for ASIC  [0]

Table                  Subtype      Dir      Max     Used    %Used       V4       V6     MPLS    Other

------------------------------------------------------------------------------------------------------

QOS ACL                TCAM         IO       1024     633    61.82%     573       40        0       20 <-- Utilization did not increase further

觀察到以下錯誤：

C9200#show logging

...

*Mar 2 04:54:48.170: %FED_QOS_ERRMSG-4-TCAM_OVERFLOW: Switch 3 R0/0: fed: Failed to program TCAM for policy-map big_ingress_pmap2 on GigabitEthernet1/0/10.

驗證在硬體中安裝此策略時出錯：

C9200#show platform software fed switch 1 qos policy target status

TCG status summary:

Loc Interface             IIF-ID           Dir State:(cfg,opr) Policy

--- --------------------- ---------------- --- --------------- --------------------

<snip>

L:0 GigabitEthernet1/0/9  0x00000000000010 IN  VALID,SET_INHW   big_ingress_pmap     <-- Configuration is valid, and installed / set in hardware

L:0 GigabitEthernet1/0/10 0x000000000000a4 IN  VALID,ERROR      big_ingress_pmap2    <-- Configuration is valid, but there is an error to install it in hardware

補救技術

要修正此情況，您必須考慮更改的意圖並檢視是否可以進行最佳化。

策略對映1

策略對映2

policy-map big_ingress_pmap

類BigClass_1

set dscp cs4

類BigClass_2

set dscp af41

類BigClass_3

set dscp cs3

類BigClass_4

set dscp af31

類BigClass_5

set dscp cs2

class class-default

policy-map big_ingress_pmap2

類BigClass_1

set dscp ef

類BigClass_2

set dscp af41

類BigClass_3

set dscp cs3

類BigClass_4

set dscp af31

類BigClass_5

set dscp cs2

class class-default

如果配置有效，並且達到硬體的擴展限制，則補救需要以設計為中心的方法。沒有一種最佳方法可以降低ACE和硬體後續的VMR利用率。您必須考慮要分類的內容以及如何進行彙總。

先前方案有意地呈現兩個幾乎相同的策略，除了策略對映中的set dscp語句。在這種情況下，如果目的是根據介面以不同方式標籤第3層(IP)或第4層(TCP/UDP)的相同流量分類，則必須考慮哪些關鍵資訊(關於這些介面後面的設備)發生了變化，以便可以將這兩個策略組合在一起。

- 如果與big_ingress_pmap匹配的裝置流量與具有big_ingress_pmap2的裝置有不同的源子網，則可以建立一個新類以指定不同的源子網，並先將該流量分類，再進行BigClass_1分類。然後，可以在這些特定類上相應地使用兩個不同的set dscp語句。

- 如果在來自這兩個介面的流量之間，從第3層(IP)/第4層(TCP/UDP)的角度，確實沒有關於這些流量的源或目的地的明確資訊(例如SGACL（安全組ACL）等解決方案可能更適合) — 無論使用者IP地址如何，授權狀態驅動應用的SGT（安全組標籤）。然後，封包上的SGT會成為強制執行的基礎，而不是IP的基礎。

注意:SGT/SGACL需要思科ISE、相關的DOT1X/MAB配置以及在整個網路中進一步實施。必須給予適當設計考慮。

以下是修改示例策略以組合big_ingress_pmap和big_ingress_pmap2功能的方法：

BigClass_1類是從訪問組（訪問清單）名稱APP_3_PORTS_2構建的。

Ip access-list extended APP_3_PORTS_2 是在源和目標之間建立關係的位置

使用新名稱建立Ip access-list extended APP_3_PORTS_2的副本，但與此區分關係重大的特定源子網/目標子網匹配：

ip access-list extended APP_3_PORTS_2_Special

10 permit udp <specific subnet or object group> object-group app_3 eq 554

20 permit udp object-group app_3 eq 554 <specific subnet or object group>

創建名為BigClass_1_Special的新類

class-map match-any BigClass_1_Special

match access-group name APP_3_PORTS_2_Special

重新配置策略對映，以包括策略頂部的新類。

- 新類必須位於頂部，因為BigClass_1在其相關ACL中有partial match any語句。這允許BigClass_1對剩餘的流量進行分類，否則不與BigClass_1_Special匹配。換句話說，要匹配BigClass_1_Special的更具體的關注流量，必須在更一般的BigClass_1匹配之前對其進行評估，因此必須置於策略的頂部

組合策略對映

policy-map big_ingress_pmap_combined

類BigClass_1_Special

set dscp ef

類BigClass_1

set dscp cs4

類BigClass_2

set dscp af41

類BigClass_3

set dscp cs3

類BigClass_4

set dscp af31

類BigClass_5

set dscp cs2

class class-default

註：無法重新排序策略對映中的類。如果需要將新配置的類放在已經存在的類之前，則必須重新配置整個策略，這意味著必須將其從配置中完全刪除。

如果建立帶有更新訂單的全新策略，並且策略的安裝/應用失敗，請首先從所有連線的介面中刪除舊策略，以減少硬體利用率。

命令interface range在介面上按順序運行，因此使用新策略來覆蓋舊策略，會引入一個臨時方案，其中兩個策略都需要位於硬體中。到那時，它可能會由於過度使用而無法安裝。從所有介面中刪除當前策略以降低硬體利用率，然後繼續。

為TAC收集的命令

本指南介紹了與QoS利用率相關的最常見硬體資源問題，並提供了相應的補救步驟。但是，如果此指南未解決您的問題，請收集所示的命令清單，並將它們附加到TAC服務請求。

- 將show tech-support和show tech-support qos的完整或經過整理的輸出附加到您的服務請求，並附上有關您最近採取的步驟或所做更改的詳細資訊。

相關資訊

- 瞭解Catalyst 9000交換器上的硬體資源

- Cisco Catalyst 9000交換平台：QoS和隊列白皮書

- 技術支援與文件 - Cisco Systems

思科錯誤ID

思科錯誤ID CSCvz54607(C9200/C9200L(16.12) — 由於QoS程式設計不正確導致輸出隊列過載)

思科錯誤ID CSCvz76172(C9200/C9200L(17.3/17.6) — 由於QoS程式設計不正確導致輸出隊列過載)