How do monitor the efficiency of MSMQ using Multicast / PGM


A customer asked me an interesting question – how to work out how many times an MSMQ Multicast message has to be retransmitted when the receiving client detects one is missing?


The Performance Monitor counters for Multicast are a bit slim:



  • “MSMQ Incoming Multicast Session” (normal throughput data – bytes/sec and cumulative total)

  • “MSMQ Outgoing Multicast Session” (normal throughput data – bytes/sec and cumulative total)

  • “MSMQ Server\Incoming Multicast Sessions” (current number of sessions)

  • “MSMQ Server\Outgoing Multicast Sessions” (current number of sessions)

 so no data on error rates.


The data can, in theory, be exposed by writing code to make use of the IPPROTO_RM Socket Options:



Option – RM_SENDER_STATISTICS 
Optval Type – RM_SENDER_STATS


Option – RM_RECEIVER_STATISTICS
Optval Type – RM_RECEIVER_STATS


but I expect this would have to be added to the MSMQ or RMCAST services – not something a customer can do.


I’ll see if there is some other approach we can try or, failing that, if this can be added to the wishlist for MSMQ 6.0.

Comments (0)