PFC Configuration Example

Priority Flow Control or PFC is a kind of flow control mechanism. The advantage of PFC over traditional Flow Control mechanisms is that PFC provides flow control based on per code point (priority). In other words, PFC provides a more granular form of flow control. This means that if traffic from one particular priority suffers from congestion, only that traffic is paused until congestion clears away, whereas traffic for other priorities continues unhindered. On each physical port, there are 8 (0 to 7) Class of Service (CoS) queues, if congestion is detected on the egress physical port, the ingress port will send a PAUSE frame to the transmitting node to pause transmission until the receiving node is ready to accept packets again. PFC applies only to packets entering a port.

PFC has a higher priority than flow control. So, for example, if both flow control and PFC are configured on the same port, PFC will have precedence over traditional flow control.

PFC uses the IEEE 802.1p CoS values in the IEEE 802.1Q VLAN tag to generate the flow control frame with corresponding priority on ingress physical port when egress physical port suffers congestion. It indicates the ingress port needs COS classifier configuration.  

PFC configuration is applied using PFC profiles. The following is an example of PFC configuration.

Configure PFC Profile

PFC is disabled when drop value is set to true and enabled when drop value is set to false. The default value of drop is false. 

For example as below, PFC is enabled on 0,1,3,5,6,7 code-point by default,  PFC is disabled on 2,4 code-point. 

admin@XorPlus# set class-of-service pfc-profile pfc1 code-point 2 drop true
admin@XorPlus# set class-of-service pfc-profile pfc1 code-point 4 drop true
admin@XorPlus# commit
Commit OK.
Save done.

 Apply PFC Profile to Port

admin@XorPlus# set class-of-service interface ge-1/1/1 pfc-profile pfc1 
admin@XorPlus# commit 
Commit OK. 
Save done. 

Show PFC Frame Statistics on Port

The class 0~7 in PFC frame corresponds to the following "802.1P" item. The value of ”RxPFC“ item will be incremented by 1 if ge-1/1/1 receives a PFC frame. The value of ”TxPFC“ item will be incremented by 1 if ge-1/1/1 sends out a PFC frame.

admin@XorPlus# run show class-of-service interface ge-1/1/1 
Interface : ge-1/1/1
802.1P         Priority Flow Control    RxPFC              TxPFC 
-----------    ---------------------    ---------------    --------------- 
0              true                     0                  0               
1              true                     0                  0               
2              false                    0                  0               
3              true                     0                  0               
4              false                    0                  0               
5              true                     0                  0               
6              true                     0                  0               
7              true                     0                  0               
trust mode : no-trust 
Default ieee-802.1 : 0 
Default dscp : 0 
Default inet-precedence : 0 
Local-priority   Queue-Schedule                Code-points 
--------------   ---------------------------   ------------------------- 
0                SP,0kbps                                                   
1                SP,0kbps                                                   
2                SP,0kbps                                                   
3                SP,0kbps                                                   
4                SP,0kbps                                                   
5                SP,0kbps                                                   
6                SP,0kbps                                                   
7                SP,0kbps     

Apply classifier based on IEEE 802.1P to ingress port


admin@XorPlus# set class-of-service classifier c1
admin@XorPlus# set class-of-service interface ge-1/1/1 classifier "c1"
admin@XorPlus# commit
Commit OK. 
Save done. 
admin@XorPlus# run show class-of-service interface ge-1/1/1 
Interface : ge-1/1/1
802.1P         Priority Flow Control    RxPFC              TxPFC 
-----------    ---------------------    ---------------    --------------- 
0              true                     0                  0               
1              true                     0                  0               
2              false                    0                  0               
3              true                     0                  0               
4              false                    0                  0               
5              true                     0                  0               
6              true                     0                  0               
7              true                     0                  0               
trust mode : no-trust 
Default ieee-802.1 : 0 
Default dscp : 0 
Default inet-precedence : 0 
Local-priority   Queue-Schedule                Code-points 
--------------   ---------------------------   ------------------------- 
0                SP,0kbps                             0                      
1                SP,0kbps                             1                     
2                SP,0kbps                             2                     
3                SP,0kbps                             3                     
4                SP,0kbps                             4                     
5                SP,0kbps                             5                     
6                SP,0kbps                             6                     
7                SP,0kbps                            7

Copyright © 2024 Pica8 Inc. All Rights Reserved.