TechNet Magazine > Home > Issues > 2008 > February >  Planning an Office Communication Server (OCS) V...
Office Communications Server
Plan Your OCS 2007 Voice Deployment
Jochen Kunert and Rui Maximo
 
At a Glance:
  • Telephony integration scenarios
  • Configuring Office Communications Server
  • Users, numbering plans, and routes

Microsoft Office Communications Server (OCS) 2007 is an enterprise product that integrates real-time communication media with user presence awareness, including Web conferencing
(sharing data, audio, and video), instant messaging, and audio/video conversations. Integrating OCS 2007 with an existing PBX system can be challenging. Office Communications Server 2007 is not designed to be a PBX because today's Information Workers use a variety of media communications—e-mail, instant messaging, telephone, and voicemail—in their daily workflow, while PBX systems deliver telephone calls only.
To provide the flexibility that administrators need to create the optimal individual or company telephony integration strategy, Office Communications Server 2007 provides three configuration scenarios for integration with existing telephony environments. These scenarios are: Remote Call Control, Enterprise Voice, and Enterprise Voice with PBX integration.
This article focuses on the planning considerations for a telephony deployment of OCS 2007, which may need to integrate with an existing telephony system. This information will be of particular interest to system architects and IT and Telephony administrators. In addition we will provide an overview of the other scenarios, but our focus will be on Office Communications Server 2007 Enterprise Voice.

Remote Call Control
In a Remote Call Control (RCC) scenario, users have an existing PBX, IP-PBX, or Time-Division Multiplexing (TDM) desk phone. From their Office Communicator 2007 client, they can place and answer calls on their desk phone without dialing the phone's dialpad or picking up the phone's headset. While users can control their desk phone using Office Communicator 2007, the audio is still handled by the PBX system and will not be converted to a Voice-over-IP (VoIP) call. Even though Office Communicator 2007 can control the desk phone, calls can still be placed and answered from the PBX phone, regardless of whether Office Communicator 2007 is running.
To enable RCC with Office Communicator 2007 and OCS 2007, you must deploy a Session Initiation Protocol (SIP)/Computer Supported Telephony Application (CSTA) gateway, in addition to enabling your Office Communications Server 2007 environment for RCC. The SIP/CSTA gateway must interoperate with the type of PBX system you use and must be compatible with OCS 2007 because it bridges the two systems. To control the PBX phone, Office Communicator 2007 uses the CSTA protocol. This protocol defines an XML Schema for interfacing with telephone switches (PBX), as described in the ECMA (European Computer Manufacturers Association) 269 standard, which you can find at www.ecma-international.org/publications/standards/Ecma-269.htm.
Office Communicator 2007 sends CSTA commands to control the PBX phone as SIP payloads that are routed by Office Communications Server 2007 to the SIP/CSTA gateway. Office Communications Server 2007 does not need to understand CSTA. It just needs to know how to route it. The SIP/CSTA gateway then converts the commands into the native protocol used by the PBX. This is illustrated in Figure 1.
Figure 1 RCC integration scenario (Click the image for a larger view)
Enabling RCC requires five steps. The first step is to configure the SIP/CSTA gateway to communicate with your PBX. Next, configure OCS 2007 to route CSTA requests to the SIP/CSTA gateway. The third step is to configure users for RCC. The fourth step is to configure Office Communicator 2007. The fifth step is to define the OCS 2007 normalization rules, which are also used for Address Book phone number normalization and different from the phone number normalization rules that are being used in combination with Enterprise Voice.

