Skip site navigation (1)Skip section navigation (2)
Date:      Tue, 17 Nov 1998 18:12:28 -0200 (EDT)
From:      Joao Carlos Mendes Luis <jonny@jonny.eng.br>
To:        winter@jurai.net (Matthew N. Dodd)
Cc:        asmodai@wxs.nl, freebsd-net@FreeBSD.ORG, jhay@mikom.csir.co.za
Subject:   Re: Frametypes (was: Re: Netware client for FreeBSD)
Message-ID:  <199811172012.SAA06248@roma.coe.ufrj.br>
In-Reply-To: <Pine.BSF.4.02.9811171128200.17054-100000@sasami.jurai.net> from "Matthew N. Dodd" at "Nov 17, 98 11:41:53 am"

next in thread | previous in thread | raw e-mail | index | archive | help
#define quoting(Matthew N. Dodd)
// On Tue, 17 Nov 1998, Jeroen Ruigrok/Asmodai wrote:
// > On 16-Nov-98 Matthew N. Dodd wrote:
// > > On Mon, 16 Nov 1998, Jeroen Ruigrok/Asmodai wrote:
// > >> Well there has to be a nice idea how to solve it. Most likely as an
// > >> extension to rc.conf to the interfaces.
// > > 
// > > How about something like this:
// > > 
// > > ed0: flags=8843<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST> mtu 1500
// > >       frame 0: Ethernet_II
// > >           inet 10.0.1.60 netmask 0xffffff00 broadcast 10.0.1.255
// > >         ipx d3343.e8c4a06f
// > >       frame 1: Ethernet_802.2
// > >         inet 10.5.1.20 netmask 0xffffff00 broadcast 10.5.1.255
// > >         ipx dead3.beef0000         
// > >       ether 00:00:e8:c4:a0:6f
// > > 
// > > ifconfig ed0 frame 2 ethernet_802.3
// > > 
// > > By default, the first frame type allocated would be Ethernet_II (no
// > > changes would be required for existing systems; ifconfig ed0 inet ...
// > > would work as normal.)
// > 
// > In my opinion that would be great, and simple to extend to the
// > ifconfig source afaik.
// > 
// > Simple, elegant and workable ;)
// 
// Very 'Netware' ish.  :)
// 
// The problem is not extending ifconfig but creating a new structure to hang
// off of the struct ifnet that would contain the various ifaddr structs.
// 
// struct ifframe {
// 	int	frame;			/* frame type */	
// 	struct  ifaddr *if_addrlist;	/* address of interface */
// 	struct  ifnet *ifa_ifp;		/* back-pointer to interface */
// 	struct	ifframe *iff_next;	/* next frame type */
// };

I think that an interface for each frame is an easier way to go.

ed0:  -> Standard Ethernet_II, historical.
llc0: -> LLC (802.2) over any interface (how to attach ?)
snap: -> SNAP over LLC (Could there be a fast path, obviously)
ipx0: -> Novell's 802.3, as it should never be used by anybody else.

This would eliminate the problems with routing between frames,
if_addrlist parsing and arp table lookup.

A similar approach could then be used for other interfaces supporting
llc and snap, like Token Ring, FDDI, or any other 802 local net.

I'm doing something like that in Slowlaris as part of my thesis.  The
interesting thing is that I may now run IP over Ethernet SNAP without
touching the IP code (for which I don't have the sources, anyway).

					Jonny

--
Joao Carlos Mendes Luis            M.Sc. Student
jonny@jonny.eng.br                 Universidade Federal do Rio de Janeiro
"This .sig is not meant to be politically correct."

To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe freebsd-net" in the body of the message



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?199811172012.SAA06248>