Apparently, it uses a simple header (different from the user-mode UNIX header), and dynamically adds to its routing table when it receives incoming packets. This seems particularly handy.
Also, I noticed that the chaosd/server code for the user-mode UNIX implementation does not typically check the hardware destination, but jumps right to the software header for the destination information. This seems wrong.
I'm trying to figure out the most useful way to improve the Chaos support. Some of the use cases would be
- use Internet hosts as repositories for CADR Lisp Machine microcode and "world" bands
- use Internet hosts as file servers for Lisp machine source code
- provide Internet-based early-21st-century substitutes for 1980's functionality, such as e-mail and instant messaging (e.g. get Zmail to use Google's Gmail service, use Jabber or AIM to support instant SEND messages, use NTP to provide TIME service)
Some of these would simply be a local process posing as a Chaos server which could respond to various contact names with useful functionality, configured by various users to, e.g., use the instant messaging protocol or e-mail provider of choice. Some of this would require or allow collaboration between nostalgists: someone volunteers, similar to the ITS community, to host the equivalent of AI, and provide ITS-like FILE service on an IP address & port, with a corresponding Chaos subnet/host address.
I suppose part of my problem is I don't understand all the issues involved in internetworking. Chaos addresses were supposed to be roughly "institution-wide" with specific gateways to other networks, advertised by response to a particular Chaos contact name (such as ARPA). How does this translate to isolated hosts on the Internet posing as institutions with Chaos servers? Can we replace it with a DNS-mediated free-for-all where various IP-based users advertise Chaos DNS entries? How would subnets be allocated? Or will we depend on strictly local, handmade routing tables, where each chaos address gets mapped to an IP host & port? In this case, how do the Chaos source and destination addresses get fixed up when they make it to the IP host & port? Can the sender and receiver basically hide their respective internal Chaos subnetting schemes from each other?