Discussion:
[Simh] IMP interfaces
Lars Brinkhoff
2018-03-07 10:01:08 UTC
Permalink
Hello,

I have started writing an IMP interface as used with the MIT-AI/ML/MC
KA10 and KL10 machines. (MIT-DMS used another interface created by Bob
Metcalfe.) I'm looking to add this to Rich Cornwell's KA10 simulator
which isn't yet ready to merge into mainline SIMH.

I'm hoping that the interface code can be kept separate, and that a
generic IMP emulator can be put in its own file. Are there any other
SIMH machines that could benefit from having an IMP attached?
Bob Eager
2018-03-07 10:24:19 UTC
Permalink
On Wed, 07 Mar 2018 10:01:08 +0000
Post by Lars Brinkhoff
Hello,
I have started writing an IMP interface as used with the MIT-AI/ML/MC
KA10 and KL10 machines. (MIT-DMS used another interface created by
Bob Metcalfe.) I'm looking to add this to Rich Cornwell's KA10
simulator which isn't yet ready to merge into mainline SIMH.
I'm hoping that the interface code can be kept separate, and that a
generic IMP emulator can be put in its own file. Are there any other
SIMH machines that could benefit from having an IMP attached?
Presumably the Honeywell 516?
SPC
2018-03-07 10:53:55 UTC
Permalink
Post by Bob Eager
On Wed, 07 Mar 2018 10:01:08 +0000
Post by Lars Brinkhoff
Hello,
I have started writing an IMP interface as used with the MIT-AI/ML/MC
KA10 and KL10 machines. (MIT-DMS used another interface created by
Bob Metcalfe.) I'm looking to add this to Rich Cornwell's KA10
simulator which isn't yet ready to merge into mainline SIMH.
I'm hoping that the interface code can be kept separate, and that a
generic IMP emulator can be put in its own file. Are there any other
SIMH machines that could benefit from having an IMP attached?
Presumably the Honeywell 516?
​If I remember well there is one "experimental" development on SIMH of one
Honeywell 516 with one IMP interface added.

The key would be, I think (a longshot):

- The development of the connection between every host and *this* IMP.​
- The availability of the NCP in every host attached.

Regards,
Sergio
Lars Brinkhoff
2018-03-07 11:40:21 UTC
Permalink
Post by SPC
Post by Bob Eager
Are there any other SIMH machines that could benefit from having an
IMP attached?
Presumably the Honeywell 516?
The 516 ran the BBN IMP software. I'm talking about making an IMP
avaiable to a host machine such as a PDP-10. To connect a host to the
network (ARPAnet/Internet), it's sufficient to emulate the services
provided by the IMP through the Host/IMP protocol.
Post by SPC
- The availability of the NCP in every host attached.
Late versions of the IMP software was updated for TCP/IP, which is was
I'm primarily interested in.
Robert Armstrong
2018-03-07 14:20:13 UTC
Permalink
Post by Bob Eager
Presumably the Honeywell 516?
In the case of simh it’s actually the H316 simulator. This already contains a fully functional IMP simulator that was written a few years ago. I hope people know that.



Hopefully you will make your KA host interface card talk to the 1822 card emulation that’s already in simh. That way you should be able to use the original IMP software which already runs on the H316 emulation.



Bob
Phil Budne
2018-03-07 15:27:13 UTC
Permalink
There are many reasons for supporting "1822" (the host-to-imp
protocol) in SimH in a generic way:

To speak to a simulated pre-TCP-era (aka NCP) IMP
(or a simulated TCP-era IMP if that code becomes available)

To speak to the TCP Internet on a simulated system that never had an
Ethernet interface.

BOTH are meaningful for ITS, but I think it's the latter that Lars is
pursuing at the moment.

It would be lovely if there was a common API for 1822 communications
(whether to an external simulation running IMP code, or an internal
simulated IMP that allows the host to talk to the Internet)

