The NOW (Network of Workstations) Project [Anderson et al. 1995a] at UC Berkeley provides approximately 100 workstations for use within the department; however, it is difficult for users to know which of the 100 machines is least loaded. To address this problem, we developed a Web page containing a single button which, when pressed, opens a telnet window onto the least loaded machine in the NOW cluster.
The implementation of the telnet application is straightforward. The telnet Web page encapsulates the necessary Smart Clients applets. The director applet periodically polls the NOW's operating system, GLUnix [Ghormley et al. 1995], to retrieve the load averages of machines in the cluster through a simple Common Gateway Interface (CGI) program. When the user clicks on the telnet button (provided by the client interface applet), a request is sent to start a telnet window on the least loaded machine in the cluster. If the director applet notices that a machine has failed it will not submit telnet requests to that node. We are currently investigating a fault-tolerant telnet service which re-opens a telnet window (with saved state such as the current working directory and environment variables) in the event of node failure. The fault-tolerant telnet would pass this saved state through the RequestException object (as described in Figure 5.