Talk:Network Control Program (ARPANET)

From Computer History Wiki
Revision as of 13:38, 7 January 2025 by Jnc (talk | contribs) (Alto NCP?: Those directories have nothing about the NCP era; questions for Taft)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to: navigation, search

Preserved implementations

Multics and TOPS-20 (and I think maybe TOPS-10 too) have been preserved, and run under emulators, but I don't know if their NCP's were included in what was preserved. Jnc (talk) 13:53, 15 October 2021 (CEST)

Yes, TOPS-10 is also alive and well. Many versions too: at least some of 5.x, 6.x, and 7.x. Larsbrinkhoff (talk) 15:06, 15 October 2021 (CEST)

POSIX/Linux version

You're officially insane! :-) Jnc (talk) 14:40, 18 October 2021 (CEST)

I actually wanted to make a small ARPANET using the SIMH IMP emulator, with some historical hosts like ITS and WAITS. But to do that I first need to have a good debug tool, so might as well make it an NCP suite. It remains to be seen how far it can go. Larsbrinkhoff (talk) 15:18, 18 October 2021 (CEST)
Ah, makes sense. Jnc (talk) 15:20, 18 October 2021 (CEST)

MOS NCP?

I'm pretty sure there wasn't one. Both the TIU and PE had Host-to-IMP Protocol implementations, of course, but that's only the bottom layer of a complete NCP stack, which also included the ICP and AHHP. Jnc (talk) 15:54, 19 October 2021 (CEST)

Given your feedback, I'll remove it. I still wonder how come may hosts were listed as "MOS" in the 1982 hosts lists: https://github.com/ttkzw/hosts.txt/blob/master/pub/hosts/1982/host_names_1982_part_1.pdf etc. Larsbrinkhoff (talk) 16:01, 19 October 2021 (CEST)

Those seem to be either Port Expanders (which were so popular that it became a product for SRI - see here), or possibly TIUs in 'milking machine' mode (a Dave Clark term for using a TIU to put a time-sharing system without TCP on the Internet), or BBN gateways (routers - like I said, BBN switched from originally running ELF in its gateways to MOS, and it had apparently happened by the date of this list). Looking at the 'MOS' entries in part1 (only - with no copy/paste, re-typing got tiresome):

  • ARPA-DMS - says "LSI-11/03 (MOSS) [sic-JNC] -> HP-3000(MPE-IV)" - TIU fronting the HP?
  • BBN-GATEWAY - "PDP-11/40 (MOS) -> SATNET" - probably ran ELF originally, so an -11/40
  • BRAGG-GWY1 - "LSI-11/02 [sic-JNC] (MOS)" - likely a Packet Radio router
  • CENTACS-MMP - "PDP-11/34 (MOS) -> 7 CDC-5600s(MPX-RT)" - likely a PE, in front of all those other machines
  • CENTACS-TF - "PDP-11/34 (MOS) -> various machines" - ditto

I just never heard of anything running under MOS that would have needed/used an NCP. All the things I ever heard of were either on IP (various router projects) or TCP (TIU). Jnc (talk) 17:30, 19 October 2021 (CEST)

Alto NCP?

Although it's true that there was an Alto 1822 interface (something that was unknown to me until I read that email), I'm not sure there was ever an Alto speaking NCP on the ARPANET - that email says the interface "was used to connect to the Bay Area Packet Radio Network and for connecting PARC-MAXC2 to the Arpanet". Amusingly, The Maxc Systems, by Edward R. Fiala (thanks deeply for finding that, and putting in online, BTW - an incredible historical resource, which has saved an almost-forgotten chapter of history) says "Maxc2 is not connected to the ARPA network"!) MAXC2 did use an Alto as its front end, but I wouldn't count that as 'an Alto on the ARPANET'.

I poked around in the Alto 1822 code a bit, and although PupAlImp.decl does contain this line:

maxLinkNCP = 71		// Highest NCP link

most of it seems to be concerned with sending either IP or PUP packets over the ARPANET. (I recall the attempt to send PUP packets to PARC from MIT over the ARPANET; it was a colossal failure, as the MIT PUP address space used MIT subnet numbers, and thus overlaid the PARC PUP address space.)

It makes sense that there wasn't an Alto 'on the ARPANET' (i.e. speaking NCP), as the Alto was a personal workstation, whose operating system was pretty elementary - think MS-DOS on a PC, it was about like that. So it wouldn't make sense to put one of them on a rare (and expensive) IMP port. To confirm, I went to HOSTS.TXT, and:

  • I couldn't find MAXC2 in any of them (!) - unexpected, and somewhat un-related to the point of the examination - maybe it was only on for a short period, given the email above
  • The only hosts shown on IMP 32 (the Xerox IMP), other than MAXC, are:
