No Jitter is part of the Informa Tech Division of Informa PLC

This site is operated by a business or businesses owned by Informa PLC and all copyright resides with them. Informa PLC's registered office is 5 Howick Place, London SW1P 1WG. Registered in England and Wales. Number 8860726.

Under the Hood of Microsoft Communications Server 14

When Microsoft came to VoiceCon last spring, there was a flurry of activity and announcements around the long anticipated Wave 14 developments for Office Communications Server. The company had been working on a new version of OCS for several years, and there was anticipation that the capabilities and architecture to be found in the new version would be disclosed. While Microsoft did reveal many of the new capabilities in "Communications Server 14", few if any of the underlying architectural changes and enhancements were discussed, Microsoft preferring to save these details for the Tech Ed conference, in June.

Well, June has come and just about gone, and Microsoft did indeed open the hood of Communications Server 14 (CS 14) allowing analysts, developers, and IT system managers to get a good look at what CS 14 has to offer. In this article I will share with you the key takeaways learned in three days of technical training at Microsoft Tech Ed.

What's in a Name?
Those familiar with Office Communications Server will note that the "Office" descriptor has been removed when Microsoft discusses the new product to be released under the Wave 14 development banner. Microsoft has not revealed what the name of the new product will be, but it seems clear that "Office" will not be part of the new branding. CS "14" is also a code name for the next version, and when Microsoft announces the new name later this year, it may be a totally different naming convention than we have grown accustomed to.

A Pretty New Face
Communicator in CS 14 has taken on a very different look and feel from previous versions. The multicolored gum balls are gone, replaced with photos and side bar presence indicators. Photos can be stored in AD and can be linked with SharePoint as “Default Corporate Picture”. You can also show a picture from a web address as well. A new contact card pops up when one hovers over a selected name, giving details about that person. This can either be a small card with basic details or an expanded card with full details.

Figure 1The new Communicator interface and an expanded contact card

One of the surprising features of this interface is a dial pad. Although there are zillions of other ways to place a phone call in CS 14, when one clicks on the telephone icon in the user interface, the more traditional dial pad appears. The dial pad was available in OCS 2007 R2, but you had to click around to get it to display.

According to Microsoft, customers asked for the larger, more in-your-face dial pad in Communicator because it helps users transition more easily from a dial-by-number to a presence-enabled-dial-by-name paradigm. It also sometimes makes Communicator easier to use when you are dialing numbers that are displayed as mnemonics (like 1-800-Starbucks) or when you have to enter conferences in which you must press the * or # keys. OCS 2007 R2 and CS 14 both allow a user to type a mnemonic into the Communicator dialing interface and Communicator dials the proper digits.

The CS 14 interface takes advantage of this dial pad by integrating a voice mail pane in the window frame. If a company uses Exchange Unified Messaging, voice messages display in the Communicator window, and clicking on the message brings up the voice mail message from Exchange, which is shows text translation as well as an interface to play the message.

Figure 2 Communicator's dial pad showing the integrated voicemail pane and voicemail player

This new interface no longer has the video button or a meeting button on the main contact screen. These functions can be accessed through drop-down menus, from a contact card, or from an instant messaging window.

Social Networking
The CS 14 Communicator has two features that support social networking...more or less. The first is called "Activity Feeds", which gives users the ability to type a short message about what they are doing or thinking. This message is displayed on anyone's Communicator interface that follows that person's presence status.

Figure 3 Activity Feeds showing what someone is doing or thinking

The second, and in my mind, more interesting capability, is a skills search. In addition to being able to search by name, CS 14 allows users to enter keywords or text and then search to find someone who has that keyword or text associated with their name and contact information. This capability is likely a response to competitive products, like Cisco Quad or IBM Connections, which have business social networking capabilities. The information one can search on must be stored in a profile located within SharePoint.

Figure 4 Skill or keyword search in CS 14

