본 제품에 대한 문서 세트는 편견 없는 언어를 사용하기 위해 노력합니다. 본 설명서 세트의 목적상, 편견 없는 언어는 나이, 장애, 성별, 인종 정체성, 민족 정체성, 성적 지향성, 사회 경제적 지위 및 교차성에 기초한 차별을 의미하지 않는 언어로 정의됩니다. 제품 소프트웨어의 사용자 인터페이스에서 하드코딩된 언어, RFP 설명서에 기초한 언어 또는 참조된 서드파티 제품에서 사용하는 언어로 인해 설명서에 예외가 있을 수 있습니다. 시스코에서 어떤 방식으로 포용적인 언어를 사용하고 있는지 자세히 알아보세요.
Cisco는 전 세계 사용자에게 다양한 언어로 지원 콘텐츠를 제공하기 위해 기계 번역 기술과 수작업 번역을 병행하여 이 문서를 번역했습니다. 아무리 품질이 높은 기계 번역이라도 전문 번역가의 번역 결과물만큼 정확하지는 않습니다. Cisco Systems, Inc.는 이 같은 번역에 대해 어떠한 책임도 지지 않으며 항상 원본 영문 문서(링크 제공됨)를 참조할 것을 권장합니다.
이 문서에서는 UADP ASIC 기반 Catalyst 9000 Series 스위치에서 QoS(Quality of Service) 하드웨어 사용률을 파악하고 확인하는 방법에 대해 설명합니다
다음 주제에 대한 지식을 보유하고 있으면 유용합니다.
이 문서의 정보는 다음 소프트웨어 및 하드웨어 버전을 기반으로 합니다.
일반적인 개념, 아이디어 및 다양한 출력은 다른 Cisco Catalyst 9000 Series 스위치에서 확인할 수 있습니다.
이 문서의 정보는 특정 랩 환경의 디바이스를 토대로 작성되었습니다. 이 문서에 사용된 모든 디바이스는 초기화된(기본) 컨피그레이션으로 시작되었습니다. 현재 네트워크가 작동 중인 경우 모든 명령의 잠재적인 영향을 미리 숙지하시기 바랍니다.
이 문서는 다음과 같은 하드웨어 및 소프트웨어 버전에서도 사용할 수 있습니다.
이 문서에서는 다음 작업을 수행할 수 있습니다.
QoS |
QoS(Quality of Service) |
네트워크 디바이스 안팎의 트래픽을 분류, 표시, 대기열 지정 및 스케줄링하는 것과 관련된 개념/관련 기능 그룹 |
TCAM |
터너리 내용 주소화 메모리 |
0, 1, X라는 서로 다른 세 가지 입력으로 항목을 저장하고 쿼리하는 메모리 유형입니다. 이 메모리 유형은 동일한 항목에 대한 여러 일치가 있고 각각에 대한 결과 해시가 고유하지 않은 경우에 사용됩니다. 이 표에는 이 항목과 일치하는지 또는 일치하지 않는지 알 수 있는 마스크 또는 X 값이 포함되어 있습니다. |
DSCP |
Differentiated Services Code Point |
패킷의 IP 헤더에 포함된 트래픽 분류 메커니즘 |
CoS |
서비스 등급 |
패킷의 이더넷 프레임 헤더에 포함된 트래픽 분류 메커니즘 |
에이스 |
액세스 제어 항목 |
ACL(Access Control List) 내의 단일 규칙 또는 라인 |
ACL |
액세스 제어 목록 |
트래픽을 일치시키고 작업을 수행하기 위해 다양한 기능에서 사용하는 ACE(Access Control Entry) 그룹 |
연방 |
포워드 엔진 드라이버 |
디바이스의 하드웨어를 프로그래밍하는 소프트웨어 구성 요소 |
QoS 관련 리소스가 부족하면 시스템에서 SYSLOG 메시지를 생성합니다.
QoS 관련 Syslog 메시지 |
정의 |
복구 작업 |
%FED_QOS_ERRMSG-4-TCAM_OVERFLOW: 스위치 1 R0/0: fed: 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 전용: Cisco 버그 ID CSCvz54607 및 Cisco 버그 ID CSCvz를 검토하십시오76172 |
FED_QOS_ERRMSG-3-QUEUE_BUFFER_HW_ERROR: R0/0: fed: 기본 큐 버퍼를 구성하지 못했습니다. |
QoS 큐 버퍼의 하드웨어에 설치하지 못했습니다. |
컨피그레이션이 지원되는지 확인하고 특정 플랫폼 및 소프트웨어 버전에 대한 QoS 컨피그레이션 가이드를 검토하십시오. |
현재 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에서 스위치 번호 또는 active/standby를 사용하여 하드웨어 설치를 검증할 스위치를 정확하게 반영합니다.
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
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
클래스 맵이 0개라도 첨부되거나 조치가 취해진 경우에도 4개의 하드웨어 항목이 사용되고 V4, V6 및 기타로 분할되는지 확인합니다.
이 예제에서는 빈 테스트 클래스가 추가됩니다. 일반적인 시나리오에서 이 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 엔트리 1개와 v6 엔트리 2개의 베이스라인이 소비됨을 보여 줍니다.
각 클래스에 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 관련 하드웨어 사용률의 경우 하드웨어 사용이 일치 명령문이나 ACE(Access Control Entry)를 통해 항상 일대일 방식으로 확장되지는 않습니다. 하드웨어는 Value Mask Result(VMR) 측면에서 작동합니다. 일부 시나리오에서는 ACE를 완수하는 데 필요한 데이터 범위를 완전히 분류하기 위해 둘 이상의 VMR이 필요할 수 있습니다. Catalyst 9000 Series 스위치 UADP 제품군 ASIC에는 확장 필요성을 줄이기 위해 포트 범위 운영(L4OP)을 지원하는 ACE와 같이 이러한 시나리오를 최적화하는 하드웨어가 포함되어 있습니다.
이 섹션에서는 이러한 하드웨어 및 소프트웨어의 조합을 통해 여러 시나리오를 제시하여 문제 시나리오 및 문제 해결을 설명합니다.
제시된 시나리오는 다음과 같습니다.
참고: 이 예에서는 Object-Group 기반 ACL을 사용합니다. 객체 그룹은 훨씬 더 큰 기존 액세스 목록을 효율적으로 나타냅니다. 본질적으로 TCAM을 더 많이 또는 더 적게 소비하지는 않습니다. 그 대신, ACE의 매우 긴 패턴 목록을 나타내기 위해 단순화되고 모듈형 방식입니다.
이 예에서는 인그레스 정책을 사용하여 패킷을 표시합니다. 여기에는 Object-Groups, IP Access-Lists 및 TCP/UDP 포트 기반 일치가 포함됩니다.
객체 그룹 |
객체 그룹을 사용하는 액세스 목록 |
클래스 맵 |
정책 맵 |
object-group network 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 |
클래스 맵 match-any BigClass match access-group name APP_1_PORTS_1 |
policy-map ingress_pmap 클래스 BigClass dscp cs2 설정 |
차트를 검토하고 object-group network 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에 대해 RFC1918-Private-IPv4에서 3개의 추가 ACE를 나타내는 object-group app_1을 참조하므로 승산 효과가 있습니다
클래스 맵 및 정책 맵에 연결된 ip access-list extended APP_1_PORTS_1의 총 사용률 추정치:
APP_1이 6배 사용됨 x 3개의 object-group 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
요약
이 예는 더 큰 정책을 가진 이전의 연속입니다. 이렇게 하면 대량의 TCAM을 신속하게 사용할 수 있는 방법이 설정됩니다.
정책 1:
객체 그룹 |
객체 그룹을 사용하는 액세스 목록 |
클래스 맵 |
정책 맵 |
object-group network experimental_1 object-group network experimental_2 object-group network RFC1918-Private-IPv4
object-group network app_4 |
ip access-list extended APP_1_PORTS_1 <4줄 추가> ip access-list extended APP_1_PORTS_2 <18줄 추가> ip access-list extended APP_1_PORTS_3 10 permit udp any object-group app_1 range 22030 22031 <6줄 더> ip access-list extended APP_2_PORTS_1 10 permit udp any object-group app_2 range 6000 9291 ip access-list extended APP_3_PORTS_1 10 permit tcp any object-group app_3 eq 7563 <4줄 추가> ip access-list extended APP_3_PORTS_2 <2줄 더> ip access-list extended APP_3_PORTS_3 10 허용 사용자 데이터그램 프로토콜 any object-group app_3 eq 22331 <2줄 더> ip access-list extended APP_3_PORTS_4 <6줄 더> ip access-list extended APP_4_PORTS_1 <14줄 추가> |
클래스 맵 match-any BigClass_1 클래스 맵 match-any BigClass_2 클래스 맵 match-any BigClass_3 class-map match-any BigClass_4 클래스 맵 match-any BigClass_5 |
policy-map big_ingress_pmap dscp cs4 설정 클래스 BigClass_2 dscp af41 설정 클래스 BigClass_3 dscp cs3 설정 클래스 BigClass_4 dscp af31 설정 클래스 BigClass_5 dscp cs2 설정 class-default |
차트 오른쪽의 policy-map은 간단하고 그 옆에 있는 클래스 맵도 간단합니다. 그러나 클래스 맵은 더 긴 액세스 목록과 객체 그룹 집합으로 구성되며, 이는 정책 맵이 인터페이스에 적용될 때 소프트웨어가 모든 구성 요소를 병합하면 확장됩니다.
정책이 적용될 때:
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개 항목이 증가했습니다
이 시나리오에서 이전 정책 맵을 가져오고 dscp cs4만 변경하여 별도의 정책에서 dscpef를 설정할 경우, 정책이 연결되어 모든 항목이 하드웨어에서 복제되어야 합니다.
참고: QoS 정책을 설계할 때 하드웨어 사용률을 줄이는 중요한 방법은 여러 사용 사례를 충족하기 위해 작업과 규칙을 단일 정책 맵으로 통합하는 것입니다. 두 정책 맵 간에 중복되는 분류 ACE는 하드웨어에서 복제됩니다. 정책을 결합하면 중복되는 ACE를 다시 설치할 필요가 없습니다.
정책 맵 1 | 정책 맵 2 |
policy-map big_ingress_pmap dscp cs4 설정 클래스 BigClass_2 dscp af41 설정 클래스 BigClass_3 dscp cs3 설정 클래스 BigClass_4 dscp af31 설정 클래스 BigClass_5 dscp cs2 설정 class-default |
policy-map big_ingress_pmap2 dscp ef 설정 클래스 BigClass_2 dscp af41 설정 클래스 BigClass_3 dscp cs3 설정 클래스 BigClass_4 dscp af31 설정 클래스 BigClass_5 dscp cs2 설정 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 dscp cs4 설정 클래스 BigClass_2 dscp af41 설정 클래스 BigClass_3 dscp cs3 설정 클래스 BigClass_4 dscp af31 설정 클래스 BigClass_5 dscp cs2 설정 class-default |
policy-map big_ingress_pmap2 dscp ef 설정 클래스 BigClass_2 dscp af41 설정 클래스 BigClass_3 dscp cs3 설정 클래스 BigClass_4 dscp af31 설정 클래스 BigClass_5 dscp cs2 설정 class-default |
컨피그레이션이 유효하고 하드웨어의 확장 한계에 도달한 경우 리미디에이션에는 설계 중심의 접근 방식이 필요합니다. ACE와 하드웨어의 후속 VMR 활용도를 줄이는 가장 좋은 방법은 없습니다. 무엇을 분류하고 어떻게 요약할 것인가를 고려해야 한다.
이전 시나리오에서는 정책 맵의 set dscp 문을 제외하고 거의 동일한 두 정책을 의도적으로 제시했습니다. 이 경우 인터페이스에 따라 IP(Layer 3) 또는 TCP/UDP(Layer 4)에서 동일한 트래픽 분류를 다르게 표시하려는 경우, 이러한 두 정책을 하나로 결합할 수 있도록 (해당 인터페이스 뒤에 있는 디바이스에 대한) 어떤 키 정보가 변경되는지 고려해야 합니다.
참고: SGT/SGACL을 사용하려면 Cisco ISE, 관련 DOT1X/MAB 컨피그레이션 및 네트워크 전체에 대한 추가 적용이 필요합니다. 적절한 설계 고려가 이루어져야 합니다.
다음은 big_ingress_pmap과 big_ingress_pmap2의 기능을 결합하기 위해 예제 정책을 수정하는 방법입니다.
클래스 BigClass_1은 access-group(access-list) 이름 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
정책의 맨 위에 새 클래스를 포함하도록 정책 맵을 다시 구성합니다.
결합된 정책 맵 |
policy-map big_ingress_pmap_combined dscp ef 설정 클래스 BigClass_1 dscp cs4 설정 클래스 BigClass_2 dscp af41 설정 클래스 BigClass_3 dscp cs3 설정 클래스 BigClass_4 dscp af31 설정 클래스 BigClass_5 dscp cs2 설정 class-default |
참고: 정책 맵에서 클래스를 재정렬할 수 있는 방법은 없습니다. 이미 존재하는 클래스 앞에 새로 구성된 클래스를 배치해야 하는 경우 전체 정책을 다시 구성해야 합니다. 즉, 컨피그레이션에서 완전히 제거해야 합니다.
업데이트된 주문으로 새로운 정책을 생성하고 정책의 설치/적용이 실패하는 경우, 먼저 모든 연결된 인터페이스에서 기존 정책을 제거하여 하드웨어 사용률을 줄이십시오.
명령 인터페이스 범위는 인터페이스에서 순차적으로 작동하므로 새 정책을 사용하여 기존 정책을 덮어쓰면 두 정책이 모두 하드웨어에 있어야 하는 임시 시나리오가 발생합니다. 그 시점에서는 과도한 활용으로 인해 설치에 실패할 수 있습니다. 모든 인터페이스에서 현재 정책을 제거하여 하드웨어 사용률을 줄인 다음 계속 진행합니다.
QoS 활용과 관련된 가장 일반적인 하드웨어 리소스 문제는 이 가이드에서 적절한 교정 단계를 통해 다룹니다. 그러나 이 설명서에서 문제를 해결하지 못한 경우 표시된 명령 목록을 수집하여 TAC 서비스 요청에 첨부하십시오.
Cisco 버그 ID CSCvz54607(C9200/C9200L(16.12) - 잘못된 QoS 프로그래밍으로 인해 출력 대기열이 오버로드됨)
Cisco 버그 ID CSCvz76172(C9200/C9200L(17.3/17.6) - 잘못된 QoS 프로그래밍으로 인해 출력 대기열이 과부하됨)
개정 | 게시 날짜 | 의견 |
---|---|---|
1.0 |
05-Dec-2022 |
최초 릴리스 |