What Is SPFC?
Subscriber Priority-based Flow Control (SPFC) is a technology that controls the traffic of specified users or traffic with certain characteristics based on user priorities. When an SPFC-specified queue for user traffic becomes congested on a downstream device, the upstream device stops sending packets to this queue. In this way, packet loss is prevented.
Why Do We Need SPFC?
Traditional Flow Control Technology
The most fundamental flow control technology is the Ethernet Pause mechanism defined in IEEE 802.3. When a downstream device detects that its receive capability is lower than the transmit capability of its upstream device, it sends Pause frames to the upstream device, asking it to stop sending traffic for a specified duration.
Implementation of the Ethernet Pause mechanism
The drawback, however, is that the Ethernet Pause mechanism stops all traffic on a link (for the entire interface).
PFC
PFC offers differentiated QoS for services based on their priorities and enhances the existing Ethernet Pause mechanism.
PFC allows for the creation of eight virtual channels on an Ethernet link. Each virtual channel has a specified priority and is allocated dedicated resources, such as buffers and queues. PFC allows any virtual channel to be paused and resumed independently without disrupting the traffic on other virtual channels.
PFC working mechanism
PFC can quickly respond to burst traffic. However, when a port stops sending traffic, all data that needs to pass through the port gets blocked. This can easily lead to head-of-line blocking, congestion spread, or deadlock.
Technical Benefits of SPFC
Precise Flow Control
SPFC is an enhancement to PFC. In addition to the priority of traffic to be controlled, SPFC backpressure packets also carry user traffic characteristics. When working with the tenant-level slicing function, SPFC can control the transmission of queue traffic in a tenant-specific slice based on the configured buffer threshold, while meeting the differentiated SLA requirements of different services for network bandwidth, delay, and jitter.
Compared with PFC, SPFC can implement more refined traffic control and prevent congestion from spreading between tenants.
SPFC working mechanism
Cascading Backpressure
When the intermediate link on the network is congested, the SPFC backpressure process is triggered. The involved device sends a backpressure packet to the upstream device. After receiving the packet, the upstream device stops sending data according to the backpressure information and stores the data in its local buffer.
If the local buffer usage exceeds the threshold, the upstream device continues to send backpressure packets to its upstream device. Through cascading rate reduction, burst traffic can be absorbed through the network-level buffer.
Cascading backpressure
Edge-Network Collaboration
At the network edge, if the connected device does not support SPFC, it can send PFC backpressure packets to the upstream device to enable the tenant to detect congestion changes. In this way, edge-network synergy is achieved.
Edge-network collaboration
- Author: Luo Haiyan
- Updated on: 2025-07-14
- Views: 1727
- Average rating:
Export PDF