Subject: PIM-SM: questions on Assert

From: Ardas Cilingiroglu <[email-masked]>
Date: Thu, 11 Feb 1999 13:10:34 -0500 (EST)

In "3.5.1 Sending Asserts", it says

   The following Assert rules are provided when a multicast packet is
   received on an outgoing multi-access interface "I" of an existing
   active (S,G), (*,G) or (*,*,RP) entry:

      1 Do unicast routing table lookup on source address from data
        packet, and send assert on interface "I" for source address in
        data packet; include metric preference of routing protocol and
        metric from routing table lookup.

My questions are:

 - Reading the spec, it sounds like we should send an Assert if
   any matching entry's oif list includes the interface from which
   the data is received.
   However, I believe that upon receiving data from interface I,
   we should do a longest match and only if I is in the oif list
   of the longest matching entry we should send an Assert. Am I
   wrong or just mis-interpreted?

 - Let's say the data is from source S to group G. The spec says that,
   no matter what the matching entry is, the Assert msg contains
   (Src=S, Grp=G, pref & metric of S).

   However, I believe it should be as follows:

   Matching Entry     Assert msg (Src, Grp, RPT-bit, pref, metric)
   --------------     --------------------------------------------
   (S,G)              (S,  G, RPT-bit=0, pref & metric of S)
   (S,G)RPT/(*,G)/    (RP, G, RPT-bit=1, pref & metric of RP)
   (*,*,RP)           

   The major difference is the use of RP's pref & metric instead of S's 
   when the matching entry is a shared tree entry. I believe this makes 
   more sense as the competition is for being the forwarder of the RPT tree.

   Another suggestion would be to allow (*,*,RP)-only competition by
   sending * (ie 224.0.0.0) as the Group Address in the Assert message
   when the matching entry is (*,*,RP). The current scheme may generate
   a lot of (*,G) entries even when the competition is between two
   (*,*,RP) entries.
    
thanks,
Ardas

---

From: [email-masked]
Date: Thu, 11 Feb 1999 12:22:59 -0800 (PST)

>    wrong or just mis-interpreted?

no. i think you are correct.  there was email about this some time
ago, i believe this was pointed out by Billy Ng and Hal Sandick.
there was never a consensus but there was no objection either.
however, should probably be changed.

- rusty

---

From: "Hal J. Sandick" <[email-masked]>
Date: Thu, 11 Feb 1999 15:26:09 -0500

Ardas,

I think that this has been discussed on the list before.  The assumption
made then is the same one that you present: the entry used is the one
selected by the longest match as per section 3.4 number 1.  Further, while
the proper way to set the metric preference can be deduced from the text it
is not all in one place. 

I would be in favor of making the language clearer.

Regards,

Hal

---

From: "Hal J. Sandick" <[email-masked]>
Date: Fri, 12 Feb 1999 17:56:29 -0500

Ardas,

> Ardas Cilingiroglu wrote:
>Hal,
>
>> 
>> Ardas,
>> 
>> Further, while
>So, do we use the metric preference and metric of S or RP, when we send
>an assert for (*,G)?

Looking back at the notes (which are in the PIM archive) the issue was
resolved that for (*,G) we use the route to the RP. 

Regards,

Hal