by Darius Kazemi, June 10 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.

Extra sockets

RFC-161 is titled “A Solution to the Race Condition in the ICP”. It's authored by Arie Shoshani of System Development Corporation on May 19th, 1971.

The technical content

This RFC responds to a problem (and its attendant solution) brought up by a bunch of UCLA folks in RFC-143. Shoshani claims that their solution only works for certain NCP implementations: for example, UCLA's NCP will drop a message if it can't process it, but SDC's will queue the message for later processing, and UCLA's solution doesn't take queueing into account.

Shoshani suggests that adding an intermediary step involving an extra set of sockets on both sides of the connection will solve the race condition.


I'm unsure of how this solution works but maybe it acts as like a buffer or a latch in a control system, which is a pretty common pattern for solving race conditions.

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.