GATX, Chicago, Illinois60648 and. JAMES H. ... interest in sharing hardware-software components ... resulted in easier software development and improved.
Behavior Research Methods & Instrumentation 1978, Vol 10 (4),522-526
Networks An introduction to microcomputer networking concepts RALPH WALLACE and RICHARD N. JOHNSON GA TX, Chicago, Illinois60648 and JAMES H. JOHNSON Eastern Virginia MedicalSchool, Norfolk, Virginia 23501 This paper presents a brief history of the use of internal computer networks, an introduction to networking concepts and topology. and suggestions regarding a possible system for use in a psychology laboratory. Considerations about the design and use of a microcomputer network are discussed. As additional behavioral scientists obtain microcomputers for research, there is apt to be a growing interest in sharing hardware-software components with other investigators to reduce costs and increase computational power. This concept is usually referred to as computer networking. The initial ideas about computer networking began with the introduction of timesharing and the development of data communications technology in the late 1950s. Timesharing systems involve a large central computer acting as a host to several remote terminals. With increasing service demands, some single central computers were replaced with multiple connected computers. These were the first true computer networks. In such situations, the host processors performed large computations, controlled data bases, and supervised network operations. Remote computing systems performed smaller computations in a local mode under an independent operating system, but participated in network activity when processing demands required. As minicomputer technology developed, networking became more individualized and tailored to the needs of situations. Individual processors were assigned very specific tasks and programmed to communicate with neighbor processors and data base files, This approach resulted in easier software development and improved tolerance for systems failures (Digital Equipment Corporation, 1974). The topology of links (circuits and channels) and nodes (endpoint or junctions of a circuit) also became increasingly specialized as a result of minicomputer technology. Any node could be set up as an exclusive user or provider of resources, and the geometric arrangement of a network varied from simple pointPlease send requests for reprints to James H. Johnson, Department of Psychiatry, Eastern Virginia Medical School, Norfolk, Virginia 23501.
522
to-point operations to more complex mixed structures. The advent of microprocessor technology promises to lead to additional tailored network topologies. Because of the lower cost of microcomputers, behavioral scientists are now likely to be able to afford more sophisticated network topologies in laboratory and other experimental settings. However, at present there is insufficient general knowledge in the field to make full use of these concepts. For example, in a recent paper on developing a laboratory computer network, Brown and Deffenbacher (1978) suggest an approach whereby a psychology department would have a single large microcomputer for program development and tasks requiring large memory, along with several independent low-cost microcomputers to service instrument needs. This is a network only in the loosest sense, as the various micros do not communicate with each other following program development. The purpose of the present paper is to acquaint behavioral scientists with other more advanced networking concepts. It is hoped that this material will be of use to those considering the installation of a network of microcomputers, but unfamiliar with alternatives to a simple, independent networking approach. NETWORKING The low cost of microhardware makes it possible to locate a sizable amount of computing power near the user. Each local node may include its own cathoderay tube (CRT) terminal and a computer with sufficient memory to handle most needs. If a particular user has special requirements to control instruments and actuators, these can be added to the node. The local computer handles all special equipment formatting, so that only basic data are communicated to other processors in the network. It also does extensive calculations (e.g., matrix calculations up to 20 by 20 appear feasible), Large problems are completed at a node
COMPUTER NETWORKING with extra memory and floating-point hardware, but requests to this calculator node are minimized because many such requests can be handled at the local nodes. When resources are not available at the local node, a message can be sent to nodes that have the needed capabilities. For example, if a local node requires a data printout, a request is made to a node with an attached printer. For other special resource requirements, such as remote communications, graphics display, large calculation, me handling, and special instruments, the local node sends a message to the appropriate node requesting the use of the resource. Such messages are routed through a network control node that determines if various resources can be allocated to the requesting user. A local node can alert the network control node of unusual events. For example, if a local node is monitoring an experiment and a malfunction occurs, the network control node might use a communications node to automatically telephone the appropriate investigator. Similar monitoring can be used for purposes of security. The program action to be taken in response to a malfunction can be located within either the local or the me node. Therefore, several different courses of action are possible depending upon the task of the local node, time of day, or severity of the malfunction. The network control node might call different phone numbers, depending on the type of malfunction and the nature of the experiment under control. A local node may have special instrumentation, such as a gas cromatograph with automatic sample finding and recording, attached. To insure that the nodes are interchangeable, a standard interface must be used on all of the nodes. For interfacing instruments, standards currently exist that are useful. The IEE488 bus standard is suitable for parallel interfaces. It has sufficient control and data lines to handle most requirements for laboratory instrumentation. For serial interface, the EIA RS2322 can be used on most required equipment. These standard interfaces must look the same to each program that is expected to control them. This allows one instrument to be attached to two or more local nodes for reliability or to be switched from one location to another. Also, it allows several such instruments to be attached to different nodes using the same programs for data collection and control. Contemporary networking technology requires many special functions to be available to all local users. The special nodes perform functions for the other nodes in the network and have unique programs that reflect their specialty capabilities. Examples of special-purpose nodes include file handling, network control, large calculation, remote communications, and printing. A file node handles all the storage and retrieval functions, including buffering for the network. Usually, the files are stored locally on disks or tape. File data
523
can be duplicated locally, or in some cases, on another system through a remote communications node. The me node keeps a directory of all the active flles available. In a properly designed system, files that are inactive for a fixed time are automatically archived by the me node. This insures available space on the file system for current use. Programs for use by the various nodes are stored using the me node. A request for a particular program from a local node is first directed to the network control node for purposes of authorization. Once authorization is granted, it is forwarded to the file node for retrieval and transmission to the local user. At the local user node, a communication program formats the file for execution, loads it into memory, and, after the last segment of the file is received, starts execution of the program. This process can also be initiated by the network control node. The ability to download programs to the user node under command of the network control node is extremely useful. For example, it allows an experimenter to use different control programs for different phases of an experiment. The network control node directs the processing throughout the network. Downloading capabilities and program-access rights from other nodes are controlled by it. Local nodes refer to it whenever outside help is needed. The network control node can take appropriate action such as transmitting a message to a CRT, downloading a new program to the node, or requesting an operator intervention. It starts the network when the power is applied to the system. Finally, the network control node can serve as a message switching center. A special node for calculating is usually included in a network. Typically, this node is quite expensive, since it requires a large amount of memory and floatingpoint arithmetic hardware. The calculation node can accept input such as a program name to be retrieved from the file node, input data file names, and the names of files for the storage of results. When a calculation program is finished, results are released to the requesting node by freeing the output files. This allows the local node to begin accessing the output me to review results. A special node is required for communications with other networks. The communications node interprets the network protocol for communications with remote systems, and requests programs from the me node that are appropriate to a particular protocol. Input-output (I/O) nodes control the physical I/O to electromechanical devices such as a printer, card reader, and plotter. The I/O node contains buffers so that data can be transferred directly to or from a local node. However, in cases where significant activity is expected, I/O data may be routed through the file node. This node is responsible for queing procedures and all standard data formatting programs.
524
WALLACE, JOHNSON, AND JOHNSON
(1.11.1)
(0.0.1.1)
(11.01)
(0.0.0.1)
(1.0.0.1 )
Figure 1. Hypercube network showing coordinate addresses for each node. (Note the Gray Code is used for node ordering so that adjacent nodes will differ by only 1 unit dimension.)
NETWORKTOPOLOGY Network topologies vary from application to application. The particular type of network selected is dependent upon the parameters of reliability, cost, flexibility, and expansion needs. There are no requirements that nodes be contiguous. Nodes can be connected using telephone lines and modem or twisted pairs of wires. Thus, network topology is not limited by the physical setting. Of the several common network configurations, the Hypercube has the most secure communications linkage. In a Hypercube network (Figure 1), each node is connected to four other nodes in a symmetric manner. In order to isolate two parts of the network, a large number of communications lines or node failures must occur. In networks where reliable communications are required, such as an integrated laboratory network, this may be the best configuration. However, the number of communications links required eliminates this network topology from most applications. The Torus configuration, shown in Figure 2, gives up some of the communications reliability of the Hypercube to reduce the number of communication links. For applications where concentric rings of communications lines can be used, this topology gives a high degree of reliability. In many process and laboratory environments, the Torus configuration provides an acceptable compromise between reliability and excessive communications needs.
The Mesh network, shown in Figure 3, is used to reliably blanket an area with user nodes. In a psychology department it might be desirable to give every investigator some processing and laboratory equipment functions. In this situation, the Mesh network is ideal. However, once again, the number of communications links required for a network of this type is high. The Tree topology, shown in Figure 4, minimizes the communications links necessary in a network. Since this type of network can be separated by the failure of one communication link or node, it should be used only where communication failures can be tolerated. For example, it might be used in situations where the local nodes have sufficient capabilities to operate independently for some time. The Tree configuration simplifies control programming and is
Figure 2. Torus network showing coordinate addresses for each node. (Note the Gray Code is used for node ordering so that adjacent nodes will differ by only 1 unit dimension.)
COMPUTER NETWORKING
525
relatively inexpensive. Therefore, it is apt to be the most practical system in a medium-sized environment. The Star configuration, shown in Figure 5, requires that all the communication between nodes be routed through the central node. For small systems of 4-16 users, this is practical if file-access requirements are not great. While the Star topology is vulnerable to hardware and line failures, it is often used because it is relatively inexpensive.
TYPICAL LABORATORY SYSTEM
0= user
o
Node
= Spec,al " "
Figure 3. Mesh network.
Data Base Node
Calculations Node
U
User
Nodes
Figure 4. Tree network.
u
u
u
DB
Figure S. Star network.
For a small laboratory the Star configuration, modified as shown in Figure 6, would probably be appropriate. The user nodes actually consist of two computers linked through shared memory. These computers are designated as the user processor and the communications processor. The communications processor has control of the node. It can stop the user processor, load memory with a program received from the file node, and start the user processor executing the program. The communications processor has complete access to the memory of the user processor. The user processor signals the communications processor for message transmission. It does this through a special control line attached to the communications processor. A system of "mail boxes" in memory is used to transfer messages. The user processor has all the external devices for the node attached to it. This allows all communication processors to be identical. The external devices are all attached to a similar bus structure located at the same place in each user node. Thus, the same program can monitor and control the same external device using any local node. When a node fails, the network control node can download another node with the appropriate device control program, switch the device to the back-up node, and initiate the device control program. The network operating system is configured for each installation using standard software. This software is the control program for the network control node. It
User Nodes
Dala Base Node
Figure 6. Modified Star network.
526
WALLACE, JOHNSON, AND JOHNSON
determines the functions of the user nodes, file-access right, and rights to other special resources. This software is modified as additional nodes and resources are added to the network.
DISCUSSION In this paper, we have attempted to provide the reader with an introduction to the concepts of computer networking, network topologies, and a potential topology for laboratory use. The paper was motivated out of a concern that most psychologists (c.f. Brown & Deffenbacher, 1978) are unfamiliar with internal networking approaches. Networking concepts usually become important only after sufficient microcomputer equipment is installed in laboratory settings. However, initial equipment purchases limit the user's eventual networking options. Therefore, it is imperative that psychologists be aware of the relevant concepts prior to major equipment acquisitions in this area.
In some cases, behavioral scientists will not want to make use of most of the concepts outlined above. For example, those involved in highly individualized projects or located in settings with fewer than two or three microcomputer systems will probably not be able to make use of these techniques. However, in other settings, such as larger psychology departments, networking concepts are apt to be very helpful as a means to providing investigators with a useful range of equipment at a less expensive cost.
REFERENCES E. L., & DEFFENBACHER, K. Microcomputers big and little: Selecting a low cost laboratory computer network. Behavior Research Methods & Instrumentation, 1978, 10,241-245. DIGITAL EQUIPMENT CORPORATION. Introduction to minicomputer networks. Maynard. Mass: 1974. BROWN,
(Received for publication June 16, 1978; revision accepted June 19,1978.)