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