- RSS フィードを購読する
- 新着としてマーク
- 既読としてマーク
- ブックマーク
- 購読
- 印刷用ページ
- 不適切なコンテンツを報告
2025-01-23 10:05 AM 2025-01-23 01:47 PM 更新
はじめに
このドキュメントは Catalyst 9000 シリーズにおける CoPP のトラブルシュートについて記載しています。内容は C9500-24Y4C-A / IOS XE 17.12.04 をベースに記載しており、プロダクトや IOS XE バージョンによっては若干の差分がある可能性がございます。
CoPP について
CoPP 機能によって、不要なトラフィックまたは DoS トラフィックから CPU を保護し、コントロールプレーンおよび管理トラフィックを優先させることにより、デバイス のセキュリティが向上します。ルーティングの安定性と信頼性を確保し、パケットを確実に配信することができます。
Catalyst 9000 シリーズにおける CoPP
CPUに送られるトラフィックは Class にグループ化されます。これらの Class はシステムによって定義され、ユーザによる設定はできません。Class にグループ化された後は、それぞれの Policy にマップされます。
CoPP の Class / Queue は以下のコマンドで確認できます。
C9500-24Y4C#show platform hardware fed <switch> active qos queue stats internal cpu policer
CPP Classes to queue map
======================================================================================
PlcIdx CPP Class : Queues
--------------------------------------------------------------------------------------
0 system-cpp-police-data : ICMP GEN/ BROADCAST/ ICMP Redirect/
10 system-cpp-police-sys-data : Openflow/ Exception/ EGR Exception/ NFL SAMPLED DATA/ RPF Failed/
13 system-cpp-police-sw-forward : Sw forwarding/ LOGGING/ L2 LVX Data Pack/ Transit Traffic/
9 system-cpp-police-multicast : MCAST Data/
15 system-cpp-police-multicast-end-station : MCAST END STATION /
7 system-cpp-police-punt-webauth : Punt Webauth/
1 system-cpp-police-l2-control : L2 Control/
2 system-cpp-police-routing-control : Routing Control/ Low Latency/
3 system-cpp-police-system-critical : System Critical/ Gold Pkt/
4 system-cpp-police-l2lvx-control : L2 LVX Cont Pack/
8 system-cpp-police-topology-control : Topology Control/
11 system-cpp-police-dot1x-auth : DOT1X Auth/
12 system-cpp-police-protocol-snooping : Proto Snooping/
6 system-cpp-police-dhcp-snooping : DHCP Snooping/
14 system-cpp-police-forus : Forus Address resolution/ Forus traffic/
5 system-cpp-police-stackwise-virt-control : Stackwise Virtual OOB/
16 system-cpp-default : Inter FED Traffic/ EWLC Data/
18 system-cpp-police-high-rate-app : High Rate App/
19 system-cpp-police-ewlc-control : EWLC Control/
20 system-cpp-police-ios-routing : L2 Control/ Topology Control/ Routing Control/ Low Latency/
21 system-cpp-police-ios-feature : ICMP GEN/ BROADCAST/ ICMP Redirect/ L2 LVX Cont Pack/ Proto Snooping/ Punt Webauth/ MCAST Data/ Transit Traffic/ DOT1X Auth/ Sw forwarding/ LOGGING/ L2 LVX Data Pack/ Forus traffic/ Forus Address resolution/ MCAST END STATION / Openflow/ Exception/ EGR Exception/ NFL SAMPLED DATA/ RPF Failed/
以下のコマンドで、CoPP の各 Class に適応された Police Rate など、Policy の詳細を確認できます。
show policy-map control-plane
Control Plane
Service-policy input: system-cpp-policy
Class-map: system-cpp-police-ios-routing (match-any)
0 packets, 0 bytes
5 minute offered rate 0000 bps, drop rate 0000 bps
Match: none
police:
rate 17000 pps, burst 4150 packets
conformed 1207636 bytes; actions:
transmit
exceeded 0 bytes; actions:
drop
Class-map: system-cpp-police-ios-feature (match-any)
0 packets, 0 bytes
5 minute offered rate 0000 bps, drop rate 0000 bps
Match: none
police:
rate 6000 pps, burst 1464 packets
conformed 220692 bytes; actions:
transmit
exceeded 0 bytes; actions:
drop
< 省略 >
CoPP の Queue Drop を確認する方法
CoPP で Drop が発生する場合、Queue Drop が増加する場合があります。以下は、ICMP リダイレクトに関するキューで Drop が発生した際の例を示します。
C9500-24Y4C#show platform hardware fed <switch> active qos queue stats internal cpu policer
CPU Queue Statistics
============================================================================================
(default) (set) Queue Queue
QId PlcIdx Queue Name Enabled Rate Rate Drop(Bytes) Drop(Frames)
--------------------------------------------------------------------------------------------
0 11 DOT1X Auth Yes 1000 1000 0 0
1 1 L2 Control Yes 2000 2000 0 0
2 14 Forus traffic Yes 4000 4000 0 0
3 0 ICMP GEN Yes 750 750 0 0
4 2 Routing Control Yes 5500 5500 0 0
< 省略 >
6 0 ICMP Redirect Yes 750 750 83027876 1297199
ICMP Redirect Queueは、system-cpp-police-data に属していることから、同じ Class を共有する BROADCAST Queue なども影響を受けることがあります。
CoPP の Police Rate を変更する方法
CoPP の Police Rate は、ユーザが変更できます。system-cpp-police-data の Default 設定は以下のようになっています。
C9500-24Y4C#show policy-map control-plane | section system-cpp-police-data
Class-map: system-cpp-police-data (match-any)
0 packets, 0 bytes
5 minute offered rate 0000 bps, drop rate 0000 bps
Match: none
police:
rate 750 pps, burst 183 packets
< 省略 >
以下の設定で、Police Rate を任意のレートに変更することができます。
C9500-24Y4C#conf t
C9500-24Y4C(config)#policy-map system-cpp-policy
C9500-24Y4C(config-pmap)#class system-cpp-police-data
C9500-24Y4C(config-pmap-c)#police rate 1000 pps
C9500-24Y4C#show policy-map control-plane | section system-cpp-police-data
Class-map: system-cpp-police-data (match-any)
0 packets, 0 bytes
5 minute offered rate 0000 bps, drop rate 0000 bps
Match: none
police:
rate 1000 pps, burst 244 packets
< 省略 >
変更後は、Police Rate が 1000 pps に増加していることが確認できます。
しかしながら、Default の Policy を変更することは予期しないサービスへの影響が出る可能性がありますので、変更の際はご注意ください。