1.3.1 Messages

Each message exchanged in an MSMQ system typically has a set of message properties that contain metadata about the message and a distinguished property called a message body that contains the application payload. Message properties that are serialized in front of the message body are referred to as message headers, and message properties serialized after the message body property are referred to as message trailers.

Messages carried by this protocol are treated as payload. The format and structure of the application messages are generally opaque to the protocol. However, the protocol assumes that such messages map to the abstractions of message header, message body, and message trailer. This mapping enables a consumer to request that a subset of the message body be returned while allowing all the message headers and message trailers to be returned. For more details, see the SectionBuffer (section 2.2.6) structure.

The protocol also assumes that each message has a lookup identifier that is unique within the queue. This identifier is not part of the message but is instead assigned by the server.