3.1.4.2 Send Message

When the upper layer requests that the protocol sends a message, it passes:

  • The implementation-defined representation of the Connection.

  • A buffer containing the message.

  • An optional remote memory token to be invalidated on the receiving peer.

The sender MUST determine if the buffer contains a message that is of a length less than or equal to Connection.MaxFragmentedSendSize. If not, the message cannot be sent and an implementation-specific local error MUST be returned.

The sender MUST prepare and Send each fragment as Data Transfer messages sequentially and in strict order on the connection, as described in section 3.1.5.4. If any of the Send messages result in failure, the RDMA layer will have initiated termination of the connection. The result of the operation from the RDMA provider MUST be provided to the upper layer.