by Darius Kazemi, October 22 2019

In 2019 I'm reading one RFC a day in chronological order starting from the very first one. More on this project here. There is a table of contents for all my RFC posts.


RFC-295 is titled “Report of the Protocol Workshop”. It's authored by Jon Postel of UCLA and dated October 12, 1971.

The technical content

This RFC tells us what happened at the protocol workshop at the Network Working Group meeting in October 1971. Recall from RFC-212 that this workshop was part of the NWG meeting and was run by both BBN and UCLA people (representing, respectively, the IMP-Host Protocol of level one and the Host-Host Protocol of level two).

A proposal for an extension of the IMP-Host protocol to provide status reports (presumably on the IMPs themselves) was rejected due to its high cost and low benefit.

A bunch of edge cases in the Host-Host Protocol are explored and discussed. The GVB (“give back [memory]“) command has been a source of trouble for a long time. It seems like someone must have suggested removing it and pointed to the fact that literally nobody uses it as a justification. It was overturned because someone might use it in the future.

The authors suggest that some prohibitions be put in place on “spontaneous commands” in Host-Host, mostly ones that are meant to reply to another command. You can imagine that if you flooded the network with “yup I heard what you said” in response to nothing, that would result in a situation where another person could interpret that as a response to something unrelated that they just sent.

They recommend logging errors you get from a remote host instead of just throwing them away.

The Initial Connection Protocol is “found to be satisfactory” with only minor issues.

The Telnet Protocol needs a ton of work, which makes sense to me because all the Telnet documents to date seem woefully under-specified (by which I mean that any two people implementing Telnet software going off these documents have a strong chance of writing incompatible software). The usual suspects are brought up as pain points: definition of duplex modes, character vs line mode, funky ASCII stuff like what an end-of-line is supposed to look like, interrupts, the virtual terminal, and more.


It makes sense to me that ICP is mostly satisfactory because it was the first protocol to be fully supported at basically every active host site (yes, even moreso than the host-host protocol).

They specifically ask for a new document defining Telnet, which I take as prodding to write a new document from scratch rather than merely modify the existing, shaky foundation.

Interestingly they agree that upper and lower case letters should be supported universally on Telnet! I guess that makes sense because why would you throw away nearly half the 7-bit ASCII characters?

How to follow this blog

You can subscribe to this blog's RSS feed or if you're on a federated ActivityPub social network like Mastodon or Pleroma you can search for the user “@365-rfcs@write.as” and follow it there.

About me

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.