PENN PRINTOUT
The University of Pennsylvania's Online Computing Magazine

PENN PRINTOUT February 1992 - Volume 8:5

[Printout | Contents | Search ]


Recombinations: Client/server computing in the 1990s

By Peter C. Patton

The term "client/server" is often bandied about to describe an alternative information architecture to dumb terminals (or personal computers emulating dumb terminals) connected to mainframes. But like many new technical terms, client/server is a metaphor and thus means different things to different people. Although client/server may have been a buzzword or fad five years ago, numerous implementations, including MIT's ambitious Project Athena, have shown it to be a current reality. The client/server style of computing is central to Penn's emerging information architecture for the next century.


Client/server defined

Many of you are familiar with two computing paradigms. One is "stand-alone" computing, in which an isolated personal computer runs applications such as WordPerfect and Excel. All data are stored on the PC, and the PC performs all processing, display, and other functions. The other familiar paradigm is a "dumb" terminal connected to a host computer over a network. In this model, all data are stored on the host, which performs all processing and formatting functions, sending only the results to the terminal. The All-In-One e-mail system and most administrative systems on the UMIS mainframe are based on this paradigm.

The client/server computing paradigm is fundamentally different in that functions are split among two or more computers, with a desktop "client" task accessing a remote computer "server" task over a network. A simple, perhaps familiar, implementation of client/server is an office local area network, where the server task is simply a shared peripheral such as a printer or a disk storage system.

More sophisticated examples include applications designed or partitioned into two pieces, the client portion running on the desktop and the server portion running on a remote computer. The server system may be a similar workstation, a minicomputer or supercomputer, or a mainframe database server. An example of a partitioned application is the PennInfo implementation for Ethernet-connected Macintoshes. The client portion (the software on the local Macintosh) controls the display and provides a Mac-like user interface, while the remote server, a minicomputer, stores the data and processes users' requests.

The largest client/server system in use today is MIT's Project Athena, a campus-wide network of UNIX workstations that allows students and faculty access through a uniform graphical interface to their data and a variety of functions, such as computing applications and printing, from any workstation on campus. The development of Athena, supported mostly by IBM and DEC, took eight years and cost $100 million.


Enabling technology

Client/server computing, with its emphasis on shifting more computing to the desktop, is an inevitable result of the microprocessor revolution. Leading microprocessor-based workstations and professional personal computers already offer computing on the desktop at a cost two orders of magnitude less than the cost of computing on remote time- shared systems. The technology turnover rate for chip-based workstations is about six to nine months, compared to about four years for mainframes, and about two years for super-minicomputers. As a result, the latest technological innovations first appear in desktop computers rather than mainframes. While desktop computers are leading the information revolution, they still have some deficiencies. For example, a top-end workstation may have the computational capability of a mainframe costing a hundred times more, but only a tiny fraction of its input/output and data storage capacity. Continuing electronic advances promise a "mainframe on the desktop" by 1995.

Thus the traditional economic benefits of connecting many users to one powerful, expensive mainframe using low-cost terminals will no longer be compelling. But neither will the growing power of user- friendly workstations free their users from the need to share and manage data. Using the client/server model, a network including mainframes, moderately priced, powerful workstations, and "smart" terminals could assign each information-processing task where it is most effectively performed. The system's flexibility would allow users to pool data resources and computing power in continually shifting combinations, as required. This vision has been captured in the slogan "the network is the computer."


Incentives for change

The motives for sharing a single computational or data resource among networked clients may arise from performance, capacity, economic, or organizational considerations.

  • In instructional applications, sharing a server is often desirable for record keeping, performance scoring, progress monitoring, and software licensing reasons.
  • In research computing, the desktop client may wish to reach a server for access to shared data, for additional computing capability, or simply to partition a computational application out to all the workstations on the network free to participate in the computation. The NeXT "Zilla" and Yale's Linda software systems are examples of distributed operating systems able to partition computations among a network of workstations.
  • In library applications, client/server information systems can be employed to do remote online catalog searches, followed by materials availability inquiries, database access, and even document retrieval and electronic transmissions or fax transmissions with automatic VISA card billing and copyright payment, as in the CARL system at the University of Colorado. The servers that make this system possible are scattered all over the world.
  • In administrative applications, the major rationale for the client/server model is sharing a common institutional database. Although we can already distribute data processing to the desktop, we do not yet know how to distribute databases over a network. Distributed database systems are a research topic today and may be commonplace before the end of the decade, but they will be preceded by distributed processing clients connected to centralized database servers.


