Writing Protocols...

Richard Masoner (richardm@cd.com)
Fri, 29 Sep 1995 11:43:03 -0500 (CDT)



I suppose I should clarify my cryptic "I've done both" in response to
Bro. Brown's question about what I've done network wise, so now for a
little bragging ... ;-)

[brag mode ON]

Though somebody started the work and specifications of this particular
protocol, I fleshed it out and made it usable and also implemented it
on a (horribly slow) proprietary MP O.S. that linked several 386's
together, and also on a old MIPS R2000 system, and on some SunOS machine.
This was a netbios over XNS thing.  Though netbios is "technically" an
API, it does require inventing a protocol to make it work.  That said,
it's unlikely you'll ever see this on any CNE exam; especially since
Ungermann-Bass' implementation of netbios over XNS is what became the
industry "standard" and was used by Microsoft, Pacific Bell, and other 
large large corporations for their internal mail systems. (I've also
implemented the Ungermann-Bass version of this ;-)

Another project I did was implementing TCP/IP "tunneling" over SNA.
*That* was a blast ;-) getting TCP/IP to route over a half-duplex,
connection-oriented protocol.  Wrote up the spec for that, implemented
it on a few systems and watched things go.  It was great!  I was
getting ready to write up an RFC on it too when (1) the company I
did the work for (as a contractor) got bought by someone else and
all my contacts got fired and (2) Another large router manufacturer
published an RFC that did essentially the same thing mine did -- i.e.
they beat me to the punch.  I think they did the work in conjunction
with IBM, if I remember correctly.  I have no idea if CNE's have to
know anything about the real world of routing multiple protocols and
tunneling and all that .... ;-) (just a little rib -- I quite aware
of the connectivity issues you face with IPX/SPX vs TCP/IP).

Protocols I've implemented: XNS, IPX/SPX (XNS are IPX are almost
*identical*), various netbios implementations, 802.2 (LLC) on both
802.3 and 802.5.  These were on various Unixen, including SCO, 
Interactive, Motorola 88K SVR3 & SVR4, AT&T SVR3&4, MIPS RiscOS,
Solaris 1 & 2, AIX, some Euro-Unixes from Seimens, ICL, and Bull;
probably a few more I can't remember.

Regarding IPX & LLC on Unix: in the early days getting the Unix
ethernet driver to talk 802.3 was sometimes a real challenge, and
was always an undocumented feature.  Nowadays, it's a standard thing.

[brag mode OFF]

Richard, who's getting ready to eat some New York strip and potato
in the company break-room *YUM*