Subject: [DNA] MUST Store Lifetime and Last Refresh time? (draft-pentland-dna-protocol-00.txt)

From: Greg Daley <[email-masked]>
Date: Wed, 01 Jun 2005 13:39:40 +1000

In the draft it states:

   "The list will be
    referred to in this document as "DNAPrefixList".  For each prefix the
    router MUST store the following information:

    1.  Prefix

    2.  Prefix length

    3.  Valid lifetime

    4.  Time last refreshed"

In my (existing) implementation I'm storing the expiry time
of the prefix (which is calculated based on the valid lifetime
at the RA reception time).

Is this insufficient?

I can understand having an indication of when data expires,
but it seems overkill explicitly pointing out which data types
have to be internally stored in the host unless there's
further reasons behind it.

Would it be possible to make this descriptive and informational
(being internal to the host) rather than prescriptive,
using standards language?

Greg

---

From: Greg Daley <[email-masked]>
Date: Wed, 01 Jun 2005 13:41:34 +1000

My apologies, I forgot the section number:

That's in section 5.1.1

---

From: Brett Pentland <[email-masked]>
Date: Wed, 01 Jun 2005 14:22:08 +1000

Yes, that sounds reasonable.  Perhaps we need some text that states
that how the information is stored internally is up to the implementor,
as long as the result is the same as described.

Brett.

-- 
  ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  Brett Pentland                  [email-masked]
  CTIE - Centre for Telecommunications and Information Engineering
  Department  of  Electrical  and   Computer  Systems  Engineering
  Monash University, VIC, 3800,                          Australia
  Phone : +61 3 9905-5245                    Fax : +61 3 9905-3454
  ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

---

From: Erik Nordmark <[email-masked]>
Date: Wed, 01 Jun 2005 10:52:37 -0700

Greg,

Thanks for your comments on the draft.

> at the RA reception time).

Is this for #3 above? Are you also storing #4?

> Is this insufficient?

Storing the expiry time for the valid lifetime is what's needed for #3.

> using standards language?

The intent is to provide enough *conceptual* data structure descriptions 
so that the protocol can be described in detail, but not constrain how 
an implementation actual does things as long as the externally visible 
behavior of the implementation is consistent with the specification.

There is text in section 5 in RFC 2461 which says this, so perhaps we 
can just borrow that text.

    Erik

---

From: Greg Daley <[email-masked]>
Date: Thu, 02 Jun 2005 11:22:09 +1000

Hi Erik,

Erik Nordmark wrote:
[cut]
> Is this for #3 above? Are you also storing #4?

I think that the issue was basically that the term "store"
means "allocate space for" to me.

When that's combined with a MUST, I have to change data structures...

> Storing the expiry time for the valid lifetime is what's needed for #3.

Ok. That clarifies things.

[cut]
> can just borrow that text.

I see (in 5.1 conceptual data structures).

"Prefix List entries are created from information received in Router
  Advertisements.  Each entry has an associated invalidation timer
  value (extracted from the advertisement) used to expire prefixes
  when they become invalid"

This approach sounds good to me.

Thanks,

Greg

---

From: Erik Nordmark <[email-masked]>
Date: Thu, 02 Jun 2005 15:53:38 -0700

>  when they become invalid"

And there is also the first paragraph oin 5 which says
    This section describes a conceptual model of one possible data
    structure organization that hosts (and to some extent routers) will
    maintain in interacting with neighboring nodes.  The described
    organization is provided to facilitate the explanation of how the
    Neighbor Discovery protocol should behave.  This document does not
    mandate that implementations adhere to this model as long as their
    external behavior is consistent with that described in this document.

   Erik