Proposed User-User Protocol (RFC0091)
Original Publication Date: 1970-Dec-01
Included in the Prior Art Database: 2019-Feb-11
Internet Society Requests For Comment (RFCs)
Network Working Group George H. Mealy Request for Comments: 91 Harvard University December 27, 1970
A PROPOSED USER-USER PROTOCOL
There are many good reasons, and maybe one or two bad ones, for making it appear that communication over the Network is only a special case of input/output -- at least as far as user programming is concerned. Thus, for instance, the Harvard approach toward implementing the HOST-HOST protocol and Network Control Program treats each link as a "logical device" in PDP-10 terminology. Setting up a connection is similar to local device assignment, and communication over a link will make use of the standard system input/output UUO’s. This makes it possible to use existing programs in conjunction with the Network without modification -- at least if other PDP-10’s are being dealt with.
This takes us only so far, however. The notion of a "logical device" does not exist on the PDP-10; it does on the IBM 360 (I am speaking here at the level of the operating system -- user program interface). Furthermore, in the absence of a Network standard requiring fixed representations for integers, reals, etc. (which I would oppose), any pair of user processes must arrive at a local agreement, and one or both must assume the burden of data conversion where necessary. Any standard protocol should allow such agreements to be given expression and should accommodate at least the minimum of control information that will allow such agreements to function in practice. Finally, we must note that the IMP-IMP and HOST-HOST protocols do not provide for a check that an action requested by a user process is actually accomplished by the other processes; this type of issue has always been regarded as subject to treatment at the USER-USER protocol level.
This proposal is intended to face the above three types of issue only to a certain extent. I can best explain that extent by stating the criteria I would use to judge any USER-USER protocol proposal:
Mealy [Page 1]
RFC 91 A Proposed User-User Protocol December 1970
1. The notion of a (logical) _record_ should be present, and the notion of a _message_ should be suppressed. (To a FORTRAN pro- grammer, that which is written using one WRITE statement with no accompanying FORMAT is a record; to an OS/360 machine language programmer, PUT writes a record).
2. It should be possible to so implement the protocol in HOST sys- tems and/or library routines that now existing user programs can access files anywhere in the Network without program modifica- tion. (Initially, at least, this ability must be restricted to HOST systems of the same type).
3. The protocol should be implementable (not necessarily imple- mented) in any HOST system at the SVC or UUO level. Specific knowledge of the characteristics of the other HOST involved should be unnecessary.
It should be noted that the above imply that some user programs must be aware of the nature of the other HOST -- at least in each case where the second crit...