
UEC 1.0 included congestion control mechanisms, though there were still at least two limits that needed to be addressed. First, the signal carries little information. An explicit congestion notification (ECN) mark is a single bit. It says a queue somewhere on the path is filling, but not where or by how much. Second, the algorithm that reacts to the signal is fixed in the NIC. It cannot be updated as AI workloads change.
UEC 1.1 adds two changes to help address those limits.
- CSIG. Congestion Signaling adds a 4-byte or 8-byte tag to packets, and every switch on the path can update it. The tag holds one value, such as the longest queueing delay or the least available bandwidth seen so far. The receiver returns the value to the sender in an acknowledgment, so the sender sees the worst condition on the path.
- PCM. Programmable Congestion Management replaces the fixed algorithms with programs. UEC’s two baseline algorithms, Network Signal-based Congestion Control (NSCC) and Receiver-Credit Congestion Control (RCCC), remain and can use CSIG signals.
“The goal of PCM is to ensure congestion control isn’t baked into the nic, but instead fully software configurable,” Emmons said. “This allows continued development on congestion control over the NIC’s full lifetime. AI workloads are constantly evolving, so there is a strong desire for Congestion Control Algorithms to be able to keep up.”



















