Subject: RE: The Assert Mechanism

From: "Mohit Talwar (Exchange)" <[email-masked]>
Date: Thu, 21 Oct 1999 00:50:04 -0700

> From: helmy [mailto:[email-masked]]
> 
> > > B will be re-elected DR and will get the joins from R1 and 
> > > will send joins to the RP.
> > 
> > but B was never voted out of office :)
> 
> For *,G it has,... by the Assert, 
> and my email was in that regard, that B should become the DR 
> again for *,G
> on that LAN. That's the natural thing to do in my opinion, 
> which I thought
> the spec already did using timers.

there is a single DR per LAN, not a DR per group.
so how does B know that it is has to start sending 
joins (*become DR*) for group G?

the assert timer is for downstream routers...

--- spec ---

     *    [Assert-Timer (per (S,G) or (*,G) route entry)] The
          Assert-Timer for an (S,G) or (*,G) route entry is used for
          timing out Asserts received. When an Assert is received and
          the RPF neighbor is changed to the Assert winner, the Assert-
          Timer is set to [Assert-Timeout], and is restarted to this
          value every time a subsequent Assert for the entry is received
          on its incoming interface. When the timer expires, the router
          resets its RPF neighbor according to its unicast routing
          table.

---

the OIF timer is to time out oifs...

--- spec ---
     *    [Oif-Timer (kept per oif for each route entry)] A timer for
          each oif of a route entry is used to time out that oif.
---

although i now see isidor's point that it could be used to add the OIF 
back in when the OIF was added by IGMP at the DR and is subsequently 
pruned by an assert.

mohit.

---

From: helmy <[email-masked]>
Date: Thu, 21 Oct 1999 01:28:19 -0700 (PDT)

> joins (*become DR*) for group G?

when the DR loses the assert, it no longer is the DR for that group (as
per the spec). In that sense, yes there is a DR per group.
	
as for the rest of the email I thought we already had a timer that took
care of this situation. I remember we've come across this problem before
and it was solved... sigh.. it's been ages since I've read the whole spec
again!