Path: utzoo!mnetor!uunet!lll-winken!lll-tis!ames!pasteur!ucbvax!A.ISI.EDU!CERF From: CERF@A.ISI.EDU Newsgroups: comp.protocols.tcp-ip Subject: Re: offloading the protocols Message-ID: <[A.ISI.EDU]17-Mar-88.05:12:56.CERF> Date: 17 Mar 88 10:12:00 GMT References: <8803151620.AA10109@windsor.cray.com> Sender: daemon@ucbvax.BERKELEY.EDU Organization: The Internet Lines: 36 I'm not goin to get into the front-end versus operating system resident protocol argument (I argued against the front-end years ago on the same basis you suggest Dave Clark argues, if anyone cares about my historical biases). However, it seems to me that as you approach the gigabit channels, you really want to simplify the host's view of networking. An analogy might be found in disk/file access and virtual memory. Years ago, an operating systme was designed at UCLA called the Sigma EXperimental system (SEX for short - the user's manual was a popular item!). It ran on a Sigma 7 made by Scientific Data System (later, Xerox Data Systems, later, R.I.P.). The notion of associating ("coupling" - God, I never thought about how suggestive that term was in connection with the operating system acronym) virtual memory with pages of files was an essential design element. One would associate a particular virtual page space with disk pages occupied by a file. This is not much different than virtual memory linked to pages of a disk, except in this case, actions to the memory content were reflected in changes to the FILE (not just changes to a disk page which happened to represent a page of virtual memory space). So, the user's virtual memory space was mapped onto the file system. I imagine Multics could be considered to have done something like that only even more elegantly with its rich addressing structure. Perhaps what is needed is a way to associate virtual memory with places in the networking space. Writing to virtual memory would be like writing to the network. PDP-11's had the concept of associating certain words of memory with I/O channels. But what I am looking for is a notion that lets very simple actions to memory be interpreted by outboard processors as network-related actions. Perhaps Dave Clark could expand on his theme which I view as related to your question if not the rather poorly expressed ideas above. Vint Cerf