Pages

Sunday, May 30, 2010

Don't run a voip server on a virtual host

On GNU/Linux with KVM/qemu virtualization do the following:
  • Run an Active Directory (AD) vmguest for 50 people or less (samba4 or something else);
  • Run everything actually on a vmguest...;
Except for mission-critical services you want to guarantee low-latency transmission of data... like voip. You run on bare-fucking metal. Oh and make  backups of the configurations. Start there and everything will fall into place.

After weeks of trying to eliminate parameters that may contribute to the latency of voip services in our network, I have to face up to the music.

It's not the 60Mbits/s down or the 6Mbits/s up connection; it's not the traffic control (linux); it's not the internal saturation of our gigabit switches; it's not the voip telephones; it's not the voip-carrier (external server); the bottleneck is the vmguest being housed with another bunch of other vmguests on the same vmhost.

This is quite easy to check, just start pinging your voip vmguest, when the voip connection seems stuttery, flaky or whenever you suspect udp packets are being dropped randomly. You'll get extremely long ping times or even negative ping times.

The vmhost is being hammered at rushhour, peak-time; so all the critical vmguests are being hammered. I think I knew this somewhere; but I buried it.

I learned my lesson. Always be brutally honest to yourself, about technical matters.

Update 05-01-2011:

3CX is shite. Go with asterix. Make sure you have a secondary outgoing line for voip. If your voip provider works with 3cx, run away for dear life.

No comments:

Post a Comment

Please help to keep this blog clean. Don't litter with spam.