

	    PCROUTE - and IP routing program from the IBM PC
		 	     Vance Morrison
			morrison@accuvax.nwu.edu

    Traditionally IP routers have been fairly high performance,
expensive machines.  Typically they run about $5000-$10,000 a unit.
Until now a IP router for under $5000 was just about impossible
to get.  Recent developments in PC hardware, however, has made
it possible to convert a PC to an IP router for a TOTAL of $800-$1000
a unit.  This price is less that the cost of many ethernet boards
and thus it now makes sense to always use dedicated router to
perform IP gatewaying functions.  

---------------------------------------------------------------------
What is PCroute?

    PCroute is software written for an PC/XT (or AT) that will 
allow it to act as a IP router that will gateway between the following
kinds of Physical media.

	Ethernet - Ethernet
	Ethernet - Starlan
	Starlan - Starlan

   In addition to the XT, the only other hardware needed are the
networking cards, which at present run about $200-$250 a piece.  
Since you can buy an XT (without an monitor) for $400, the total
cost for the hardware is $800-$900.  

---------------------------------------------------------------------
What do I need to install PCroute?

	1) An XT computer (does not need monitor)
	2) 2 Western Digital WD8003 network cards
		WD8003E		Ethercard Plus
		WD8003S		Starcard Plus
		WD8003SH	Starlink Plus

---------------------------------------------------------------------
How Fast is PC route?

    Some may argue that a PC simply is not fast enough to be a
good IP router.  This would true if the PC had to do all the work,
but in fact, the ethernet cards do most of the work.  All the
PC needs to do is determine the route, and copy the packet from
one interface to the other.  By programming in assembler and 
optimizing for peak efficiency, the PC is up to the task.  

    Actual tests indicate that that following formula is a
worst case estimate of throughput of PCroute on a 4.77Mhz XT

	packet_delay = .473 + .00393 * len	msec

   Where 'len' is the length of the packet in bytes.  Thus
PCroute has a fix per packet overhead of .473msec and takes
3.93usec/byte to transfer the packet from one network to the
other.  





    Thus for the largest packet size (1514) we get throughput of 

	packet_delay = .473 + .00393 * 1514 = 6.4 ms
	throughput = len*8/packet_delay = 1.9 Mbit/sec

    For the smallest packet size (64) we get a throughput of

	packet_delay = .473 + .00393 * 64 = .724 ms
	throughput = len*8/packet_delay = .7 Mbit/sec

   If you were to buy a XT clone, (even the $400 variety) it
would undoubtedly be a 8Mhz or 10Mhz machine, so you should
expect to do 1.6 and 2.0 times better respectively with these
machines.  I most strongly suggest that you get the 10Mhz variety
since they are usually only $30 more and will give you a 12%
performance boost

   In addition the Ethernet boards have an on-board 6.5K packet
buffer.  Thus packets that come at the PCrouter too fast for
it to process will be queued.  The router will start dropping
packets after this 6.5K buffer is exhausted.

   Note that since SUN NFS likes to send 8K blocks in fast spurts
this will sometimes cause the router to drop packets.  I suggest
that you set this block size down to 4K if you expect a lot of
NFS traffic through the router (look for 'wsize' in man fstab).

---------------------------------------------------------------------
What PC route supports?

   PCroute was designed to be as simple as possible yet perform
well as a IP router.  In particular it supports

	1) IP routing with Subsets (however the subnet mask
	   must begin with 255.255)
	2) Static routing with up to 250 routes.
	3) responds to ICMP echo (ping) 
	3) Directed broadcasts 

   The PCrouter also has support for more than two network interfaces,
but this requires recompilation of the code, so for now you will have
to contact me.

---------------------------------------------------------------------
What PC route DOESN'T support?

	1) Dynamic routing (yet)
	2) Booting off the network (BOOTP) (yet)
	3) Any IP services besides routing and ICMP echo.
	4) Any other Ethernet/starlan card besides Western 
	   Digital WD8003








---------------------------------------------------------------------
Coming Soon.

	1) RIP Support
	2) Appletalk - Ethernet Support (like a KIP box but you can
	   tunnel IP packets through the Appletalk network) Here at
	   NU we use this so that we can get cheap, reasonably fast
	   network access between buildings.
	3) Network Booting a la BOOTP
	4) The other ICMP functions so that router conforms to RFC1009

---------------------------------------------------------------------
Hints

	1) We found that the 10Mhz XT clones that Jamco and others sell
	   work very well.  One nice feature about these units is their
	   BIOS.  By setting the dip switches in the PC, you can tell it
	   that there is no Monitor.  This also tells the BIOS not to
	   check for a keyboard either.  Thus you don't need to buy either
	   the keyboard or the monitor.  Other XT BIOS ALWAYS check for
	   the keyboard, and thus you have to plug it in even though you
	   never use it.

---------------------------------------------------------------------
Reliability

	The reliability of PCroute has been EXCELLENT.  We have been
	using these routers for months now in three places with 
	absolutely no failures.   If you wish to PING one for yourself
	here are some PC routers on our campus

		129.105.49.13
		129.105.1.1
		129.105.7.1

---------------------------------------------------------------------
Comments and Bug reports

	I am interested in finding out what you think of PCroute and
	how well it performs for you.  I am also interested in hearing
	about any problems you have or bugs in the documentation.
	You should send your comments to 
		
		Vance Morrison <morrison@accuvax.nwu.edu>

	Note that since I am not paid to support this software, I can
	not guarantee that I can respond to your problem, but I will
	try.


						Vance Morrison
						Northwestern University