Enterprise Voice
When a user is enabled for Enterprise Voice, Office Communicator 2007 or Office Communicator Phone Edition becomes his primary phone, instead of his PBX phone. Office Communicator 2007 will have a unique phone number assigned to it. (For testing, the existing PBX phone can be forwarded to a new extension given to Office Communicator 2007.) Office Communicator 2007, in combination with a recommended USB audio device, will handle both the call control (or signaling) and the media (audio and video).
In this scenario, Office Communications Server 2007 routes calls among Office Communicator 2007 endpoints on the IP network (IP-IP calls) and routes calls to the public switched telephone network (PSTN)/PBX (IP-PSTN calls). OCS 2007 enforces dialing restrictions on calls routed to the PSTN.
To connect your Office Communications Server 2007 environment to a PBX or PSTN, you must deploy a media gateway, also referred to as a SIP/PSTN or IP/PSTN gateway. The media gateway must be paired with a Mediation server (a server role of OCS 2007) to connect to your Office Communications Server 2007 environment, as shown in Figure 2. The Mediation server and associated media gateway should be installed within the same physical location.
Figure 2 Enterprise Voice integration scenario with PSTN or an existing PBX (Click the image for a larger view)
The Mediation server makes it possible to connect media gateways that support standard, even unsecured SIP implementations with Office Communications Server 2007, as OCS 2007 allows only authenticated and encrypted communication. Another task of the Mediation server is to handle codec translations between the standard codecs (G.711, G.723, and so on) and the Microsoft real-time audio codec. For a list of media gateways that Office Communications Server 2007 supports, see Strategic Hardware Partners at technet.microsoft.com/bb735838.
You can connect the media gateways directly to the PSTN, or to a Primary Rate Interface (PRI) trunk connection of an existing PBX. Figure 2 shows possible integration scenarios for the Enterprise Voice scenario with the PSTN and an existing PBX. A Director (usually an Office Communications Server Standard Edition Server) is not required for an Enterprise Voice deployment. However, it is recommended.
Enabling Enterprise Voice requires four steps. The first step is to deploy and configure the media gateways. Because this is a Microsoft partner product, you should refer to the vendor's documentation, as each media gateway has different deployment steps.
Next, you deploy a Mediation server for every media gateway. In this step, you must configure one network card of the Mediation server to send and receive traffic from the media gateway and configure the other network card of the Mediation server to send and receive traffic from an Office Communications Server 2007 (typically a Director in an Enterprise Edition deployment). Unless your media gateway is an advanced gateway, it will need the assistance of an OCS 2007 Mediation server role to interoperate with your OCS 2007 Enterprise Voice infrastructure.
The third step is to define a numbering plan. This involves defining voice policies, phone routes, and location profiles.
Following that, you configure users for Enterprise Voice. In addition, users must be enabled for Enterprise Voice to be able to make and receive calls from the PBX or PSTN. This requires assigning unique phone numbers to each user.

Enterprise Voice with PBX Integration
This configuration is an extension of the Enterprise Voice configuration. The difference is that the user's PBX phone is synchronized to the user's Office Communicator client. The configuration is similar to the Enterprise Voice scenario connecting to the PSTN via a PBX, as shown in Figure 2. However, in this case, instead of replacing the user's PBX phone with an Office Communicator 2007 client, Office Communicator 2007 and the existing PBX phone will use the same phone number.
If a caller dials the user's extension from another PBX phone or from a PSTN phone, the PBX system will fork the call to the user's PBX phone and to the user's Office Communicator 2007 client through Office Communications Server 2007. The user's Office Communicator 2007 client and PBX phone will ring simultaneously when there is an incoming call. Conversely, Office Communications Server will fork calls initiated from OCS 2007 to the PBX through the media gateway. This scenario is not possible when using Office Communicator Phone Edition. This configuration requires that voicemail be handled by the PBX's voicemail system. Exchange Server 2007 Unified Messaging can be used as a voicemail solution if a dedicated SIP/PSTN Gateway for Exchange Server 2007 Unified Messaging is in place and connected to the PBX. OCS cannot route calls to Exchange Server 2007 Unified Messaging in the Enterprise Voice with PBX integration scenario. Some reduced functionality of Exchange Server 2007 Unified Messaging will also apply.
Enabling Enterprise Voice with PBX integration involves the same steps as deploying Enterprise Voice but with three additional steps. In the first additional step, the media gateway must be connected directly to the PBX. Then the PBX must be configured to support this scenario. (This may require a software upgrade of the PBX depending on your vendor.) Finally, users must be enabled for PBX integration.
Microsoft is working to provide support to connect the Mediation server directly to the IP PBX without the intermediary of a media gateway. Please visit technet.microsoft.com/bb735838 for the latest information regarding this topic.

Configuring Office Communications Server
Enterprise Voice functionality is handled by services running on Office Communications Server 2007 Enterprise Edition and Office Communications Server 2007 Standard Edition. Figure 3 describes the services that provide the Enterprise Voice functionality to route inbound and outbound calls

Service Description
Translation Service Applies normalization rules based on location profile or phone context.
User Services Performs reverse number lookup on target phone number.
Inbound Routing Component Applies target user's calling preferences.
Exchange Unified Messaging Forwards request to voicemail as needed.
Outbound Routing Component Determines optimal route based on URI and user policy.
   
