Subject: [pim] Actions A6 in the (S,G) Assert FSM

From: Christopher Thomas Brown <[email-masked]>
Date: Fri, 26 Mar 2004 17:16:40 -0500

I was looking at a situation where an s,g assert is received on the
upstream interface towards the RP and there is downstream *,g state.
I think there is a missing action in Actions A6.

AssertTrackingDesired(S,G,I) would be true in this situation due to
the last OR condition:

RPF_Interface(RP(G) == I) AND JoinDesired(*,G) == TRUE AND
    SPTbit(S,G) == FALSE

So in the NoInfo state this situation would fall under the event:

Received preferred assert with RPT bit clear AND
    AssertTrackingDesired(S,G,I) == TRUE

In the NoInfo state for this event we would perform actions A6.

Actions A6 are the following:
Store assert winner and its metric
Set assert timer
If RPF_Interface(S) == I set SPTbit(S,G) to TRUE.

For this last action it seems like it we would also want to start the
keepalive timer. Without the Keepalive timer running JoinDesired(S,G)
is not TRUE.

For a reminder JoinDesired(S,G) is

immediate_olist(S,G) != NULL OR
    (KeepAliveTimer(S,G) is running AND inherited_olist(S,G) != NULL)

In the situation the immediate_olist(S,G) is NULL so only if the
KeepAliveTimer(S,G) is running will JoinDesired(S,G) be TRUE. It seems
like from the intent of the actions that we are supposed to be on
the SPT.

Am I missing something or should starting the KeepAliveTimer(S,G) be
added to the part of the action for IF RPF_Interface(S) == I?

Chris

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