p
Lars Brinkhoff
2018-03-07 18:49:54 UTC
Permalink
that way you should be able to use the original IMP software which
already runs on the H316 emulation.
My primary objective is connecting KA10 ITS to the internet. Can the
IMP software and the H316 simulator talk TCP/IP to an ehernet card?
There are many reasons for supporting "1822" (the host-to-imp
To speak to a simulated pre-TCP-era (aka NCP) IMP
(or a simulated TCP-era IMP if that code becomes available)
To speak to the TCP Internet on a simulated system that never had an
Ethernet interface.
BOTH are meaningful for ITS, but I think it's the latter that Lars is
pursuing at the moment.
Right.
It would be lovely if there was a common API for 1822 communications
(whether to an external simulation running IMP code, or an internal
simulated IMP that allows the host to talk to the Internet)
I will certainly try to structure my additions so this will be possible.
Maybe something like this?

Simulated host -> IMP interface -> 1822 API -> emulated IMP -> sim_ether.

Looks like SIMH doesn't provide anything to do ARP, so I'll have to do
that too.
Robert Armstrong
2018-03-07 19:14:29 UTC
Permalink
Can the IMP software and the H316 simulator talk TCP/IP to an ehernet card?
Well, the IMP software talks to one or more IMPs via a modem and an AT&T
leased line. That's what IMPs do. Simh emulates the modem using a TCP
connection.

As others have pointed out, the original ARPANet didn't use TCP/IP at all.
That was added to later versions of the IMP software. If you can find one
of those versions, then it should work on simh.

Bob
Phil Budne
2018-03-07 19:30:19 UTC
Permalink
Can the IMP software and the H316 simulator talk TCP/IP to an ehernet card?
If we had TCP-era IMP code, one could, in theory, but as I recall the
structure of the TCP ARPAnet (net 10) address was that one octet was
the IMP number, and another the port on the IMP, which was severly
limited (four host ports?), and if that limitation was "well known"
you might only be able to attach to four hosts over Ethernet.

Most often, the system attached to the IMP acted as a router, and
connected to the local internet.
Clem Cole
2018-03-07 22:23:39 UTC
Permalink
Post by Phil Budne
Can the IMP software and the H316 simulator talk TCP/IP to an ehernet
card?
If we had TCP-era IMP code, one could, in theory, but as I recall the
structure of the TCP ARPAnet (net 10) address was that one octet was
the IMP number, and another the port on the IMP, which was severly
limited (four host ports?),
​Exactly... up to 4 hosts per IMP on the original Honeywell - each
supporting a single 1822 interface, which might or might not be local using
a 'very-distance-host' interface - i.e. was not in the same room as the IMP.

Berkeley's original connection was via the LBL IMP using the VDH​

Noel Chiappa might remember more of the TAC details, I personally never saw
one - although I did use one or two on occaison. IIRC they could handle
??32?? lines maybe, but there were for terminals (and a lot of modems).
The whole reason for building the ARPAnet was to allow sharing of
expensive mainframes (of course what it did was actually cause people to
want more systems). But until the TAC's show up, 'remote sharing' was
less than might have been hoped by the funding masters ;-)

More details of all this is can be found in Katie Hafner's 'Where Wizards
Stay Up Late'
Post by Phil Budne
and if that limitation was "well known"
​ ​
you might only be able to attach to four hosts over Ethernet.
​Mumble... it was certain 'well known' the question is was it screwed down
into SW. Which is likely.​
Post by Phil Budne
Most often, the system attached to the IMP acted as a router, and
​ ​
connected to the local internet.
​Actually that's quite right if my memory serves me.​


The original​ idea of the original (Honeywell) IMP was to keep the host
from having to do any protocol work. The host SW was left as an exercise
for the user by BBN [again see Katie's book - the details are
fascinating]. Until TCP was thought about (which was before IP BTW); the
host was supposed to be very dumb and the IMP terminates the network and do
all the 'hard work.' I think BBN looked at the 1822 as a way to add a
peripheral to the host in the key of a terminal more than anything else.

In fact the host SW, was not even started until pretty near the time that
the first IMP was delivered. There was not specs for it for a long time.
That said, as
time went by and the host SW got more and more sophisticated and
​ eventually​
the need for TCP arose, the IMP was a
​protocol terminator/​
converter more than a router. With the advent of IP and then running the
​network ​
protocol in the host itself (TCP), BBN created the C30 IMP (20 bit
microcoded UNIX system, they later sold as a UNIX system called the C70).
That would be more like a router.

I'm drawing on very old memories here... you'd need to ask some one like
Al Nemeth who managed the project at BBN, but I don't think the C30's ever
ran the NCP code.

In UCB's case when we finally got our own IMP (82/83ish I think) it was a
C30 and that was all post NCP turn off date. I'm also not sure of the 4
hosts 1822 limit was removed. I don't remember anyone having used 1822
with them, but I'm fairly sure their had to be because Ethernet interfaces
did not yet exist for many of the original ARPAnet hosts. My memory is
that the C30's supported native ethernet, so they really did become a
router and people stopped needing to use an 1822 with them.

Clem
ᐧ
Henry Bent
2018-03-07 23:13:14 UTC
Permalink
Post by Phil Budne
Can the IMP software and the H316 simulator talk TCP/IP to an ehernet
card?
If we had TCP-era IMP code, one could, in theory, but as I recall the
structure of the TCP ARPAnet (net 10) address was that one octet was
the IMP number, and another the port on the IMP, which was severly
limited (four host ports?), and if that limitation was "well known"
you might only be able to attach to four hosts over Ethernet.
Most often, the system attached to the IMP acted as a router, and
connected to the local internet.
There are drivers in 4.2BSD for IMP interfaces, the ACC LH/DH and the DEC
IMP11-A. These are set up to use TCP/IP but it is unclear to me how much
work the board does vs. what is expected of the IMP itself. As far as I am
aware there is not technical documentation for either of these boards, but
if that turned up I imagine they could in theory be added to SIMH for the
VAX and PDP-11.

