When using MSMQ multicast, if a (multicast-enabled) queue receives some messages and then the machine experiences a temporary network connection loss then it will begin receiving messages again when the connection is re-established. If the network outage is short in duration then the queue will receive all of the messages (even those that were sent while the receiving machine was disconnected). However, if the duration is long enough (a couple minutes) then some messages will be lost... there will be a gap in the received messages.
This is expected behavior as MSMQ multicast provides reliable (but not guaranteed delivery). My question is whether MSMQ exposes information when there is data loss. If I understand correctly, PGM is already capable of detecting "unrecoverable data loss", but does MSMQ expose this information?
One thought is to include an integer with each message that is incremented on each send. This would allow the receiver to detect a gap in the messages (from an individual sender). However, I believe PGM already does this. I don't want to add this at the application level if PGM/MSMQ can already detect this.
Any suggestions?