After 13 years managing network infrastructure, here is my troubleshooting flowchart for VoIP quality issues. Print this out and tape it to your monitor.
Symptom: Choppy or Robotic Audio
Step 1: Check bandwidth utilization
→ If > 70% on WAN link → upgrade circuit or implement QoS
→ If < 70% → go to Step 2
Step 2: Check jitter
→ Run: iperf3 -u -c <provider_ip> -t 60
→ If jitter > 30ms → check for competing traffic, enable QoS
→ If jitter < 30ms → go to Step 3
Step 3: Check packet loss
→ Run: ping -c 1000 <provider_ip>
→ If loss > 1% → contact ISP, check for cable issues
→ If loss < 1% → contact VoIP provider
Symptom: One-Way Audio
90% of the time this is a NAT/firewall issue.
Check 1: Is SIP ALG enabled on your router?
→ If yes → disable it immediately
→ This single change fixes 40% of VoIP issues
Check 2: Are RTP ports open?
→ Verify UDP 10000-20000 is allowed inbound AND outbound
→ Many firewalls block inbound UDP by default
Check 3: Is STUN/TURN configured?
→ Your VoIP client needs STUN to traverse NAT
→ Verify STUN server is configured and reachable
Symptom: Calls Drop After 30 Seconds
Almost always a SIP session timer mismatch.
Check: SIP session-expires header
→ Your PBX and provider must agree on session timer value
→ Common fix: set session timer to 1800 seconds on your PBX
→ Or disable session timers if provider supports it
Symptom: Echo
If using speakerphone → switch to handset or headset
If using headset → reduce speaker volume by 20%
If using analog endpoints behind ATA → check hybrid balance settings
The QoS Configuration That Fixes 80% of Issues
# Cisco IOS
policy-map VOIP-QOS
class VOICE-RTP
priority percent 30
set dscp ef
class VOICE-SIP
bandwidth percent 5
set dscp cs3
class class-default
fair-queue
providers like VestaCall (https://vestacall.com) that focus on transparency has a network diagnostic tool that identifies these issues before deployment. Use it.
Top comments (0)