[comp.protocols.tcp-ip] SUMMARY:Router-Where to Start

jk3n+@andrew.cmu.edu (John Stephen Kalucki) (11/21/90)

A public thanks to all who sent replies to my request for information on
where to start researching an ip-router. Below are all of the replies:


From: oleary@sura.net (dave o'leary)
Date: Wed, 14 Nov 90 12:04:22 EST
To: jk3n+@andrew.cmu.edu
Subject: IP router implementation


Hi - 

If you are interested in producing a true, full blown IP router, my
advice is - don't.  Unless you are willing to devote many man-months
of your/your friend's/your employee's time.  

If you want basic functionality, i.e. RIP, read RFC 1058, and then
RFC1009 (old router requirements) and then get the draft router 
requirements document and read that.  

Proxy arp is important, especially in the CMU environment, however if
you are going to plug it into the real world you better talk to datacomm
etc. first.  (steve Waldbusser, walt wimer, tom holodnik).  Also Matt
Mathis can tell you a lot about proxy arp and how to do it right.

Basically it is a lot of work, and there are more important problems that
need to be solved beyond "yet another IP router"....

hav efun

					dave
##############################

Date: Wed, 14 Nov 90 11:12 PST
From: rls@osa.com (Rich Scott)
To: jk3n+@andrew.cmu.edu
Subject: Re: IP Router-Where to Start?


	John, take a look at GateD - it's a PD IP routing daemon for 
Berkeley-type Unix machines, and is very well done. It handles multiple
routing protocols (RIP, HELLO, EGP, BGP, and soon, OSPF), and is very
well done. You can ftp it from devvax.tn.cornell.edu. There is also a
"design notes" paper that talks about how it's designed to allow easy
updates for new routing protocols.

	As far as RFCs go, rfc1058 is very good reading for learning RIP,
and rfc1131 documents OSPF (the new replacement for RIP, and any other
Interior Gateway Protocols). Uunet.uu.net has all the rfc's and a rfc-index
in ~ftp/rfc.

	Finally, I highly recommend Douglas Comer's book "Internetworking
with TCP/IP" - it describes the various routinog protocols very well, and
is exceptionally well-written. Be sure to get the second edition - it
has the white cover (the 1st ed. has a black cover).

	-rich

---
rich scott						rich@rx7.osa.com
open systems architects					612 525-0000
minneapolis, mn

###################

To: jk3n+@andrew.cmu.edu (John Stephen Kalucki)
Cc: barns@gateway.mitre.org
Subject: Re: IP Router-Where to Start? 
Date: Wed, 14 Nov 90 15:37:13 -0500
From: barns@gateway.mitre.org

RFC-wise, start with RFC 1009 "Requirements for Internet Gateways"
and chase its references down.

A revision of 1009 is in work in the IETF Router Requirements
Working Group.  There is a draft of the current state of the new
document and it can be obtained through the normal Internet Drafts
distribution sites.  The specifics are attached below.  The preface
to the draft tells most of what you might want to know about the
working group's plans and objectives and how one can have an influence
on what is put into the document.  This draft also has an updated list
of references.  The problem with it is that several sizable chunks
have yet to be written.

Bill Barns
barns@gateway.mitre.org

########################

Date: Wed, 14 Nov 90 21:52 PST
From: Denis DeLaRoca 825-4580 <@BITNET.CC.CMU.EDU:CSP1DWD@OAC.UCLA.EDU> (213)
Subject: Re: IP Router-Where to Start?
To: jk3n+@ANDREW.CMU.EDU (John Stephen Kalucki)

Look at RFC-1009, it addresses the subject of routers directly, it
is 2-3 years old and a lot of things have happened since.
 
1009  Braden, R.T.; Postel, J.B.  Requirements for Internet gateways.  1987
      June; 55 p. (Format: TXT=128173 bytes)  (Obsoletes RFC 985)
 
For packages that can do routing and you can test with, there are many,
any BSD Unix host can do routing, look also at the PCROUTE, Ka9q,
the CMU tcp/ip package, etc.
 
-- Denis


#####################

To: jk3n+@andrew.cmu.edu (John Stephen Kalucki)
Cc: barns@gateway.mitre.org
Subject: Re: IP Router-Where to Start?
Date: Thu, 15 Nov 90 07:45:00 -0500
From: barns@gateway.mitre.org

Sorry, this got dropped from other message.  /Bill

------- Forwarded Message

Return-Path: <owner-ietf@venera.isi.edu>
Received: from venera.isi.edu by gateway.mitre.org (5.61/SMI-2.2)
	id AA04720; Thu, 20 Sep 90 14:19:10 -0400
To: ietf@venera.isi.edu
Subject: ID ACTION: draft-ietf-rreq-iprouters-00.txt
Date: Thu, 20 Sep 90 10:04:32 -0400
From: mdavies@NRI.Reston.VA.US
Message-Id:  <9009201004.aa05617@NRI.NRI.Reston.VA.US>




A New Internet Draft is available from the on-line internet-drafts directories.

       Title    :  Requirements for Internet IP Routers
       Author(s):  Philip Almquist
       Filename :  draft-ietf-rreq-iprouters-00.txt


This draft attempts to define and discuss requirements for devices which
perform the network layer forwarding function of the Internet protocol suite.
The Internet community usually refers to such devices as "routers".  This
document is intended to provide guidance for vendors, implementors, and
purchasers of IP routers.

Internet-Drafts are available by anonymous_ftp.  Login with the username:
anonymous and password: guest.  After logging in, cd internet-drafts.
Type "get <filename>" with the filename above to retrieve the draft.

Internet-Drafts directories are located at:

NSF Network Service Center
    Address:  nnsc.nsf.net (192.31.103.6)

Defense Data Network NIC
    Address:  nic.ddn.mil (192.67.67.20)

Pacific Rim
    Address:  munnari.oz.au (128.250.1.21)

Europe
    Address:  nic.nordu.net (192.36.148.17)

Internet-Drafts are available by mail.  Send a message to SERVICE@nic.ddn.mil
with the subject:  SEND INTERNET-DRAFTS:draft-ietf-rreq-iprouters-00.txt

For questions, please mail to internet-drafts@nri.reston.va.us.


------- End of Forwarded Message

######################

Date: Thu, 15 Nov 90 08:53:10 PST
From: postel@venera.isi.edu
To: jk3n+@andrew.cmu.edu
Subject: Re:  IP Router-Where to Start?
Cc: tcp-ip@venera.isi.edu

Hi.

Start with RFC-1009, and also get involved with the "router requirements
working group" of the IETF.

--jon.

To: jk3n+@andrew.cmu.edu (John Stephen Kalucki)
Cc: tcp-ip@nic.ddn.mil
Subject: Re: IP Router-Where to Start? 
Date: Thu, 15 Nov 90 11:07:34 -0800
From: "Philip Almquist" <almquist@jessica.stanford.edu>

John,
> I'm thinking about implementing an IP router, but I have no idea where
> to start. I've browsed through the RFC index and a few RFC's themselves,
> but there doesn't appear to be anything directly related to routers.
> 
> I'm looking basically for 4 things:
> 1) Related RFC's
	There are a lot of of relevant RFCs.  In addition to the router
standard (RFC1009) that Jon Postel mentioned, there are several RFCs on
the network layer (791, 792, 922, 950, 1112, 1122).  And of course
there ARP, all of the IP over mumble networks RFCs, routing protocols,
SNMP, ...

	There is also a draft successor to RFC1009 which is available
via anonymous FTP from NIC.DDN.MIL.  Its name is:

	internet-drafts:draft-ietf-rreq-iprouters-00.txt

> 2) Books and other text that might help
	Various good books, such as Comer's, provide a reasonably good
introduction to TCP/IP.  None that I know of teach nearly all of the
things you'd need to know to implement a router.

> 3) Public Domain implementations, hopefully source, to test mine with
	PCROUTE, KA9Q, and Berkeley UNIX are all reasonably easy to
obtain, though I don't have details for any of them on the tip of my
fingers.  Additionally, various universities (MIT, CMU, Stanford, and
probably others) have developed routers whose code is likely to be
available if you can figure out who at those institutions has the
authority to give it to you.

	One caveat, however: most if not all of the above are not fully
compliant with RFC1009.

> 4) Advice
	Don't underestimate the effort involved in building a router
from scratch.  You're talking man-years of effort to build even a
minimally reasonable one.
						Philip