Brian E Carpenter wrote:
>I'm close to concluding that address scope is simply a bogus concept.

I find it not entirely bogus, but if it's to be part of the addressing
architecture then it needs to be handled *everywhere* that the addresses
are handled.  Apps that expect to represent an IPv6 address in 128 bits
fail when they are presented with an address where the 128 bits isn't
really the entire address.  Really, we can only have scope where we're
prepared to require every application to know about it.

Link-local scope works just fine in IPv6, because these addresses are
used only by very specialised programs (such as routing code within IPv6
stacks) that need to know about different links anyway and have no problem
attaching a link ID to each address.  The scope aspects of IPv6 multicast
similarly seem less troublesome, at least to me: it's so inherent in
the multicast addressing architecture that it really can't be ignored,
but the need to handle it is localised to programs that do multicast.

Where we really can't do scoping is in ordinary unicast addressing.
This needs to be kept as simple as possible for the application layer,
because it's going to be handled in simple ways whether we like it or not.
Few enough IPv4 applications cope with multiple addresses properly,
we'll be lucky if we have *that* done properly by IPv6 apps.

>5. In practice, scope is not explicit; it's implicit in firewall rules,
>VPN setup, static routes, DNS entries, application level trickery, 
>configuration files, and brains.

Now here's one of the big problems.  IPv6 nodes don't have any way to talk
to each other about scopes.  Site-local addresses suffer from looking a
lot like global addresses in the way they are used.  I can imagine some
neat things that could be done if scoping (or, more generally, context
sensitivity in the interpretation of addresses) were a pervasive and
inherent part of unicast addressing -- but they require nodes to tell
each other about relationships between scopes, do address translations,
and so on.  IPv6 scopes just sit there: they don't *do* anything.
(Yes, I'm getting rather abstract here.)

>6. Middleware (a.k.a. Apps) has no idea how to handle scope anyway. 
>In fact, given the above, I don't see how a useful API to express scope 
>concepts could be defined.

I think the right language to express useful scope concepts doesn't
exist yet.

>I think we'd be better off to simply forget about address scope.

For this generation of network protocols, certainly.  I think proper
use of scoping requires an additional level of complexity that we're not
prepared for (and, institutionally, the IETF can't really comprehend).
The ways of using scope that I imagine require that scoping is used
solely as an implementation technique, and that the network layer
provide to higher layers (both apps and humans) the illusion of stable
global identifiers.  For now I think the right approach is to provide
globally-scoped identifiers and work on the stability problem from
several angles.

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