CompuServe, one of the world's largest and oldest online information services, gives its 4.5 million customers unique content, discussion forums, and Internet connections. Currently, CompuServe is migrating its entire operation from its aging DEC-10 architecture to a distributed network of Windows NT servers. Leading this migration is Bruce MacNaughton, CompuServe's vice president and chief architect. Since 1978, MacNaughton has led several CompuServe projects, including the deployment of the H&R Block (CompuServe's parent company) Rapid Refund System.

MacNaughton became interested in NT because Dave Cutler, the architect of Digital's VAX OS, was leading Microsoft's NT development team. "NT 3.1 was the best first release of any operating system I've seen," MacNaughton said. (See the "Interview with Bruce MacNaughton," for some of MacNaughton's comments on NT.)

Why NT?
CompuServe chose NT because it provides a good development platform for building large, distributed applications. With its modular design and extensibility, NT shows its advanced architecture through its services-based design, support for diverse and scaleable processors, and secure and interprocess communications functions. MacNaughton appreciated NT's consistent user interface throughout its numerous configuration points.

Another reason CompuServe converted to NT was because of its support for development tools. CompuServe develops a lot of its business-support software internally, so powerful development tools and support for programmers are important. With its legacy systems, CompuServe had to write and support compilers, linkers, and debuggers.

At present, CompuServe's development workhorse is Microsoft Visual C, supported by Microsoft Visual SourceSafe, NuMega's BoundsChecker, and MicroQuill's SmartHeap. With NT emerging as the premier OS, MacNaughton's developers are looking forward to even more sophisticated debugging and team development tools.

Migrating the Business
CompuServe's initial thrust to convert to NT began in spring 1995. A primary goal was to move the company's user forums to NT. This step was significant because most of CompuServe's customers are active in one or more forums.

CompuServe chose to convert the forums as the first major task because the company supports the forums with 1000 similarly configured servers. This architecture let CompuServe's teams develop an initial NT Server configuration, or cookie-cutter, and rapidly deploy the standard on the remaining machines. As of August 1996, this method had let CompuServe deploy 250 forum servers.

CompuServe has spread the forum computers among the company's three regional centers, providing redundancy and fault tolerance for its customers and a challenge for its systems administrators. However, NT's built-in monitoring and administration tools help meet this challenge.

CompuServe uses IBM's NetView for network management. The company wants to supplement NetView with Microsoft's Systems Management Server (SMS) although SMS is still a somewhat immature product. Other management tools that CompuServe is considering include Computer Associates's Unicenter, Hewlett-Packard's OpenView, and Cabletron's SPECTRUM.

How It Works
A CompuServe customer can dial in to one of thousands of local access numbers available worldwide. Once connected, a server routes the user's requests to email servers (which use Microsoft's SQL Server) or forum servers (which use POET Software's POET--to find out why CompuServe chose POET for its forum servers, see the sidebar, "Why POET?

").

POET is an object-oriented database management system (OODBMS). POET lets CompuServe store and manage messages in the threaded message libraries, a popular feature among CompuServe's customers. According to MacNaughton, an object-oriented database is best for the message library, where users can post and respond to messages from other users and system operators. Besides storing messages for later retrieval, the database links the messages so that users can follow the complete chain, or thread, of the conversation. CompuServe chose POET because of POET Software's commitment to open database standards and willingness to work hard with customers. When CompuServe began its NT project, very few object-oriented database vendors were considering porting their offerings to NT. POET Software was the exception--that company had an NT version and was willing to work quickly to fix any problems. CompuServe liked POET Software's overall company picture, its commitment to customer service, and its technology.

SOLUTION SUMMARY
  • NT to handle email, forum discussion, and Internet access for 4.5 million customers
  • SQL Server 6.5 to handle personal email and provide fault tolerance through built-in replication
  • A POET object-oriented database to handle forum discussion threads
  • NT servers to handle application services
  • 1000 Pentium-based NT forum servers in three locations to provide redundancy and fault tolerance
  • NetView to provide network-management services (CompuServe hopes to supplement this approach with SMS when the time is right)
  • Visual C to do application development on NT workstations

Figure 1 shows CompuServe's server configuration. Each CompuServe forum is a sophisticated, distributed system. The front end of each forum, the Presentation Specific Application Program (PSAP), runs on NT Server. PSAP communicates outwardly through CompuServe's Host Machine Interface (HMI) protocol to the CompuServe Information Manager (CIM), WinCIM, Navigator, or other offline reader software running on the user's PC. (If the user is running Apple or Amiga hardware, the PSAP communicates through ASCII.) PSAP then processes the user's requests to the forum server, which also runs on NT Server. The forum server, in turn, is connected to various component servers, including file libraries, message libraries, a membership database, and a conferencing facility. CompuServe can install these servers on one or more computers, depending on load-balancing requirements. Forum daemon applications running on the forum servers communicate among these forum components through remote procedure calls (RPCs).

PSAP can communicate with different forums, so CompuServe has a component-based architecture. This architecture is independent of CompuServe's presentation interface and provides flexibility and scaleability. At any given moment, many forum daemons can be transmitting messages simultaneously. NT's multithreaded capabilities provide enhanced performance for these transmissions. CompuServe's developers have written daemons running on NT servers as NT services, providing the robustness and performance that characterize server-based applications.

For MacNaughton, another major portion of the NT conversion project was switching CompuServe's heavily used email system to run on NT Server. The previous mail application was a proprietary system CompuServe developed to run on its 36-bit machines. CompuServe has rewritten its mail system to run under NT and uses Microsoft's SQL Server as the storage medium for mail messages, addressing information, and user information. CompuServe takes advantage of SQL Server's built-in database replication to provide redundancy in the event of a failure and to add reliability for its customers.

Hardware Considerations
No discussion of an NT conversion is complete without addressing the hardware platform. CompuServe has had great success with single- and dual-processor 90MHz Pentiums. MacNaughton has estimated that one Pentium 90 running NT can adequately support a 100-user forum. He's keeping an eye on the new Pentium Pro 200 and expects it to be a viable solution for large forums, particularly when some of the multiprocessing bugs are worked out.

CompuServe uses a few Compaq ProLiant servers (for a review of the Compaq ProLiant 4500, see Joel Sloss, "The Compaq Report," August 1996), but MacNaughton and his team don't like Compaq's use of a proprietary NT hardware abstraction layer (HAL). The special HAL can result in additional support calls to Compaq for minor changes that are easy to make on other vendors' hardware.

CompuServe's technologists also were unimpressed with Compaq's SmartStart utilities, which assist you in configuring a new Compaq computer. In particular, CompuServe's need to call Compaq for a key number to modify and unlock parts of the system is bothersome.

On the positive side, MacNaughton likes the fact that Compaq is shipping its machines with NT preinstalled and preconfigured. The new systems include monitoring features that help predict hardware failures. Compaq is changing its warranty policy to include replacement of machines that the monitoring features predict will fail. For these reasons, CompuServe's relationship with Compaq will probably continue to grow.

One of NT's best features is its ability to run on a variety of hardware platforms. MacNaughton is experimenting with ALR, Micron, and HP, and likes having the option to upgrade to high-performance Digital Equipment Alphas, if and when necessary.

Into the Future
As 1996 draws to a close, MacNaughton and CompuServe are in the thick of the Internet revolution. CompuServe will continue to replace its remaining legacy systems with NT-based solutions. The company will also replace its HMI protocol with the evolving Hypertext Markup Language (HTML) protocol of the Web.

CompuServe will expand its services to the Internet with a recently licensed version of Microsoft Internet Explorer (IE), the Normandy servers, and other services. Although IE will provide a quick fix, CompuServe can't always accept off-the-shelf solutions. Forums are one area where CompuServe excels over current Internet-based newsgroup technology. CompuServe will need to marry the best of the existing forum features, such as offline reading, with the best features of the Web.

CompuServe is working rapidly to expand Internet performance and access. It is re-engineering its systems to be more modular and object-like so the company can rapidly integrate new enhancements and services with existing technology.

CompuServe will continue to apply new technologies, such as NT 4.0, improved development tools, evolving interprocess communication methods, and forthcoming Cairo technologies, to keep current with the pace of change. With the guidance of MacNaughton, his colleagues, and their teams, CompuServe's customers will be well served into the next century.