-Henry
Clem cole
2018-03-08 00:46:27 UTC
Permalink
IIRC the imp11-a is built from a dr11-b with some custom interface logic to talk to the 1822 (thinking about it it was maybe 2 back to back I’ve forgotten) but from a SW stand point the registers are what is exposed by the dr11. Although the CSS folks may moved the default addresses. At one time I had small document from css on it. Ill have to do digging.

Sent from my PDP-7 Running UNIX V0 expect things to be almost but not quite.
Post by Phil Budne
Can the IMP software and the H316 simulator talk TCP/IP to an ehernet card?
If we had TCP-era IMP code, one could, in theory, but as I recall the
structure of the TCP ARPAnet (net 10) address was that one octet was
the IMP number, and another the port on the IMP, which was severly
limited (four host ports?), and if that limitation was "well known"
you might only be able to attach to four hosts over Ethernet.
Most often, the system attached to the IMP acted as a router, and
connected to the local internet.
There are drivers in 4.2BSD for IMP interfaces, the ACC LH/DH and the DEC IMP11-A. These are set up to use TCP/IP but it is unclear to me how much work the board does vs. what is expected of the IMP itself. As far as I am aware there is not technical documentation for either of these boards, but if that turned up I imagine they could in theory be added to SIMH for the VAX and PDP-11.
-Henry
_______________________________________________
Simh mailing list
http://mailman.trailing-edge.com/mailman/listinfo/simh
Lars Brinkhoff
2018-03-08 07:00:54 UTC
Permalink
Post by Henry Bent
There are drivers in 4.2BSD for IMP interfaces, the ACC LH/DH and the
DEC IMP11-A. These are set up to use TCP/IP but it is unclear to me
how much work the board does vs. what is expected of the IMP itself.
As far as I am aware there is not technical documentation for either
of these boards, but if that turned up I imagine they could in theory
be added to SIMH for the VAX and PDP-11.
ITS supports the ACC LH/DH board when running on a KS10 processor.
In fact, this is how all ITSes now connect to Internet.
Lars Brinkhoff
2018-03-08 07:14:58 UTC
Permalink
I'm focusing on interfacing with a PDP-10. But it could be interesting
to make a list of possible future additions. Which interfaces were
there?

- KA IMP: PDP-10 I/O bus.
- DM IMP: PDP-10 I/O bus. Just one, made by Bob Metcalfe.
- ACC LH/DH: Unibus.
- DEC/CSS IMP11-A: Unibus.
- CIMPSPIF: GE-645 GIOC.
- ABSI: Honeywell 6180.
- IBM?
etc
Timothe Litt
2018-03-08 13:40:48 UTC
Permalink
DEC produced IMP interfaces for the -10/20.  They typically were bundled
into the T systems (e.g. 1090T), but could be bought separately.  DEC
provided drivers & utilities for TOPS-20, but not TOPS-10.

KL10 - AN10 - I/O bus interface to the IMP for 1080/1090/1091
            AN20 - Same, for DECSYSTEM-20 (includes the DIB20 - the I/O
bus adapter for the KL)
KS10 - AN22 (Yet another KMC11 + line card device)  This may have been a
repackaged IMP11-B.

Both models come in standard (30 ft) interfaces, or with a long line
(2,000 ft) interface.  I don't remember the detailsl, but the long line
interface was probably differential.

DEC came a bit late to the party, but -10s were a large part of the
early arpanet.  And for most people, DEC field service represented risk
reduction from homebrew.
Post by Lars Brinkhoff
I'm focusing on interfacing with a PDP-10. But it could be interesting
to make a list of possible future additions. Which interfaces were
there?
- KA IMP: PDP-10 I/O bus.
- DM IMP: PDP-10 I/O bus. Just one, made by Bob Metcalfe.
- ACC LH/DH: Unibus.
- DEC/CSS IMP11-A: Unibus.
- CIMPSPIF: GE-645 GIOC.
- ABSI: Honeywell 6180.
- IBM?
etc
Phil Budne
2018-03-09 18:10:08 UTC
Permalink
Post by Timothe Litt
KL10 - AN10 - I/O bus interface to the IMP for 1080/1090/1091
Drawings for the AN10:
http://bitsavers.informatik.uni-stuttgart.de/pdf/dec/pdp10/periph/MP00326_AN10_Arpanet_Interface_Engineering_Drawings_Jul77.pdf
Post by Timothe Litt
KS10 - AN22 (Yet another KMC11 + line card device)? This may have been a
repackaged IMP11-B.
ISTR this was the supported interface for TOPS-20 on the KS10,
for NCP-era (pre-TCP) ARPAnet.
Lars Brinkhoff
2018-03-13 06:34:39 UTC
Permalink
Post by Lars Brinkhoff
I have started writing an IMP interface as used with the MIT-AI/ML/MC
KA10 and KL10 machines.
Making good progress on this. My primary goal is to use it for TCP/IP.
(The Arpanet, and the IMPs, switched to IP in 1983 and kept running
until 1990.)

But if someone wants to talk "NCP" (ye olden Arpanet protocol), let me
know.

Loading...