본 제품에 대한 문서 세트는 편견 없는 언어를 사용하기 위해 노력합니다. 본 설명서 세트의 목적상, 편견 없는 언어는 나이, 장애, 성별, 인종 정체성, 민족 정체성, 성적 지향성, 사회 경제적 지위 및 교차성에 기초한 차별을 의미하지 않는 언어로 정의됩니다. 제품 소프트웨어의 사용자 인터페이스에서 하드코딩된 언어, RFP 설명서에 기초한 언어 또는 참조된 서드파티 제품에서 사용하는 언어로 인해 설명서에 예외가 있을 수 있습니다. 시스코에서 어떤 방식으로 포용적인 언어를 사용하고 있는지 자세히 알아보세요.
Cisco는 전 세계 사용자에게 다양한 언어로 지원 콘텐츠를 제공하기 위해 기계 번역 기술과 수작업 번역을 병행하여 이 문서를 번역했습니다. 아무리 품질이 높은 기계 번역이라도 전문 번역가의 번역 결과물만큼 정확하지는 않습니다. Cisco Systems, Inc.는 이 같은 번역에 대해 어떠한 책임도 지지 않으며 항상 원본 영문 문서(링크 제공됨)를 참조할 것을 권장합니다.
이 문서에서는 Cisco NCS(Network Convergence System) 5500 Series의 QoS 문제 해결 가이드에 대해 설명합니다.
다양한 명령에 대한 제한 사항 자세한 내용은 를 참조하십시오.
가장 유용하고 중요한 명령 중 하나는 show qos interface <interface> input|output입니다
적용된 서비스 정책에 대한 유용한 정보를 제공합니다. 구성 및 변환된 매개변수(폴리서, 쉐이퍼, 테일 드롭 임계값 등의 경우), 가상 큐 ID, 어카운팅 유형 등을 표시합니다.
인그레스(ingress)에 대한 간단한 정책으로 시작합니다.
class-map match-any i_match
match precedence ipv4 3
match mpls experimental topmost 3
end-class-map
!
policy-map ingress_marking
class i_match
set qos-group 3
set discard-class 2
!
class class-default
!
end-policy-map
!
RP/0/RP0/CPU0:xrg-ncs-04#show qos interface hundredGigE 0/0/0/35 input
Mon Dec 4 21:30:44.131 UTC
NOTE:- Configured values are displayed within parentheses
Interface HundredGigE0/0/0/35 ifh 0x138 -- input policy
NPU Id: 5
Total number of classes: 2
Interface Bandwidth: 100000000 kbps
Policy Name: ingress_marking
Accounting Type: Layer1 (Include Layer 1 encapsulation and above)
------------------------------------------------------------------------------
Level1 Class = i_match
New qos group = 3
New discard class = 2
Default Policer Bucket ID = 0x21
Default Policer Stats Handle = 0x0
Policer not configured for this class
Level1 Class = class-default
Default Policer Bucket ID = 0x20
Default Policer Stats Handle = 0x0
Policer not configured for this class
qos_ea는 LC의 HW에 정책을 프로그래밍하고 있습니다. show feature-mgr client qos-ea policy 요약 위치 <node>를 사용하면 LC에 구성된 정책의 개요를 볼 수 있습니다.
RP/0/RP0/CPU0:xrg-ncs-04#show feature-mgr client qos-ea policy summary location 0/0/CPU0
Mon Dec 4 22:03:12.371 UTC
Pol-Num Flags Classes Ref-cnt In-Hash Compiled Policy Name
------- ---------- ------- ------- ------- -------- -----------
19 0x00004000 2 4 Yes Yes ingress_marking
이 명령의 자세한 보기를 보면 클래스에서 일치하는 위치를 확인할 수 있습니다.
RP/0/RP0/CPU0:xrg-ncs-04#show feature-mgr client qos-ea policy policy ingress_marking location 0/0/CPU0
Mon Dec 4 22:07:53.134 UTC
Policy name: ingress_marking
Policy Number: 19
Flags: 0x4000 [DNX_FM_POL_TOS]
Class Number: 2
Reference Count: 4
In Hash: Yes
Is Compiled: Yes
Level: 0 Class Number: 0 Class Name: i_match
Match Count: 2 Flags: 0x0 Logical Op: MATCH_ANY
ACE: 0 Class:0 Match:0 proto IPV4 Flags:0x8011 [Grant]
Source IPv4 Address: 0.0.0.0 (255.255.255.255)
Destination IPv4 Address: 0.0.0.0 (255.255.255.255)
Precedence Value: 3
UNKNOWN: UNKNOWN: UNKNOWN: ACE: 0 Class:0 Match:1 proto MPLS Flags:0x208040 [Grant]
MPLS EXP Value: 3
UNKNOWN: UNKNOWN: UNKNOWN: Final List
ACE: 0 Class:0 Match:0 proto IPV4 Flags:0x8011 [Grant]
Source IPv4 Address: 0.0.0.0 (255.255.255.255)
Destination IPv4 Address: 0.0.0.0 (255.255.255.255)
Precedence Value: 3
UNKNOWN: UNKNOWN: UNKNOWN: ACE: 1 Class:0 Match:1 proto MPLS Flags:0x208040 [Grant]
MPLS EXP Value: 3
UNKNOWN: UNKNOWN: UNKNOWN:
Level: 0 Class Number: 1 Class Name: class-default
Match Count: 1 Flags: 0x0 Logical Op: MATCH_ANY
ACE: 0 Class:1 Match:0 proto ANY Flags:0x28000 [Grant][Default]
UNKNOWN: UNKNOWN: UNKNOWN: Final List
ACE: 2 Class:1 Match:0 proto ANY Flags:0x28000 [Grant][Default]
UNKNOWN: UNKNOWN: UNKNOWN:
기능 관리자 관점에서 QOS_EA 정보를 표시할 수도 있습니다. 먼저 요약을 표시합니다.
RP/0/RP0/CPU0:xrg-ncs-04#show feature-mgr client qos-ea feature summary location 0/0/CPU0
Mon Dec 4 22:30:09.362 UTC
IFH NPU DIR Lookup-type ACL-ID Refcnt Feature-Name
---------- --- --- -------------------- ------ ------ ------------
0x138 5 IN IPV4_QOS 14 1 ingress_marking:0
0x138 5 IN IPV6_QOS 14 1 ingress_marking:0
0x138 5 IN MPLS_QOS 14 1 ingress_marking:0
0x138 5 IN L2_QOS 14 1 ingress_marking:0
다음 단계에서는 세부 정보를 표시할 수 있습니다.
RP/0/RP0/CPU0:xrg-ncs-04#show feature-mgr client qos-ea feature feature-name ingress_marking:0 direction ingress lookup mpls interface HundredGigE 0/0/0/35 location 0/0/CPU0
Mon Dec 4 22:31:20.588 UTC
Feature name: ingress_marking:0
Lookup Type: MPLS_QOS
Direction: IN
Reference Count: 1
NPU: 5
Interfaces Attached: HundredGigE0_0_0_35
Number of Entries: 2
Number of Verified Entries: 0
Number of ACEs: 2
ACL ID: 14
ACL ID Ref Cnt: 4
ACL ID Min Length(bits): 0
ACL ID Max Length(bits): 5
ACL ID Num Entries: 30
ACL ID Num Free Entries: 29
Compression Level: 0(UNCOMPRESSED)
qos_ea 추적은 서비스 정책이 인터페이스에 적용될 때 이벤트의 순서를 표시합니다. 장애가 발생할 경우 문제가 표시됩니다.
RP/0/RP0/CPU0:xrg-ncs-04#show qos ea trace all reverse location 0/0/CPU0
Mon Dec 4 22:17:26.297 UTC
3077 wrapping entries (36992 possible, 18816 allocated, 0 filtered, 3077 total)
Dec 4 21:30:18.280 qos_ea/int_evts 0/0/CPU0 t14563 CAPS: (line# 2882) : Responded to IM (batch size: 1)
Dec 4 21:30:18.280 qos_ea/int_evts 0/0/CPU0 t14563 CAPS: post_caps_processing : Registering with ETHER EA for subid notification. Bulk count 1
Dec 4 21:30:18.280 qos_ea/int_evts 0/0/CPU0 t14563 CAPS: caps_add_notify_remote Input num of interfaces 1
Dec 4 21:30:18.280 qos_ea/int_evts 0/0/CPU0 t14563 CAPS: process_caps_add : End: count = 1 ok_count 1. New num_policies_in 1 num_policies_out 2
Dec 4 21:30:18.280 qos_ea/int_evts 0/0/CPU0 t14563 SCOL: scol_interface_add : ifh 0x138 ea_intf_type MainIf : interface added to SCOL tree
Dec 4 21:30:18.280 qos_ea/int_evts 0/0/CPU0 t14563 SCOL: scol_interface_add_internal : ifh 0x138: after avl_tree_insert, new tree size is 1
Dec 4 21:30:18.280 qos_ea/int_evts 0/0/CPU0 t14563 UTIL: (line# 1665) Child info aggr bw add: Current propagated_bw_sum in npu_ctx after adding propagated_bw in if_qos 0 is 0, ifh 0x138
Dec 4 21:30:18.280 qos_ea/int_evts 0/0/CPU0 t14563 UTIL: insert_if_qos_from_list_by_npu_ctx : Inserting to list: if_qos 0x3087c0bb78 prev 0x0 next 0x0 ifh 0x138 head 0x0 tail 0x0 count 0
Dec 4 21:30:18.217 qos_ea/int_evts 0/0/CPU0 t14563 ACTN: results_add for ifh 0x138 with pmap ingress_marking
Dec 4 21:30:18.217 qos_ea/int_evts 0/0/CPU0 t14563 CAPS: fm_program : npu_id 5 ifh 0x138 policy_name ingress_marking :Compiling policy and sending VMR to FM
Dec 4 21:30:18.217 qos_ea/int_evts 0/0/CPU0 t14563 ACTN: (line# 1597) : class_name class-default offset 0 policer_id 32: configuring policer...
Dec 4 21:30:18.217 qos_ea/int_evts 0/0/CPU0 t14563 POLICER-INT: policer_get : cir_kbps 720000000 cir_burst_kbits 32768 cir_burst 4194304pir_kbps 720000000 cir_burst_kbits 32768 pir_burst 4194304
Dec 4 21:30:18.217 qos_ea/int_evts 0/0/CPU0 t14563 POLICER-INT: policer_get : ifh 0x138 npu 5 offset 0 policer_id 32 mode/policer_type 0/0 inlif 0
Dec 4 21:30:18.217 qos_ea/int_evts 0/0/CPU0 t14563 POLICER-INT: policer_get : for ifh 0x138 for npu 5 offset 0
Dec 4 21:30:18.217 qos_ea/int_evts 0/0/CPU0 t14563 ACTN: (line# 1597) : class_name i_match offset 1 policer_id 33: configuring policer...
Dec 4 21:30:18.217 qos_ea/int_evts 0/0/CPU0 t14563 POLICER-INT: policer_get : cir_kbps 720000000 cir_burst_kbits 32768 cir_burst 4194304pir_kbps 720000000 cir_burst_kbits 32768 pir_burst 4194304
Dec 4 21:30:18.217 qos_ea/int_evts 0/0/CPU0 t14563 POLICER-INT: policer_get : ifh 0x138 npu 5 offset 1 policer_id 33 mode/policer_type 0/0 inlif 0
Dec 4 21:30:18.217 qos_ea/int_evts 0/0/CPU0 t14563 POLICER-INT: policer_get : for ifh 0x138 for npu 5 offset 1
Dec 4 21:30:18.217 qos_ea/int_evts 0/0/CPU0 t14563 ACTN: mark_actn_process Unconditional mark set for cmaps i_match
Dec 4 21:30:18.100 qos_ea/int_evts 0/0/CPU0 t14563 ACTN: resource_cfg for ifh 0x138 ul_ifh 0x0 with pmap ingress_marking
Dec 4 21:30:18.100 qos_ea/int_evts 0/0/CPU0 t14563 CMAP: classmap_process : chd 0x7feedd339b98, if_qos 0x3087c0bb78, class_info 0x3087c0b368
Dec 4 21:30:18.100 qos_ea/int_evts 0/0/CPU0 t14563 PWALK: preprocess_action : ifh 0x138 ul_ifh 0x0 policy_name ingress_marking class_name class-default
Dec 4 21:30:18.100 qos_ea/int_evts 0/0/CPU0 t14563 PWALK: pwalk_process_class : depth 0, usr_data->class_list 0x3087c0bb90, class_name class-default
Dec 4 21:30:18.100 qos_ea/int_evts 0/0/CPU0 t14563 CMAP: classmap_process : chd 0x7feedd33b478, if_qos 0x3087c0bb78, class_info 0x3087c0b770
Dec 4 21:30:18.100 qos_ea/int_evts 0/0/CPU0 t14563 PWALK: preprocess_action : ifh 0x138 ul_ifh 0x0 policy_name ingress_marking class_name i_match
Dec 4 21:30:18.100 qos_ea/int_evts 0/0/CPU0 t14563 PWALK: pwalk_process_class : depth 0, usr_data->class_list 0x3087c0bb90, class_name i_match
Dec 4 21:30:18.100 qos_ea/int_evts 0/0/CPU0 t14563 PWALK: pwalk_start_level : depth 0, stack 0x7fff8a11be40 ctx 0x7fff8a11c670
Dec 4 21:30:18.100 qos_ea/int_evts 0/0/CPU0 t14563 PWALK: policy_walk : policy_oper 0 policy_name ingress_marking ifh 0x138 ul_ifh 0x0 walk_flags 0x0
Dec 4 21:30:18.100 qos_ea/int_evts 0/0/CPU0 t14563 UTIL: if_qos_insert_to_db : Inserting to hash table: npu_id 5 ifh 0x138, ul_ifh 0x0, dir 0
Dec 4 21:30:18.100 qos_ea/int_evts 0/0/CPU0 t14563 RATE: dnx_qosea_policy_resolve : policy_name ingress_marking ifh 0x138 ul_ifh 0x0 intf_kbps 100000000
Dec 4 21:30:18.100 qos_ea/int_evts 0/0/CPU0 t14563 CAPS: policy_add : npu_id 5 ifh 0x138 ul_ifh 0x0 dir ingress policy_name ingress_marking num_classes 0 max_hierarchy 0
Dec 4 21:30:18.100 qos_ea/int_evts 0/0/CPU0 t14563 VRFY: policy_verify : Verifying policy ingress_marking pmaphd 0x7feedd2c1088
Dec 4 21:30:18.100 qos_ea/int_evts 0/0/CPU0 t14563 UTIL: if_qos_init : Initializing if_qos 0x3087c0bb78 with npu_id 5 ifh 0x138 ul_ifh 0x0 direction ingress ea_intf_type MainIf
Dec 4 21:30:18.100 qos_ea/int_evts 0/0/CPU0 t14563 VRFY: check_policy_on_parent_subintf : Did not find any reference to parent interface (0x138) in par_child_info_array
Dec 4 21:30:18.100 qos_ea/int_evts 0/0/CPU0 t14563 VRFY: check_policy_on_parent_subintf : parent_ifh: 0x138, dir: 0 (ingress)
Dec 4 21:30:18.100 qos_ea/int_evts 0/0/CPU0 t14563 UTIL: intf_bw_get : Banwdith of ifh 0x138 is intf_kbps: 100000000 kbps
Dec 4 21:30:18.100 qos_ea/int_evts 0/0/CPU0 t14563 CAPS: caps_add_int : ifh 0x138 ea_intf_type MainIf dir ingress
Dec 4 21:30:18.100 qos_ea/int_evts 0/0/CPU0 t14563 CAPS: caps_add : ifh 0x138 ea_intf_type MainIf dir ingress policy_name ingress_marking
Dec 4 21:30:18.100 qos_ea/int_evts 0/0/CPU0 t14563 CAPS: process_caps_add : 1 of 1 direction ingress on interface 0x138 policy_name ingress_marking
Dec 4 21:30:18.093 qos_ea/int_evts 0/0/CPU0 t14563 CAPS: process_caps_add : batch count = 1 . Current num_policies_in 0 num_policies_out 2
Dec 4 21:30:18.093 qos_ea/int_evts 0/0/CPU0 t14563 INT: im_msg_handler : Rx: caps add message (batch size: 1)
정책을 변경하고 예를 들어 클래스 i_match에 폴리서를 추가하면 qos_ea 추적에 표시됩니다. NCS5500에서는 정책 맵의 내부 수정이 지원됩니다.
RP/0/RP0/CPU0:xrg-ncs-04(config-pmap-c)#police rate percent 50
RP/0/RP0/CPU0:xrg-ncs-04(config-pmap-c-police)#commit
Dec 4 22:49:39.567 qos_ea/int_evts 0/0/CPU0 t14563 POLICER-INT: policer_get : for ifh 0x138 for npu 5 offset 0
Dec 4 22:49:39.567 qos_ea/int_evts 0/0/CPU0 t14563 POLICER-INT: (line# 147) : cir_kbps 50000000 cir_burst 4194304pir_kbps 0 pir_burst 0
Dec 4 22:49:39.567 qos_ea/int_evts 0/0/CPU0 t14563 POLICER-INT: (line# 144) : ifh 0x138 npu 5 offset 1 policer_type = 0 is_parent=0policer_id = 33
Dec 4 22:49:39.567 qos_ea/int_evts 0/0/CPU0 t14563 ACTN: (line# 1822) : class_name i_match offset 0 policer_id 33: configuring policer...
Dec 4 22:49:39.567 qos_ea/int_evts 0/0/CPU0 t14563 ACTN: (line# 1597) : class_name i_match offset 1 policer_id 33: configuring policer...
show qos interface 명령은 추가 사항도 반영합니다.
RP/0/RP0/CPU0:xrg-ncs-04#show qos interface hundredGigE 0/0/0/35 input
Mon Dec 4 23:25:19.684 UTC
NOTE:- Configured values are displayed within parentheses
Interface HundredGigE0/0/0/35 ifh 0x138 -- input policy
NPU Id: 5
Total number of classes: 2
Interface Bandwidth: 100000000 kbps
Policy Name: ingress_marking
Accounting Type: Layer1 (Include Layer 1 encapsulation and above)
------------------------------------------------------------------------------
Level1 Class = i_match
New qos group = 3
New discard class = 2
Policer Bucket ID = 0x21
Policer Stats Handle = 0x0
Policer committed rate = 49680000 kbps (50 %)
Policer conform burst = 4194304 bytes (default)
Level1 Class = class-default
Default Policer Bucket ID = 0x20
Default Policer Stats Handle = 0x0
Policer not configured for this class
qos_ea trace는 위 명령이 실행될 때도 변환된 값을 표시합니다.
폴리서는 22kbps의 증분 단계 크기를 사용합니다. 구성된 값은 라인 카드의 수식에서 사용할 경우 22kbps의 가장 가까운 배수로 반올림됩니다.
Dec 4 23:25:19.773 qos_ea/int_evts 0/0/CPU0 t14563 POLICER-INT: policer_get : cir_kbps 49680000 cir_burst_kbits 32768 cir_burst 4194304pir_kbps 49680000 cir_burst_kbits 32768 pir_burst 4194304
Dec 4 23:25:19.773 qos_ea/int_evts 0/0/CPU0 t14563 POLICER-INT: policer_get : ifh 0x138 npu 5 offset 1 policer_id 33 mode/policer_type 0/0 inlif 0
Dec 4 23:25:19.773 qos_ea/int_evts 0/0/CPU0 t14563 POLICER-INT: policer_get : for ifh 0x138 for npu 5 offset 1
이그레스(egress) QoS는 큐잉 작업을 지원합니다. NCS5500에서는 이그레스 방향으로 두 개의 서비스 정책을 가질 수 있습니다. 마킹용과 큐잉용으로 하나씩 주세요 마킹 작업을 위한 것입니다.
class-map match-any e_mark
match qos-group 3
end-class-map
!
policy-map egress_marking
class e_mark
set mpls experimental imposition 2
!
class class-default
!
end-policy-map
!
RP/0/RP0/CPU0:xrg-ncs-06#show feature-mgr client qos-ea policy summary location 0/0/CPU0
Thu Dec 21 10:44:33.978 UTC
Pol-Num Flags Classes Ref-cnt In-Hash Compiled Policy Name
------- ---------- ------- ------- ------- -------- -----------
1 0x01000000 2 1 Yes Yes egress_marking
RP/0/RP0/CPU0:xrg-ncs-06#show feature-mgr client qos-ea feature summary location 0/0/CPU0
Thu Dec 21 10:59:08.872 UTC
IFH NPU DIR Lookup-type ACL-ID Refcnt Feature-Name
---------- --- --- -------------------- ------ ------ ------------
0x340 0 OUT MAP_ID_QOS 0 1 egress_marking:0
이그레스 대기열 정책
class-map match-any tc1
match traffic-class 1
end-class-map
!
class-map match-any tc2
match traffic-class 2
end-class-map
!
class-map match-any tc3
match traffic-class 3
end-class-map
!
class-map match-any tc4
match traffic-class 4
end-class-map
!
class-map match-any tc5
match traffic-class 5
end-class-map
!
policy-map POLICY_QOS_OUT
class tc1
priority level 1
shape average percent 19
queue-limit 500 us
!
class tc2
priority level 2
shape average percent 20
queue-limit 500 us
!
class tc3
bandwidth percent 1
!
class tc4
bandwidth percent 20
!
class tc5
bandwidth percent 20
!
class class-default
bandwidth percent 20
!
end-policy-map
!
One can quick verify where a QoS policy is applied.
RP/0/RP0/CPU0:xrg-ncs-04#show policy-map targets pmap-name POLICY_QOS_OUT location 0/0/CPU0
Mon Dec 18 21:13:01.463 UTC
1) Policymap: POLICY_QOS_OUT Type: qos
Targets (applied as main policy):
HundredGigE0/0/0/35 output
Total targets: 1
Targets (applied as child policy):
Total targets: 0
show QoS interface 명령은 구성된 매개변수와 대기열 작업이 구성된 각 클래스의 대기열 ID를 표시합니다. 또한 대기열 크기와 같은 기본값을 가져올 수 있습니다.
RP/0/RP0/CPU0:xrg-ncs-04#show qos interface hundredGigE 0/0/0/35 output
Thu Dec 14 20:56:29.796 UTC
NOTE:- Configured values are displayed within parentheses
Interface HundredGigE0/0/0/35 ifh 0x138 -- output policy
NPU Id: 5
Total number of classes: 6
Interface Bandwidth: 100000000 kbps
VOQ Base: 1032
Accounting Type: Layer1 (Include Layer 1 encapsulation and above)
------------------------------------------------------------------------------
Level1 Class (HP1) = tc1
Egressq Queue ID = 1033 (HP1 queue)
Queue Max. BW. = 0 kbps (19 %)
Guaranteed service rate = 19000000 kbps
TailDrop Threshold = 1187840 bytes / 500 us (500 us)
WRED not configured for this class
Level1 Class (HP2) = tc2
Egressq Queue ID = 1034 (HP2 queue)
Queue Max. BW. = 0 kbps (20 %)
Guaranteed service rate = 20000000 kbps
TailDrop Threshold = 1253376 bytes / 501 us (500 us)
WRED not configured for this class
Level1 Class = tc3
Egressq Queue ID = 1035 (LP queue)
Queue Max. BW. = 100884395 kbps (default)
Queue Min. BW. = 1020015 kbps (1 %)
Inverse Weight / Weight = 1 / (BWR not configured)
Guaranteed service rate = 1000000 kbps
TailDrop Threshold = 1253376 bytes / 10 ms (default)
WRED not configured for this class
Level1 Class = tc4
Egressq Queue ID = 1036 (LP queue)
Queue Max. BW. = 100824615 kbps (default)
Queue Min. BW. = 20164923 kbps (20 %)
Inverse Weight / Weight = 1 / (BWR not configured)
Guaranteed service rate = 20000000 kbps
TailDrop Threshold = 25034752 bytes / 10 ms (default)
WRED not configured for this class
Level1 Class = tc5
Egressq Queue ID = 1037 (LP queue)
Queue Max. BW. = 100824615 kbps (default)
Queue Min. BW. = 20164923 kbps (20 %)
Inverse Weight / Weight = 1 / (BWR not configured)
Guaranteed service rate = 20000000 kbps
TailDrop Threshold = 25034752 bytes / 10 ms (default)
WRED not configured for this class
Level1 Class = class-default
Egressq Queue ID = 1032 (Default LP queue)
Queue Max. BW. = 100824615 kbps (default)
Queue Min. BW. = 20164923 kbps (20 %)
Inverse Weight / Weight = 1 / (BWR not configured)
Guaranteed service rate = 20000000 kbps
TailDrop Threshold = 25034752 bytes / 10 ms (default)
WRED not configured for this class
RP/0/RP0/CPU0:xrg-ncs-04#show feature-mgr client qos-ea policy summary location 0/0/CPU0
Thu Dec 14 21:27:30.486 UTC
Pol-Num Flags Classes Ref-cnt In-Hash Compiled Policy Name
------- ---------- ------- ------- ------- -------- -----------
3 0x00010000 6 0 Yes No POLICY_QOS_OUT
2 0x00000000 1 0 Yes No p_out
1 0x00004000 2 4 Yes Yes ingress_marking
RP/0/RP0/CPU0:xrg-ncs-04#show feature-mgr client qos-ea policy policy POLICY_QOS_OUT location 0/0/CPU0
Thu Dec 14 21:28:22.182 UTC
Policy name: POLICY_QOS_OUT
Policy Number: 3
Flags: 0x10000 [DNX_FM_POL_TC]
Class Number: 6
Reference Count: 0
In Hash: Yes
Is Compiled: No
Level: 0 Class Number: 0 Class Name: tc1
Match Count: 1 Flags: 0x0 Logical Op: MATCH_ANY
ACE: 0 Class:0 Match:0 proto ANY Flags:0x8080 [Grant]
DNX_FM_RANGE_TC: (1, 1)
UNKNOWN: UNKNOWN:
Level: 0 Class Number: 1 Class Name: tc2
Match Count: 1 Flags: 0x0 Logical Op: MATCH_ANY
ACE: 0 Class:1 Match:0 proto ANY Flags:0x8080 [Grant]
DNX_FM_RANGE_TC: (2, 2)
UNKNOWN: UNKNOWN:
Level: 0 Class Number: 2 Class Name: tc3
Match Count: 1 Flags: 0x0 Logical Op: MATCH_ANY
ACE: 0 Class:2 Match:0 proto ANY Flags:0x8080 [Grant]
DNX_FM_RANGE_TC: (3, 3)
UNKNOWN: UNKNOWN:
Level: 0 Class Number: 3 Class Name: tc4
Match Count: 1 Flags: 0x0 Logical Op: MATCH_ANY
ACE: 0 Class:3 Match:0 proto ANY Flags:0x8080 [Grant]
DNX_FM_RANGE_TC: (4, 4)
UNKNOWN: UNKNOWN:
Level: 0 Class Number: 4 Class Name: tc5
Match Count: 1 Flags: 0x0 Logical Op: MATCH_ANY
ACE: 0 Class:4 Match:0 proto ANY Flags:0x8080 [Grant]
DNX_FM_RANGE_TC: (5, 5)
UNKNOWN: UNKNOWN:
Level: 0 Class Number: 5 Class Name: class-default
Match Count: 1 Flags: 0x0 Logical Op: MATCH_ANY
ACE: 0 Class:5 Match:0 proto ANY Flags:0x28000 [Grant][Default]
UNKNOWN: UNKNOWN:
Adding WRED:
policy-map POLICY_QOS_OUT
class tc4
random-detect discard-class 1 5 ms 15 ms
!
class class-default
!
end-policy-map
!
end
Level1 Class = tc4
Egressq Queue ID = 1036 (LP queue)
Queue Max. BW. = 100824615 kbps (default)
Queue Min. BW. = 20164923 kbps (20 %)
Inverse Weight / Weight = 1 / (BWR not configured)
Guaranteed service rate = 20000000 kbps
TailDrop Threshold = 75497472 bytes / 30 ms (default)
WRED profile for Discard_Class 1
WRED Min. Threshold = 12517376 bytes (5 ms)
WRED Max. Threshold = 37748736 bytes (15 ms)
Default RED profile
WRED Min. Threshold = 0 bytes (0 ms)
WRED Max. Threshold = 0 bytes (0 ms)
RP/0/RP0/CPU0:xrg-ncs-04#show controllers npu voq-usage interface HundredGigE 0/0/0/35 instance 5 location 0/0/CPU0
Tue Nov 7 17:24:03.570 UTC
-------------------------------------------------------------------
Node ID: 0/0/CPU0
Intf Intf NPU NPU PP Sys VOQ Flow VOQ Port
name handle # core Port Port base base port speed
(hex) type (Gbps)
----------------------------------------------------------------------
Hu0/0/0/35 138 5 0 1 321 1032 1064 local 100 <- 1032 (Default LP queue) - displays the base queue -> refer to show qos interface commaand.
Display the queue details:
RP/0/RP0/CPU0:xrg-ncs-04#show controllers fia diagshell 5 "diag cosq voq id=1036 det=1" location 0/0/CPU0 <- 1036 (LP queue) - refer to show qos interface commaand.
Thu Dec 14 21:51:33.184 UTC
Node ID: 0/0/CPU0
Core 0:
Basic info
Q type: voq
num cos: 8, cosq class: 4
Base queue id: 1032, base queue gport: 0x24000408
Credit request type: BCM_COSQ_DELAY_TOLERANCE_100G_SLOW_ENABLED Adjusted for slow enabled 100Gb ports
Watchdog enable in common status message mode
Is queue in credit watchdog queue range:True
Credit watchdog message time: 0
Delete queue time: 512
Backoff enter queue credit balance threshold: 40960
Backoff exit queue credit balance threshold: 40960
Backlog enter queue credit balance threshold: 40960
Backlog exit queue credit balance threshold: 40960
Empty queue satisfied credit balance threshold: 0
Max empty queue credit balance threshold: 16384
Exceed max empty queue credit balance threshold: 1
Off-To-Slow credit balance threshold: 0
Off-To-Normal credit balance threshold: 38912
Slow-To-Normal credit balance threshold: 38912
Normal-To-Slow credit balance threshold: 38912
Delay Tolerance is NOT OCB only
Delay Tolerance is NOT High Q Priority
Slow Level Thresh Down in slow level number: 0 is: 0
Slow Level Thresh Down in slow level number: 1 is: 0
Slow Level Thresh Down in slow level number: 2 is: 0
Slow Level Thresh Down in slow level number: 3 is: 0
Slow Level Thresh Down in slow level number: 4 is: 0
Slow Level Thresh Down in slow level number: 5 is: 0
Slow Level Thresh Down in slow level number: 6 is: 0
Slow Level Thresh Up in slow level number: 0 is: 0
Slow Level Thresh Up in slow level number: 1 is: 0
Slow Level Thresh Up in slow level number: 2 is: 0
Slow Level Thresh Up in slow level number: 3 is: 0
Slow Level Thresh Up in slow level number: 4 is: 0
Slow Level Thresh Up in slow level number: 5 is: 0
Slow Level Thresh Up in slow level number: 6 is: 0
Credit value(local): 1024, Credit value(remote): 2048
Credit discount value: -2
Rate class info
WRED info:
Green : enable(False) min_thresh(0) max_thresh(0) drop_probability(0)
Yellow: enable(True) min_thresh(12517376) max_thresh(37748736) drop_probability(9)
Red : enable(False) min_thresh(0) max_thresh(0) drop_probability(0)
Black : enable(False) min_thresh(0) max_thresh(0) drop_probability(0)
Tail drop info:
Green : max queue size in bytes(75497472), max queue size in BDs(294912)
Yellow: max queue size in bytes(75497472), max queue size in BDs(294912)
Red : max queue size in bytes(75497472), max queue size in BDs(294912)
Black : max queue size in bytes(75497472), max queue size in BDs(294912)
Guaranteed info:
Green : min queue size in bytes(0), min queue size in BDs(0)
Yellow: min queue size in bytes(0), min queue size in BDs(0)
Red : min queue size in bytes(0), min queue size in BDs(0)
Black : min queue size in bytes(0), min queue size in BDs(0)
Fair adaptive tail drop info:
Enable: True
Green : alpha(-2)
Yellow: alpha(-2)
Red : alpha(-2)
Black : alpha(-2)
ECN wred info: enable(False) min_thresh(0) max_thresh(0) drop_probability(0)
ECN max queue size in bytes(524288), max queue size in BDs(524288)
VSQ-related
Category class: 2
Traffic class: 4
Connection class: 0
Green : Admission-test-templates(0)
Yellow: Admission-test-templates(0)
Red : Admission-test-templates(0)
Black : Admission-test-templates(0)
AdmissionTestProfileA[0]:'category, traffic class'
AdmissionTestProfileB[0]: 'category'
current queue size: 0 bytes, current queue bds size: 0
Attached VOQ connector: 0x00000428
Destination sys port: 0x00007fff
OCB eligiblity: True
[SNIP]
output for core 1 is ommitted.
대기열 크기를 모니터링하려면 위 명령을 실행하고 해당 행에 grep를 적용할 수 있습니다.
예: show controllers fia diagshell 5 "diag cosq voq id=1036 core=0 det=1" location 0/0/CPU0 | 현재 큐 크기
통계는 show policy-map interface 명령을 사용하여 표시할 수 있습니다.
예: show policy-map interface hungigE 0/0/0/35 output location 0/0/CPU0
참고: 다른 XR 플랫폼에서는 알 수 있듯이 출력이 상세하지 않다. 해당 WRED 또는 RED 프로파일의 라인은 표시되지 않습니다.
RP/0/RP0/CPU0:xrg-ncs-04#show policy-map interface hundredGigE 0/0/0/35 output location 0/0/CPU0
Thu Dec 14 22:05:50.971 UTC
Interface:HundredGigE0/0/0/35 Location: node0_0_CPU0 output: POLICY_QOS_OUT
Class tc1
Classification statistics (packets/bytes) (rate - kbps)
Matched : 0/0 0
Transmitted : 0/0 0
Total Dropped : 0/0 0
Queueing statistics
Queue ID : 1033
Taildropped(packets/bytes) : 0/0
Class tc2
Classification statistics (packets/bytes) (rate - kbps)
Matched : 0/0 0
Transmitted : 0/0 0
Total Dropped : 0/0 0
Queueing statistics
Queue ID : 1034
Taildropped(packets/bytes) : 0/0
Class tc3
Classification statistics (packets/bytes) (rate - kbps)
Matched : 0/0 0
Transmitted : 0/0 0
Total Dropped : 0/0 0
Queueing statistics
Queue ID : 1035
Taildropped(packets/bytes) : 0/0
Class tc4
Classification statistics (packets/bytes) (rate - kbps)
Matched : 0/0 0
Transmitted : 0/0 0
Total Dropped : 0/0 0
Queueing statistics
Queue ID : 1036
Taildropped(packets/bytes) : 0/0
Class tc5
Classification statistics (packets/bytes) (rate - kbps)
Matched : 0/0 0
Transmitted : 0/0 0
Total Dropped : 0/0 0
Queueing statistics
Queue ID : 1037
Taildropped(packets/bytes) : 0/0
Class class-default
Classification statistics (packets/bytes) (rate - kbps)
Matched : 0/0 0
Transmitted : 0/0 0
Total Dropped : 0/0 0
Queueing statistics
Queue ID : 1032
Taildropped(packets/bytes) : 0/0
멀티캐스트 트래픽이 예약되지 않았습니다. 기존 VOQ 대신 FMQ(Fabric Multicast Queues)를 사용합니다. 이 점수의 이그레스 멀티캐스트에서는 QoS가 지원되지 않습니다.
FMQ의 통계를 표시하려면 6.5.2 이상에서 이 명령을 사용할 수 있습니다.
RP/0/RP0/CPU0:NCS5508#show controllers npu stats voq base 0 instance 0 location 0/0/CPU0
Mon Jul 8 08:59:22.465 UTC
Asic Instance = 0
VOQ Base = 0
ReceivedPkts ReceivedBytes DroppedPkts DroppedBytes
-------------------------------------------------------------------
TC_0 = 224 15673 49 3468
TC_1 = 0 0 0 0
TC_2 = 0 0 0 0
TC_3 = 0 0 0 0
TC_4 = 0 0 0 0
TC_5 = 0 0 0 0
TC_6 = 0 0 0 0
TC_7 = 0 0 0 0
또한 NPU에서 패킷을 따라 적절한 TC(Traffic Class)가 적용되는지 확인할 수 있습니다. 한번 봐주세요
섹션 해당 diag shell 명령 및 필터에 대한 트랜짓 패킷을 따릅니다.
다음은 몇 가지 추가 명령입니다.
개별 인터페이스에서 문제가 의심되는 경우
인터페이스가 번들인 경우 전체 번들 멤버 정보를 제공합니다.
set discard-class와 결합된 폴리서가 작동하지 않습니다.
인그레스 서비스 정책에서는 큐 작업이 지원되지 않습니다.
policy-map SET-AND-QUEUE-OUT
class GOLD
priority level 1
shape average percent 20
queue-limit 500 us
set mpls experimental imposition 5
오류 메시지는 다음과 같습니다. !!% "DNX_QOSEA"가 '경고' 조건 "잘못된 이그레스 정책 맵 컨피그레이션을 감지했습니다. 기능을 표시하려면 qos-group을 사용하고, 기능을 대기시키는 데에는 traffic-class를 사용합니다."
마킹용 1개와 큐잉용 1개씩, 2개의 별도 서비스 정책을 적용하는 것이 가능하다.
HQoS 모드에서는 우선 순위 클래스에 속도 제한 컨피그레이션(쉐이퍼)이 있어야 합니다. 유효한 쉐이퍼 값은 우선 순위 대역폭 예약으로 사용됩니다.
다음 예와 같이 QoS 컨피그레이션을 커밋한 후 경고 로그가 표시되는 경우도 있습니다.
커밋 작업의 결과로 탐지된 검증 경고 비율(%) 경고를 보려면 '구성 경고 표시'를 실행하십시오.
제안 CLI를 실행하면 다음과 같이 표시됩니다.
!! SEMANTIC ERRORS: This configuration was rejected by
!! the system due to semantic errors. The individual
!! errors with each failed configuration command can be
!! found below.
<이유가 인쇄되었습니다.>
그럼에도 불구하고 컨피그레이션이 적용됩니다. 이 경우에는 yang 확인에서 올 수 있습니다.
구성 검증 활성화가 구성되었는지 확인하십시오.
이 경우 양 규칙이 발생했을 가능성이 높습니다.
디버그 컨피그레이션 검증 ccv 세부 정보를 켜고 컨피그레이션을 다시 커밋할 수 있습니다.
디버그 출력에서 "Unsupported(지원되지 않음)" 메시지를 트리거하는 yang 규칙이 표시되어야 합니다.
Example:
RP/0/RP0/CPU0:Jan 22 15:57:44.441 UTC: ccv[189]: ...essage : 'Service Policy on interface "TenGigE0/0/0/7/1.102" is not supported', rule group name: 'qos-ma', rule name: 'cac-ser-pol-qos-in-unsupp-intf').
이 경우 QoS PI 팀에 문의하십시오.
| 개정 | 게시 날짜 | 의견 |
|---|---|---|
1.0 |
30-Jun-2021
|
최초 릴리스 |
피드백