Subject: Changes to networking code for token ring
To: None <port-i386@NetBSD.ORG, tech-net@NetBSD.ORG>
From: John Messenger <>
List: port-i386
Date: 05/10/1995 19:24:33
I am writing a driver for a Proteon token ring card.  It is based on
NetBSD-1.0, and I don't know if -current has any more generic
networking code.  Initially the aim includes IP and ARP only.
I am basing the implementation on RFC1042.

This requires some changes to the networking code:
  * providing analagous routines to some in if_ethersubr.c
    (token_input, token_output, token_ipattach, maybe others later).
  * changing the ARP code (if_ether.c) to receive and send frames from
    802 networks (there seems no point in duplicating this as the code
    almost supports 802 networks already)
  * Other stuff I haven't even though of.

Has Anyone Done This Already?

Source Routing

My initial implementations of the above do not implement source
routing except to throw it away when received.  RFC1042 (in its "For
IEEE 802.5" section) talks about how to use SR in this context.  Has
anyone implemented this, in a publically available way?  The RFC asks
whether RIF information should be stored in an extended ARP cache (for
speed) or separately (for memory efficiency - RIF information is not
needed in Ethernet).

Bear in mind when thinking about these issues that FDDI now defines
source routing, and that 100VG-AnyLAN does too.  The same mechanism as
is suitable for token ring will also serve for those network types.

Who else might I ask about these issues?


        -- John Messenger, Proteon International (
	   "Mind like parachute: only works when open" -- Charlie Chang