Class of Service (CoS)

Class of Service (CoS) prioritizes, rate-limits, rate shapes, and otherwise controls defined traffic types of a switch; it is used as part of a bandwidth management strategy. CoS is an enhancement to the existing Quality of Service (QoS) feature. CoS is typically configured using NetSight through the CoS Management Information Base (MIB).

Supported Platforms

  • BlackDiamond X8 and BlackDiamond 8800 series switches
  • Summit X770, X670, X670-G2, X480, X460, X460-G2, X450-G2, X440, and X430 series switches
  • E4G-200 and E4G-400 cell site routers


  • CoS reference tables have a fixed mapping.
  • Both global and per-port meters cannot be configured at the same time on platforms that require the port meter map table.
  • Per-port meter out-of-profile counters are not accurately supported.
  • Flood out-of-profile counters and actions are the aggregate of all flood types (unknown unicast, multicast, and broadcast) for a given port.
  • On Summit X670-G2 and X770 series switches and on BlackDiamond X8 modules: BDXB-100G4X, BDXB-100G4X-XL, and BDXB-40G12X-XL, when hybrid scheduling is configured on ports (WxRR with some queues in Strict-Priority), the SP queues must be contiguous

New CLI Commands

create ports group port_group

delete ports group port_group

configure ports {group} port_group [[add | delete] port_list]

show ports group {port_group}

unconfigure {meter} metername ports [port_group | port_list]

clear ports [all | port_list|port_group] rate-limit flood out-of-profile {disabled-ports} {status | counter}

unconfigure cos-index cos_index [{qosprofile} {ingress-meter} {replace-tos}]

show cos-index {cos_index} show meter {metername} out-of-profile {{disabled-ports} ports [port_list | port_group] | global-count}

clear meter {metername} out-of-profile {disabled-ports} {status | counters} {ports [ all | port_list | port_group]}

configure ports [port_list | all] dot1p dot1p_priority

unconfigure qosscheduler ports [port_list | port_group | all]

Changed CLI Commands

Changes are underlined.

configure qosscheduler [strict-priority | weighted-round-robin | weighted-deficit-round-robin] {ports [port_list | port_group | all]}

show qosscheduler {ports [port_list | port_group | all]}

configure {qosprofile} qosprofile [{maxbuffer buffer_percentage} {weight weight_value | use-strict-priority} {ports [port_list | port_group | all]}]

configure [{qosprofile} {egress} qosprofile | {qosprofile} ingress [iqosprofile]] [{minbw minbw_number} {qos-weight weight} {maxbw maxbw_number} | {committed_rate committed_bps [K | M]} {qos-weight weight} {peak_rate peak_bps [K | M]} ] {priority [priority | priority_number]} [ports [port_list | port_group | all]]

show qosprofile {ingress | egress} [ports [port_list | all | port_group] | NULL]

configure {qosprofile} {egress} qosprofile [wred [color [tcp [green | red] | non-tcp [any | red]] {min-threshold min_thresh} {max-threshold max_thresh} {max-drop-rate max_drop_rate} | avg-weight avg_weight]] [ports [port_list | port_group | all]]

configure {meter} metername [{committed-rate cir committed-rate-unit {committed-burst-size committed-burst-size [Kb|Mb]}} {peak-rate pr peak-rate-unit} {peak-burst-size peak-burst-size [Kb|Mb]} {max-burst-size burst-size [Kb | Mb]}] {out-actions [{disable-port} {drop | set-drop-precedence {dscp [dscp-value | none]}} {log} {trap}]} {ports [port_group | port_list]}

show meter {meter_name} {ports [port_group|port_list]} {out-actions}

configure ports [port_list|port_group] rate-limit [egress [no-limit | cir-rate [Kbps | Mbps | Gbps] {max-burst-size burst-size [Kb | Mb]}] | flood [broadcast | multicast | unknown-destmac] [no-limit | pps {out-actions [{log} {trap} {disable-port}]}]]

configure dot1p type dot1p_priority {qosprofile} qosprofile {ingress-meter [ing_meter | none]}

[enable | disable] dot1p replacement ports [port_list | all] {{qosprofile} qosprofile}

[enable | disable] diffserv replacement ports [port_list | all] {{qosprofile} qosprofile}

show ports {port_list | port_group | tag tag} rate-limit flood {out-actions | out-of-profile {disabled-ports}} {no-refresh}


For the above command, the show screen for the rate-limit flood configuration now shows the port-group option. A separate screen shows the configured out-actions. Another screen shows a per-port out-of-profile status that indicates that the flood limit is exceeded on the port. Another screen show ports that are disabled.

The show access-list meter command now shows per-port meter out-of-profile counters for meters that are applied using ACL rules. The output shows the additional syslog,

The clear access-list meter command now allows the clearing of the out-of-profile per-port meters counters. When a per-port meter is specified, it clears the counter for the rule associated with the meter.

The show port information details command displays the default dot1p priority used for the internal priority for untagged traffic on a specified port. Additionally, it displays the per-port/per-qosprofile dot1p and diffserv examination status.