> From: Francis Dupont <[EMAIL PROTECTED]>
> => the is_router flag is in fact very easy: if the NA is valid
> you take it and you get the transition table (I note u (unkown)
> the bottom semantical value, with R and H):

I don't have any "UNKNOWN" R/H state. It's either a host or a
router. And, initial value is always HOST.

>  u -> H, u -> R: just note it
>  u -> u, H -> H, R -> R: nothing to do
>  H -> u, R -> u: should not happen (this is the effect of

I don't have problem with what to do when transition R->H or H->R
happens. The problem is how I detect this transition with certain
class of Neigbor advertisements, specifically those that omit target
link layer address. Do I process the R bit or not?

In RFC-2461, section 7.2.5, there is quite complex sentence (for
me)...
                     .....If the Override flag is clear and the
 supplied link-layer address differs from that in the cache, then one
 of two actions takes place: if the state of the entry is REACHABLE,
 set it to STALE, but do not update the entry in any other way;
 otherwise, the received advertisement should be ignored and MUST NOT
 update the cache.  If the Override flag is set, both the Override
 flag is clear and the supplied link-layer address is the same as that
 in the cache, or no Target Link-layer address option was supplied,
                  ======================================   
 the received advertisement MUST update the Neighbor Cache entry as
 follows: ...

So, depending on how you bind the  or in ", or no Target", you may
get different implementations.

That's why I made the table (which I hope is clearer than above text)
and wanted have a definite answer. So, this is the correct left corner
then

....
REACHABLE |   -  |  -   |   -   |   -   |   -   |addr=TLL|   -   |addr=TLL
Address   |   -  |  -   |   -   |   -   | STALE | STALE  | STALE | STALE
  =! TLL  |   -  |  -   |   -   |   -   |   -   |   R    |   -   |    R
----------|-----------------------------|-------|--------|-------|--------
OTHER     |   -  |  -   |   -   |   -   |   -   |addr=TLL|   -   |addr=TLL
Address   |   -  |  -   |   -   |   -   |   -   | STALE  |   -   | STALE
  =! TLL  |   -  |  -   |   -   |   -   |   -   |   R    |   -   |   R
==========================================================================

That is, if link layer is using addresses, ignore Neighbor
advertisements without TLL totally?

-- 
Markku Savela <[EMAIL PROTECTED]>
--------------------------------------------------------------------
IETF IPng Working Group Mailing List
IPng Home Page:                      http://playground.sun.com/ipng
FTP archive:                      ftp://playground.sun.com/pub/ipng
Direct all administrative requests to [EMAIL PROTECTED]
--------------------------------------------------------------------

Reply via email to