Subject: Re: join(s,g) on shared tree

From: Arup Acharya <[email-masked]>
Date: Tue, 19 Jan 99 15:39:27 EST

- ok, i think i understand what you're getting at.  within the context of
- igmpv3, where a host specificly requests (s, g) traffic, you'd like to
- be able to request only that source from the shared tree, without
- having to send a (*, g) followed by (s,g) prunes for all else.  if it
- happens to cross the spt along the way, then that's ok, is this
- correct?

exactly!

- i think the pim rfc only directly concerns itself with group
- membership as a whole, allowing for better service by switching to the
- spt.  however, in light of Dino's message, the spec doesn't seem to 
- prohibit this behavior either.  
- 
- maybe it'd be worthwhile to consider how igmpv3 will effect the
- current pim spec (if at all).  i.e., is it as simple has having a DR
- send (s,g) join/prunes in addition to the (*,g) joins it sends now?

- is this the point you're making?
- 
- - rusty

yes, this is the point. 
it appears to me  as if the DR sending join(s,g, rpt) should help..

arup

---

From: Dino Farinacci <[email-masked]>
Date: Tue, 19 Jan 1999 21:53:20 -0800 (PST)

>> - happens to cross the spt along the way, then that's ok, is this

    If a host requests traffic from S it should be delievered. It really
    shouldn't matter if it is coming from the source-tree or the shared-tree.
    In the case where (S,G) and (*,G) trees cross, there shouldn't be a problem
    since if the (S,G) entry doesn't have the RP-bit set, the join should
    travel to the source (and my diverge from the shared-tree).

    All a (S,G,R) join or prune means to to send this state up the shared-tree.
    If you didn't have state for (S,G,R) prior to receiving an (S,G,R) join,
    the receiver could treat it as a noop provided it had (*,G) state.

>> maybe it'd be worthwhile to consider how igmpv3 will effect the
>> current pim spec (if at all).  i.e., is it as simple has having a DR
>> send (s,g) join/prunes in addition to the (*,g) joins it sends now?

    Well, when a host sends a report for (S,G), it is requesting data only
    from source S sending to group G. The most efficient way to provide the
    delivery service is with a source-tree. However, if the router is
    already receiving data from G on the shared-tree and the delay requirements
    are met, there is no reason to set up (S,G) state (since it may already
    be getting data from the S). I think it is safe to leave these decisions
    for the implementation.

Dino