Each person can create a skills profile manually, or the SharePoint can help create it since SharePoint’s indexing engine can pull data from content that users put into shared workspaces, blogs, or Wikis. This is in some ways similar to Cisco's Pulse product, which can read emails, blog posts, shared workspaces, documents, and other communications as they traverse the network, creating the skills keyword index for each person automatically. As with most Microsoft products, expect continual improvement with subsequent versions.

It is interesting to see the tie-ins with SharePoint for both photos and social networking. Clearly, Microsoft is developing its products so that there are more synergies between them so that enterprises will seek to deploy the entire Microsoft messaging and collaboration stack.

Co-located Server Roles Mitigate Server Proliferation
One of the gripes in OCS 2007 R1/R2 was that many of the OCS server roles had to have their own physical server box to run on. This caused what should have been a relatively straightforward deployment to become complex due to server proliferation. Slides from my 2008 VoiceCon Orlando tutorial on OCS list 13 different roles!

In CS 14, consolidation of server roles has occurred so that most roles are co-located on the same front-end server. An important change is that the Mediation Server role has been re-architected so that it can be co-located with the other server roles on a front-end server.

Figure 5 CS 14 topologies and server roles

As shown in the figure above, there are still two topologies--Standard Edition for smaller deployments, and Enterprise Edition, with multiple front-end servers and backend SQL servers, for larger deployments. The front-end servers handle the communication and collaboration needs while the backend servers hold state information.

Note that the audio/video conferencing servers can be co-located on the front-end servers or they can be deployed on their own physical server, depending upon the audio/video conferencing volume an organization requires. Also, the mediation server can be co-located on a front-end server or separated, depending upon the demands placed on mediation server capabilities (more on this later).

Generally, Mediation can be collocated when connecting to a gateway, IP-PBX or IP Telephony Service provider which supports Media Bypass functionality. Scale isn't really an issue because if the device supports Bypass then media isn’t flowing through the Mediation service, and thus impact to the CPU is negligible. The only case where scale is an issue is if you DO collocate Mediation and the upstream infrastructure does not support bypass

Survivable Branch Appliance
A key element of a robust telephony solution is remote site survivability. In LCS and OCS R1/R2, if the WAN went down between a branch location and the headquarters location where the OCS pools are located, OCS's Enterprise Voice capability in the branch also went down.

Microsoft has overcome this issue through the Survivable Branch Appliance (this was announced at VoiceCon Orlando 2010). Essentially, a Survivable Branch Appliance (SBA) is a subset of CS 14 (the registrar and mediation service) running on a processor within a gateway at the branch office. The gateway vendors have only implemented the hardware on which this OCS image runs; the software comes entirely from Microsoft.

Table 1 Survivable Branch Appliance components, functionality, and vendor providers

SBAs provide a local failover solution so that voice calls can continue to be made even if the WAN fails. Calls between users in the branch still traverse the local LAN; calls to other company locations and external parties traverse the PSTN.

Figure 6 Survivable Branch Appliances enable remote survivability for CS 14 deployments

As illustrated in the figure above, for large branch office locations, an organization can choose to deploy a Standard Edition CS 14 server plus a separate gateway in lieu of a Survivable Branch Appliance.

Enhanced 911 and Location Services
Another capability most enterprises require of their telephony systems is support for E911. OCS 2007 did not support E911, and this is one of the reasons OCS's Enterprise Voice has not been widely deployed as a PBX replacement.

With CS 14, Microsoft has implemented E911 with two key design requirements in mind: 1) to provide location for emergency calls while 2) simultaneously supporting the roaming nature of Communicator users. To do this, a Location Information Server (LIS) has been added to CS 14's web components; the LIS server supports creation of a very detailed network map that includes ports, subnets, wireless access points, and the other elements required to definitively pinpoint a person's location. Once this map is created, location service becomes automatic.

When people travel, they also have the option of identifying their location. The first time someone is at a particular location, they must input that location; however, for frequently used locations, the locator service "learns", and remote location identification becomes automatic.

Figure 7 CS 14 now supports enhanced 911 with location services

