A NETWORK/440 PROTOCOL CONCEPTNetwork Working Group Douglas B. McKay Request for Comments #187 Donald P. Karp NIC #7131 IBM Thomas J. Watson Research Center Categories: C3,C4,C5,C6,D7 Yorktown Heights, New York Update: None Obsoletes: None
[Page 1]
INTRODUCTION
The above objectives have been met since a network has been built and is presently being operated by the project. Implementation discussions transpired with another department at Research in order to define a realistic user system interface. The protocol defined for the project's network is also the basis for the operation of an IBM OS network.
[Page 2]
---------------
| NC |
--------------- ^
| /
----> in | out /
--------------------------------
| Express Exchange |
<---- --------------------------------
out in ^
\
------------------------------------
| Header | Text |
------------------------------------
The primary purpose of the network is to deliver messages from one user system to another in an orderly controlled manner. In order to provide all the information necessary to maintain control, the header contains a set of operational functions. These functions are listed below with the rationale for each. This code selects the immediate destination of the transmitted blocks; the data may be transmitted directly to the user described in the DSID field, sent to 'NC', or used by 'EE'. Any conflict in information between this field and any other field in the header will cause an error message to be returned to the originating station. The AC will serve a similar function at the receiving system, indicating to the communications interface (CI) whether the data block is destined for a user routine or contains control information for the CI. [The CI is that function which interfaces directly with the local operating system.]
[Page 3]
Action Code
Transmission Block Number
[Page 4]
Message Priority
Destination System Identifier
[Page 5]
Length of Text
Logical Message Structuring
Net Controller
-------------------------------
| | |
NJID(1) NJID(2) - - - NJID(N)
---------------------- . . . . .
| |
Stepname Stepname
-------------------------------
| | |
LMID(1) LMID(2) LMID(n)
-----------------------------------
| |
LMSN(1) LMSN(2) LMSN(n)
The Express Exchange is a combination of functions. It is basically a communication handler and store and forward switch. The 'EE' has the ability to keep track of all messages in the network by TEN (defined earlier). It is therefore possible to record and reflect the entire status of the network down to any detail desired.
[Page 6]
First of all, there must be a series of initialization messages sent
At any point during the transmission of messages an error can occur which will be detected by a negative acknowledgement. The message in error will be retransmitted several times. If the error persists, the line is timed out and will be retried later. The assumption here is the line may be temporarily noisy and we give it time to quiesce.
[Page 7]
station must resume on a particular logical message to allow the message
For example, if a file transmission consisted of many blocks and a transmission error occurred that the network was unable to recover. The 'EE' would notify the 'NC' of the error occurrence on this file transmission and then 'NC' would issue purge messages to the 'EE's for those particular 'logic message' blocks. This mechanism-allows a general 'clean-up' and management of all file transmissions.
[Page 8]
NC PROTOCOL
The commands and status messages that pertain to the second level logic of the 'NC' are sent and interpreted by the sending and receiving systems. All initiation of file transfers result from direct user commands to the 'NC'.
[Page 9]
When the sending and receiving stations have completed the file
Files routed specifically for execution require a third status message from the receiving user system. The system must indicate when and how the job completed execution. This status message will also contain the appropriate accounting information to allow dynamic updating of network user and system accounting information. It is not clear at this time what should be accounted for in the network, but it is an area of prime concern to operational networks.
[Page 10]
the 'EE' with no interaction by the 'NC'. In the event one of the
Once the user's connection is established, three types of messages may be generated, These messages are identified by the 'AC' field in the header. The three basic transmission types covered by the protocol are: a response requested - with or without text included in the message, a text message which is simply a response to the first or just data to be printed at the user's terminal, and finally, an interrupt message which indicates the user wishes to stop a task or talk directly to the operating system.