June 05, 2020
By about 1989 it became abundantly clear that MISS needed a packet switching network, and it provided me an opportunity to make the biggest mis-step in my career.
MISS already had a store-and-forward network. As a great example of convergent development it was surprisingly similar to IBM RSCS, a backbone of BitNET. When Butenko implemented a gateway to RSCS, the biggest issue was how MISS had 10-character identifiers and RSCS had 8-character ones. My username, ZAITCEV, was one of the lucky ones that could be used as-is. But either way, it cleary was a dead-end.
Still, this gatewaying experience clearly demonstrated that developing a MISS-specific network was a non-starter. We needed to adopt someone else's network. But which one?
Butenko himself got deeply involved into hacking on Apple Mac at the time, and Macs came with AppleTalk. It was a basic network with a rudimentary provision for routing, and it also featured Apple's equivalent of TCP, ADSP. It supported sharing of files and printers, but no virtual terminal. It ran over the serial ports driven bus and Ethernet.
Other competitors included TCP/IP, Novell IPX, NERPA, and DECnet. I had an opportunity to look into NERPA because Butenko got acquainted with N.V. Makarov-Zemlyanski, and we managed to get connected. NERPA was inspired by ARPAnet, but only implemented the network itself, without an internet. It provided a file transfer and remote terminal. It ran over point-to-point lines of course, which connected hosts and concentrators.
DECnet was something mocking X.25 and other WAN networks, mostly, although it managed to support Ethernet. It was not particularly well documented, and I didn't have an access to a reference implementation: the university had no VAX.
Novell's product was extremely popular at the time, so it was easy to find. However, it didn't seem well featured. There was no remote terminal that we needed. The documentation was somewhat vague. The main advantage of IPX was that it supported ARCnet, which was the only real LAN that I had available. Ethernet was much too expensive for me.
Microsoft's offerings LAN Manager and NetBIOS were so bad that I rejected them early on.
When I started investigating TCP/IP, I was somewhat overwhelmed by its scope and features. It was very obviously a better idea than the X.25 garbage, but even so it was a large suite and I sensed that I would not be able to implement it in any reasonable time frame. Also, TCP was the backbone of the system. Having just implemented the uucp g-protocol, I was apprehensive of an internet-capable virtual circuit protocol. But naked IP was almost completely useless.
In the end, I selected AppleTalk.
My thought process went along the lines of looking at not needing ADSP at first (for folder sharing), availability of quality documentation, as well as a reference implementation. My first medium was ARCnet, for which I borrowed the RFC-1201 framing, only with a new protocol ID number (later, I tried to reserve that number with a standards body). I also borrowed SLIP to transmit AppleTalk datagrams to ES-1011. Although my AppleTalk island had no real Apple in it, I looked into PC-compatible ISA cards with Zilog 8530 USART. They existed to connect PCs to Macs, so I had a hope for interoperability. What can I say, AppleTalk seemed like a good idea at the time.
Aside from betting on the wrong horse to begin with, my second biggest mistake was not realizing that the OS-level API was critically important for networking. If I went with TCP/IP, I would know the role of sockets, but I didn't. As a result, MISS never gained any network API and applications talking to the network relied on kludges that worked through an equivalent of ioctl(2).
 At about the same time, Makarov-Zemlyanski implemented MISS network in assembler of BESM-6. It permitted users of OS Dispak to exchange Ineternet e-mail globally through ES-1011 and my e-mail gateway.
 The name NERPA itself was a pun on Not-ARPA. Although, Nerpa was a kind of a freshwater seal, endemic to lake Baykal.
Next: Memoir 8.
24 queries taking 0.0278 seconds, 28 records returned.
Powered by Minx 1.1.6c-pink.