Multiple Pools and Secondary Homing
Although OCS 2007 R1/R2 supported multiple pools, it is more prominent with CS 14. It turns out that companies need multiple pools for two reasons:

1. Some large global deployments were experiencing latency when the OCS deployment for the entire company was centralized.

2. Some companies need to create multiple OCS pools due to organizational boundary issues.

With CS 14, using multiple pools is no longer the exception, but an approved and recognized topology. Besides the benefit of better performance, deploying multiple pools in CS 14 allows an organization to specify primary and secondary pools for each user. This allows users who may be registered with a particular pool to automatically failover to another pool should the primary pool registrar fail.

Figure 8 Administrators can specify a primary and secondary registrar for each user, which aids in creating a resilient architecture

Also new in CS 14 is the ability to "drain" a particular front end server before taking the server down. Draining allows a server to gracefully be taken out of service by slowly removing all user connections and services to that particular server.

Pools can also be extended across a low latency WAN in a sort of a "Metro Pool" configuration. This is useful for resiliency and disaster recovery purposes. If front-end servers in one site go down, users are automatically serviced by servers located at the other site. The WAN latency in this case should be small--15 milliseconds was displayed on a slide, but it may be more or less; Microsoft is still doing some testing.

Figure 9 A CS 14 pool extended across two data centers

Call Admission Control
LCS and OCS R1 and R2 have often been maligned because they did not support call admission control. Microsoft responded by suggesting that its RT Audio and Video codecs could automatically adjust for low bandwidth situations and that call admission control was not needed.

In CS 14, Microsoft has introduced call admission control. Administrators can set voice and video bandwidth limits on a particular subnet or WAN segment, and bandwidth controls can also be set for individual users.

Mediation Server Changes: Bypass and 1-to-Many
The Mediation Server has undergone two fundamental changes that make OCS deployments easier. The first is called Mediation Server bypass. In CS 14, communications between a Communicator user (or a Communicator phone) can bypass the Mediation Server entirely if the Mediation Server does not need to be involved. This is a significant paradigm shift for Microsoft, which until now has been fairly dogmatic that voice had to traverse the Mediation Server because Microsoft's voice codecs were considered "better". Mediation Server bypass will be useful for those deployments in which there is a PBX or gateway and calls are egressing to the PSTN or the call is connected to an internal PBX which supports commonly used audio codecs. In these instances, the wideband audio capabilities of Microsoft's Real Time Audio codec are not available anyway since the other side of the call is on the PSTN or in the PBX, so it makes no sense to require the Mediation Server to transcode the audio stream. Communicator has other standard audio codecs natively built into its stack (i.e. G.711, G.722, etc.) to handle these situations. Call signaling will still traverse the Mediation Server, however.

The Mediation Server role can be collocated on a front-end server when an organization deploys a voice architecture that supports Media Bypass functionality. Scaling the co-located Mediation Server role in for this architecture is not an issue because only signaling, not media, traverse the Mediation Server. If an organization deploys an architecture which does not allow media bypass, then the Mediation Server role should be separated.

Figure 10 An example showing media bypass between a CS 14 endpoint and a PBX endpoint using the G.711 audio codec

Mediation Server bypass is not used when a leg of the call must traverse a corporate WAN with limited bandwidth. In this instance, Microsoft's RT Audio narrowband codec will be used between the Communicator endpoint and the Mediation Server, and the Mediation Server will transcode to 64-kbps G.711 going to and from the PSTN gateway. Determining which WAN segments use bypass and those that do not is configurable.

The Mediation Server is also required when a PSTN call is routed to a remote worker outside the NAT and Firewall. In this instance, the Mediation Server acts as an ICE (Interactive Connectivity Establishment) client to enable these media flows. The second major change made to the Mediation Server is that it no longer requires a 1-to-1 relationship between Mediation Servers and gateways. In OCS 2007 R1/R2, a separate Mediation Server was required for every deployed gateway. In CS 14, a single Mediation Server can support many gateways simultaneously. This cuts down significantly on server proliferation as well as the IT maintenance.

