LockerGnomeTech news and nostalgia for today's technology professionals
Subscribe

Search

Retrotelnetrfcapril-foolsinternet-historycmuprotocols

RFC 1097, a 1989 April Fools' Spec, Let a Telnet Server Flash Hidden Messages for Milliseconds and Planned Morse Code on the Caps Lock LED

B. Miller of CMU-NetDev dated RFC 1097, the TELNET SUBLIMINAL-MESSAGE option, April 1, 1989: a server sends a text, a display time in milliseconds and a gap in seconds, and the client flashes it at the edge of the screen to nudge stubborn users into upgrading.

Chris Pirillo built from glossy molded keyboard keycaps, seated at an old terminal as a tiny keyboard light blinks dots and dashes and a faint message flickers at the edge of the screen
Illustration: LockerGnome

The spec reads like any other Telnet option. It’s called TELNET SUBLIMINAL-MESSAGE and takes option code 257. Server and client agree to it with the usual DO and WILL, and then the server sends a subnegotiation carrying two 16-bit numbers and a string. The first number is how long to show the message, in milliseconds. The second is “the number of seconds between displays.” Either side can turn it off with WONT or DONT, and then “subliminal messages will not be displayed.”

The motivation section is where the joke shows. Banners and newsletters, Miller wrote, are “insufficient to convince stubborn users to upgrade to the latest version of telnet. Some users will use the same outdated version for years.” He’d hit that wall promoting the REMOTE-FLOW-CONTROL option, a real one that C. Hedrick of Rutgers had published as RFC 1080 the November before. “These users need to be gently “persuaded”.”

Miller’s implementation notes keep the straight face. A good client, he wrote, depends on how fast it can draw and erase text, and the CMU version weighed terminal line speed, video features and how long a screen’s phosphor glows before deciding when to erase. The message can appear in line, but works best at the top or side of the screen.

The examples finish the bit. The first has a server send IAC SB SUBLIMINAL-MESSAGE 0 5 0 20 "Use VMS" IAC SE, which is five milliseconds every 20 seconds, with the note that the server “is “suggesting” that the user employ a stable operating system, not an unreasonable request…” The second replaces it with “Go home.” The third, headed “Server has messed with user enough for one day,” sends zeros and an empty string, and the client must stop. The acknowledgements section is a single line: “We do things just a little sneakier here at CMU.”

The option number is a joke of its own. A Telnet option code is one byte, so it tops out at 255, and RFC 861, Jon Postel and Joyce Reynolds’s 1983 spec for the Extended-Options-List, reserves option 255 for the day “a 257th TELNET option will be needed.” Miller simply took 257.

The RFC Editor files RFC 1097 with a status of UNKNOWN, the same label it gives other old documents that never went on a standards track. The text says the Caps Lock version was “currently under development at CMU,” and nothing in it says whether anyone at CMU ever wired a keyboard light to blink a message in Morse, or what that first message would have spelled.

More Retro

Every Retro story →