From owner-freebsd-current Thu Feb 12 15:24:33 1998 Return-Path: Received: (from majordom@localhost) by hub.freebsd.org (8.8.8/8.8.8) id PAA27971 for current-outgoing; Thu, 12 Feb 1998 15:24:33 -0800 (PST) (envelope-from owner-freebsd-current@FreeBSD.ORG) Received: from smtp01.primenet.com (smtp01.primenet.com [206.165.6.131]) by hub.freebsd.org (8.8.8/8.8.8) with ESMTP id PAA27962 for ; Thu, 12 Feb 1998 15:24:29 -0800 (PST) (envelope-from tlambert@usr02.primenet.com) Received: (from daemon@localhost) by smtp01.primenet.com (8.8.8/8.8.8) id QAA16659; Thu, 12 Feb 1998 16:06:28 -0700 (MST) Received: from usr02.primenet.com(206.165.6.202) via SMTP by smtp01.primenet.com, id smtpd016630; Thu Feb 12 16:06:23 1998 Received: (from tlambert@localhost) by usr02.primenet.com (8.8.5/8.8.5) id QAA04054; Thu, 12 Feb 1998 16:06:22 -0700 (MST) From: Terry Lambert Message-Id: <199802122306.QAA04054@usr02.primenet.com> Subject: Re: Heads up: static -ification To: eivind@yes.no (Eivind Eklund) Date: Thu, 12 Feb 1998 23:06:22 +0000 (GMT) Cc: wollman@khavrinen.lcs.mit.edu, eivind@yes.no, current@FreeBSD.ORG In-Reply-To: <19980212161814.38690@follo.net> from "Eivind Eklund" at Feb 12, 98 04:18:14 pm X-Mailer: ELM [version 2.4 PL25] MIME-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit Sender: owner-freebsd-current@FreeBSD.ORG Precedence: bulk X-Loop: FreeBSD.ORG > > ``Layering is a great model for designing protocols, but an incredibly > > lousy way of implementing them.'' > > - D. D. Clark > > That quote is often true for protocols, yes. OTOH, I haven't yet > found a way of implementing advanced protocols that isn't lousy. Have you ever heard of a "monostack"? In a traditional streams implementation, given when streams runs, a protocol stack will not run to completion pushing message either up or down (or if they are badly arranged, both directions). A "monostack" overcomes this problem by creating a monolithic protocol, per traditional designs, and then exporting discrete protocol components. For instance, I might have a monostack that implements IP, ICMP, UDP, and TCP, and exports each of these interfaces as if they were segregable, when in fact they were not. Because of this, an inbound or outbound TCP packet can run to completion through the stack without incurring a streams scheduling overhead from the processing order not matching the stacking order. > At least for operating systems, message-passing systems tend to be > beautifully simple. The main problem is that if you do them in a > memory-protected environment your performance tend to suck. And you can't get orangebook certification using statistical memory protections. ;-). Terry Lambert terry@lambert.org --- Any opinions in this posting are my own and not those of my present or previous employers. To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe current" in the body of the message