Both IGMPv3 and MLDv2 have an include and an exclude mode, where a multicast listener can specify to either listen only for packets from some list of source addresses (include) or only for packets that don't come from some list of source addresses (exclude).

What's the rationale for the exclude mode? Any examples for use cases where this mode makes sense?

  • Did any answer help you? If so, you should accept the answer so that the question doesn't keep popping up forever, looking for an answer. Alternatively, you could provide and accept your own answer.
    – Ron Maupin
    Apr 1 '18 at 19:17
  • @RonMaupin: No, the answer didn't help me, and no, I still don't know the rationale, so I can't provide my own answer.
    – dirkt
    Apr 2 '18 at 6:09

The generic answer to your question would be "exclude mode is to be used when the list of IPs you want to listen to is longer then the list of IPs you do not want to listen to".

The most common use case is actually the most extreme case: listening for packets from any source. This means using exclude mode with an empty exclude list. Since IGMPv1 and v2 do not support source-specific multicast, this is the way their behaviour for a "group join" is emulated in IGMPv3.

  • Yes, I've seen the empty list. The question is about a use case where you'd actually know a list of IPs you don't want to listen to, and the rationale for this. Why should applications not want to some specific IPs of a multicast group? Are there examples where this is actually used by applications?
    – dirkt
    Jan 3 '18 at 7:53

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.