Subject: X in igmpv3 EXCLUDE(X,Y) ?

From: LEVIS Pierre FTRD/DMI/CAE <[email-masked]>
Date: Thu, 10 Aug 2000 16:32:08 +0200

Dear all,

I find hard to understand the exact meaning of X in EXCLUDE(X,Y) IGMPv3
router state (Y seems obvious, as the collection of ALL sources present in
all hosts with an EXCLUDE mode AND absent from ALL hosts with an INCLUDE
mode). I would ask for clarification.

Throughout the reading of the draft I see two possible ways to interpret X:

1) X is the collection of ALL sources present in at least one host with an
INCLUDE mode AND at least one host with an EXCLUDE mode.
This seems compliant with paragraph 6.2.1: "The second set is the set which
represents conflicts in the desired reception state; this set must be
forwarded" (by the way the second set is actually the first in the writing
convention used in the tables), and paragraph 6.2.3 that refines what is
intended by "conflict": "If a source record has a running timer with a
router filter-mode for the group of EXCLUDE, it means that a "conflict" has
occurred with respect to desired reception state of that source (i.e. one
system desires the source and another one doesn't)" 

2) X is the collection of ALL sources present in ALL hosts with an INCLUDE
mode.
This seems to be compliant with annex A.3: "One of the ways to accomplish
this is for routers to keep track of all sources desired by hosts that are
in INCLUDE mode even though the router itself is in EXCLUDE mode" and
paragraph 6.5: "if a router's state for a group is EXCLUDE(X,Y) and the
group timer expires for that group, the router switches to filter-mode of
INCLUDE with state INCLUDE(X)".
In this case there's not always a conflict in the desired reception state:
as far as source s1 is concerned there's no conflict between a host with
INCLUDE {s1} and a host with EXCLUDE {s2}, they both mean source s1 is to be
forwarded.

Every comment on my interpretations or misinterpretations would be greatly
appreciated.

Pierre

---

From: Isidor Kouvelas <[email-masked]>
Date: Thu, 10 Aug 2000 10:38:27 -0700

Pierre,

The X list of sources when the router is maintaining an EXCLUDE(X,Y)
state is useful for two reasons:
- Keep on forwarding a set of sources that are excluded by a host in
  EXCLUDE mode but are requested to be forwarded by a host in INCLUDE
  mode.
- When EXCLUDE mode times out in the router and the group transitions
  to include mode, X is used as the set of sources to forward after
  the switch.

thanks
Isidor

---

From: Wilbert de Graaf <[email-masked]>
Date: Thu, 10 Aug 2000 13:34:07 -0700

Hi Pierre,

> ...

EXCLUDE(X,Y) means:

X: those sources from whom traffic must be forwarded since there are
hosts that are in include mode for this group and members of X in the
corresponding source list. (The 'conflicting' set from paragraph 6.2.1)

Y: router doesn't forward traffic from those sources, since none of the
hosts are interested. Either because all reports for this group were
EXCLUDE mode with members of Y -or- INCLUDE but no members of Y, or
through an expired timer (which just before the timer expired was a
member of X).

- Wilbert