Systems for Interprocess Communication in a Resource Sharing Computer Network (RFC0062)
Original Publication Date: 1970-Aug-01
Included in the Prior Art Database: 2019-Feb-11
Internet Society Requests For Comment (RFCs)
Network Working Group D. C. Walden Request for Comments: 62 BBN Inc. Supercedes NWG/RFC #61 3 August 1970
A System for Interprocess Communication in a Resource Sharing Computer Network
If you are working to develop methods of communications within a computer network, you can engage in one of two activities. You can work with others, actually constructing a computer network, being influenced, perhaps influencing your colleagues. Or you can construct an intellectual position of how things should be done in an ideal network, one better than the one you are helping to construct, and then present this position for the designers of future networks to study. The author has spent the past two years engaged in the first activity. This paper results from recent engagement in the second activity.
"A resource sharing computer network is defined to be a set of autonomous, independent computer systems, interconnected so as to permit each computer system to utilize all of the resources of the other computer systems much as it would normally call a subroutine." This definition of a network and the desirability of such a network is expounded upon by Roberts and Wessler in .
The actual act of resource sharing can be performed in two ways: in an ad hoc manner between all pairs of computer systems in the network; or according to a systematic network-wide standard. This paper develops one possible network-wide system for resource sharing.
I believe it is natural to think of resources as being associated with processes<1> and available only through communication with these processes. Therefore, I view the fundamental problem of resource sharing to be the problem of interprocess communication. I also share with Carr, Crocker, and Cerf  the view that interprocess communication over a network is a subcase of general interprocess communication in a multi-programmed environment.
These views have led me to perform a two-part study. First, a set of operations enabling interprocess communication within a single time- sharing system is constructed. This set of operations eschews many of the interprocess communications techniques currently in use within time-sharing systems -- such as communication through shared memory -- and relies instead on techniques that can be easily generalized to
Walden [Page 1]
RFC 62 IPC for Resource Sharing 3 August 1970
permit communication between remote processes. The second part of the study presents such a generalization. The application of this generalized system to the ARPA Computer Network  is also discussed.
The ideas enlarged upon in this paper came from many sources. Particularly influential were -- 1) an early sketch of a Host protocol for the ARPA Network by S. Crocker of UCLA and W. Crowther of Bolt Beranek and Newman Inc. (BBN); 2) Ackerman and Plummer’s paper on the MIT PDP-1 time-sharing system ; and 3) discussions with W. Crowther and R. Kahn of BBN about Host protocol, flow control, and message rout...