Blog Categories

Subscribe to RSS feed


OCS and Virtualization

Let’s say that you are going to deploy OCS for a 50 person organization with the following requirements:

  1. Internal and external IM (like PIC or federation)
  2. Integration to your PBX
  3. Archiving
  4. Internal and external LiveMeeting / voice conferencing / audio conferencing

To meet these requirements, you need, at a minimum

  1. OCS Standard Edition Server
  2. OCS Mediation server
  3. OCS archiving server
  4. OCS edge server

Now let’s face it: 4 servers for 50 people is a decent amount of hardware. If you want to do communicator web access, quality of experience, or other components, you need separate servers for each. This total can really add up, especially for 50 users.

So inevitably, the question of virtualization comes up. What can I virtualize, what should be physical? Can I install the OCS edge server on the same box as Exchange? Can I install OCS standard on the same box as Exchange MBX server? VMware, Hypervisor, Virtual Server?

Here’s my take on it: If you want to be supported by MS and want to be assured of excellent performance, don’t ever virtualize or co-locate.

Why Virtualization is Bad with Voice

The main thing about OCS and virtualization is that any application that is very time sensitive – voice and video speficically – don’t lend themselves to virtualization. Ever. Voice and video need to monopolize memory and voice on-demand and this just isn’t virtualization’s strong suit. While the virtual server figures out how to shift resources to meet the voice application’s demands, you lose precious milliseconds. This leads to choppy voice quality or bad video.

It’s not just MS… Cisco has never supported virtualization for any of its voice and video servers. As far as I know, neither has Avaya or Nortel. You pretty much need all the memory and processing power at your disposal at all times to handle voice and video traffic.

I’ve tested this out with OCS Mediation server. The performance was really really bad, even with just 1 voice call going. There were ½ second delays in conversation and it was really noticeable and irritating. The minute that I moved Mediation back to a physical all of the complaints about voice quality went away. I was really surprised by how negatively impacted the voice quality was.

And if you look at OCS architecture, the front-end server needs to handle voice and video traffic (when you have the A/V conferencing co-located). So this doesn’t lend itself well to virtualization. The edge server is in the same boat: if you are doing external A/V, the edge server is going to process that data stream. It doesn’t work well for the Edge to be virtualized either.

So bottom line: for any roles that handle voice traffic, virtualization should be avoided at all costs. Some roles don’t touch voice or video and in those cases you may be able to get OK performance out of a VM.

One angle that I do like is to start out with a virtual for a role, test the functionality and make sure you like what you see. Then when you have the hardware available, migrate to a physical.

Below are my recommendations if you are thinking of a way to consolidate servers.

Virtualization Platform

MS Virtual Server – OK performance

VMWare – OK performance

Hypervisor – I’ve heard that it’s better than MS Virtual Server, but it’s not really been released yet.

MS Virtual PC – lab only

Virtualization and Co-Location



Co-locate with other apps?


Standard / Front End



Horrible performance for voice calls. If you are just doing IM for < 100 users, you could probably get away with it. But beware.

Mediation Server


Not a great idea, but you can get away with it for testing purposes

Horrible performance for voice calls – even 1 call will sound bad. Consider using a gateway with Mediation server integrated.

Edge Server

Almost Never


Horrible performance for voice and video with external parties. Only if you are doing IM could you really get away with it. But even then, I wouldn’t do it.

Archiving Server

Just for testing

For IM/call volume low-volume scenarios

This server gets really busy when it’s logging all IM and voice calls. For any environments with forced archiving, this should be its own physical server




I’ve had no trouble co-locating and virtualizing. If it’s absolutely mission critical, I wouldn’t do it.




You need IIS for this – I haven’t had issues co-locating or virtualizing. Maybe a bad idea if you have lots of CWA users.

Update Server



The sharepoint server required for updating Tanjay and Roundtable. This thing doesn’t have to work real hard.

Leave a Reply