Developed in tandem with Office 2007/Outlook 2007 and a future version of Windows Mobile, Exchange Server 2007 will be the biggest upgrade to Microsoft's email and messaging server yet. At a basic level, Exchange has been rearchitected to be more componentized, like Longhorn Server and Windows Vista, and Exchange 2007 deployments will be roles-based as a result, and more secure thanks to role interdependency minimization. It will manage PBX voice mail, VoIP phone calls, and fax messages in addition to email. It will include pervasive security features and technologies, and integrate with a new line of ForeFront security products. It will feature a brand new management interface in which the graphical tools are built on top of a Monad-derived command line environment, like a UNIX server. And it will require 64-bit x64-based server hardware, a break with the 32-bit past that has riled some Exchange customers. Nope, this isn't your father's Exchange. And I like what I see, very much so.

How we got here

The march to Exchange 2007--previously known by the code name Exchange 12, or Exchange 2007--was somewhat complex. You might recall that Microsoft originally intended to replace Exchange 2003 (the current Exchange version) with a product that was originally codenamed Kodiak and was based on the SQL Server database engine. In 2004, Microsoft dumped Kodiak when it discovered that the next generation Exchange store that was based on SQL Server just wasn't working. David Thompson, the Microsoft corporate vice president in charge of Exchange, told me that the SQL Server data engine simply wasn't tuned for the types of tasks required by Exchange. So Exchange 2007, like previous Exchange versions, will rely on an enhanced version of the Jet database engine codenamed Jet Blue, thank you very much.

That step back from the original vision of a unified data store notwithstanding, Exchange 2007 will benefit from a variety of updates that have occurred since Exchange 2003. The most important, perhaps, is Exchange 2003 Service Pack 2 (SP2), which added Direct Push technologies for automated email, appointment, contacts, and task delivery to devices, better compression for faster client/server synchronization, and, perhaps most important, a dramatic increase in the size of the storage limit in Exchange Standard Edition from 16 GB to 75 GB.

As for Exchange 2007, the software make shipped the first beta version in December 2005, and then followed that up by a Community Technical Preview (CTP) release in March 2006 and the Beta 2 release we're examining here in July 2006. Exchange 2007 Beta 2 is virtually feature-complete, Microsoft tells me, and it builds on the wellspring of new features that the company added over the previous two major prerelease milestones.

So, what's new in Exchange 2007? Lots, and since this is just Beta 2, I won't be getting to all of these features until the final release. Exchange 2007 supports rights management technologies to ensure that communications are secure both inside and outside of your environment. Improved anti-spam and antivirus are built-in. It offers better support for mobile devices than ever before, with improved policy support and manageability. Unified messaging capabilities will let Exchange function as a universal inbox for email, voice mail, and fax. And integrated speech recognition capabilities--with no Speech Server purchase requirement--mean that users will be able to interact with email and appointments via phone, perfect for those "running late" scenarios. New searching capabilities run deeply through Exchange 2007, as you'd expect given the information overload we experience with email today. On and on it goes.

As I noted above, this is just Beta 2, so let's discuss some of the features I've been able to examine so far.

Setup

Installing Exchange 2007 is a multi-step process during which you must meet numerous prerequisites. During the beta, Microsoft is offering both 32-bit and 64-bit (x64) versions of Exchange 2007, though only the x64 version will be available for production environments once the product is finalized (see below for details). To install Exchange 2007 Beta 2, you will need a Windows Server 2003 (SP1, R2, or x64)-based server with 1 GB of RAM or more that is part of a functioning domain that is configured as Windows 2000 native or higher (Windows Server 2003 native). (In other words, it cannot be a mixed Windows 2000 domain.) There is one exception: the Edge Transport role (described below) can be installed on a non-domain machine in your DMZ.