Figure 11 Mediation Servers in CS 14 support a 1:Many gateway topology whereas those in OCS 2007 R2 required a 1:1 topology

Virtualization
Microsoft announced that CS 14 will support virtualization of all server roles. This is a significant improvement from OCS 2007 R2 because Microsoft had indicated for R2 that only the non-real-time media capabilities could be virtualized. This new full virtualization capability enables organizations to further reduce the physical server count. CS 14 virtualization works with Microsoft's Hyper-V R2 (2008 is not supported) and VMware.

We are aware of a number of customers who have already virtualized OCS 2007 R2 with satisfactory results, but Microsoft's seal of approval on virtualization for both voice and video is a significant step forward.

Expect to See and Use More Silverlight
Thus far, Silverlight, Microsoft's web application framework similar to Adobe Flash, has not had great traction. In Wave 14, Microsoft is pushing hard to promote Silverlight.

For example, the collaboration features (i.e. white board, etc.) in Communicator 14 client have been built using Silverlight. The Communication Server Control Panel (discussed below) has been built using Silverlight. In addition, Microsoft has exposed a robust API for embedding communications capabilities into web pages and line of business applications using Silverlight.

Although web and application developers can still use the low level API capabilities in CS 14, Microsoft has assured that the easiest way to extend the Communicator 14 client or to create communications enabled business solutions is through use of Silverlight.

Audio, Web, and Video Conferencing
OCS R1/R2 was a little bit awkward in that the web conferencing capability was a separate client, bit-for-bit the same as the Live Meeting service. It required its own client, and the product felt like it was a standalone product not tightly integrated into the rest of the OCS usage paradigm.

With CS 14, Live Meeting has disappeared, but the functionality remains in a tightly integrated set of capabilities that include desktop and application sharing, PowerPoint presentations, whiteboard, and polling. There is no separate Live Meeting client required; as audio conferencing or web conferencing is added, a new pane is added for each capability and it all maintains the same look and feel as the Communicator interface. Microsoft has tested the front-end server up to 250 users simultaneously active with web conferencing, audio conferencing, and video collaboration; depending upon the processor and memory of the machine more than 250 users could connect and without performance degradation.

One artifact of tightly integrating the web conferencing into CS 14 and Communicator is that the RoundTable video conferencing device (now known as the Polycom CX5000) provides a panoramic view natively with Communicator whereas prior to CS 14, one could only get the panoramic view in a Live Meeting web conferencing session.

One may question whether OCS/CS 14's premises-based audio conferencing really works. After asking a number of end users at Tech Ed and some providers of hosted OCS services, I am inclined to believe that for many it really does work well. Most of the end users that I spoke with who had rolled out OCS to any degree indicated that they are transitioning to OCS's audio bridging capability. I think if the network is properly designed, the front-end or A/V servers are properly load balanced, and users take some precautions by using OCS-compliant headsets and laptops with enough processing power to continue compressing the voice even when another application starts up, then using OCS/CS 14 for audio conferencing may actually play pretty well. I am also aware of some who have tried OCS's audio conferencing, and it did not work well for them. The jury is still out on this capability.

With respect to video conferencing, Microsoft announced the availability of 720p video in OCS R2. What’s new in CS 14 is the ability for IT managers to control video bandwidth. The company is being more dogmatic with its video capability than its audio capability. Third parties who want to integrate their video solutions with CS 14 to exchange high definition video must implement Microsoft's RT Video codec. If they do not, then all a third party will get is CIF sized H.263 video.

Cloud-Based Services
Microsoft has stated that everything one sees in the premises-based version of CS 14 will ultimately appear in the cloud-based version offered by Microsoft Online Services. The timing has not been established for when CS 14 will show up in BPOS (Business Productivity Online Suite) services, but it will likely be at least 6 months to a year after CS 14 is released.

One speculation on my part is that voice will ultimately be available through network service providers who partner with Microsoft Online Services.

