I can comment from the Mac OS X perspective... On Wednesday, December 26, 2001, at 11:07 , George V. Neville-Neil wrote:
> Hi Folks, > > Just checking out some developer info on OS/X and I came upon this > interesting quote: [snip] > Can anyone comment on the progeny of the TCP/IP stack in Mac OS/X? > Did they do a rewrite or just tweaks? Granted this may all be market > speak > but if > it's true it would indicate some significant changes. The TCP/IP stack in Mac OS X/Darwin is essentially the stack from FreeBSD 3.2. There have been almost no changes in this area to accomodate NKE operation. The only one of note that I recall now is a change to the "ip_protox" mechanism. In Mac OS X, it's an array of pointers to protosw's, rather than small integers. This seemed to me to be a fairly simple way to allow the addition of new protocol handlers. We did make some changes in the socket layer to support NKEs, but the major changes to networking are in the "data link interface" part of the system. A major goal of the development of Mac OS X was to enable developers to add to the system without requiring kernel builds, or in particular, major effort on the part of customers to get things to work well. The BSD data link area is mostly confined to "if_ethersubr.c" and friends, and this stuff has been completely revamped. We factored out the notions of de-muxing, address resolution, and framing, to allow developers to introduce support for new device types without having to provide new kernels to customers. In addition, we have provided hooks to permit "filter" modules to be inserted in the packet flow between protocol stacks and devices. There's more info floating around on the darwin lists, and in the darwin repository. Regards, Justin -- Justin C. Walker, Curmudgeon-At-Large * Institute for General Semantics | If you're not confused, | You're not paying attention *--------------------------------------*-------------------------------* To Unsubscribe: send mail to [EMAIL PROTECTED] with "unsubscribe freebsd-net" in the body of the message