Safari Books Online is a digital library providing on-demand subscription access to thousands of learning resources.
2 CHAPTER 1 Architecture of network systems overview The deployment of high-speed links and networks, as well as the Internet, provided the infrastructure for the development of new computing paradigms, mainly network-centric computing. In this paradigm, newly developed system infrastructures are used to support computing and storage-intensive applications and services. An early characteristic example is the development of networks of workstations, a multiprocessor architecture that relies on high-speed connec- tivity among workstations. This multiprocessor model is a natural advance of tra- ditional distributed systems, which connected autonomous computing systems; the single view of the network of workstations as one system, necessary for a multiprocessor, was enabled by the high-speed networks that had become avail- able. This abstraction enabled the efficient management of distributed resources through appropriate computing models and enabled a unified view of the net- worked workstations to the users. In a different direction, the ability to provide access to data and computational resources over the Internet enabled a vast number of new services for users and customers of commercial enterprises. These services are based on the well-known client/server distributed computing model and include examples ranging from banking to news feeds and from video conferencing to digital libraries. The provision of all these services and applications over networks, including the Internet, requires technological advances at two fronts: protocols and network systems. Network protocols define the methods and mechanisms necessary to achieve reliable communication between two parties (or more than two in the case of multicasting or broadcasting). For example, network protocols define methods with which data units are encoded for transmission, mechanisms to detect transmission errors, methods for retransmission of data in case they are lost or transmitted with errors, and methods for regulating the flow of information between communicating peers to ensure that the receiver is not flooded with incoming data. Importantly, network protocols do not define any aspect of the systems that execute these protocols in order to implement data communication. For example, protocols do not define the type of processors, their speed, the size of memory, or any other systemic characteristic of the devices that implement these protocols. Network systems are the systems and subsystems that realize the implemen- tation of network protocols. Network systems need to be designed to meet the func- tional requirements specified by protocols. They also need to meet the performance requirements determined by the ever-increasing speed of transmission links. This relationship between network systems and related areas is illustrated in Figure 1-1. The demands for executing protocols at high speed led to the need for advanced, sophisticated system architectures, component designs, and implementations. These network systems constitute the focus of this book. Network systems represent a distinct area of embedded systems architecture. Network systems are embedded systems because they are embedded in autono- mous systems and devices that have specific purposes. For example, network sys- tems are present in the infrastructure of networks, such as in switches, bridges, routers, and modems. Importantly, network systems also include network adapters,