by Darius Kazemi, July 28 2019
Sorry about that, but also it's your fault
RFC-209 is titled “HOST/IMP Interface Documentation”. It's authored by Bernie Cosell of BBN, and dated August 13, 1971.
The technical content
BBN is writing to the Network Working Group to apologize for an issue with the Interface Message Processors. There's been a problem happening on the network recently where host sites would determine that an IMP was dead even though it was not. The reason for this is that BBN recently added a 30-second delay that was built into certain interactions between the IMP and a host site Network Control Program. This basically caused the NCP at the host to assume that the IMP was dead and then the NCP would shut down.
It turns out that BBN thought it would be safe to make this change because it was to an undocumented feature of the IMP. They assumed that no programmers at the host sites would be using the undocumented feature and so they assumed they could make the change on the sly and no one would be the wiser. This is unfortunately not true because the programmers at host sites are busy being extremely clever and figuring out things about the IMP that are not documented.
On behalf of BBN, the author says to host site programmers that if they encounter what appears to be a problem with the IMP, “
please don't "code around" the problem or treat your IMP as a "black box" and extrapolate its characteristics from a series of experiments.” They would rather the programmer get in touch with BBN and they'll address the issue.
I don't know whose side to take here! I think it's somewhat reasonable, especially in a small collegial environment like the ARPANET project, to assume that people won't hack away at your systems and only use the programming interfaces that you provide them. On the other hand, BBN probably should have made that clear from the start!
How to follow this blog
I'm Darius Kazemi. I'm an independent technologist and artist. I do a lot of work on the decentralized web with ActivityPub, including a Node.js reference implementation, an RSS-to-ActivityPub converter, and a fork of Mastodon, called Hometown. You can support my work via my Patreon.