1.3 Overview
The Message Queuing (MSMQ): Queue Manager Management Protocol allows an MSMQ client application to perform management operations on an MSMQ server.
This protocol can be used to get the following information:
Queue properties, such as:
The path name of a queue.
The format name of a queue.
Whether a queue is (or is not) located on a computer, or whether it is a transactional queue or a foreign queue.
The retransmit interval for messages in an outgoing queue for which no order acknowledgment has been received.
The names of the subqueues in a specified queue.<2>
The version and build information for the computer operating system and the MSMQ installation.
Current queue state, such as:
The number of messages in a queue or in a queue journal.
The number of message bytes in a queue or in a queue journal.
The connection state of an outgoing queue.
The list of the active queues on a computer.
The name of the current MSMQ Directory Service server for a computer.
Whether a queue manager on a computer is disconnected from the network.
The list of the path names of all the private queues registered on a computer.
Auditing information, such as:
The connection state history of a queue.<3>
The number of messages sent from a computer to a queue for which no order acknowledgment has been received.
The number of messages sent from a computer to a queue for which an order acknowledgment has been received, but a receive acknowledgment message has not been received.
The date and time when the last order acknowledgment for a message sent from a computer to a queue was received.
The time when MSMQ will attempt to retransmit a message from a computer to a queue.
The number of times that the last message in the corresponding outgoing queue on a computer was sent.
The number of times that the last order acknowledgment for a message sent from a computer to a queue has been received.
The number of message bytes stored in all the queues on a computer.<4>
Sequence information, such as:
The address or a list of possible addresses for routing messages to the destination queue in the next hop.
The next message to be sent from a computer to a queue.
The last message that was sent from a computer to a queue for which no order acknowledgment has been received.
The first message sent from a computer to a queue for which no order acknowledgment has been received.
An array of arrays of information on the transactional messages sent from all source computers to a queue on a target computer. Each element of the overall array is an array (vector) containing one of the following pieces of information for all of the source computers.
The format names used to open a queue when the last messages were sent.
The globally unique identifiers (GUIDs) of the sending queue managers.
The last sequence identifiers.
The sequence numbers of the last messages sent to a queue by one or more sending queue managers.
The times when each sending queue manager last accessed a queue.
The number of times that the last messages were rejected.
The protocol can also be used to perform actions on a computer, such as:
Connecting the queue manager on a computer to a network and an MSMQ Directory Service server.
Disconnecting the queue manager on a computer from a network and an MSMQ Directory Service server.
Deleting empty message files.
The protocol can also be used to perform actions on a queue, such as:
Pausing the sending of messages from a computer. The queue manager will not send messages to the applicable destination queue until a resume action is initiated.
Restarting the sending of messages after a pause action is initiated.
Resending the pending transaction sequence (as specified in [MS-MQQB]).
This is an RPC-based protocol. The server does not maintain client state information. The protocol operation is stateless.
This is a simple request-response protocol. For each received method request, the server executes the requested method and returns a completion status to the client. This is a stateless protocol; each method call is independent of any previous method calls.