Re: SharedIP NKE?
Re: SharedIP NKE?
- Subject: Re: SharedIP NKE?
- From: Justin Walker <email@hidden>
- Date: Wed, 18 Feb 2004 16:13:33 -0800
On Wednesday, February 18, 2004, at 03:25 PM, Jim Hunter wrote:
Hi Justin,
I found your reference to the SharedIP NKE very interesting.
Heh!
It sounds like it might be possible to use NKEs to insert an alternate
implementation of all or parts of the TCP/IP stack into Mac OS X (if
anyone were willing to exert the effort). Is this correct?
Nope; to add to what Josh says, it is not possible, and messing with
the IP stack in this way will almost certainly void your warranty :-}.
The intent of the NKE scheme is to allow developers to insert new
pieces of functionality without having to tear the whole thing apart
and put it back together. There are more-or-less well-defined places
to do this: socket layer; above the datalink (DLIL) layer; between the
DLIL and devices. You can also add protocol stacks to the kernel using
related schemes. Replacing the IP stack, or modifying it, is not
supported.
If so, what is the role of the SharedIP NKE in that process? Is it an
example of inserting an alternate stack implementation, or perhaps an
enabing mechanism? I searched for "SharedIP NKE" on the Apple
Development
site, but didn't get any hits.
SharedIP, as Josh mentions, is a scheme to permit a user-mode process
to own its own IP stack, but share the IP address (and, hence, the port
numbers) with the Mac OS X kernel. It provides a way for Classic, it's
primary (and only, AFAIK) client, to get datagrams in and out without
messing up, or colliding with, the stacks (AppleTalk and IP) in the
kernel. It sits atop the AF_NDRV 'network driver' interface, and
examines in- and out-bound packets for relevance. A quick look at the
code should dissuade all but the most lunatic of developers :-}.
Since I no longer work at Apple, I can only guess at the longevity of
this mechanism. Believe me, it is only there because Classic is
important enough to keep viable, but not important enough to warrant a
wholesale re-implementation of its support for networking.
Hope that helps.
Regards,
Justin
--
Justin C. Walker, Curmudgeon-At-Large *
Institute for General Semantics | When LuteFisk is outlawed
| Only outlaws will have
| LuteFisk
*--------------------------------------*-------------------------------*
_______________________________________________
macnetworkprog mailing list | email@hidden
Help/Unsubscribe/Archives:
http://www.lists.apple.com/mailman/listinfo/macnetworkprog
Do not post admin requests to the list. They will be ignored.