Take the 2-minute tour ×
Super User is a question and answer site for computer enthusiasts and power users. It's 100% free, no registration required.
  • PFSense 1.2.2
  • Cisco IP Phone 7940 (SIP Firmware - G711ulaw)
  • ADSL 6000/768
  • Asterisk

Hi Guys,

I'm having trouble maintaining stable outbound VOIP call quality from my home office. Inbound call quality (what I hear) is fine however outbound call quality (what the other person hears) seems "choppy".

My network topology / flow at home is:

Cisco 7940 IP Phone >> Buffalo AirStation Wireless G Bridge >> DLINK DIR-625 Wireless Router (functioning purely as a WAP) >> PFSense 1.2.2 Box >> Speedstream ADSL Modem.

My pfsense box is configured to use a priority queue for any traffic going to/from my VOIP Proxy at work. I can see that it is being used during my test calls. I've also confirmed that firewall ports are allowing traffic from the respective voip proxy.

The issue seems to occur regardless of how much traffic exists...

So far, I've tried:

  • Checking for faulty cabling / replacing cabling.
  • Reviewing router for misconfiguration (still could be something here)
  • Plugging phone directly into switch connected to router (essentially taking wireless out of the picture).
  • Trying a softphone

The problem persists... so I'm inclined to suspect that there's some packet loss or issues with outbound traffic. Not sure how to proceed at this point. I'm considering plugging the phone directly into the DSL modem to see if call quality is any better (essentially removing pfsense and other traffic out of the picture) Any advice?

share|improve this question
add comment

5 Answers

up vote 2 down vote accepted

The issue seems to occur regardless of how much traffic exists.

keep in mind that bandwidth is not as crucial a factor for VoIP quality as latency or RTT (round-trip time, commonly known as 'Ping'), the time in milliseconds for a "ping" packet to travel from your computer to the site and back again.

share|improve this answer
2  
He's optimizing everything up to the point where the packets leave his house. What is happening after that? –  Darren Hall Dec 8 '09 at 23:27
2  
after that he's at the mercy of the ISP and their infrastructure, not much he can do. –  Molly7244 Dec 8 '09 at 23:49
    
Thanks Molly. I think I've finally concluded that it's something occurring on server-side. I tried using my softphone from my laptop with a verizon aircard and got the same exact behavior. Ping latency against the asterisk server is sporadic (no matter where I perform the ping test from). The server admin is looking into it. Thanks so much for your help. –  Mike B Dec 9 '09 at 19:24
    
you're most welcome, and good luck. :) –  Molly7244 Dec 9 '09 at 19:29
add comment

Ok, so here is a rundown on VoIP. VoIP uses UDP for its audio stream, meaning that there is no checking to see that packets are in the correct order or even there at all, so whatever happens to arrive in whatever order is what you hear.

Common issues with voip call quality:

Latency - high latency will often cause a delay in audio. Jumps in latency, otherwise known as jitter, will cause choppiness and issues where latter parts of the audio stream may arrive before the former parts.

Packet loss - mild packet loss (~5% and under) will just cause some small distortions in the audio. If it consistent, and not just caused from a few random utilization spikes, it will appear as choppy audio. When it gets bad, if the packet loss is in spurts, it will cause large periods of no audio or if it is just a few packets at a time consistently, it will have constant small breaks in the audio stream which will sound sorta like the other side is underwater.

When testing for latency or packet loss there are two important destinations to test to. First test to your ISP's primary DNS server, that will test your last mile for problems. Second, test to your VoIP provider's Session Border Controllers (SBCs).

ALG, SPI, Intrusion Detection - These are firewall settings that will cause random one-way or no-way audio issues as they will step in when they see something they deem as "not safe" or "malshaped" and either block or adjust the packet. This is devastating to voip. You may also see random dropped calls, either because certain signaling is not making it out and after a while when the voice servers do not receive an ACK, they drop the call, or the call will drop at 10, 20, 30 etc minutes due to ALG settings.

When checking for these settings, you will need to check your own router, your ISP's device (unless it is bridged) and your ISP's network.

NAT Traversal - Port triggering or incorrect port forwarding can cause signaling problems that will prevent a phone from registering correctly, pulling a remote config or re-registering at times. This can lead to the phone either losing connectivity after being restarted or just losing connectivity at random times throughout the day.

These will be settings in your own router and possibly your ISP's device if it is not bridged.

Now for the important part.
It does not matter how you build QoS on your network. This said, you can prioritize the packets all you want on your network and will affect only your network. In most voip setups you are then sending out all those packets along with your data on the exact same route with no prioritization for the last mile. Once you reach your ISP and all the packets are routed to wherever they are going, the voice packets are going over other networks until they hit your voice provider's SBC or reach the other end, again with no prioritization. Basically, unless your ISP and your voice provider are one in the same and they incorporate QoS for voice prioritization, you are at the mercy of their networks for how your voice is handled once it leaves your router. You can check all the issues I listed above to your heart's content, but it will not solve all your quality issues, just the most common ones.

share|improve this answer
add comment

You can start by making a network trace of the VoIP traffic (with tcpdump or Wireshark). Wireshark then can process the trace and compute the jitter buffer or abnormal delay in media traffic (Check the Analysis menu). If you repeat this operation at several points, you may find what the problem is.

share|improve this answer
    
Good to know! I didn't see a related feature in the Analysis menu... is this something new? –  Mike B Dec 9 '09 at 19:25
add comment

I'd ditch the WiFi as it's a source of latency. I'd also ditch the 3 separate boxes for a combined WiFi VOIP ADSL modem router (something like a Billion 74XX-VGX-M), and investigate getting something with decent QoS (Quality of Service), as it could well be that your broadband traffic is impinging on your voip call quality.

have you tried disabling everything (turn off computers) except the voip phone? is your quality still choppy? if so, it's not network interference. as Molly said, bandwidth is not as crucial a factor, but if a program or operation is saturating your connection, the call quality will suffer.

share|improve this answer
    
It's still choppy after I ensure that everything is off. Called the ISP and they confirmed that the line is healthy with no errors. –  Mike B Dec 9 '09 at 19:25
add comment

I get my answers especially those hard ones over dslreports.com.

DSL Reports forum section has the most competent users when it comes to voip and internet knowledge. Some of the posters their are VoIP providers owner themselves helping everyone, mostly not their customers.

share|improve this answer
add comment

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.