TX Pipeline
Every RDMA operation described so far in this book assumed a WQE somehow becomes bytes on the wire. This part opens up that assumption: a Work Queue Element sitting in a ring in host memory, fetched by hardware, prefetched ahead of when it’s actually needed, built into a real BTH/RETH/AETH packet with a valid ICRC, and arbitrated onto a pipeline shared by every other QP with traffic ready to send at the same instant – plus what happens when one QP’s send path stalls without taking any other QP down with it, and what happens when a QP resets with a WQE already mid-flight through one of these stages.
TX Pipeline has no state machine of its own – it runs under the gate the QP’s own state machine (QP State Machine) already provides. Installing a Send Queue’s ring happens as part of Installing a QP, not as a separate handoff. What this part covers instead: the WQE ring and its on-chip prefetch buffer, the scheduler that arbitrates many QPs onto one shared pipeline, and TX Packet Build – the stage that turns a fetched WQE into the wire format What Is RoCEv2 already described field by field.