Subject: LL10 Add warnings to applicability statement

From: Stuart Cheshire <[email-masked]>
Date: Tue, 11 Feb 2003 19:13:08 -0800

I cannot support the proposed change:

>IPv4 link-local addresses are therefore applicable if it is either
>known that all applications that are used can accomondate this
>change in the properties of the IP addresses, or all applications
>that are used have been modified to account for dynamic addresses,
>their limited scope and their potential ambiguity.

If you think carefully about what this says, it outlaws what Apple and 
Microsoft have been doing since 1998, and anything that we could 
conceivably do in the future.

This statement says that IPv4 link-local addresses are only applicable
in cases where you can make a definite statement about *all* applications
running on that OS. In the case of a general purpose OS like Mac OS, 
Windows, Linux, or Solaris, this means that IPv4 link-local addresses
are *never* applicable because the OS vendor does not even know about
every third-party application running on that OS.

The whole rationale behind IPv4LL is that effectively *ALL* application 
protocols can function usefully with link-local addresses on a single 
isolated link. A wealth of useful IP application software exists today. 
Connect two laptops with an Ethernet cable and give them no IP addresses, 
and that vast wealth of software is worthless. Connect two laptops with 
an Ethernet cable and give them unique IP addresses, and that wealth of 
software comes back to life and can do useful things for the user.

Stuart

---

From: Keith Moore <[email-masked]>
Date: Tue, 11 Feb 2003 23:49:00 -0500

On Tue, 11 Feb 2003 19:13:08 -0800
Stuart Cheshire <[email-masked]> wrote:

> Microsoft have been doing since 1998, 

No, it just means that the behavior of vendors products prior to the standard
does not conform to the standard.

(Actually I think the text is just poorly written, as I pointed out in a
separate message.  But IETF is under no obligation to bless any vendors'
practices, whether good or bad, or in the past, present or future.)

> running on that OS. 

Until you find a way to separate the apps that work with LL from those that
don't, such that those that don't work with LL aren't affected, there is at
least some justification for this position.

> In the case of a general purpose OS like Mac OS, 
> isolated link.

This may be the rationale, but it's simply not the case.  There are apps that,
for a variety of reasons, need to have external connectivity even if all of 
the participants in the session are all on the local link.  For instance, some
kinds of distributed apps rely on having a server on the public Internet which
can serve as a forwarder and/or rendezvous point, because (due to NATs and
firewalls) they do not expect hosts to be able to communicate directly with
one another.  Some apps insist on consulting a license server.  Others will
want to look up DNS names.  etc.

Nor is the "isolated network" case very relevant, because most apps will
occasionally need to deal with a mixture of LL and routable addresses.  How
the app deals with it will vary from one app to another, but some apps will
certainly fail under such conditions, and other apps will not work as well as
they would with routable addresses.

We've accepted that we're going to have LL addresses.  We've come to something
resembling agreement that they should only be used by ad hoc networks or when
explicitly configured, that they should stay out of the way as much as
possible.  Having a solution for ad hoc networks is a good thing.  But let's
not lie about the limitations of these things.