below...
On Thu, Dec 5, 2019 at 5:42 AM Paul Ruizendaal <pnr(a)planet.nl> wrote:
I’m looking for the origins of SLIP and PPP on Unix.
Both seem to have
been developed long before their RFC’s appeared.
This is true...
As far as I can tell, SLIP originally appeared in 3COM’s UNET for the
PDP11, around 1980.
Sort of.... As the first customer for UNET I can verify that there was a
serial interface that had been used to for debugging the SW until the 3C100
became stable. But it was not what we would later call SLIP. It was
really not usable for much other than to debug the protocol. It did not
have a 'chatting' and was for dedicated (hardwired) serial lines. As I
remember it, the code mostly was used as a loopback between two TTY ports
and IIRC it only worked on the DH11. I think Greg Shaw wrote it, but it
might have been Bruce Borden (I can ask Bruce). Glaser and I set it up in
lookback mode as we used it to A/B test the Hyperchannel code we wrote.
My first experience with a real 'SLIP' as we later knew it was a
distribution from Harvard/MIT in early the 1980s (83/84 IIRC but dates
could be off). The code base took some major rework to the TTY driver,
that I thought had originated at MIT. IIRC I got the sources from someone
like Jack Test or somebody else working in Steve Ward's real-time lab (i.e.
Terry Hayes/tjt may have brought the src with them); but we could have just
has likely gotten them sob @ harvard. It ran on DH's as DZ'd were an
issue because of interrupts as I remember (DZ's always were an issue when
you pushed them). But, it must have originally worked on BSD 4.1 not
4/1C/4.2, which tells me it was hack off the original BBN code which did
not use sockets, but rather the same open("/dev/tcp", ...) stuff that
chaosnet used. But the times are fuzzy in my mind, so it's possible by
the time we got it, worked with the UCB code sockets code base. I do
remember that it ran on sockets by the time Steve Zimmerman hacked SLIP
into RTU when he redid our TTY driver.
The important thing is that the early version lacked PPPD, as we were later
know it.
From the TUHS Unix tree, first appearance in BSD seems
to be 4.3 (1986).
That's make sense.
Not sure when PPP first appeared, but the linux man page for pppd has a
credit that goes back to Carnegie Mellon 1984. First appearance in BSD
seems to be FreeBSD 5.3 (2004), which seems improbably late (same source).
There were two or three different PPP schemes in the beginning. What was
common was the SLIP line discipline code under the covers, but how the line
got set up to start running it was different. The original SLIP 'kit' from
Harvard/MIT lacked anything like PPPD to start and was sort of ad hoc. I
think originally it used a program called 'chat' that had been pulled out
uucico that set things up then exec'ed the SLIP stuff; but chat(1) may have
been round 2 or 3. I've forgotten the name of the original daemon, I bet
it you look in the Usenet archives from 82-84 and look for 'SLIP' you find
a couple of things. The more modern pppd(1) coming from CMU is as
likely as anywhere else. I did eventually run it at home on a FreeBSD
box, but it was at least the second or third way I set up my dial-ip ISP
connection.