HOST : 10.2.0.32 : PARC-GW : ALTO : ALTO-OS ::
HOST : 10.3.0.32 : KESTREL,SCI-ICS,SCI,KES,SCT : FOONLY-F3 : TENEX : TCP/TELNET,TCP/FTP,TCP/SMTP :

but i) by this point in time, NCP had been tuned off (19830728-HOSTS.TXT is the last one with NCP hosts listed), ii) the Alto is clearly a gateway (router).

Interestingly, re MOS, in 19830527-HOSTS.TXT, I did see:

HOST : 10.0.0.28 : ARPA-DMS : LSI-11/3 : MOS : NCP/TELNET :

but I suspect that's a typo; it was almost certainly a TIU. (I couldn't find anything about ARPA-DMS in a Web search.) Jnc (talk) 18:16, 20 October 2021 (CEST)

But then Al said a friend of his was making a simulated ARPANET with Alto(s?).
Which 'Al' is this? Kossow? If you could get some more info from him about what he's planning, that would be good. Note that it might not be an Alto with NCP; there was an Alto IP router connected to the ARPANET - maybe he was planning on using those? (Oh, BTW, look at LoadImpFrontEnd.cm; it loads a whole bunch of PUP modules, but I don't see anything NCP-ish).
Also, if you're looking for ARPANET nodes, I could upload the TIU code. No NCP, but it would generate ARPANET traffic. The MIT V6 would have to be brought up (unless you've got MACRO-11 running somewhere else), to build loads, and SIMH would have to be updated to support the SRI 1822 interface, but it should be doable without too much work. I found the manual for the SRI interface online (at NTIC, IIRC); I should do a CHWiki page for it. Jnc (talk) 21:05, 20 October 2021 (CEST)
Page done; here: Stanford 1822 Interface. Jnc (talk) 16:48, 9 December 2024 (CET)
This is from a 1980 SYSENG; HOSTS >
HOST PARC-GATEWAY, 1/32,USER,,NOVA-800,[PORTOLA]
HOST PARC-MAXC, 0/32,SERVER,TENEX,PDP10,[PARC,MAXC,MAXC1,XEROX-PARC]
HOST PARC-MAXC2, 2/32,SERVER,TENEX,PDP10,[MAXC2]
Larsbrinkhoff (talk) 19:12, 20 October 2021 (CEST)
Ah, good; I thought I recalled seeing it in a host table at one point, back then. Interesting; it was plugged into port 2 on the Xerox IMP; 'PARC-GW' got plugged in there later - but port 1, 'PARC-GATEWAY' here, seems to have gone unused. Odd. Jnc (talk) 21:05, 20 October 2021 (CEST)
Here's something from Lawrence Stewart:
I designed the Alto BBN-1822 interface, which was used for connecting to the Bay Area Packet Radio network and also used for PARC-MAXC2. MAXC1 had a Nova as the front end, about which I know nothing, but MAXC2 used an Alto. Both machines were 40 bit word microcoded machines programmed to be PDP-10s. Corporate wanted PARC to use SDS but the CSL folks wanted a 10, so they had to build one.
I only tested my own code up to successful loopback to the local IMP, then Ed took over.
This only says there was an interface, not that there was an NCP. I'll ask. Larsbrinkhoff (talk) 15:10, 6 January 2025 (CET)
Sure, ask, but as I suggested above, the OS environment on the Alto ("the Alto was a personal workstation, whose operating system was pretty elementary - think MS-DOS on a PC, it was about like that") was such that an NCP for it made no sense. (And I found no code for an Alto NCP in the PARC archive.)
Stewart went ahead and forwarded the question to Taft:
The front-end Nova/Alto contained the BBN 1822 interface to the Arpanet IMP. It also had a DMA interface to MAXC main memory. The main role of the Nova/Alto software was to transfer packets between the IMP and MAXC main memory, with only minimal processing. All of the protocol processing for NCP (and later TCP/IP) was done on the MAXC side. Most of the MAXC software was adapted from the existing Tenex software for NCP and TCP/IP. By the way, the same division of responsibility existed for PUP.
So we can definitely strike Alto off the NCP list. I would guess the new iteration MAXC2 and Alto combination just did what MAXC1 and Nova did before in this regard, but I don't have that confirmed (probably the monitor sources would confirm this). Larsbrinkhoff (talk) 07:00, 7 January 2025 (CET)
His email did ring an interesting bell for me, though: "MAXC1 had a Nova as the front end" - which we knew, but the context of his statement likely indicates that MAXC1 (which we knew was on the ARPANET, and apparently had an NCP) was likely connected to the ARPANET through the Nova. This ties in with something else you found:
HOST PARC-GATEWAY, 1/32,USER,,NOVA-800,[PORTOLA]
This also indicates that an 1822 interface existed for the Nova - I'll add that to the list in IMP interface.
The remaining mystery is what software ran on the PARC-GATEWAY machine. Did it have an NCP - as seems possible from its inclusion in the 1980 host list (3 years before NCP was turned off), or was it just a PUP router? I did a Web search for "PARC-GATEWAY", but i) it was difficult (in Google's 'exact phrase' search function, the "-" character is an operator, with no way to escape it that I could find; and Google search is case insensitive), and ii) I didn't find anything.
Maybe we should try asking some of the early PARC people? Jnc (talk) 17:49, 6 January 2025 (CET)
Sure, I'll ask! Maybe we should dig around here first, though:
https://xeroxparcarchive.computerhistory.org/_cd8_/portola/.index.html
https://xeroxparcarchive.computerhistory.org/indigo/portola/.index.html
Larsbrinkhoff (talk) 07:00, 7 January 2025 (CET)
I poked around in them for a while, but saw nothing relevant to our remaining unknowns. (Some of it is interesting, but it's from a much later era, etc.)
If you are going to reach out to Taft, here are the things I would like to know:
  1. There must have been a Nova 1822 interface - at least one for the Maxc1 front end. Were there any more? Who built them? (I assume PARC.) If more than one (for Maxc1) was made, what were they used for?
  2. Was there ever really a host PARC-GATEWAY (as opposed to just plans for something of that name) back in the NCP era (1980 was the date of the entry we found)? If so, what did it do? (I.e. what was it used for, and which layers of the NCP stack did it implement?) I suppose it could have been just a PUP router, to connect the PARC PUP internet to the ARPANET, in which case it wouldn't have had any Host-to-Host Protocol at all, just the Host-to-IMP Protocol.
If you are in contact with Taft, he is the ultimate source on these matters, since a lot of it he did, or was at least involved with, himself. Jnc (talk) 13:38, 7 January 2025 (CET)

BCC-500 NCP?

Seems I better bring up new entries up here for discussion first.

Al also says he's got the BCC-500 operating system including NCP. But it's unclear if the HP-2100 front end code interfacing with the IMP is there. Larsbrinkhoff (talk) 19:14, 20 October 2021 (CEST)

After the hassle over the 'Alto' NCP (which I am almost certain did not exist), along with the MOS and MINITS cases (ditto), I would in general prefer to have good evidence freely available (i.e. the BCC-500 operating system online, which it doesn't seem to be at either of the two locations in BCC 500), but in this particular case I can make an exception since I'm pretty sure the machine was online in Hawaii. Jnc (talk) 17:20, 25 October 2021 (CEST)
Yes, a good reference (source code or article) might be a criterion. Something like a Wikipedia <ref> would be nice.
I extracted the files from the "Proof Tape", and I found no NCP there. If I understand correctly, an ELF front end was used. Text files are here: https://github.com/larsbrinkhoff/bcc-500/tree/master/text Larsbrinkhoff (talk) 16:15, 10 December 2024 (CET)
https://apps.dtic.mil/sti/tr/pdf/ADA014398.pdf confirms this, the table says there was a PDP-11 frontend running ELF. Larsbrinkhoff (talk) 09:56, 13 December 2024 (CET)

PDP-11 NCP users

Quite a few sites (including BBN, IIRC) used the UIll NCP; this mail log gives a sense of the fix/update distribution (using the ARPANET, naturally :-). To compile a complete list, one would only have to look at the host table. It was apparently used with V7 as well as V6. (I have this vague memory that the work first started under V5?) Jnc (talk) 12:30, 29 June 2022 (CEST)

University of Rochester

Information from Liudvikas Bukys regarding Aleph and Rochester's Intelligent Gateway:

I am indeed the most likely candidate to find this, but... no, I think it's lost. I still have memory of the archival paths, but we didn't focus on preservation. Source code originally written in BCPL and cross-compiled on a Xerox Alto. We did not preserve the Alto hardware or removable disks. The software have been backed up on the RIG disk drives. For which I did make tar files on a DEC Vax machine and I think I preserved those onto magnetic tape. I think that backups from the DEC Vax era are gone. I will dispatch a UR CS staff member to see if there is a stack of magnetic tapes from that era hiding in a storage room. But I doubt it. Larsbrinkhoff (talk) 14:29, 12 December 2024 (CET)

From ITS file SYSENG;HOSTS 12 dated 1977-07-09: HOST ROCHESTER, 122,USER,,ECLIPSE,[ROCH]

Follow up: I corresponded with a current staff member, and told him where the final archival tapes might be, if they still existed. You have won this staff member's prize for "Most interesting request in a long time". Alas, the storage room that they were in was reclaimed by the University several years ago, and no tapes were salvaged. This piece of intellectual history is now only a memory. Larsbrinkhoff (talk) 09:08, 13 December 2024 (CET)