1.3.8 Internal Receipts

Internal receipts are system-generated protocol messages that the receiving QM at the final destination of a message sends to the sending QM to acknowledge receipt (or other processing) of a user message. SRMP uses internal receipts to enforce guarantees, such as exactly-once-and-in-order (EOIO) delivery. Retransmission of messages might occur when an internal receipt is not received within a specific period of time.

This protocol uses the following types of internal receipts:

  • Delivery receipt: This message acknowledges receipt of regular and durable user messages.

  • Commitment receipt: This message acknowledges that a delivered message has been removed from the destination queue. Removal from the destination queue could be the result of a user-level application that reads the message from the queue, or of an administrative action, such as deleting the message or the queue. The receipt can represent a positive or negative acknowledgment.

  • Stream receipt: This message acknowledges in-order receipt of stream messages. This receipt is required to guarantee EOIO delivery of stream messages. Stream receipts correspond to order acknowledgments, as described in [MS-MQQB] section 1.3.5.1.