OcNOS-DC : System Management Guide : System Management Configuration Guide : Control Plane Policing Configuration
Control Plane Policing Configuration
This chapter contains basic information about cpu-queue properties and complete sample configuration for cpu-queue properties.
DUT have many CPU queues for management/classification of control traffic and provides rate limiters for control plane protection. Different types of CPU port bound packets are queued in different cpu-queues each with different properties like rate, queue-limit, monitoring status and drop status.
Control plane policing (CoPP) manages the traffic flow destined to the host router CPU for control plane processing.
CoPP limits the traffic forwarded to the host CPU and avoids impact on system performance.
1. CoPP has organized handling of control packets by providing per-protocol hardware CPU queues. So, control packets are queued in different CPU queues based on protocol.
2. Per-protocol CPU queue rate limits and buffer allocations are programmed during router initialization, thus every CPU queue is rate-limited to a default stable and balanced behavior across protocols.
3. When control packets received at higher rate than the programmed rate, the excess traffic is dropped at queue level in the packet processor hardware itself.
4. All CPU queues are pre-programmed with default rate limits and buffer allocations to ensure a default stable and balanced behavior across protocols.
Topology
Simple configuration of CPU Queuing
.
 
 
Table 2-1: Default CPU queues
Protocol Queues
Default rate in PPS
Maximum configurable rate in PPS
best-effort
2113
2113
ipmc-miss
2113
2113
L3-miss
211
211
Sflow
32000
100000
Bgp
1500
1500
Vrrp
500
500
ldp-rsvp
500
500
Rip
500
500
Ospf
2000
2000
Dhcp
100
2048
Nd
6000
6000
Mpls
500
500
pim
4000
4000
arp
6000
6000
igmp
4000
4000
Bpdu
10000
10000
Ccm
500
500
Bfd
2000
2000
Ptp
1000
1000
isis
500
1000
trill-isis
1000
1000
Acl
200
200
vxlan
500
500
daivm
100
500
 
#show cpu-queue details
* - Can not configure the parameter
Cpu queue Rate In PPS Monitor Status Lossy Status
Name Configured Default Max Rate Allowed Configured Default Configured Default
=========== ========== ======= ================ =========== ========== =========== ==========
best-effort - 2113 2113 - * no-monitor - * lossy
ipmc-miss - 2113 2113 - * no-monitor - * lossy
l3-miss - 211 211 - * no-monitor - * lossy
sflow - 32000 100000 - monitor - * lossy
bgp - 1500 1500 - monitor - lossless
vrrp - 500 500 - monitor - lossless
ldp-rsvp - 500 500 - monitor - lossless
rip - 500 500 - monitor - lossless
ospf - 2000 2000 - monitor - lossless
dhcp - 100 2048 - no-monitor - lossy
nd - 6000 6000 - monitor - lossless
mpls - 500 500 - no-monitor - lossy
pim - 4000 4000 - * no-monitor - * lossy
arp - 6000 6000 - monitor - lossless
igmp - 4000 4000 - * no-monitor - * lossy
bpdu - 10000 10000 - monitor - lossless
ccm - 500 500 - no-monitor - lossy
bfd - 2000 2000 - no-monitor - lossy
ptp - 1000 1000 - no-monitor - lossy
isis - 500 1000 - monitor - lossless
trill-isis - 1000 1000 - monitor - lossless
acl - 200 1000 - * no-monitor - * lossy
vxlan - 500 500 - monitor - lossy
daivm - 100 500 - no-monitor - lossy
 
Note: Enable feature before validating cpu-queue for that protocol.
Monitor option will start generating operational log for number of drop packets and percent.
OcNOS(config)#2021 Nov 16 11:40:24.188 : OcNOS : HSL : CRITI : [CPU_QUEUE_IS_FULL_2]: 967368133 packets dropped at queue bpdu due to queue full. Average CPU queue rate is 99% (499 pkts/sec).
Configuring CPU Queuing Lossless
Do the following to configure CPU queuing on an interface.
 
configure terminal
Enter config mode
(config)#cpu queue bpdu rate 600 lossless no monitor
Configure bpdu cpu-queue with rate of 600 pps and lossless and no-monitor option
(config)#exit
Exit config mode
 