Getting from here to there

Today most client/server applications are custom-built; however, existing applications can sometimes be converted to a client/server model and then distributed over a network in careful stages. The conversion is most often accomplished by detaching the human-interface portion of an application. Thus, in a traditional mainframe application, the portion that drives a terminal would be separated out and would become the desktop workstation client, rewritten to take advantage of the workstation's graphical user interface. In a nontraditional stand-alone desktop application, the data-manipulation portion would be sliced off and moved to a server.

One might ask why anyone would wish to carry out such a labor- intensive process on a program that was already working. The advantages of the workstation-based client/server model over the mainframe-based time-sharing and the stand-alone desktop models are several:

  • Client/server systems can be scaled more smoothly than mainframe systems with respect to processing demand because processing power can be added in small, low-cost increments rather than in large, million- dollar lumps. They are more easily scaled than isolated desktop systems because expensive resources do not have to be duplicated.
  • Workstation data processing is nearly a hundred times less costly than mainframe processing because workstations are made of high- volume/low-cost components, whereas mainframes are made of low- volume/high-cost components. Workstation hard disks have not yet reached this stage of economic evolution but are still less costly than stand-alone desktop systems because critical resources are shared.
  • Workstation and personal computer designs are optimized to provide highly interactive, color point-and-click graphical user interfaces, which can also serve system-wide functions when supported by servers.
  • Client/server computing offers functional flexibility to the user since central databases can be segmented and downloaded directly into a local user database or a spreadsheet. Similarly, data can be collected from local databases and uploaded to central databases. Both functions are difficult in the mainframe/terminal or isolated desktop models of computing.
  • At the software development level, client/server computing supports object-oriented programming (OOP) and object-oriented database management (ODM) programming and computing paradigms. The former promises to provide the next major breakthrough in programming productivity, while the latter has already shown significant progress in solving data management problems.
These factors must be considered strong arguments for the client/server computing paradigm because, if for no other reason, they make the benefits of information technology more accessible to its ultimate users.


Penn client/server applications

While we have no plans at Penn to emulate MIT's major investment in novel Athena technology, there are several application opportunities for client/server information architecture at Penn. For example, networked clusters of IBM, DEC, Hewlett-Packard, Sun, and NeXT UNIX workstations come with software such as X-Windows, Sun-Link, Pathworks, etc. that enable, even encourage, the client/server computing environment. Such systems are in place at SEAS, SAS, and Wharton, or soon will be.

Information Systems and Computing is developing two new servers accessible on PennNet every year. Last year, we developed the Network Authentication server and implemented PennInfo from an MIT prototype. The next servers will likely be a database of information about individuals to support the new PennCard system and a related building- access server for Public Safety to assure individual access to buildings via PennCards. As we add new servers like PennCard on PennNet each year, we are rapidly evolving into a client/server environment.

The first major administrative system to employ client/server technology will probably be the new financial management system being planned by Vice President and Chief Financial Officer Selimo Rael and his staff. The use of client/server technology in this system will enable a mainframe to act as a "superserver" or database repository that interacts with UNIX-based School and administrative servers, which in turn support end users running client software on networked UNIX workstations, X-terminals, Macs, and IBM PCs. User organizations will be able to create customized value-added financial databases on their local subservers with the confidence that their data will always reflect the larger-scale School and University databases.


Conclusion

No longer a fad, client/server computing is the information technology mainstream for the 1990s. Following on Athena's success, Eastman-Kodak has implemented a new payroll system running on a network of departmental Sun SparcStations, and Barclays Bank in the United Kingdom has ordered 2,500 IBM RS/6000 workstations for worldwide branch banking. It may be too early to predict the demise of traditional mainframe computing; generally, new technologies supplement rather than displace old ones. But even though large institutional databases will continue to reside on institutional mainframes and users will continue to access them using keyboards and monitors, the systems connecting user and data will undergo dramatic structural changes over the next few years.


PETER C. PATTON is Vice Provost for Information Systems and Computing.