Fernando Gont wrote:
> Folks,
>
> During IETF LC, a couple of folks noted that Interface Indexes might not
> be stable.
>
> I added some text on the subject to my working copy (mostly based on the
> discussion with Brian Haberman and Mark Smith), but the issue came up
> again (Tom Petch commented on the subject).
>
> Since the raison d'etre for including the Interface Index in F() is to
> differentiate between multiple interfaces connecting to the same
> network, either the Interface Index or the Interface Name could be used.
> So far, these are the pros/cons of each:
>
> * Interface Index: Including this one would be ideal, since it's simply
> a small number that identifies the interface, and does not really depend
> on the NIC vendor, etc. However, as noted above, in some implementations
> it might be unstable (i.e., vary when the system is bootstrapped).
>
> * Interface name: This one has the pro that is stable, even on systems
> in which the Interface Index is not. However, on some systems (e.g.
> BSDs) the Interface name depends on the NIC vendor, which means that if
> a NIC is replaced with another from a different vendor, the Interface
> name is likely to change, and therefore the resulting address will change.
>
>
> My take would be to replace "Interface Index" in the expression with an
> abstract "Interface_ID", and then explain that "Interfae_ID" can be
> either the Interface Index or the Interface name, and include some of
> the text above (explaining why an implementation might want to include
> one or the other -- i.e., if your Interface Indexes are stable, use
> them. Else use the Interface name).
>
> Thoughts?
>
> Thanks!
Since both "Interface_Index" and "Interface name" are anyway both
implementation dependent, why would you need to precisely standardise
the exact meaning, or the exact source of the information? AFAICS this
wouldn't significantly affect inter-op, or protocol operation.

I therefore agree with your proposal that the text should define an
abstract "Interface_ID" and suggest that you define "an Interface_ID is
an implementation-dependent identifier associated with a particular
interface on the local node, which is generally invariant over the
long-term and over system reboots. The Interface_ID may be used to
assist efficient generation of unique stable-privacy-addresses,
especially in situations where multiple interfaces on a single node may
be configured using the same L3 Prefix. If the Interface_ID does change
for whatever reason, this would obviously undermine the time-invariance
of the resulting stable-privacy-addresses."

I don't think you need any more guidance than that. 

regards,
RayH
--------------------------------------------------------------------
IETF IPv6 working group mailing list
ipv6@ietf.org
Administrative Requests: https://www.ietf.org/mailman/listinfo/ipv6
--------------------------------------------------------------------

Reply via email to