Validation
Enter the commands listed in the sections below to confirm the configurations.
#show running-config | in cpu
cpu-queue bpdu rate 600 lossless no-monitor
#show cpu-queue details
* - Can not configure the parameter
Cpu queue Rate In PPS Monitor Status Lossy Status
Name Configured Default Max Rate Allowed Configured Default Configured Default
=========== ========== ======= ================ =========== ========== =========== ==========
best-effort - 2113 2113 - * no-monitor - * lossy
ipmc-miss - 2113 2113 - * no-monitor - * lossy
l3-miss - 211 211 - * no-monitor - * lossy
sflow - 32000 100000 - monitor - * lossy
bgp - 1500 1500 - monitor - lossless
vrrp - 500 500 - monitor - lossless
ldp-rsvp - 500 500 - monitor - lossless
rip - 500 500 - monitor - lossless
ospf - 2000 2000 - monitor - lossless
dhcp - 100 2048 - no-monitor - lossy
nd - 6000 6000 - monitor - lossless
mpls - 500 500 - no-monitor - lossy
pim - 4000 4000 - * no-monitor - lossy
arp - 6000 6000 - monitor - lossless
igmp - 4000 4000 - * no-monitor - * lossy
bpdu 500 10000 10000 no-monitor monitorloss less lossless
ccm - 500 500 - no-monitor - lossy
bfd - 2000 2000 - no-monitor - lossy
ptp - 1000 1000 - no-monitor - lossy
isis - 500 1000 - monitor - lossless
trill-isis - 1000 1000 - monitor - lossless
acl - 200 1000 - * no-monitor - * lossy
vxlan - 500 500 - monitor - lossy
daivm - 100 500 - no-monitor - lossy
 
#show int cpu counters rate kbps
Load interval: 30 second
+-------------------+--------------+-------------+--------------+-------------+
| CPU Queue(%) | Rx kbps | Rx pps | Tx kbps | Tx pps |
+-------------------+--------------+-------------+--------------+-------------+
bpdu ( 99%) - - 38.41 599
 
 
#show interface cpu counters queue-stats
E - Egress, I - Ingress, Q-Size is in bytes
* indicates monitor is active
+-------------+--------------------+--------+-----------------+-------------------+-----------------+-------------------+
| Interface | Queue/Class-map | Q-Size | Tx pkts | Tx bytes | Dropped pkts | Dropped bytes |
+-------------+--------------------+--------+-----------------+-------------------+-----------------+-------------------+
cpu bpdu (E) 320736 21703 1388992 5363326 343240064
 
 
Configuring CPU Queuing Lossy
Do the following to configure CPU queuing on an interface.
 
configure terminal
Enter config mode
(config)#cpu queue bpdu rate 500 lossy no monitor
Configure bpdu cpu-queue with rate of 500 pps and lossy and no-monitor option
(config)#exit
Exit config mode
 
Validation
Enter the commands listed in the sections below to confirm the configurations.
#show running-config | in cpu
cpu-queue bpdu rate 500 lossy no-monitor
 
#show cpu-queue details
* - Can not configure the parameter
Cpu queue Rate In PPS Monitor Status Lossy Status
Name Configured Default Max Rate Allowed Configured Default Configured Default
=========== ========== ======= ================ =========== ========== =========== ==========
best-effort - 2113 2113 - * no-monitor - * lossy
ipmc-miss - 2113 2113 - * no-monitor - * lossy
l3-miss - 211 211 - * no-monitor - * lossy
sflow - 32000 100000 - monitor - * lossy
bgp - 1500 1500 - monitor - lossless
vrrp - 500 500 - monitor - lossless
ldp-rsvp - 500 500 - monitor - lossless
rip - 500 500 - monitor - lossless
ospf - 2000 2000 - monitor - lossless
dhcp - 100 2048 - no-monitor - lossy
nd - 6000 6000 - monitor - lossless
mpls - 500 500 - no-monitor - lossy
pim - 4000 4000 - * no-monitor - * lossy
arp - 6000 6000 - monitor - lossless
igmp - 4000 4000 - * no-monitor - * lossy
bpdu 500 10000 10000 no-monitor monitor lossy lossless
ccm - 500 500 - no-monitor - lossy
bfd - 2000 2000 - no-monitor - lossy
ptp - 1000 1000 - no-monitor - lossy
isis - 500 1000 - monitor - lossless
trill-isis - 1000 1000 - monitor - lossless
acl - 200 1000 - * no-monitor - * lossy
vxlan - 500 500 - monitor - lossy
daivm - 100 500 - no-monitor - lossy
 
OcNOS#show interface cpu counters queue-stats
E - Egress, I - Ingress, Q-Size is in bytes
* indicates monitor is active
+-------------+--------------------+--------+-----------------+-------------------+-----------------+-------------------+
| Interface | Queue/Class-map | Q-Size | Tx pkts | Tx bytes | Dropped pkts | Dropped bytes |
+-------------+--------------------+--------+-----------------+-------------------+-----------------+-------------------+
cpu nd (E) 0 17 1998 0 0
cpu bpdu (E) 86320 153802 9843328 39667426 2538702464
 
OcNOS#show int cpu counters rate kbps
Load interval: 30 second
+-------------------+--------------+-------------+--------------+-------------+
| CPU Queue(%) | Rx kbps | Rx pps | Tx kbps | Tx pps |
+-------------------+--------------+-------------+--------------+-------------+
bpdu ( 99%) - - 31.97 499