Figure 4 illustrates how each of these components operates on incoming calls as they are routed by OCS 2007 for a PC-to-PC call. Incoming calls can originate from a connected endpoint such as Office Communicator 2007 or Office Communicator Phone Edition, or from a Mediation server coming from the PSTN/PBX (PSTN-SIP call). Outgoing calls originating from one of the caller's Office Communications Server 2007 client endpoints, such as Office Communicator 2007, are sent to the Standard Edition Server or Enterprise pool where the user is homed. This is referred to as the user's home pool.
Figure 4 Interaction of Enterprise Voice related services on OCS front-end servers (Click the image for a larger view)
At this point, Office Communications Server 2007 processes the call to determine where to route it. This next hop can be to either the called party's home pool, a Mediation server, or Microsoft® Exchange Server 2007 Unified Messaging (see Figure 5). If the call is routed to another home pool, OCS 2007 sends the call to all active endpoints of the called party. The called party's Office Communicator 2007 or Office Communicator Phone Edition will ring and a pop-up window notification will appear on the device.
Figure 5 Call routing (Click the image for a larger view)
If the call is routed to a Mediation server, the server is configured to route to a specific media gateway. If the media gateway is connected directly to a PBX, the call is then routed by the PBX to a desk phone or to the PSTN. However, if the media gateway is connected directly to the PSTN, the call goes out to the PSTN.
If the next hop is to Exchange Server 2007 Unified Messaging, the caller can leave a message. Voicemail is available regardless of whether the called party is signed in to Office Communications Server 2007.
When the called party answers, the audio is sent directly from the calling party's Office Communicator 2007 or Office Communicator Phone Edition to the called party's Office Communicator 2007 or Office Communicator Phone Edition in an IP-to-IP call. If the calling party is using a PBX or PSTN phone, the Mediation server sends the audio traffic directly to the called party's Office Communicator 2007 or Office Communicator Phone Edition in an IP-to-PSTN call. OCS 2007 handles call signaling only, which is why the audio and video goes directly between the endpoints and does not get routed by OCS 2007.

Configuring Users
Users enabled for Enterprise Voice must be assigned phone numbers that are unique within the organization. This configuration is accomplished in Active Directory®. This is different from most telephony systems where the phone is assigned the phone number. The benefit of this design is that users can turn any computer running Office Communicator 2007 into their work phone by signing on to OCS 2007 from the client. This portability feature can be appealing for telecommuters or field employees.
The user's phone number is specified in E.164 format in Active Directory. This format defines the international public telecommunication numbering plan, a numbering scheme to uniquely represent phone numbers unambiguously. The E.164 format specifies the phone number in this format:
+<country code><area code><phone number>
A user enabled for Enterprise Voice has two unique representations: a SIP URI and an E.164 phone number. When a phone number is dialed, Office Communications Server resolves the E.164 representation of the phone number (+14255551212) to the user's SIP URI (joe@contoso.com). Office Communications Server 2007 then routes the call based on the called party's SIP URI. If the phone number cannot be resolved to a SIP URI, OCS 2007 routes the call out to the PBX/PSTN through a Mediation server.
When you plan an Enterprise Voice deployment where every Office Communications Server user must be assigned a unique phone number, you need to take into consideration your existing telephony system. If you connect to the PSTN directly through a media gateway, you will likely have an entire number block 2- or 3-digit extensions, Direct-Inward-Dialing (DID) numbers that can be distributed to OCS 2007 users. If you connect to the PSTN via a PBX, you will likely have a block of DID numbers provided by the PBX to assign to OCS 2007 users.

Numbering Plans
Even though E.164-formatted phone numbers provide a unique representation, this is not a convenient way to dial numbers. It is also not possible to enter a number in this format in Office Communicator Phone Edition or standard PBX/PSTN phones. How do you specify a + character using the 10-digit dialpad? Users are accustomed to dialing shorter extensions, which may be unique in a specific location but perhaps not company-wide. Therefore, it is necessary to specify translation rules to convert them to E.164 format.
The administrator must define location profiles that specify normalization rules to perform these number translations. After the phone number is extended by the client (Office Communicator 2007 or Communicator Phone Edition) or the Translation Service of Office Communications Server 2007 into an E.164 format, the User Services can perform a reverse number lookup and match the E.164 number to a corresponding SIP URI. The normalization rules defined in a location profile use regular expressions to perform the translation if a match is found. For example, if 1234 is dialed, a normalization that matches any four-digit pattern to translate into +1425555{4-digit} would translate 1234 into +1425551234. Location profiles thus allow users to keep the same dialing habits they are accustomed to.
Administrators can assign location profiles to users in the following three ways:
  • Define the location profile to users using Office Communicator 2007 through Group Policy.
  • Allow users to select a location profile from Office Communicator Phone Edition.
  • Assign a location profile to the home pool. Users homed on that pool will automatically be assigned that location profile.
