此产品的文档集力求使用非歧视性语言。在本文档集中,非歧视性语言是指不隐含针对年龄、残障、性别、种族身份、族群身份、性取向、社会经济地位和交叉性的歧视的语言。由于产品软件的用户界面中使用的硬编码语言、基于 RFP 文档使用的语言或引用的第三方产品使用的语言,文档中可能无法确保完全使用非歧视性语言。 深入了解思科如何使用包容性语言。
思科采用人工翻译与机器翻译相结合的方式将此文档翻译成不同语言,希望全球的用户都能通过各自的语言得到支持性的内容。 请注意:即使是最好的机器翻译,其准确度也不及专业翻译人员的水平。 Cisco Systems, Inc. 对于翻译的准确性不承担任何责任,并建议您总是参考英文原始文档(已提供链接)。
本文档介绍思科网络融合系统(NCS)5500系列的QoS故障排除指南。
各种命令存在的限制。有关详细信息,请参阅。
最有用、最重要的命令之一是show qos interface <interface> input|output
它提供有关您所应用的服务策略的有用信息。它显示已配置和转换的参数(在监察器、整形器、尾部丢弃阈值等情况下)、虚拟队列ID、记帐类型等。
从入口上的简单策略开始。
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 summary location <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跟踪还会显示转换后的值。
监察器使用22 kbps的增量步长。当在线卡的公式中使用时,配置值四舍五入为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
出口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 100GigE 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
组播流量未计划。它使用交换矩阵组播队列(FMQ)而不是传统VOQ。在该得分上,不支持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)。请看
部分按照相应的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"检测到“warning”条件“Invalid egress policy-map configuration”。使用qos-group标记功能,使用traffic-class进行排队功能”。
可以应用两个单独的服务策略,一个用于标记,另一个用于排队。
在HQoS模式下,优先级类必须具有速率限制配置(整形器)。 有效整形器值被视为优先级带宽预留。
在某些情况下,提交QoS配置后,您可能会看到警告日志,如以下示例所示:
%由于提交操作而检测到的验证警告。请发出“show configuration warnings”以查看警告
如果执行建议的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.
<此处显示原因>
但是,配置会被应用。在这种情况下,这可能来自阳检验。
请检查是否配置了配置验证启用。
如果情况是这样,那么很可能已经触发了“阳”规则。
您可以打开调试配置验证ccv detail并再次提交配置。
您应该看到扬规则,该规则在调试输出中触发“不支持”消息。
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 |
初始版本 |