previous | contents | next
Ethernet: Distributed Packet Switching for Local Computer Networks1
Robert M. Metcalfe / David R. Boggs
Summary Ethernet is a branching broadcast communication system for carrying digital data packets among locally distributed computing stations. The packet transport mechanism provided by Ethernet has been used to build systems which can be viewed as either local computer networks or loosely coupled multiprocessors. An Ethernet's shared communication facility, its Ether, is a passive broadcast medium with no central control. Coordination of access to the Ether for packet broadcasts is distributed among the contending transmitting stations using controlled statistical arbitration. Switching of packets to their destinations on the Ether is distributed among the receiving stations using packet address recognition. Design principles and implementations are described, based on experience with an operating Ethernet of 100 nodes along a kilometer of coaxial cable. A model for estimating performance under heavy loads and a packet protocol for error controlled communication are included for completeness.
One can characterize distributed computing as a spectrum of activities varying in their degree of decentralization, with one extreme being remote computer networking and the other extreme being multiprocessing. Remote computer networking is the loose interconnection of previously isolated, widely separated, and rather large computing systems. Multiprocessing is the construction of previously monolithic and serial computing systems from increasingly numerous and smaller pieces computing in parallel. Near the middle of this spectrum is local networking, the interconnection of computers to gain the resource sharing of computer networking and the parallelism of multiprocessing.
The separation between computers and the associated bit rate of their communication can be used to divide the distributed computing spectrum into broad activities. The product of separation and bit rate, now about 1 gigabit-meter per second (1 Gbmps), is an indication of the limit of current communication technology and can be expected to increase with time:
> 10 km
< .1 km
< .1 Mbps
> 10 Mbps
1.1 Remote Computer Networking
Computer networking evolved from telecommunications terminal-computer communication, where the object was to connect remote terminals to a central computing facility. As the need for computer-computer interconnection grew, computers themselves were used to provide communication [Abramson and Kuo, 1973; Baran, 1964; Rustin, 1970], Communication using computers as packet switches [Heart et al., 1970; Heart et al., 1972; Kahn, 1975; Metcalfe, 1972a; Metcalfe, 1972b; Metcalfe, 1973a; Metcalfe, 1973b; Roberts and Wessler, 1970] and communications among computers for resource sharing [Crocker et al., 1972; Thomas, 1973] were both advanced by the development of the Arpa Computer Network.
The Aloha Network at the University of Hawaii was originally developed to apply packet radio techniques for communication between a central computer and its terminals scattered among the Hawaiian Islands [Abramson, 1970; Abramson and Kuo, 1973]. Many of the terminals are now minicomputers communicating among themselves using the Aloha Network's Menehune as a packet switch. The Menehune and an Arpanet Imp are now connected, providing terminals on the Aloha Network access to computing resources on the U.S. mainland.
Just as computer networks have grown across continents and oceans to interconnect major computing facilities around the world, they are now growing down corridors and between buildings to interconnect minicomputers in offices and laboratories [Ashenhurst and Vonderohe, 1975; Farber et al., 1973; Farber, 1975; Fraser, 1975; Willard, 1973].
Multiprocessing first took the form of connecting an I/O controller to a large central computer; IBM's Asp is a classic example [Rustin, 1970]. Next, multiple central processors were connected to a common memory to provide more power for compute-bound applications [Thorton, 1970]. For certain of these applications, more exotic multiprocessor architectures such as Illiac IV were introduced [Barnes et al,, 1968].
More recently minicomputers have been connected in multiprocessor configurations for economy, reliability, and increased
1Comm. ACM, vol. 19, no. 7, July 1976, pp. 395-404.
previous | contents | next