Path: utzoo!utgpu!jarvis.csri.toronto.edu!mailrus!tut.cis.ohio-state.edu!ucbvax!LA.TIS.COM!crocker From: crocker@LA.TIS.COM Newsgroups: comp.protocols.tcp-ip Subject: Re: Implementing TCP/IP outside of UNIX kernel? Message-ID: <8903301821.AA14726@trussed.la.tis.com> Date: 30 Mar 89 18:21:39 GMT References: <8903301431.AA19142@TIS.COM> Sender: daemon@ucbvax.BERKELEY.EDU Organization: The Internet Lines: 21 David, A general (and reasonably obvious) comment on your question: At the very least, you need access to a network driver to get the data in and out of your machine. The connection management stuff can be implemented as user code, but, as you suggested, may be extraordinarily inefficient. (Vint Cerf implemented his first version of TCP (or perhaps NCP) this way, using one process per connection, and the result was "of academic interest only.") A separate but related problem is how the ordinary user processes are going to communicate with the TCP/IP implementation. If TCP/IP is not available as a kernel service, then you have to connect to it via the standard interprocess communication mechanism. I'm not familiar with the current IPC facilities in Unix, but somehow you'd have to set up your TCP/IP implementation as a server. And to answer your direct question, I'm afraid I don't know of an implementation like this. Zeke