Subject: [pim] PIM-SM query

From: vijay anand <[email-masked]>
Date: Fri, 3 Mar 2006 19:32:30 -0800 (PST)

Hi All
        why do we need to send prune to RPF'(s,g,rpt) when prunedesired(s,g,rpt) becomes true,why not to RPF'(RP)..since we were sending (*,g) joins to RPF'(RP)..
   
  regards
  vijay

---------------------------------
Yahoo! Mail
Bring photos to life! New PhotoMail  makes sharing a breeze. 

_______________________________________________
pim mailing list
[email-masked]
https://www1.ietf.org/mailman/listinfo/pim

---

From: [email-masked]
Date: Sun, 5 Mar 2006 22:40:55 -0800 (PST)

>         why do we need to send prune to RPF'(s,g,rpt) when prunedesired(s,g,rpt) becomes true,why not to RPF'(RP)..since we were sending (*,g) joins to RPF'(RP)..

There's no such thing as RPF'(RP). 
Perhaps you mean RPF'(*,G) where we send (*,G) joins.

But, (S,G,rpt) could have seen an assert. 
Hence, the draft says,

    RPF'(S,G,rpt) is basically RPF'(*,G) modified by the result of an
    Assert(S,G) on RPF_interface(RP(G)).  In such a case, packets from S
    will be originating from a different router than RPF'(*,G).

Hope this helps.

- Paras.

---

From: vijay anand <[email-masked]>
Date: Sun, 5 Mar 2006 23:04:23 -0800 (PST)

Hi Paras
       What is the use of sending the (s,g,rpt)prunes to the RPF'(S,G,rpt) (ie the assert winner)..anycase he will forward the (s,g) data to the downstreams since he is assert winner on the downstream interface..
  Regards
vijay

Hope this helps.

- Paras.

---

From: Paras Trivedi <[email-masked]>
Date: Mon, 6 Mar 2006 09:38:19 -0800

Because (of numerous events in downstream state machine), 
the time has come, to prune the S,G,RPT branch upstream.

- Paras.

vijay anand writes:
 > Bring photos to life! New PhotoMail  makes sharing a breeze. <div>Hi Paras<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; What is the use of sending the (s,g,rpt)prunes to the RPF'(S,G,rpt) (ie the assert winner)..anycase he will forward the (s,g) data to the downstreams since he is assert winner on the downstream interface..</div>  <div>Regards<BR>vijay<BR><BR><BR><B><I>[email-masked]</I></B> wrote:</div>  <BLOCKQUOTE class=replbq style="BORDER-LEFT: #1010ff 2px solid; MARGIN-LEFT: 5px; PADDING-LEFT: 5px"><BR>&gt; <BR>&gt; Hi All<BR>&gt; why do we need to send prune to RPF'(s,g,rpt) when prunedesired(s,g,rpt) becomes true,why not to RPF'(RP)..since we were sending (*,g) joins to RPF'(RP)..<BR>&gt; <BR>&gt; regards<BR>&gt; vijay<BR>&gt; <BR><BR>There's no such thing as RPF'(RP). <BR>Perhaps you mean RPF'(*,G) where we send (*,G) joins.<BR><BR>But, (S,G,rpt) could have seen an assert. <BR>Hence, the draft says,<BR><BR>RPF'(S,G,rpt) is basically RPF'(*,G) modified by the result of an<BR>Assert(S,G) on RPF_interface(RP(G)). In such a case, p!
 >  ackets
 >  from S<BR>will be originating from a different router than RPF'(*,G).<BR><BR>Hope this helps.<BR><BR>- Paras.<BR><BR></BLOCKQUOTE><BR><p>
 > 		<hr size=1>Yahoo! Mail<br>
 > Bring photos to life! <a href="http://pa.yahoo.com/*http://us.rd.yahoo.com/evt=39174/*http://photomail.mail.yahoo.com">New PhotoMail </a> makes sharing a breeze.

---

From: John Zwiebel <[email-masked]>
Date: Mon, 6 Mar 2006 10:44:59 -0800

On Mar 3, 2006, at 7:32 PM, vijay anand wrote:

>
>       why do we need to send prune to RPF'(s,g,rpt) when  
> prunedesired(s,g,rpt) becomes true,why not to RPF'(RP)..since we  
> were sending (*,g) joins to RPF'(RP)..
>

In addition to Paras' remarks....

(*,G) is for all sources.  In this particular case you want to prune  
only one source from the
RP-tree.  Pruning a source from the RP tree is not the same as  
joining the shortest-path,
even though the RPF neighbor may be the same one.

This starts getting into the reason you need to track whether or not  
an interface was
inherited from the (*,G) or was explicitly added by an (S,G) join.   
If explicitly added,
an (S,G,rp-bit) prune must be ignored.

Basically, all this should give you the idea that sparse-mode is not  
easy to comprehend,
and if you have the choice, you should try to deploy SSM and bidir  
only.  And put pressure
on your vendors to make this happen.

---

From: "Christopher Thomas Brown" <[email-masked]>
Date: Mon, 6 Mar 2006 14:51:53 -0500

> the time has come, to prune the S,G,RPT branch upstream.

Paras, what events in which state machine are you talking about?

Vijay, I asked essentially this question in May 2005.  I only got one response
from a list member and that was to say it was harmless.

So, the answer to the question is that it is useless to send
a triggered (S,G,rpt) prune message to RPF'(S,G,rpt) if there is
is S,G assert state making RPF'(S,G,rpt) different from RPF'(*,G).
The periodic goes to RPF'(*,G) so the S,G,rpt downstream state machine
on RPF'(*,G) gets updated correctly.  And its not like its going to cause
duplicate data delivery while waiting for the S,G,rpt prune to be sent
to RPF'(*,G) because RPF'(*,G) will have removed the interface from the
olist because of the lost S,G assert.

Chris