Skip to content
Dialer & Setup

QoS Configuration for Outbound Call Centers: DSCP, Queuing, and Traffic Shaping in Practice

Quality of Service is the difference between a VoIP floor that sounds like a broadcast studio and one that sounds like a walkie-talkie in a tunnel. Here is how to configure it correctly.

What QoS Actually Does

QoS does not add bandwidth. It reorders packet delivery so that voice frames jump the queue ahead of a software update, a CRM sync, or a sales rep watching a training video. On a shared WAN link, uncontrolled bulk traffic creates microsecond bursts that shatter VoIP playout buffers and produce clipping.

A well-configured QoS policy on a 50 Mbps link will deliver better voice quality than no QoS on a 200 Mbps link, because it eliminates the queue depth spikes that cause jitter. The network requirements for VoIP outbound calling cover the physical prerequisites; this guide covers the policy layer.

DSCP Marking: The Foundation

Differentiated Services Code Point is a 6-bit field in the IP header. Routers and switches read it to decide which queue a packet enters. For VoIP:

  • RTP media streams: DSCP EF (101110 binary = decimal 46). EF guarantees low-latency forwarding on every hop that honors DSCP.
  • SIP signaling: DSCP CS3 (011000 binary = decimal 24). Less time-sensitive than media, but still prioritized above best-effort.
  • Everything else: Default PHB (000000 = 0).

Mark at the source. On a Cisco router running CUBE or on a dedicated SBC (AudioCodes, Ribbon, Sangoma), configure DSCP marking in the dial-peer or media profile. On an Asterisk/FreeSWITCH host, set the TOS bit via the SIP channel driver:

``ini ; FreeSWITCH sofia profile <param name="sip-ip-tos" value="24"/> <param name="rtp-ip-tos" value="46"/> ``

On Linux softphone hosts, use iptables or nftables to mark outbound UDP on port range 16384–32768 (RTP) with DSCP 46.

Queue Architecture: LLQ and CBWFQ

Low-Latency Queuing combines a strict-priority queue for voice with class-based weighted fair queuing for everything else. The strict-priority queue drains completely before other queues receive service — this eliminates jitter from head-of-line blocking.

Example Cisco IOS-XE policy for a 50 Mbps WAN uplink:

`` class-map match-all VOICE-MEDIA match dscp ef class-map match-all SIP-SIGNALING match dscp cs3 class-map match-all BUSINESS-DATA match dscp cs1 policy-map WAN-EGRESS class VOICE-MEDIA priority percent 30 class SIP-SIGNALING bandwidth percent 5 class BUSINESS-DATA bandwidth percent 20 class class-default fair-queue bandwidth percent 45 interface GigabitEthernet0/0.100 service-policy output WAN-EGRESS ``

At 50 Mbps, 30% for voice gives 15 Mbps — enough for 172 simultaneous G.711 channels. If your floor runs G.729, 5% (2.5 Mbps) covers 78 channels. Adjust the percentages to match your actual seat count and dial ratio. For bandwidth sizing, see the bandwidth planning guide.

Trust Boundaries and Switch-Level Enforcement

QoS policy applied only on the router edge is incomplete. Inside the LAN, layer-2 switches also queue frames. Configure 802.1p CoS (Class of Service) on all trunk ports connecting switches to the router, and map CoS 5 to DSCP EF at the edge. On access ports facing agent workstations or headsets, do not trust CoS markings from end-user devices — re-mark to default and let the SBC or softphone set DSCP instead.

On a Cisco Catalyst, enable DSCP trust on the uplink port to the SBC only:

`` interface GigabitEthernet1/0/48 mls qos trust dscp ``

On all agent-facing access ports:

`` interface range GigabitEthernet1/0/1 - 40 mls qos cos 0 no mls qos trust ``

WAN Provider DSCP Passthrough

Many ISPs strip or remark DSCP fields at the access handoff. Before deploying QoS, verify passthrough with a test: send a hping3 packet with TOS 184 (decimal for DSCP 46) from your router to a public endpoint, then capture on the far side and inspect the TOS byte.

If your ISP strips DSCP, negotiate an explicit DSCP passthrough SLA or configure an MPLS VPN where CoS is enforced within the provider network. Broadband internet — cable, DSL, or consumer fiber — rarely honors DSCP end-to-end. For outbound call centers running more than 30 seats, a dedicated Ethernet circuit with an explicit QoS SLA is strongly recommended.

Monitoring QoS Effectiveness

After deploying policies, verify they are working:

  1. Check queue drops: show policy-map interface <if> on Cisco. Voice queue drops must be zero.
  2. Run a sustained iperf3 bulk transfer and simultaneously place a test call. Measure MOS degradation with a SIP probe or call quality tool.
  3. Monitor jitter and packet loss continuously using RTCP-XR reports from your SBC or a network probe like PRTG or LibreNMS.

UnlimCall's network edge reports RTCP statistics per call leg. Use these to baseline before and after QoS changes.

Takeaways

QoS is a policy overlay, not a bandwidth substitute. Mark RTP with DSCP EF at the source SBC. Use LLQ with a strict-priority queue capped at your expected VoIP bandwidth. Enforce trust boundaries at the access layer. Verify your ISP passes DSCP markings. Monitor queue drops and RTCP metrics after every configuration change. A correctly configured 50 Mbps link outperforms an unmanaged 500 Mbps link every time.

Seats Waiting on a Properly Tuned Network

Once your QoS policy is validated, provision seats at UnlimCall's flat-rate pricing starting at $99/seat/month for US/CA. No per-minute overages mean your QoS-protected bandwidth budget stays entirely predictable. Review the custom SIP integration guide for codec and signaling configuration next.