Defining a numbering plan involves creating Voice policies, phone routes, and location profiles with normalization rules. The Voice policies define the type of call access users are allowed. Office Communications Server 2007 determines how to route calls to the PBX/PSTN by means of phone routes. Because phone numbers can be dialed in a multitude of ways, the normalization rules of a location profile define how to convert the dialed phone number into E.164 format, which can then be routed.
Every user enabled for Enterprise Voice is associated by the administrator to a Voice policy. A Voice policy defines the call privileges assigned to a user. The call privileges determine which routes the user is allowed to use and therefore which numbers the user is allowed to dial. Each user must be associated to a single Voice policy. The number of policies available is created by the administrator.
Each Voice policy contains a setting to allow or disallow users to enable simultaneous ringing and an ordered list of phone usages. The Voice policy, similar to the Meeting policy, is a logical container of settings defined as an XML document stored in Active Directory. The value of this design is that it can be extended in future versions of OCS 2007 to support additional policy settings, without requiring an Active Directory schema extension. For example, if a Voice policy is not associated with any phone usages, this has the effect of preventing users assigned to that policy from placing any outbound calls to the PBX/PSTN. Such users would only be able to place IP-IP calls.

Phone Usage and Routes
A phone usage defines the phone routing privileges users are allowed. A phone usage is a collection of phone routes. It is a string that must be a unique keyword, meaning no other phone usage can have the same name. The administrators can create as many usages as they wish.
Although a Voice policy could be directly associated with a route or a set of routes, instead of phone usages, the phone usage keyword is an abstraction to maintain the association between policies and routes. If policies were directly associated to routes, effectively removing the concept of phone usages, and the administrator modified the name of a route, then every policy associated with that route would need to be updated. By using a phone usage, which is an attribute of both a policy and a route to create the association between policy and route, the relationship between policy and route is preserved even if the route's name is changed.
A route contains a phone number pattern and a list of Mediation servers connected to media gateways. A route must be assigned to at least one phone usage. This association between the pattern and gateways specifies how to route phone numbers that match that particular pattern.
The pattern specifies a range of phone numbers that it can match. It is defined as a regular expression that can include and exclude phone numbers. The Enterprise Voice Route Helper tool is included to help build these regular expressions more easily. As a result, if the phone number that is dialed matches the route's regular expression pattern, then the call is routed to one of the gateways defined in the route.
More than one Mediation server (and therefore media gateway) can be listed in a single route. Office Communications Server 2007 routes call to the Mediation servers in a round-robin fashion as a way to balance the traffic across the gateways. If a gateway fails or is taken out of service for maintenance, the corresponding Mediation server will send back a response to Office Communications Server 2007, which will immediately attempt to route the call to another Mediation server (and therefore a different media gateway) in the route's list.
After 10 attempts to route calls to a failed media gateway, Office Communications Server 2007 will subsequently scale down traffic to that media gateway until it becomes responsive again. If the media gateway continues to fail to respond after an additional 10 attempts, Office Communications Server 2007 will stop routing calls to that media gateway until it becomes responsive.
The list of media gateways defined in the phone route is described by the gateway's fully qualified domain name and port number. If the phone number does not match the regular expression pattern, then the next route associated with the phone usage assigned to the user is checked until a match is found. If no match is found, the call cannot be routed and fails to reach its destination. The user receives a notification that the call could not be completed.

Next Steps
Office Communications Server 2007 provides three levels of telephony integration. When planning your telephony deployment, you need to determine which level best meets your current and future telephony business needs. After this is determined, you can plan your deployment. An important aspect of your planning is defining a numbering plan for your Office Communications Server Enterprise Voice deployment. This should be carefully considered.
See the "Additional OCS 2007 Resources" sidebar for more about Office Communications Server 2007 Enterprise Voice and related technologies.

Jochen Kunert has 10 years of experience in the telecommunications industry and is now working as a Senior Program Manager in the Office Communications Group at Microsoft. He is a coauthor of the soon-to-be-released book, Microsoft Office Communications Server 2007 Resource Kit. Jochen can be reached at jkunert@microsoft.com.
Rui Maximo is a 14-year veteran of the IT industry and coauthor of two books, Pro LCS: Live Communications Server Administration and Microsoft Office Communications Server 2007 Resource Kit. Rui can be reached at ruim@ruimaximo.com.
© 2008 Microsoft Corporation and CMP Media, LLC. All rights reserved; reproduction in part or in whole without permission is prohibited.
Page view tracker