Multiprocessing architectures for local computer networks
Generate an AI Snapshot to get a quick, structured summary of this paper.
A concise AI-generated summary of the paper will appear here once you click Generate AI Snapshot.
TL;DR
A new communication model for local computer networks whereby processes execute generalized remote references that cause operations to be performed by remote processes is presented, which provides a taxonomy of primitives that are naturally useful in many applications and can be specially implemented to provide for high efficiency.
Abstract
This dissertation discusses the interconnection of computers with very high speed local networks in a manner that can support a large class of distributed programs--a class that includes programs requiring highly efficient interprocessor communication. This research is motivated by (1) prospects for local networks having a capacity of 100 megabits/second or higher; (2) continuing advances in semiconductor technology; (3) the increasing availability of inexpensive, low-latency, non-volatile storage; and (4) inadequacies in existing software technology that prevent these technological advances from being fully exploited. In the early sections of this work, the primary thesis is developed; it explicitly presents the properties that we require of a local network-based multiprocessor. The analysis and validation of this thesis leads to four major contributions. The first is a comparison of very high speed ring and broadcast networks when they are used with short packets. As part of this comparison, a new analytic model is presented, whose solution yields delay/throughput data for token rings. The second major contribution is a new communication model for local computer networks whereby processes execute generalized remote references that cause operations to be performed by remote processes. This remote reference/remote operation model provides a taxonomy of primitives that are naturally useful in many applications and can be specially implemented to provide for high efficiency. Example communication primitives and techniques for their implementation are provided to show the utility of the model. Following these discussions, we present experience with the implementation of one class of remote references. These references take about 150 microseconds or 50 average macroinstruction times to perform on Xerox Alto computers connected by a 2.97 megabit Ethernet. This experiment demonstrates the power of special-casing communication primitives and helps to validate the remote reference/remote operation model. Finally, various implementation techniques are presented that can be used for a real communication system based upon the model. We discuss such topics as the efficient transmission of large data blocks through the use of multiple small packets and the efficient implementation of stable storage.