This server must have .NET Framework 2.0, Microsoft Management Console (MMC 3.0), Microsoft Command Shell (MSH, previously codenamed Monad), and Internet Information Services (IIS) installed; the first three of those requirements are included on the Exchange 2007 install CD. (IIS is required only if you will be installing Exchange's Client Access role.)

Fortunately, the Exchange 2007 Setup routine is intelligent about these prerequisites and won't let Setup proceed until they are met. During a readiness check phase, Setup examines your system to determine whether it's ready for Exchange 2007. If it isn't--and chances are pretty good it won't be--it will usually provide links for recommended actions, or at least give you the information you need to fix whatever problems might arise. The Client Access Role Prerequisites, for example, all require IIS to be installed, though that's not spelled out explicitly. (The first error says, "Unable to read data from the Metabase," which tipped me off.)

Eventually, the prerequisites are met, and it's time to install Exchange. You can either perform a single-server install, which is what I've done for testing purposes, or a custom install, in which you choose which Exchange roles to configure on the current server. And as you'll likely agree, these roles just might be the single biggest change in Exchange since its conception.

Roles-based architecture

Exchange 2007 has been completely rearchitected around a roles-based infrastructure. This is similar to what the company has already done with Windows Server--and is doing so in a much more granular way in Longhorn Server and Windows Vista as well. Consider how important this is. In the past, when you installed a product like Exchange Server (or Windows Server), you would need to understand exactly which components needed to be installed to perform certain tasks. Then, you'd have to configure those tasks correctly in order for them to function and do so securely.

In Windows Server 2003 (and R2), the roles-based administration features allow administrators to install (and remove) server roles that define how the server behaves. Each of these roles, in turn, installs whatever low-level components are needed, configures them in the securest possible manner, and then points you to subsequent configuration steps, when required. In Exchange 2007, as with Longhorn Server, the product has actually been built from the ground up to be componentized, or modular. So when you configure an Exchange 2007 server for a specific role, only those features are installed. That means your system isn't needlessly bogged down with code that might need to patched, even when it's not needed for the current configuration.

Exchange 2007 will support a number of roles, which can of course be added or removed as needs change. These roles are:

Mailbox. This, naturally, holds the Exchange data store, which includes mailboxes, public folders, calendaring, and other core services. The Mailbox role is required on all Exchange 2007 installs.

Edge Transport. Allows Exchange to act as an SMTP gateway servers that sit inside your DMZ perimeter network. It provides antivirus, antispam, and various messaging security functions.

Hub Transport. This is installed on systems that sit inside your network, acting as a bridgehead through which all messages are routed. (In fact, it was previously called Bridgehead.) The Hub Transport role is required on all Exchange 2007 installs.

Client Access. This role supports Outlook Web Access (OWA), Outlook connectivity via RPC over HTTP, IMAP, POP3, and Web services. You'll need this to connect mobile devices to Exchange.

Unified Messaging. Supports Exchange 2007's new unified messaging services, which allows Exchange users to access Voice Over IP (VoIP) calls, PBX-based voice messages, fax, and voice mail alongside standard Exchange mail messages.

As you might expect, you can configure one or more roles on a single server or deploy them over multiple servers as your needs dictate. For example, the Longhorn Server version of Small Business Server will include a version of Exchange 2007 that's optimized for a single server, while larger enterprises will want to spread roles across numerous machines.

64-bit only, thank you very much

Though it's clearly an impressive release, Exchange 2007 isn't without controversy. Late last year, Microsoft decided that it would ship the product only for 64-bit x64 versions of Windows Server, and not for the 32-bit systems that dominate today's businesses. Microsoft has valid if self-serving reasons for this decision, but my gut feeling is that a 32-bit Exchange 2007 version wouldn't provide the consolidation and performance benefits needed for a such an important upgrade, and by limiting the server to x64, Microsoft can overcome this problem.

At issue, of course, is memory. 32-bit systems can only access 4 GB of RAM, and Exchange 2007 needs more than that for larger installations. In a recent briefing, Microsoft noted that the benefits of running on x64 would result in a 70-75 percent I/O reduction, according to their internal tests. But this result isn't based on a comparison of identical 32-bit and 64-bit systems; though the hardware used in each case is the same, the x64 system had much more memory. That, and x64-specific optimizations, make Exchange 2007 perform better on x64. The end result is that x64 Exchange 2007 systems can support four times the users as equivalent 32-bit versions on the same hardware. And thanks to x64's native scalability improvements, organizations will be able to consolidate servers, supporting more users per server. This is a message that could very well resonate with bigger Exchange shops, many of which are likely bumping into the limitations of 32-bit machines already.

Management improvements

The new Exchange Management Console (EMC) GUI is completely redesigned and far less complicated than the current version. But most interesting, the EMC is actually just a front-end to the Exchange Management Shell (EMS), based on Microsoft's Monad command line environment. That's right. Exchange 2007 is built just like a UNIX server, and not like a typical Windows product, where the scripting environment (if there is one) is tacked on later.

The point here is that everything Exchange 2007 can do is exposed via EMS commands, which can be programmatically accessed directly from the command line, through scripts and commandlets, or via an application or service written in a managed programming language like C# or Visual Basic. This means that administrators can easily automate tasks, like adding groups of new users to both Active Directory (AD) and Exchange. But it also means that in-house development staff can write very specific applications that let IT admins or power users perform only certain Exchange 2007-related tasks.

This is powerful stuff. For example, if you need to provision 100 new mailboxes to accommodate new employees, that's a task that's made for automation, not stepping through GUI wizards repeatedly, like a monkey. You can create .NET-based commandlets with the EMS that take advantage of unique Exchange functionality, and Microsoft expects--as do I--that a community will spring up offering useful Exchange 2007 commandlets online. It's a brave new world, and one I think most Exchange admins will embrace quickly.

Outlook Web Access (OWA) and Microsoft Outlook 2007

Another highlight is the Exchange 2007 version of Outlook Web Access (OWA), which is virtually identical to the Outlook 2007 client application in both form and function (see my review of Outlook 2007 Beta 2). OWA 12, as I'll call it, neatly adds new Exchange 2007-specific functionality. So if you use the Unified Messaging (UM) features in Exchange 2007 to consolidate email, fax, and voice mail into users' mailboxes, you'll be able to listen to voice mail via OWA using an embedded media player control, and even forward private or sensitive calls to actual phone numbers (such as a private line or cell phone) so they won't bother cubical mates. Neat.

Microsoft is also significantly enhancing Exchange 2007's handling of calendar items so that more information is stored on the server, rather than on various clients. This has a number of positive ramifications. First, scheduling information like free/busy time and even meeting room and other resource availability can now be stored on the server. So when you invite someone to a meeting, you'll known immediately if they can make it, even if they're away on vacation, as their calendar will show that they're tentatively scheduled to attend. And you'll even know where the meeting will be held, since you'll have each meeting room's availability at your fingertips as well. These features, incidentally, work as well from OWA as they do from Outlook 2007.

Speaking of Outlook 2007, this upcoming new Outlook version will ease new installs and server failovers with its new AutoConnect feature. Now, you will simply need to supply your name, password, and email address, and Outlook 2007 will automatically configure itself for the correct Exchange server. Compare that to the current situation, where the user must know the server name in advance, and then step through a connection process. Additionally, this feature is handy if an Exchange Server fails over. Now, Outlook 2007 will simply connect to the new server, with no configuration change required. The user never needs to know what happened.

Unified Messaging features

Exchange 2007 will provide access to voice mail and faxes right in the same folder views with your email. And these communications will be available from any Exchange client, including OWA or various compatible mobile devices. Exchange 2007 will also support an interesting phone-based interface that will let users call the unified messaging server on a standard phone system and interact with the server using speech recognition and a touch tone phone. "There are things like this for Exchange today, but they tend to be expensive add-ons," Jeff Ressler, the Director of Exchange product planning told me in a recent briefing. "Now we're providing this functionality in Exchange 2007 as a core feature. You won't need to install Speech Server, it's just part of Exchange."

Availability

Microsoft still plans to ship Exchange 2007 in late 2006 or early 2007. The company hasn't released pricing yet, but expect it to be comparable to Exchange 2003. However, the new Enterprise CAL will, of course, come at a premium in keeping with Microsoft's recent emphasis on high-end feature sets. Remember that the final version of Exchange 2007 will only run on x64 hardware (running an x64 version of Windows Server 2003), though the Beta 2 version is available in a 32-bit x86 version as well for testing purposes only.

Final thoughts

There's a certain segment of Microsoft's customer base that's tired of the broken promises, and certainly, the company's inability to deliver on its oft-touted unified storage engine is a potentially troubling development. So, too, is Exchange's x64 requirement, which is sure to alienate many customers. Sure, x64 hardware is common in the marketplace. But few Microsoft customers are actually running x64 Windows Server versions on that hardware. So the upgrade to Exchange 2007 will also require an expensive, costly, and potentially complicated OS upgrade as well.

Fortunately, Exchange 2007 itself is in great shape. Microsoft seems committed to delivering the messaging functionality that customers expect, and there's little to suggest that Exchange will continue to do anything less than extend its already heady lead over the competition. Exchange 2007 Beta 2 is a solid effort, offering a more modular and secure design, amazing scripting and management capabilities, and the expected integration with the next generation Outlook client. Microsoft shops currently running Exchange Server will want to take a look and see whether they can take advantage of Exchange 2007's consolidation possibilities and new feature set. Deployment issues aside, Exchange 2007 looks like it will be a worthy and credible upgrade.

I should also note that there's much more to come. Though I've been testing Exchange 2007 for over a month, I still haven't plumbed some of its more interesting new features, including its enhanced support for portable devices such as smart phones. And don't get me started on the new scripting support, which will have Exchange admins jumping for joy. I'll have more to say about Exchange 2007 soon.