The quality of the hardware for a terminal server is key to the performance of the overall system. Every operation of all connected thin clients takes place on the server. Therefore, the server must be quite powerful. Normally, its hardware is among the most powerful in the server room. New hardware concepts, such as Blade Server, allow the distribution of the overall system performance (if load- sharing mechanisms are used) to several, relatively inexpensive servers. Thus, the proper dimensioning of a server is often a balance of price, manageability, and application requirements.
This part of the book describes the hardware requirements only for the installation of a terminal server without applications. Therefore, the following remarks apply only to the hardware needed for the operating system and the necessary terminal server components. You will find more information on dimensioning a terminal server with applications for a large number of users in Chapter 5.
Consider the following criteria when selecting terminal server hardware (keeping in mind that this is a preliminary list).
The selected server platform needs to be certified for operation under Windows 2000 or Windows Server 2003. If not, you must at the very least ensure that only standard components with sufficiently tested drivers are used.
Special attention should be paid to processor capacity. It needs to be as high as possible to accommodate the simultaneous start of multiple applications at peak times (for example, when many users start working), when terminal servers are often pushed to the edge of their ability. These situations should be avoided. The minimum processor speed of a terminal server should be 733 MHz. In Chapter 5, we will describe in detail the capacity requirements of individual applications in relation to processors.
The operating system alone needs a minimum of 128 MB of main memory. The optimal amount of main memory for an operating system without applications is 256 MB. Any additional memory requirements for individual applications are discussed in Chapter 5. In principle, the server platform should allow for at least 2GB of memory expansion. Maximum values are 4 GB for a Standard Server, 32 GB for an Enterprise Server, and 64 GB for a Datacenter Server.
The server needs to have a high-performance hard drive subsystem (if applicable, a hardware RAID system via SCSI bus). Alternatively, you could also use Storage Area Networks with corresponding adapter cards for terminal servers. The hard drive must provide at least 1.5 GB for the operating system. Additionally, there will be swap space for virtual memory, memory for locally saved user profiles and the necessary system resources for the applications. In total, the hard drive space for a terminal server should comprise at least 10 GB. An additional hard drive or a devoted RAID channel for swap space can sometimes increase system performance. However, it is preferable to have a sufficient quantity of real memory to avoid, as much as possible, swapping data to the hard drive.
The speed and capacity of the network connection depends on the potential number of users. The network connection should support a continuous data stream of 50 to 100 KBit/s per user to the clients. In the direction of the file servers, a network adapter with at least 100 MBit/s is required. In many switch- based environments, one network adapter per server with a throughput of 100 MBit/s is usually sufficient. However, no more than 50 users should work interactively on each server (see also Chapter 3). Several redundant network adapters can be employed per server so that the failure of one network connection does not bring down the entire server. Such an arrangement requires a much more complex network configuration. To work properly, other network components (such as switches, power supply for servers and network components) must also be redundant.
The server hardware should have a fast system bus so that internal data communication is not impeded.
It is recommended that the server be “free” of all components that are not needed for productive operation. For example, this would include audio cards or peripheral devices that might produce unwanted side effects when deployed.
A terminal server in Windows Server 2003 is scaled better than its predecessors because it is optimized for multiuser operation in terms of process administration, memory virtualization, and the registry database.
Standard high-performance terminal server hardware lures many administrators into installing BackOffice, server applications, or Windows services on top of the applications for interactive users. This, however, is usually counterproductive.
The foreground applications on terminal servers are optimized to behave in a way familiar from client platforms (such as Windows XP or Windows 2000 Professional): they are prioritized to respond as quickly as possible to user access. A BackOffice server, however, is optimized for quick allocation of system resources for server applications and Windows services. This type of application (such as database system, a Web service, an e-mail program, or a directory service) is usually invoked as a high-priority background process that is completely different from an interactive foreground application. The server applications should respond as quickly as possible to the network calls from the corresponding client program, whereas the interactive applications on the BackOffice server console are substantially delayed.
If server applications and interactive desktop applications are installed on a terminal server and operated in parallel, they interfere with one another because they each demand preferred handling. If all applications demand preferred handling, a critical bottleneck results. This substantially lowers performance in both types of applications. When terminal server and BackOffice server are strictly separated, both perform much better.
For test installations, it is perfectly fine to combine terminal server and BackOffice server on one hardware platform. Such configurations, however, are limited in scale, quickly become saturated, and do not allow a realistic assessment of the power of neatly separated server systems. Combination servers are best used in demonstration environments.