[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[ih] When was Go Back N adopted by TCP

Yes, we have discussed this on this list before.  And the memory in 
our group is fuzzy or no one has delved into their attic.

But we put the first Unix on a PDP-11/45 on the Net with NCP in the 
summer of 1975 and then immediately started work on TCP.  We were 
working for DCA and JTSA (remember them).  As I said, we were on our 
second implementation by 77 or so and were doing our 3rd by 1978 when 
I returned from Houston.  I forget when we took delivery of our 11/70 
but it was certainly about this time.

DARPA may not have known about it, but I doubt that.  I remember 
Grossman returning from TCP meetings in Cambridge where there had 
been long discussions about whether things in the spec could work and 
it turned out we were further along on implementation than BBN was.

One of these days, I may get a chance to dig into Grossman's attic.  ;-)

Take care,

At 2:10 PM -0700 5/18/14, Jack Haverty wrote:
>Hi John,
>Just FYI, the Unix TCP listing that survives implemented TCP version 
>4 and is dated March 30, 1979.   It is however a descendant of 
>earlier versions that started with TCP 2.5.
>As far as I know, there were no other Unix TCPs at the time - mid 
>1977.   At least neither BBN nor (D)ARPA knew of any (and I'd expect 
>Vint would have known).   We needed a TCP for a Unix system as a 
>part of another ARPA project, so I got the task to take Jim Mathis' 
>existing LSI-11 TCP code and tweak it as needed to get a TCP 
>functional on Unix on a PDP-11/40 for that project to use.   That 
>ended up involving mostly kernel hacking to get the right primitives 
>into Unix and creating interfaces for user processes.   It was never 
>intended to be a general purpose Unix implementation, and the design 
>choices necessary to get everything into a PDP-11/40 were not what 
>anyone would want for a more capable computer, so other 
>implementations were subsequently started (funded) by DARPA and DCEC 
>at BBN to create "from scratch" general purpose TCPs for PDP11/45 
>and /70 Unix systems (Rob Gurwitz, Al Nemeth, Mike Wingfield and 
>others I can't remember...).
>My yellowing lab notebook saved with the listing contains diary 
>entries, e.g., July 27, 1977: "got TCP11 Unix version to assemble", 
>and September 16, 1977: "TCP and Al Spector's TCP can talk fine" (Al 
>was using Mathis' TCP on an LSI-11 communicating with the Unix 
>system).  Most of the intervening entries had to do with recovering 
>from disk crashes and other such annoyances.  By 1979 the TCP 
>working group had gotten to the TCP4 stage and I modified the 
>original code as needed along the way as we made changes to get from 
>2.5 to 2.5 plus epsilon to eventually 4 as captured by the 1979 
>Fun times!
>/Jack Haverty
>On Sun, May 18, 2014 at 12:40 PM, John Day 
><<mailto:jeanjour at comcast.net>jeanjour at comcast.net> wrote:
>At 11:46 AM -0700 5/18/14, Jack Haverty wrote:
>Since this is a "history" forum, I'll offer my perspective as one 
>who was there in the 80s and involved in the TCP work...
>IMHO, it's important to make the distinction between the protocol 
>and the implementations of that protocol.   The protocol defines the 
>formats of the data passing back and forth "on the wire", and the 
>required actions that the computer at each and take in response to 
>receiving that data.
>How a particular implementation performs that response is totally up 
>to that particular implementer.
>So, when you're talking about ARQ, packet timers, retransmission 
>algorithms, et al, you're talking about the *implementation*, rather 
>than the TCP protocol itself.
>I wrote a TCP back in the 1979 timeframe - the first one for a Unix 
>system, running on a PDP-11/40.  It first implemented TCP version 
>2.5, and later evolved to version 4.   It was a very basic 
>implementation, no "slow start" or any other such niceties that were 
>created as the Internet grew.
>I think we went over this earlier and the conclusion was, we weren't 
>sure.  But I can say Jack's was probably the first on an 11/40.
>By 1979, we were on our second TCP implementation on Unix on an 
>11/45 and 11/70, and would start our third soon.
>Take care,
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://elists.isoc.org/pipermail/internet-history/attachments/20140518/646b56eb/attachment.html>