tcp-ip@ucbvax.ARPA (05/14/85)
From: jas@proteon.arpa MIT did an out of kernel TCP/IP for V6 UNIX on an 11/45 (or any I&D machine). The kernel code includes only the minimum functionality required in the kernel: > IP Fragment reassembly > IP header checksums > Demultiplexing based on IP protocol, and UDP/TCP sockets > Completion of IP headers on outgoing packets > Local-net header handling > Gateway cache for routing outbound packets All of the rest of the code is in libraries that are linked with user tasks. There are clean IP and UDP libraries, and a rather bare-bones TCP library. The following aspects are handled by user-level code: > ICMP redirect processing > ICMP echo processing > fragmenting outgoing packets > Name->address translation using IEN116 nameservers > UDP headers & checksums The user level code includes the following application levels: > TFTP file transfer > User and server telnet (a psuedo-tty driver for the kernel is provided) > Finger user and server > User and server SMTP The device driver is for proNET. Since this is a small-address space net, no ARP was written. This code is available from MIT, for something like $40. Contact lwa@mrclean. Proteon has made a commercial version of this code, which is currently running on VENIX/11 (a UNIX derivative resembling a cross between V6 and V7). Some changes and improvements have been made: > Comments (extensive) in kernel code > Many fixes to the TCP, so that it can work with the 4.2TCP, along with a horde of other bug-fixes. > An IEN116 nameserver > Port of pty driver to V7 kernel > Discard user and server > Hostnames user > Nicname user Also, the documentation has been brushed-up, but is not much more extensive than a complete set of manual pages. This code is distributed in source form, with different licenses depending on whether it will be resold. Contact me (John Shriver, jas@proteon) for details on this version. This code has proved quite reasonably portable. The MIT version has probably been sucessfully ported about 3 times. The Ethernet ports have not had any trouble adding an ARP layer. -------