Network Computing - El‐Rewini, Hesham; Abd‐El‐Barr, Mostafa (Advanced Computer Architecture and Parallel Processing, 2004)
In this chapter we discuss network computing, in which the nodes are stand‐alone computers that could be connected via a switch, local area network, or the Internet. The main idea is to divide the application into semi‐independent parts according to the kind of processing needed. Different nodes on the network can be assigned different parts of the application. This form of network computing takes advantage of the unique capabilities of diverse system architectures. For example, the fine‐grained SIMD part of the application would be shipped off to the SIMD machine and the graphical presentation and I/O portions to one or more single‐processor workstations. The overall coordination may be done by a PC on someone's desk. It also maximally leverages potentially idle resources within a large organization. Therefore, unused CPU cycles may be utilized during short periods of time resulting in bursts of activity followed by periods of inactivity. In particular, we cover issues such as Network Computer Performance, Network Computer Technologies, Client/Server Systems, Sockets, Remote Procedure Call (RPC), Client Server Framework, Clusters, Threads, Ethernet, Switches, Myrinet Clos Network, Quadrics Network, Berkeley Network of Workstations (NOW), the Beowulf Cluster, and Grid Computing.