[ih] NCP, TCP/IP question

Nelson H. F. Beebe beebe at math.utah.edu
Tue Mar 10 05:31:33 PDT 2020


Vint Cerf asks about early implementation languages for TCP/IP.

I searched our remaining archives of what in the 1980s and 1990s was
science.utah.edu, a DECsystem 20/40 (later upgraded to a 20/60)
running TOPS-20, and found TCP/IP network code written in PDP-10
assembly languages with these names:

	tcpbbn.mac  tcpcrc.mac  tcpjfn.mac  tcptcp.mac

The files in that directory carry time stamps from 1984.10.25 to
1985.09.11.

The tcpbbn.mac file has this comment:

	;COPYRIGHT  (C)  DIGITAL  EQUIPMENT  CORPORATION  1976, 1985.

	This module implements the BBN TCP JSYS interface.
	This  code  was originally developed at Bolt Beranek and Newman (BBN)
	under contract to  the  Defense  Advanced  Research  Projects  Agency
	(DARPA).

The JSYS instruction is the PDP-10 system call.

I also found a memo, design.mem, with the header

		  Black Arts
		      of
	Transmission Control Protocol
	    Inter Network Protocol
		Implementation
		    in the
	    VAX / VMS Environment

		  July 1982

		Stan C. Smith
	       Tektronix, Inc.
	Computer Resource Dept 50-454
		 P.O. box 500
	   Beaverton, Oregon  97077

that describes the VAX/VMS TCP/IP code written in Bliss, a systems
programming language that was developed at CMU for DEC, and used by a
few sites with DEC development contracts.  Otherwise, it was a
licensed software product that was too expensive for us to have on our
PDP-10, PDP-11, and VAX systems.

Instead, we wrote such code in assembly language, and later, in Pascal
(TOPS-20 compiler from Chuck Hedrick's team at Rutgers), C (PCC
compiler ported to TOPS-20 by the late Jay Lepreau, and later KCC,
written by Kok Chen at Stanford and significantly extended for systems
programming work by Ken Harrenstien at SRI International), and PCL
(Programmable Command Language, a DEC compiler available only on
TOPS-20). Once C became available on the PDP-10 and VAX, it was
clearly the language of choice for software tools, and assembly code
was a dead end with the growth in minicomputer and microprocessor
architectures.

For scientific work, all of our coding was in Fortran, and SFTRAN3 (a
structured Fortran developed at JPL in Pasadena, and machine
translated to standard Fortran 66 and 77), with only low-level
primitives for character and bit processing, and system calls, written
in assembly code.

-------------------------------------------------------------------------------
- Nelson H. F. Beebe                    Tel: +1 801 581 5254                  -
- University of Utah                    FAX: +1 801 581 4148                  -
- Department of Mathematics, 110 LCB    Internet e-mail: beebe at math.utah.edu  -
- 155 S 1400 E RM 233                       beebe at acm.org  beebe at computer.org -
- Salt Lake City, UT 84112-0090, USA    URL: http://www.math.utah.edu/~beebe/ -
-------------------------------------------------------------------------------



More information about the Internet-history mailing list