Let's start with the best news about Windows Server 2003 — this is Microsoft's fastest server operating system ever for the bread and butter of networking: file and Web page serving. That's no hype. Server 2003 blows the doors off NT and W2K Server, races by untuned Samba on Linux, and bounds by Apache on Linux.
Its Active Directory (AD) implementation is also worlds better than W2K's, and, best of all, you can finally upgrade to AD from NT domains without tears. See our Practically Painless NT to Windows Server 2003 Migration Special Report for details.
There is one fly in the AD soup, though. Server 2003 AD Domains can operate in one of four modes: Mixed mode; Server 2003 Interim, which you can think of as Mixed mode for most purposes; Native; or Server 2003 mode. In Mixed mode, both NT 4.0 and Server 2003 Domain Controllers can be used.
With Mixed mode, you can always take your network back to being a NT 4.0 Domain, but once you go Native, there's no going back. On the positive side, you do get to enjoy such features as group nesting, universal groups, and more power to restructure Domains the same way you do now with W2K Native AD.
But to really get the best stuff in the new AD, such as the power to rename any domain in your forest and change the DNS name or NetBIOS name of any child domain or even the forest root domain, all your servers must be in Server 2003 mode, which means all your servers must be running Server 2003. That would be a major pain in anyone's IT wallet.
While we all love file and Web server speed, a well-tuned Samba setup can give Server 2003 a run for the winner's cup and does so at a far lower price. And, TUX, a Red Hat-designed Web server, can run neck and neck with Internet Information Server (IIS) 6.0 all day long. But IIS 6 does have more than just raw speed going for it.
IIS 6 includes a new kernel-mode driver, http.sys, which handles Web requests that renders the overall Web server immune from common Web applications failures. In the past, an application failure could take down IIS and all its Web sites.
With IIS 6, on the other hand, if a single Web service application fails – because an SQL Server request fails, for example – the Web Server automatically creates a new, identical twin process to service any outstanding requests. If that also falls on its face, the process is permanently closed, but the other Web servers keep right on going. The net effect is that IIS is much more stable.
IIS 6 also uses application pools and multiple worker processes to better manage Web applications. The easiest way to think of this is that in Server 2003, IIS 6 runs virtual machines for each Web site being serviced. Combine this with improved load balancing and interprocess communications (IPC) – one of IIS 5's weakest points – and you have both a more sprightly and more stable Web server.
But in order to use all of this, your Web designers will need to learn to use IIS 6's application programming interfaces (APIs). Older applications will still work in a backward-compatible mode. They'll still run faster than on W2K and IIS 5, but they won't nearly as fast as they could, and they won't get many of the stability benefits that IIS 6 offers.