[TUHS] Unix NCP protocol stack for ARPANET

Paul Ruizendaal pnr at planet.nl
Tue Oct 26 02:50:26 AEST 2021


> I have searched the TUHS archive and elsewhere, but all I
> find for Unix is a copy of the PDP-11 Unix V6 NCP from Illinois.
> 
> Has any other NCP implementation for Unix survived?  From old host
> tables I think there may have been some VAXen online before the switch
> to TCP/IP.

Lars,

You may want to look at the 4 surviving BBN tapes on Kirk McKusick’s DVD software collection. A small part of that is on the TUHS Unix tree page - see the 4.1BSD entry.

1. A history of NCP on the VAX at BBN can be found in the change log:
https://www.tuhs.org/cgi-bin/utree.pl?file=BBN-Vax-TCP/history

In short they started with 32V in the Fall of 1979, and ported UIUC’s NCP code to it in May 1980. They then moved to 4.1BSD in August and ported yet again. It would seem that the ports were fairly straightforward. Coding for TCP begins in January 1981.

2. Note that the BBN TCP worked over NCP as its primary transport. The driver is still there if you look through the surviving BBN tapes. Part of that code is on TUHS:
https://www.tuhs.org/cgi-bin/utree.pl?file=BBN-Vax-TCP/dev/acc.c
https://www.tuhs.org/cgi-bin/utree.pl?file=BBN-Vax-TCP/bbnnet-oct82/imp_io.c

It will take some effort, but probably the NCP VAX code can be reconstructed from the surviving PDP11 UIUC code and these BBN tapes (the file names in the change log match).

3. The BBN tapes also have some user level software: telnet, ftp, mtp. This code consists of straight NCP to TCP conversions and the source code has #ifdef’s for NCP and TCP. An example is here:
https://www.tuhs.org/cgi-bin/utree.pl?file=BBN-Vax-TCP/src/telnet/netser.c

Hope this helps.

Paul

PS - Info on the DVD is here (bottom of the page):
https://www.mckusick.com/csrg/



More information about the TUHS mailing list