> It would make more sense for an application to make a call to an API that > says "I want to hand off identifying information about host X to host Y. > Please package me up information to sent to X so that it will be able to > understand what I mean." been there, tried to do that, in the context of PVM. by far the easiest way to accomplish this is to have a uniform address space at the network level. any other approach is just too complex. background: PVM was originally designed to as a uniform API for distributed memory parallel machines, and later as a way to provide a distributed memory programming environment across a network of computers (some of which were potentially distributed memory hosts). in order to allow applications to send messages to other "processing elements" or hosts, PVM assigned a task id to each "processing element" in its virtual machine, and the mapping between task ids to tasks was uniform across the virtual machine. this task id consisted of a host id to which a host-specific offset was added. we tried making the mapping non-uniform because it would have relieved us of the need to keep a mapping table consistent across all hosts in the machine (especially after we allowed new hosts to be added to the machine), but the most robust, and in general the most efficient, way to implement the host-id mapping function was to use consistent numbering for host-ids across the entire machine...that, and expecting apps to invoke a translation function every time they passed a task id to another task was just too cumbersome. uniform addressing models are very compelling, even when you don't have complete interconnection. > A mention of proper layering was made earlier in this discussion thread. > It's time we took a serious look at how to improve on the mechanisms used. > Solving this layering issue could benefit both IPv4 and IPv6 > implementations. As noted, the problem is not new at all, though perhaps > now is the time to shed light on the matter. proper layering is an art. it involves understanding when to enforce layering discipline, and when to escape it.