II - A Hierarchy of Protocols
It seems convenient and useful to view the network as consisting of a hierarchy of protocol and implementation levels. In addition to aiding independent software and hardware development, provisions for a layered protocol allow additions and substitution of certain levels in experimental or special purpose systems.
We view the initial network communications system as a hierarchy of three systems of increasing generality and decreasing privilege level. These are:
-
IMP Network - The network of IMPs and physical communication lines is the basic resource which higher level systems convert into more generalized communication facilities. The IMP network acts as a "wholesaler" of message transmission facilities to a highly privileged module within each HOST.
-
Network Control Program - Each HOST contains a module called the Network Control Program (NCP) which has sole control over communications between its HOST and the IMP network. It acts as a "retailer" of the wholesale communications facilities provided by the IMP network. The network of NCPs can be viewed as a higher level communications system surrounding the IMP network which factors raw message transmission capabilities between HOSTs into communication facilities between ordinary unprivileged processes.
H O S T A H O S T C
______________________________ ______________________
| | | |
| ____ ____ ____ ____ | | ____ ____ ____ |
| |Proc| |Proc| |Proc| | | | | |Proc| |Proc| | | |
| | A | | B | | C | |UCC | | | | D | | E | |UCC | |
| |____| |____| |____| |____| | | |____| |____| |____| |
| | | | | | | | | | |
- - - - - - |- - - |- - - |- - -|- - -|- - |- - -|- - - |- - - - - -
| | | | | NCP NETWORK | | | |
| | | | | | | | | | |
| _|_____|______|______|_ | | _|_____|______|_ |
| | | | | | | |
| | N C P A | | | | N C P C | |
| |_______________________| | | |________________| |
| || | | || |
|_____________________||_______| |_______||_____________|
|| ||
- - - - - - - - - - - -|| - - - - - - - - - - ||- - - - - - - - - -
|| IMP NETWORK ||
___||___ ____||__
| | | |
| IMP |------------| IMP |
| A | | C |
|________| |________|
| |
| ________ |
| | | |
+------| IMP |-----+
| B |
|________|
Figure 1: Modular View Of Network
- User Control and Communication Module - The preceding two communication systems are sufficient to permit communication between unprivileged processes that already exist. However, one of the primary initial uses of the network is thought to involve the creation of a foreign user process through interaction with the foreign HOST's logger. The User Control and Communication Module (UCC) implements protocol sufficient for a process to communicate with a foreign HOST's logger and to make initial control communication with a created process. Such a process is to have the same privileges (subject to administrative control) as a local (to the foreign HOST) user process. The UCC module communicates through the NCP in a manner similar to an ordinary process. Except for the ability to close connections to a dead process, the UCC module has no special network privileges. The UCC protocol is only one of several third-level protocols that could be implemented. For example, a set of batch processing systems connected through the NCP system might implement a load-sharing protocol, but not a UCC.