On Wed, 29 Aug 2001, JINMEI Tatuya / [ISO-2022-JP] 神明達哉 wrote:
> I have a quick question about RFC2462 (stateless address
> autoconfiguration).  I know we've had a similar discussion before, but
> please let me repeat it...
>
> The RFC defines the notion of "StoredLifetime" as follows:
>
>     e) If the advertised prefix matches the prefix of an autoconfigured
>        address (i.e., one obtained via stateless or stateful address
>        autoconfiguration) in the list of addresses associated with the
>        interface, the specific action to perform depends on the Valid
>        Lifetime in the received advertisement and the Lifetime
>        associated with the previously autoconfigured address (which we
>        call StoredLifetime in the discussion that follows):
>
> In my understanding, StoredLifetime is the "remaining" lifetime to
> expiration at the time when the new Router Advertisement is received.
> So, for example, if we first received a prefix with the valid lifetime
> being 7200 seconds, and then received a next advertisement 1800
> seconds later, the StoredLifetime corresponding to the address from
> the prefix should be 5400 (= 7200 - 1800) seconds.
>
> I believe this interpretation is correct, and I've implemented RFC
> 2462 in this manner.  However, a user of our implementation said it
> was *not* what RFC2462 says, because

Well, this is the only interpretation that works with lifetimes less than
7200, which (partially) triggered the "Jim Bound rule" (Date: Sun, 08 Nov
1998 10:57:59 -0500) thread in the first place.

So, it's obviously the "right" interpretation.

But is it what it actually says?  Wording is IMO very ambiguous:

>       Lifetime
>        associated with the previously autoconfigured address (which we
>        call StoredLifetime in the discussion that follows):

The name StoredLifetime implies it's stored once, not decremented.  Why
else would there even be need for 'StoredLifetime', why just use
'Lifetime' there?

'Lifetime associated with the previously autoconfigured address',
autoconfigured hints at static ValidLifetime, there is no clear definition
of Lifetime, much less the whole deal.

And:

   IPv6 addresses are leased to an interface for a fixed (possibly
   infinite) length of time. Each address has an associated lifetime
   that indicates how long the address is bound to an interface. When a
   lifetime expires [...]

Lifetime is originally derived from advertised ValidLifetime, which is not
decremented but updated.  This doesn't specify whether variable "Lifetime"
is really a decrementing timer or only a value, which is updated by
advertisements, _and_ having separate timer decrementing that.

As above, you can deduce the intention there if you think about it, but
again, I'm not sure that's what the spec _exactly_ says.

(yeah, it was my message :-)

Speaking of which, would it soon be time to move ND/autoconf forward, and
at the same time, clarify the text?

-- 
Pekka Savola                 "Tell me of difficulties surmounted,
Netcore Oy                   not those you stumble over and fall"
Systems. Networks. Security.  -- Robert Jordan: A Crown of Swords





--------------------------------------------------------------------
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