Microsoft introduced server-based Instant Messaging (IM) functionality when the company released the Microsoft Exchange 2000 Server IM service. Unfortunately, the Exchange 2000 IM platform didn't live up to anyone's expectations, least of all Microsoft's. The implementation used proprietary protocols, suffered from security problems that included transmitting data in clear text, and couldn't communicate with other vendors' client and server IM solutions. Given this history, Microsoft decided to start again by fixing some of these problems.
After briefly considering embedding IM functionality into Windows Server 2003, Microsoft decided to create a new, separate product called Microsoft Office Live Communications Server 2003, formerly known as Real-Time Communications (RTC) Server and before that code-named Greenwich. Live Communications Server made its debut in mid-2003. Although it's better than its predecessor and one of the best IM solutions available today, Microsoft will need to improve Live Communications Server before the product becomes the enterprise IM solution. But several third-party vendors now offer products to make up for Live Communication Server's shortcomings and help you get the most from the product. See Table 1, for a list of add-ons for Live Communications Server. Let's review Live Communications Server's current feature set, how you can complement those features with third-party products, and the changes that are likely to happen to Live Communications Server in the future.
Architecture and Technology
Internet Engineering Task Force (IETF) Request for Comments (RFC) 3261 defines the Session Initiation Protocol (SIP), which serves as Live Communications Server's core communications component. In essence, SIP defines a mechanism to set up and disconnect calls between communicating devices. Microsoft and other vendors have adapted SIP for use with IM, and IETF is developing the SIP for IM and Presence Leveraging Extensions (SIMPLE) standard. Although IETF hasn't yet fully ratified this standard, SIMPLE has widespread acceptance in the industry and Microsoft has built Live Communications Server on this standard.
Microsoft IM clients from Windows Messenger 5.0 and later support SIP and use the protocol to communicate with Live Communications Server-based servers. You must run Windows Messenger 5.0 on Windows XP Service Pack 1 (SP1) or Windows 2000 SP3 and later workstations. Live Communications Server-based servers, of which there are several types that I describe later, must run some version of Windows 2003.
Microsoft uses the concept of a home server to define a server that runs the Live Communications Server service and hosts Live Communications Server user conversations. Each home server can support approximately 10,000 users. (Microsoft recommends using a dual-processor 1.4GHz Pentium 4 machine with 2GB of RAM for each home server.) These servers require minimal disk storage and I/O throughput. Microsoft recommends using 36GB of storage to host both the system volume and the home server's Registration database. (Ideally, you'd use this configuration with some form of data redundancy, such as mirroring.)
Clients can connect directly to home servers, or they can first connect to a Live Communications Server front-end server. Although front-end servers aren't required, they are necessary when you want to scale Live Communications Server to tens of thousands of users or when you have more than one home server. When you implement a front-end server, the client connects to the front-end server, which in turn authenticates the client, then either proxies or redirects the client connection to the appropriate home server. Front-end server hardware configurations should match those for the home servers.
Live Communications Server closely integrates with Active Directory (AD), which the enterprise IM software uses to store the server configuration information and topology. Similarly, when either a front-end server or a home server authenticates a user, the authentication occurs using an AD Global Catalog (GC) server. You'll want to ensure that the GC server is nearby or, ideally, on the same LAN segment as the server requesting the authentication.
AD can be on Windows 2003 or Win2K, but regardless of which OS you use, Live Communications Server must install several AD schema extensions. Microsoft recommends using Windows 2003 because of its AD replication improvements. Figure 1 shows how the Live Communications Server clients and servers interact.
Protecting Your Company's Information
Most public IM services transmit sessions in clear text. So, for example, if remote employee Joan contacts employee John over IM in your office, the IM software typically transmits their conversation in clear text across the Internet, which makes the conversation available to anyone who intercepts the network traffic. Sending sensitive information in a form that's easily accessible to eavesdroppers is unacceptable in any corporate environment. Live Communications Server protects the integrity of your data in two ways. First, when you implement Live Communications Server within your organization, internal conversations don't travel outside your network. Second, you can (and should) use Secure Sockets Layer (SSL) to encrypt the communications stream between the Windows Messenger client and the Live Communications Server-based server. Although SSL usage between the client and the server is optional, all communications between home servers must use a Mutual Transport Layer Security (MTLS) secure connection. Figure 2 illustrates a secure communications session between Live Communications Server clients and servers.
To implement such an SSL and MTLS infrastructure, you must install certificates on all the servers in the enterprise that interact with one another when users hold IM conversations. From a deployment perspective, you need to carefully plan your environment and consider the Certificate Authority (CA) topology that you'll put in place.