Intel® Ethernet 800 Series Linux Flow Control

Configuration Guide for RDMA Use Cases

ID 635330
Date 07/13/2023
Version 1.3
Document Table of Contents

Ethernet Flow Control

By design, Ethernet is an unreliable protocol with no guarantee that packets arrive at their destination correctly and in order. Instead, Ethernet relies on upper-layer protocols (such as TCP) or applications to provide reliable service and error correction.

The 802.3x standard introduced flow control to the Ethernet protocol, defining a mechanism for throttling the flow of data between two directly connected full-duplex network devices. If the sender transmits data faster than the receiver can accept it, the overwhelmed receiver can send a pause signal (Xoff or transmit off) to the sender, requesting that the sender stop transmitting data for a specified period of time. The sender resumes transmission either after the timeout period expires or if the receiver indicates that it is ready to accept more data by sending an Xon (transmit on) signal.

Without flow control, data might be lost or need to be re-transmitted by a ULP or application, which can significantly affect performance.