PFC Frames and ECN Packets Monitoring
Overview
OcNOS supports
Priority-based Flow Control (PFC) to pause frames using defined times for each of the eight priority classes. This prevents congestion and improves transmission performance by letting the transmitter adjust its data flow according to the receiver’s processing capacity.
Also supports Explicit Congestion Notification (ECN), which provides end-to-end congestion signaling between ECN-enabled senders and receivers in TCP/IP networks. Instead of dropping packets, ECN marks them to indicate congestion, prompting the sender to temporarily reduce its transmission rate until congestion clears. This reduces both packet loss and delay. ECN is defined in RFC 3168.
Feature Characteristics
This functionality enables:
• ECN marked packet monitoring on an interface
• PFC paused frames monitoring on an interface
• Monitored interfaces generate logs, NETCONF notifications, and SNMP traps whenever monitored packets are detected, including PFC frames and ECN-marked packets.
Limitation:
This functionality is applicable to the chips Tomahawk 2 (TH2) series platforms, Tomahawk3 (TH3) platforms, Tomahawk4 (TH4) platforms, Tomahawk5 (TH5) platforms, Trident3 (TR3) platforms and Trident4 (TR4) platforms.
Benefits
Improved Congestion Management – Prevents buffer overflows and packet drops by dynamically controlling traffic flow.
Per-Priority Traffic Control – Ensures that critical traffic classes (e.g., storage or real-time applications) are not impacted by congestion in other classes.
Reduced Packet Loss – Uses packet marking instead of dropping to signal congestion, minimizing retransmissions.
Higher Throughput Efficiency – Link utilization can be optimized via adjusting transmission rates based on real-time network conditions.
Prerequisites
PFC monitoring data requires a working PFC configuration and active PFC traffic. Similarly, ECN monitoring data requires a working ECN configuration and active ECN traffic.
Configuring PFC Frames and ECN Packets Monitoring
The configuration procedure outlines the steps required to enable ECN and PFC Support for Lossless TCP/IP Transport on the L2 networks, ensuring the network can handle high-priority, lossless AI/ML traffic.
The section includes the following configuration and validations:
Configuration - ECN Marking and PFC Pausing
• ECN Configuration (Bridging and ECN Marking)
• ECN Validation
• PFC Configuration (Bridging and PFC Pausing)
• PFC Validation
Topology
The topology uses a Switch1 with an ingress interface cd2/1 (connected to a node which generates traffic) and an egress interface xe66 (connected to destination node which receives the traffic). Congestion is induced on the egress interface xe66 using shapers within QoS policy maps.
The following topology shows PFC pause frame monitoring on the ingress and egress interfaces of Switch 1.
PFC Enabled Bridge
The following topology shows ECN Marked packets monitoring on the ingress and egress interfaces of Switch 1.
ECN Enabled Bridge
Configuration - ECN Marking and PFC Pausing
The following steps configure monitoring of PFC and ECN packets transmitted and received on an interface when monitoring is enabled.
1. Configure global settings - QoS, VLAN/Bridge, ingress port and egress port on Switch 1.
(config)#qos enable
(config)#vlan database
(config-vlan)#vlan-reservation 4001-4094
(config-vlan)#vlan 2 bridge 1 state enable
(config)#bridge 1 protocol rstp vlan-bridge
(config)#interface cd2/1
(config-if)#description Switch1
(config-if)#switchport
(config-if)#bridge-group 1
(config-if)#switchport mode trunk
(config-if)#switchport trunk allowed vlan add 2
(config-if)#load-interval 30
(config-if)#mtu 9216
ECN Configuration (Bridging and ECN Marking)
2. Configure ECN policy.
(config)#policy-map type queuing default ECN
(config-cmap-que)#class type queuing default q0
(config-cmap-que)#priority
(config-cmap-que)#lossless
(config-cmap-que)#exit
(config)#class type queuing default q1
(config-cmap-que)#priority
(config-cmap-que)#lossless
(config-cmap-que)#exit
(config)#class type queuing default q2
(config-cmap-que)#priority
(config-cmap-que)#lossless
(config-cmap-que)#exit
(config)#class type queuing default q3
(config-cmap-que)#shape 1 gbps
(config-cmap-que)#priority
(config-cmap-que)#random-detect green min-threshold 40 max-threshold 50 yellow min-threshold 70 max-threshold 80 red min-threshold 100 max-threshold 110 packets ecn
(config-cmap-que)#exit
(config)#class type queuing default q4
(config-cmap-que)#priority
(config-cmap-que)#lossless
(config-cmap-que)#exit
(config)#class type queuing default q5
(config-cmap-que)#priority
(config-cmap-que)#lossless
(config-cmap-que)#exit
3. Apply policy and monitor. Ensure PFC is not applied when only ECN is required.
OcNOS(config)#interface xe66
OcNOS(config-if)#description Egress-interface
OcNOS(config-if)#switchport
OcNOS(config-if)#bridge-group 1
OcNOS(config-if)#switchport mode trunk
OcNOS(config-if)#switchport trunk allowed vlan all
OcNOS(config-if)#load-interval 30
OcNOS(config-if)#mtu 9216
OcNOS(config-if)#service-policy type queuing output ECN
OcNOS(config-if)#monitor ecn
PFC Configuration (Bridging and PFC Pausing)
Setup to enable PFC pausing instead of ECN marking on congestion.
4. Configure ingress port cd2/1 and egress port xe66.
(config)#interface cd2/1
(config-if)#description Switch1
(config-if)# switchport
(config-if)#bridge-group 1
(config-if)#switchport mode trunk
(config-if)#switchport trunk allowed vlan add 2
(config-if)#load-interval 30
(config-if)#mtu 9216
(config)#interface vlan1.2
(config-if)# mtu 9216
(config)#interface xe66
(config-if)#description Connected-Destination Host
(config-if)#load-interval 30
(config-if)#mtu 9216
(config-if)#service-policy type queuing output ECN
(config-if)#monitor ecn
5. Configure PFC policy.
(config)#policy-map type queuing default PFC
(config-cmap-que)#class type queuing default q0
(config-cmap-que)#priority
(config-cmap-que)#lossless
(config-cmap-que)#exit
(config)#class type queuing default q1
(config-cmap-que)#priority
(config-cmap-que)#lossless
(config-cmap-que)#exit
(config)#class type queuing default q2
(config-cmap-que)#priority
(config-cmap-que)#lossless
(config-cmap-que)#exit
(config)#class type queuing default q3
(config-cmap-que)#shape 1 gbps
(config-cmap-que)#priority
(config-cmap-que)#exit
(config)#class type queuing default q4
(config-cmap-que)#priority
(config-cmap-que)#lossless
(config-cmap-que)#exit
(config)#class type queuing default q5
(config-cmap-que)#priority
(config-cmap-que)#lossless
(config-cmap-que)#exit
6. Enable PFC policy.
(config)#interface cd2/1
(config-if)#description Ingress-port
(config-if)#switchport
(config-if)#bridge-group 1
(config-if)#switchport mode trunk
(config-if)#switchport trunk allowed vlan all
(config-if)#priority-flow-control mode on
(config-if)#priority-flow-control enable priority 0 1 2 3 4
(config-if)#load-interval 30
(config-if)#mtu 9216
(config-if)#monitor pfc
(config-if)#interface xe66
(config-if)#description Egress-port
(config-if)#bridge-group 1
(config-if)#switchport mode trunk
(config-if)#switchport trunk allowed vlan all
(config-if)#priority-flow-control mode on
(config-if)#priority-flow-control enable priority 0 1 2 3 4
(config-if)#load-interval 30
(config-if)#mtu 9216
(config-if)#service-policy type queuing output PFC
Sample Show Running Configuration on Switch 1
For PFC
!
service password-encryption
!
logging console 5
logging monitor 5
logging level all 7
!
!
snmp-server enable traps link linkDown
snmp-server enable traps link linkUp
!
qos enable
!
hostname DUT1
port cd2 breakout 4X10g
bridge 1 protocol rstp vlan-bridge
tfo Disable
errdisable cause stp-bpdu-guard
data-center-bridging enable bridge 1
priority-flow-control enable bridge 1
feature dns relay
ip dns relay
ipv6 dns relay
!
policy-map type queuing default PFC
class type queuing default q0
priority
lossless
exit
class type queuing default q1
priority
lossless
exit
class type queuing default q2
priority
lossless
exit
class type queuing default q3
shape 1 gbps
priority
lossless
exit
class type queuing default q4
priority
lossless
exit
class type queuing default q5
priority
lossless
exit
!
vlan database
vlan-reservation 4001-4094
vlan 2 bridge 1 state enable
!
ip vrf management
!
interface cd1
!
interface cd2/1
description Connected-STC
switchport
bridge-group 1
switchport mode trunk
switchport trunk allowed vlan all
priority-flow-control mode on
priority-flow-control enable priority 0 1 2 3 4
load-interval 30
mtu 9216
monitor pfc
!
interface cd2/2
!
!
interface eth0
ip vrf forwarding management
ip address dhcp
!
interface lo
ip address 127.0.0.1/8
ip address 1.1.1.1/32 secondary
ipv6 address ::1/128
!
interface lo.management
ip vrf forwarding management
ip address 127.0.0.1/8
ipv6 address ::1/128
!
interface xe65
!
interface xe66
description Connected-DUT2
switchport
bridge-group 1
switchport mode trunk
switchport trunk allowed vlan all
priority-flow-control mode on
priority-flow-control enable priority 0 1 2 3 4
load-interval 30
mtu 9216
service-policy type queuing output PFC
!
exit
!
!
end
!
For ECN
!
service password-encryption
!
logging console 5
logging monitor 5
logging level all 7
!
snmp-server enable traps link linkDown
snmp-server enable traps link linkUp
!
qos enable
!
hostname DUT1
port cd2 breakout 4X10g
bridge 1 protocol rstp vlan-bridge
tfo Disable
errdisable cause stp-bpdu-guard
data-center-bridging enable bridge 1
priority-flow-control enable bridge 1
feature dns relay
ip dns relay
ipv6 dns relay
!
policy-map type queuing default ECN
class type queuing default q0
priority
lossless
exit
class type queuing default q1
priority
lossless
exit
class type queuing default q2
priority
lossless
exit
class type queuing default q3
shape 1 gbps
priority
random-detect green min-threshold 40 max-threshold 50 yellow min-threshold 70 max-threshold 80 red min-threshold 100 max-threshold 110 packets ecn
exit
class type queuing default q4
priority
lossless
exit
class type queuing default q5
priority
lossless
exit
!
vlan database
vlan-reservation 4001-4094
vlan 2 bridge 1 state enable
!
ip vrf management
!
interface cd1
!
interface cd2/1
description Connected-STC
switchport
bridge-group 1
switchport mode trunk
switchport trunk allowed vlan all
load-interval 30
mtu 9216
!
interface cd2/2
!
interface eth0
ip vrf forwarding management
ip address dhcp
!
interface lo
ip address 127.0.0.1/8
ip address 1.1.1.1/32 secondary
ipv6 address ::1/128
!
interface lo.management
ip vrf forwarding management
ip address 127.0.0.1/8
ipv6 address ::1/128
!
interface xe65
!
interface xe66
description Connected-DUT2
switchport
bridge-group 1
switchport mode trunk
switchport trunk allowed vlan all
load-interval 30
mtu 9216
service-policy type queuing output ECN
monitor ecn
!
exit
!
!
end
Validation
ECN Validation
Verify the traffic rates on interfaces.
Switch1 #sh int counters rate mbps
+-------------------+--------------+-------------+--------------+-------------+
| Interface | Rx mbps | Rx pps | Tx mbps | Tx pps |
+-------------------+--------------+-------------+--------------+-------------+
cd2/1 4324.80 4223439 0.00 0
xe66 0.00 0 1000.08 976642
Switch1 #
Switch1 #sh int counters rate mbps
+-------------------+--------------+-------------+--------------+-------------+
| Interface | Rx mbps | Rx pps | Tx mbps | Tx pps |
+-------------------+--------------+-------------+--------------+-------------+
cd2/1 4324.81 4223444 0.00 0
xe66 0.00 0 1000.08 976641
Switch1 #
Switch1 #
Switch1 #sh int counters rate mbps
+-------------------+--------------+-------------+--------------+-------------+
| Interface | Rx mbps | Rx pps | Tx mbps | Tx pps |
+-------------------+--------------+-------------+--------------+-------------+
cd2/1 4324.81 4223444 0.00 0
xe66 0.00 0 1000.08 976641
Switch1 #
Switch1 #
Switch1 #
Switch1 #sh int counters rate mbps
+-------------------+--------------+-------------+--------------+-------------+
| Interface | Rx mbps | Rx pps | Tx mbps | Tx pps |
+-------------------+--------------+-------------+--------------+-------------+
cd2/1 4324.81 4223444 0.00 0
xe66 0.00 0 1000.08 976641
High ingress rate on cd2/1 (~4324.81 Mbps), while egress xe66 is capped at ~1000.08 Mbps due to the shaper. This confirms congestion on xe66 without PFC pause (ingress rate is high).
Verify packet and byte counters for traffic passing through queues defined in applied policy maps.
Switch1 #sh policy-map statistics
Type qos class-map statistics:
+------------------------------------+-----------------+-----------------+-----------------+------------------+
| Class-map | Match pkts | Match bytes | Dropped pkts | Dropped Bytes |
+------------------------------------+-----------------+-----------------+-----------------+------------------+
Type queuing class-map statistics:
+--------------------------------+-----------------+-----------------+-----------------+------------------+
| Class-map | Total pkts | Total bytes | Dropped pkts | Dropped Bytes |
+--------------------------------+-----------------+-----------------+-----------------+------------------+
xe66
q3 899353044 115117189632 294034145 37636370560
Switch1 #
Switch1 #sh policy-map statistics
Type qos class-map statistics:
+------------------------------------+-----------------+-----------------+-----------------+------------------+
| Class-map | Match pkts | Match bytes | Dropped pkts | Dropped Bytes |
+------------------------------------+-----------------+-----------------+-----------------+------------------+
Type queuing class-map statistics:
+--------------------------------+-----------------+-----------------+-----------------+------------------+
| Class-map | Total pkts | Total bytes | Dropped pkts | Dropped Bytes |
+--------------------------------+-----------------+-----------------+-----------------+------------------+
xe66
q3 900905669 115315925632 300527546 38467525888
Switch1 #
Switch1 #
Switch1 #sh policy-map statistics
Type qos class-map statistics:
+------------------------------------+-----------------+-----------------+-----------------+------------------+
| Class-map | Match pkts | Match bytes | Dropped pkts | Dropped Bytes |
+------------------------------------+-----------------+-----------------+-----------------+------------------+
Type queuing class-map statistics:
+--------------------------------+-----------------+-----------------+-----------------+------------------+
| Class-map | Total pkts | Total bytes | Dropped pkts | Dropped Bytes |
+--------------------------------+-----------------+-----------------+-----------------+------------------+
xe66
q3 901979712 115453403136 303774231 38883101568
Switch1 #
Switch1 #
Switch1 #sh policy-map statistics
Type qos class-map statistics:
+------------------------------------+-----------------+-----------------+-----------------+------------------+
| Class-map | Match pkts | Match bytes | Dropped pkts | Dropped Bytes |
+------------------------------------+-----------------+-----------------+-----------------+------------------+
Type queuing class-map statistics:
+--------------------------------+-----------------+-----------------+-----------------+------------------+
| Class-map | Total pkts | Total bytes | Dropped pkts | Dropped Bytes |
+--------------------------------+-----------------+-----------------+-----------------+------------------+
xe66
q3 902926872 115574639616 307021247 39298719616
Switch1 #
For Interface xe66, queue q3 shows a very large number of dropped packets (294034145 -> 307021247 ) alongside significant total packets (902926872 ) and total bytes (115574639616) successfully transmitted. As ECN marking via random-detect is enabled on this queue, although some actual tail drops might occur if buffers completely fill, as q3 is not configured as lossless here and PFC is disabled.
Verify the count of packets marked with ECN CE (Congestion Experienced) code point on a per-interface basis.
Switch1 #sh int counters ecn
+------------------+----------------------+
| Interface | ECN marked packets |
+------------------+----------------------+
xe66 47941117
Switch1 #
Switch1 #sh int counters ecn
+------------------+----------------------+
| Interface | ECN marked packets |
+------------------+----------------------+
xe66 48917797
Switch1 #
Switch1 #sh int counters ecn
+------------------+----------------------+
| Interface | ECN marked packets |
+------------------+----------------------+
xe66 49894369
Switch1 #
Switch1 #
Switch1 #sh int counters ecn
+------------------+----------------------+
| Interface | ECN marked packets |
+------------------+----------------------+
xe66 50871013
Switch1 #
2025 Oct 28 12:24:23.009 : Switch1 : HSL : NOTIF : [IF_ECN_MONITOR_4]: ECN: Interface - xe66, ECN MARKED PKT: 4883112
2025 Oct 28 12:24:28.009 : Switch1 : HSL : NOTIF : [IF_ECN_MONITOR_4]: ECN: Interface - xe66, ECN MARKED PKT: 4883148
2025 Oct 28 12:24:33.010 : Switch1 : HSL : NOTIF : [IF_ECN_MONITOR_4]: ECN: Interface - xe66, ECN MARKED PKT: 4883184
2025 Oct 28 12:24:38.010 : Switch1 : HSL : NOTIF : [IF_ECN_MONITOR_4]: ECN: Interface - xe66, ECN MARKED PKT: 4883148
2025 Oct 28 12:24:43.010 : Switch1 : HSL : NOTIF : [IF_ECN_MONITOR_4]: ECN: Interface - xe66, ECN MARKED PKT: 4883076
2025 Oct 28 12:24:48.010 : Switch1 : HSL : NOTIF : [IF_ECN_MONITOR_4]: ECN: Interface - xe66, ECN MARKED PKT: 4883040
2025 Oct 28 12:24:53.010 : Switch1 : HSL : NOTIF : [IF_ECN_MONITOR_4]: ECN: Interface - xe66, ECN MARKED PKT: 4883364
2025 Oct 28 12:24:58.011 : Switch1 : HSL : NOTIF : [IF_ECN_MONITOR_4]: ECN: Interface - xe66, ECN MARKED PKT: 4883292
2025 Oct 28 12:25:03.011 : Switch1 : HSL : NOTIF : [IF_ECN_MONITOR_4]: ECN: Interface - xe66, ECN MARKED PKT: 4883220
2025 Oct 28 12:25:08.011 : Switch1 : HSL : NOTIF : [IF_ECN_MONITOR_4]: ECN: Interface - xe66, ECN MARKED PKT: 4883112
Interface xe66 shows a large and increasing number of ECN marked packets (47941117 -> 50871013), directly confirming ECN marking is active due to the egress congestion.
These log messages are generated due to the monitor ecn command on xe66. The logs periodically report the cumulative count of ECN Marked packet on interface xe66, providing real-time visibility into the ECN marking activity. The counts align with the increasing values seen in sh int counters ecn.
The configuration given in the ECN Configuration (Bridging and ECN Marking) successfully sets up an L2 path, induces congestion on the egress interface xe66 via shaping, and applies an ECN policy. Validation confirms that packets exceeding the WRED thresholds in queue 3 are being marked with ECN (not dropped), as shown by the dedicated ECN counters, interpreted policy map statistics, and system logs.
PFC Validation
Verify the traffic rates on interfaces.
Switch1 #sh int counters rate mbps
+-------------------+--------------+-------------+--------------+-------------+
| Interface | Rx mbps | Rx pps | Tx mbps | Tx pps |
+-------------------+--------------+-------------+--------------+-------------+
cd2/1 1000.12 976675 13.89 27130
xe66 0.00 0 1000.12 976679
Switch1 #
Switch1 #
Switch1 #sh int counters rate mbps
+-------------------+--------------+-------------+--------------+-------------+
| Interface | Rx mbps | Rx pps | Tx mbps | Tx pps |
+-------------------+--------------+-------------+--------------+-------------+
cd2/1 1000.12 976675 13.89 27130
xe66 0.00 0 1000.12 976679
Switch1 #
Switch1 #sh int counters rate mbps
+-------------------+--------------+-------------+--------------+-------------+
| Interface | Rx mbps | Rx pps | Tx mbps | Tx pps |
+-------------------+--------------+-------------+--------------+-------------+
cd2/1 1000.12 976675 13.89 27130
xe66 0.00 0 1000.12 976679
Switch1 #
The egress interface xe66 is capped at ~1000.12 Mbps due to the shaper. The ingress interface cd2/1 also shows a receive rate throttled down to ~1032 Mbps. This indicates that PFC pausing is throttling the source to match the egress shaper rate.
Verify packet and byte counters for traffic passing through queues defined in applied policy maps.
Switch1 #sh policy-map statistics
Type qos class-map statistics:
+------------------------------------+-----------------+-----------------+-----------------+------------------+
| Class-map | Match pkts | Match bytes | Dropped pkts | Dropped Bytes |
+------------------------------------+-----------------+-----------------+-----------------+------------------+
Type queuing class-map statistics:
+--------------------------------+-----------------+-----------------+-----------------+------------------+
| Class-map | Total pkts | Total bytes | Dropped pkts | Dropped Bytes |
+--------------------------------+-----------------+-----------------+-----------------+------------------+
xe66
q3 222189660 28440276480 0 0
Switch1 #
Switch1 #sh policy-map statistics
Type qos class-map statistics:
+------------------------------------+-----------------+-----------------+-----------------+------------------+
| Class-map | Match pkts | Match bytes | Dropped pkts | Dropped Bytes |
+------------------------------------+-----------------+-----------------+-----------------+------------------+
Type queuing class-map statistics:
+--------------------------------+-----------------+-----------------+-----------------+------------------+
| Class-map | Total pkts | Total bytes | Dropped pkts | Dropped Bytes |
+--------------------------------+-----------------+-----------------+-----------------+------------------+
xe66
q3 222980616 28541518848 0 0
Switch1 #
Switch1 #sh policy-map statistics
Type qos class-map statistics:
+------------------------------------+-----------------+-----------------+-----------------+------------------+
| Class-map | Match pkts | Match bytes | Dropped pkts | Dropped Bytes |
+------------------------------------+-----------------+-----------------+-----------------+------------------+
Type queuing class-map statistics:
+--------------------------------+-----------------+-----------------+-----------------+------------------+
| Class-map | Total pkts | Total bytes | Dropped pkts | Dropped Bytes |
+--------------------------------+-----------------+-----------------+-----------------+------------------+
xe66
q3 223732822 28637801216 0 0
Switch1 #
Switch1 #
Switch1 #sh policy-map statistics
Type qos class-map statistics:
+------------------------------------+-----------------+-----------------+-----------------+------------------+
| Class-map | Match pkts | Match bytes | Dropped pkts | Dropped Bytes |
+------------------------------------+-----------------+-----------------+-----------------+------------------+
Type queuing class-map statistics:
+--------------------------------+-----------------+-----------------+-----------------+------------------+
| Class-map | Total pkts | Total bytes | Dropped pkts | Dropped Bytes |
+--------------------------------+-----------------+-----------------+-----------------+------------------+
xe66
q3 224865972 28782844416 0 0
Switch1 #
Interface xe66, queue q3 shows a large number of Total pkts (224865972) and Total bytes (28782844416) successfully transmitted, but critically shows Dropped pkts: 0. This confirms that PFC is working as intended in this L2 scenario, preventing drops despite the 1 Gbps shaper inducing congestion on a lossless queue.
Verify the counters for PFC pause frames sent and received per priority per interface.
Switch1 #sh priority-flow-control statistics all
interface pri pause sent pause received
======================================================
xe66 0 0 0
xe66 1 0 0
xe66 2 0 0
xe66 3 0 0
xe66 4 0 0
xe66 5 0 0
xe66 6 0 0
xe66 7 0 0
cd2/1 0 0 0
cd2/1 1 0 0
cd2/1 2 0 0
cd2/1 3 6323876 0
cd2/1 4 0 0
cd2/1 5 0 0
cd2/1 6 0 0
cd2/1 7 0 0
Switch1 #
sh priority-flow-control statistics all
interface pri pause sent pause received
======================================================
xe66 0 0 0
xe66 1 0 0
xe66 2 0 0
xe66 3 0 0
xe66 4 0 0
xe66 5 0 0
xe66 6 0 0
xe66 7 0 0
cd2/1 0 0 0
cd2/1 1 0 0
cd2/1 2 0 0
cd2/1 3 6432396 0
cd2/1 4 0 0
cd2/1 5 0 0
cd2/1 6 0 0
cd2/1 7 0 0
Switch1 #
Switch1 #sh priority-flow-control statistics all
interface pri pause sent pause received
======================================================
xe66 0 0 0
xe66 1 0 0
xe66 2 0 0
xe66 3 0 0
xe66 4 0 0
xe66 5 0 0
xe66 6 0 0
xe66 7 0 0
cd2/1 0 0 0
cd2/1 1 0 0
cd2/1 2 0 0
cd2/1 3 6459528 0
cd2/1 4 0 0
cd2/1 5 0 0
cd2/1 6 0 0
cd2/1 7 0 0
Switch1 #
Switch1 #sh priority-flow-control statistics all
interface pri pause sent pause received
======================================================
xe66 0 0 0
xe66 1 0 0
xe66 2 0 0
xe66 3 0 0
xe66 4 0 0
xe66 5 0 0
xe66 6 0 0
xe66 7 0 0
cd2/1 0 0 0
cd2/1 1 0 0
cd2/1 2 0 0
cd2/1 3 6486658 0
cd2/1 4 0 0
cd2/1 5 0 0
cd2/1 6 0 0
cd2/1 7 0 0
Switch1 #
Interface cd2/1 shows a large and rapidly increasing count of pause sent frames specifically for priority 3 (6323876 -> 6486658 ). No pause frames are received (pause received is 0). This confirms that Switch1 is sending PFC pause frames out of the ingress interface cd2/1 for priority 3. This happens because the downstream path (egress interface xe66) is congested for queue 3 (due to the shaper), and PFC is enabled for this priority.
Verify the administrative and operational status of PFC per interface.
Switch1 #sh priority-flow-control details all
Switch1 #2025 Oct 28 11:48:37.913 : Switch1 : HSL : NOTIF : [IF_PFC_MONITOR_4]: PFC: Interface - cd2/1, PG[3]: Pause-Tx: 140027
2025 Oct 28 11:48:42.913 : Switch1 : HSL : NOTIF : [IF_PFC_MONITOR_4]: PFC: Interface - cd2/1, PG[3]: Pause-Tx: 140026
~2025 Oct 28 11:48:47.913 : Switch1 : HSL : NOTIF : [IF_PFC_MONITOR_4]: PFC: Interface - cd2/1, PG[3]: Pause-Tx: 140028
2025 Oct 28 11:48:52.913 : Switch1 : HSL : NOTIF : [IF_PFC_MONITOR_4]: PFC: Interface - cd2/1, PG[3]: Pause-Tx: 140023
2025 Oct 28 11:48:57.914 : Switch1 : HSL : NOTIF : [IF_PFC_MONITOR_4]: PFC: Interface - cd2/1, PG[3]: Pause-Tx: 140023
2025 Oct 28 11:49:02.914 : Switch1 : HSL : NOTIF : [IF_PFC_MONITOR_4]: PFC: Interface - cd2/1, PG[3]: Pause-Tx: 140025
2025 Oct 28 11:49:07.914 : Switch1 : HSL : NOTIF : [IF_PFC_MONITOR_4]: PFC: Interface - cd2/1, PG[3]: Pause-Tx: 140026
2025 Oct 28 11:49:12.914 : Switch1 : HSL : NOTIF : [IF_PFC_MONITOR_4]: PFC: Interface - cd2/1, PG[3]: Pause-Tx: 140023
2025 Oct 28 11:49:17.914 : Switch1 : HSL : NOTIF : [IF_PFC_MONITOR_4]: PFC: Interface - cd2/1, PG[3]: Pause-Tx: 140037
2025 Oct 28 11:49:22.915 : Switch1 : HSL : NOTIF : [IF_PFC_MONITOR_4]: PFC: Interface - cd2/1, PG[3]: Pause-Tx: 140014
2025 Oct 28 11:49:27.915 : Switch1 : HSL : NOTIF : [IF_PFC_MONITOR_4]: PFC: Interface - cd2/1, PG[3]: Pause-Tx: 140031
2025 Oct 28 11:49:32.915 : Switch1 : HSL : NOTIF : [IF_PFC_MONITOR_4]: PFC: Interface - cd2/1, PG[3]: Pause-Tx: 140019
2025 Oct 28 12:16:32.991 : Switch1 : HSL : NOTIF : [IF_PFC_MONITOR_4]: PFC: Interface - cd2/1, PG[3]: Pause-Tx: 135652
2025 Oct 28 12:16:37.991 : Switch1 : HSL : NOTIF : [IF_PFC_MONITOR_4]: PFC: Interface - cd2/1, PG[3]: Pause-Tx: 135647
2025 Oct 28 12:16:42.991 : Switch1 : HSL : NOTIF : [IF_PFC_MONITOR_4]: PFC: Interface - cd2/1, PG[3]: Pause-Tx: 135652
2025 Oct 28 12:16:47.991 : Switch1 : HSL : NOTIF : [IF_PFC_MONITOR_4]: PFC: Interface - cd2/1, PG[3]: Pause-Tx: 135647
2025 Oct 28 12:16:52.992 : Switch1 : HSL : NOTIF : [IF_PFC_MONITOR_4]: PFC: Interface - cd2/1, PG[3]: Pause-Tx: 135648
2025 Oct 28 12:16:57.992 : Switch1 : HSL : NOTIF : [IF_PFC_MONITOR_4]: PFC: Interface - cd2/1, PG[3]: Pause-Tx: 135650
2025 Oct 28 12:17:02.992 : Switch1 : HSL : NOTIF : [IF_PFC_MONITOR_4]: PFC: Interface - cd2/1, PG[3]: Pause-Tx: 135648
2025 Oct 28 12:17:07.992 : Switch1 : HSL : NOTIF : [IF_PFC_MONITOR_4]: PFC: Interface - cd2/1, PG[3]: Pause-Tx: 135652
2025 Oct 28 12:17:12.992 : Switch1 : HSL : NOTIF : [IF_PFC_MONITOR_4]: PFC: Interface - cd2/1, PG[3]: Pause-Tx: 135646
2025 Oct 28 12:17:17.993 : Switch1 : HSL : NOTIF : [IF_PFC_MONITOR_4]: PFC: Interface - cd2/1, PG[3]: Pause-Tx: 135648
2025 Oct 28 12:17:22.993 : Switch1 : HSL : NOTIF : [IF_PFC_MONITOR_4]: PFC: Interface - cd2/1, PG[3]: Pause-Tx: 135662
!
Logs periodically report the number of Pause-Tx (transmitted pause frames) for Priority Group 3 (PG[3]) on interface cd2/1, confirming the PFC activity shown in the statistics command. Conversely, if pause frames are received rather than transmitted, equivalent Pause-Rx logs will be displayed.
The configuration given in the PFC Configuration (Bridging and PFC Pausing) establishes an L2 path with shaping on egress (xe66) and PFC enabled on both ingress (cd2/1) and egress for relevant priorities. Validation confirms that congestion on the egress interface triggers PFC pause frames to be sent from the ingress interface (cd2/1), successfully throttling the traffic source. The policy map statistics verify that no packets are dropped for the shaped lossless queue (q3) due to PFC being active.
CLI Commands
The feature introduces the following configuration commands.
• monitor ecn
• monitor pfc
monitor ecn
Use this command to enable Explicit-Congestion-Notification (ECN) marked packets monitoring on a physical interface.
Use the no form of this command to disable ECN monitoring on the interface
Command Syntax
monitor ecn
no monitor ecn
Parameters
None
Default
None
Command Mode
Interface mode
Applicability
This command was introduced beforeOcNOS version 7.0.0
Example
#configure terminal (config)
(config)#interface xe1
(config-if)#monitor ecn
monitor pfc
Use this command to enable Priority-based Flow Control (PFC) pause frames monitoring on a physical interface.
Use the no form of this command to disable PFC monitoring on the interface.
Command Syntax
monitor pfc
no monitor pfc
Parameters
None
Default
None
Command Mode
Interface mode
Applicability
This command was introduced before OcNOS version 7.0.0
Example
#configure terminal
(config)#interface xe1
(config-if)#monitor pfc
Glossary
The following table provides definitions for key terms or abbreviations and their meanings used throughout this document:
Key Terms/Acronym | Description |
PFC | Priority-based Flow Control. A mechanism supported by OcNOS to pause frames using defined times for each of the eight priority classes to prevent congestion. |
ECN | Explicit Congestion Notification. A mechanism defined in RFC 3168 that provides end-to-end congestion signaling between ECN-enabled senders and receivers in TCP/IP networks. Instead of dropping packets, ECN marks them to indicate congestion. |