Microsoft has also made it clear that CS 14 will support hybrid deployments in which some elements in a communications deployment can be fully hosted while other elements can be premises-based. This makes it easier for companies to transition some commodity services, like SharePoint or Exchange, to the cloud while retaining CS 14 in its own data center.

Phasing Out CSTA/RCC with New Presence "Get" and "Put" Functions
Some customers use the CSTA interface in OCS 2007 R1/R2 which provides remote call control (RCC) and the ability to get telephone presence. RCC basically allows a user to control the desk phone using the Communicator interface; however, in many instances, the Communicator client does not or cannot act as a telephony endpoint itself.

CSTA and RCC are still supported in CS 14, but frankly, this is a cumbersome solution. Microsoft has not made an announcement, but I believe that CSTA will not be available in Wave 15. To provide the needed capability, Microsoft is implementing two new SIP presence functions: "get" and "put". This will allow CS to "get" the telephony presence from a PBX as well as allow the PBX to "put" the telephony status in CS 14. To do this, the PBX vendors will need to modify their SIP stack to handle these two new SIP message types.

Planning and Central Management
In OCS 2007 a number of the server roles resided on separate servers; maintaining and managing these various servers has often proven difficult. To help IT administrators more easily deploy and manage a CS 14 deployment, several very useful tools have been created:

1. A Planning Tool: this tool allows an administrator to put in basic information about the number of users, number of simultaneous conferences, whether to support remote users, branch offices, etc. The planning tool then builds a list of the CS 14 components required, including a list of all the servers the organization will need.

2. A Topology Builder: this tool takes information from the Planning Tool and helps the administrator create a CS 14 topology, identifying where each piece of hardware should go, the bandwidth required between WAN segments, etc.

3. A CS PowerShell: PowerShell has proven a very popular command line interface for both Exchange and SharePoint. CS 14 now has its own PowerShell command line interface.

4. The Communications Server Control Panel: a SilverLight web application that provides an interface to all of the configuration, routing, and policy rules in the deployment.

Figure 12 The new CS 14 Control Panel Interface

One of the challenges with OCS 2007 was that the Active Directory Schema had to be modified. In CS 14, a new Central Management Store has been created that contains all topology data, policies, and configuration information. This data all resides in a central management server, and one management server is deployed per pool (this is not a separate server). Changes to the configuration are automatically replicated to each server, even to those pesky edge servers that previously had to be configured individually. In addition, the central management server contains all of the telephone number translation and routing rules, which are also automatically pushed out to all Mediation Servers.

One of the signs of a maturing product is the availability of tools that make deployment, monitoring, and maintenance of that product easier. Microsoft has gone to great lengths to provide these types of tools for CS 14, which should greatly facilitate deployments.

Conclusion
This article explains some of the new capabilities and features found in Microsoft CS 14. There are too many improvements and new capabilities in CS 14 to mention them all here. What is clear is that Microsoft has made major strides toward improving Communications Server 14. Our research suggests that there is pent up demand for the Enterprise Voice capabilities CS 14 offers and that the market may be ready to finally consider CS 14 "good enough" as a telephony replacement solution. Data from a our UC survey last summer also suggest that Microsoft OCS and its successor, CS 14, will be the market leading UC environment.

Figure 13 End user preferences for specific unified communications environments (for larger view, click here

Our view of CS 14 in the market is that many of the companies with OCS 2007 R1/R2 trials will deploy CS 14 in a voice pilot during 2011. If CS 14 proves that it delivers a robust, resilient, easy to deploy and manageable voice-enabled UC solution, we believe that CS 14 will become a serious contender as an alternative to the PBX starting in 2012 and beyond, with the possibility of gaining significant market share.

About the Author
Brent Kelly is a senior analyst and partner at Wainhouse Research where he serves as a manager of the Unified Collaboration Practice.

If you would like to share your perspective about how your organization is deploying unified communications, please take the annual Wainhouse Research unified communications survey by clicking here.