The documentation set for this product strives to use bias-free language. For the purposes of this documentation set, bias-free is defined as language that does not imply discrimination based on age, disability, gender, racial identity, ethnic identity, sexual orientation, socioeconomic status, and intersectionality. Exceptions may be present in the documentation due to language that is hardcoded in the user interfaces of the product software, language used based on RFP documentation, or language that is used by a referenced third-party product. Learn more about how Cisco is using Inclusive Language.
The Voice Quality Monitoring (VQM) feature uses Flexible NetFlow to export voice quality metrics related to media (voice) quality, such as conversational mean opinion score (MOS), packet loss rate, and so on. VQM enables you to monitor the quality of calls traversing your VoIP network, and you can diagnose the cause of voice quality issues and troubleshoot them.
Your software release may not support all the features documented in this module. For the latest caveats and feature information, see Bug Search Tool and the release notes for your platform and software release. To find information about the features documented in this module, and to see a list of the releases in which each feature is supported, see the feature information table.
Use Cisco Feature Navigator to find information about platform support and Cisco software image support. To access Cisco Feature Navigator, go to www.cisco.com/go/cfn. An account on Cisco.com is not required.
The aqm-register-fnf command must be configured before you use the media monitoring command to configure voice quality metrics.
The VQM (Voice Quality Monitor) uses Flexible NetFlow to export voice quality metrics measured by the media monitoring command. To help the NetFlow collector to process the flow record, VQM also reports call-related information such as calling number, called number, call setup time, and so on. The Voice Quality Metrics enables statistics gathering on packet arrival (late/lost/early). From these statistics, a voice quality measurement is developed to show the quality of the call. The output is in a simple format, using a system of good, poor, and bad types of ratings.
The following are the five metrics added to Call Detail Record (CDR) and Management Information Base (MIB) in NanoCUBE, indicating voice quality:
MOSQe (conversational quality MOS)
Round-trip-delay.
Receive-delay (current jitter buffer size).
Packet-Loss-Rate.
Out-of-Order-Rate.
The CDR is sent at the end of a call if AAA accounting is configured.
A CDR example is as follows:
<MOS-Con>4.4072</MOS-Con>
<round-trip-delay>1 ms</round-trip-delay>
<receive-delay>64 ms</receive-delay>
<voice-quality-total-packet-loss>0.0000 %</ voice-quality-total-packet-loss>
<voice-quality-out-of-order>0.0000 %</ voice-quality-out-of-order>
The following are the metrics exported by VQM:
NanoCube IOS VQM, Voice/Audio Quality Metric |
Description |
GwReceivedCalledNumber | The directory number portion of To URI from the Session Initiation Protocol (SIP) signaling or the extension receiving the call. |
GwReceivedCallingNumber | The directory number portion of From URI from the SIP signaling or the extension originating the call. |
SetupTime | The time at which monitoring began on this RTP stream. |
CallDuration | The time (in milliseconds) from when monitoring began on this RTP stream until the reception of the last RTP packet on this stream. |
DspRXBadPkt | The total number of packets determined by the simulated jitter buffer to be having bad protocols and that need to be dropped. |
DspRXOutSeq | The total number of packets that arrive at the jitter buffer out of sequence. |
DspConf CodecID | The last voice coder-decoder (CODEC) detected in this RTP stream. Note that an endpoint may change the voice CODEC mid-stream. |
DspPlayDelay Cur | The current jitter buffer delay in milliseconds. In the case of an RTP stream in the call history, the last jitter buffer delay (does not apply to a fixed jitter buffer configuration). |
DspPlayDelayMin | The minimum jitter buffer delay in milliseconds (does not apply to a fixed jitter buffer configuration) |
DspPlayDelayMax | The maximum jitter buffer delay in milliseconds (does not apply to a fixed jitter buffer configuration). |
rfc3550JitterMeanMilliseconds | The packet-to-packet delay variation (jitter) in milliseconds, as defined in RFC 3550. |
ProtocolCallId | The SIP call ID read-only by the SIP proxy. This value may be unknown if using the B2BUA or if call signaling is not being monitored. |
GlobalCallId | Internally generated ID identifying this call. |
DspDely RT | The instantaneous round-trip delay. This may be obtained from RTCP XR or SR reports; or if no reports are available, from an average of ICMP echo or timestamp requests sent to both endpoints. If no report information is available and round-trip delay cannot be determined from ICMP (example, a firewall in the path did not allow the traffic), this statistic will be reported as unavailable. |
DspDelyED | The instantaneous one-way delay, including any delay that can be introduced by the jitter buffer and codec processing. |
DspRFactrR1 | The listening quality R factor. Listening quality indicates the perceived quality of the transmission for a user not actively involved in the conversation, but passively listening. Listening quality does not consider delay or recency. Some users may prefer R-factor measurements to MOS scores, because MOS scales may differ based on the CODEC type and region of deployment, whereas R factor measurements are consistent across CODECs and regions. |
DspRFactrR2 | The conversational quality R factor. Conversational quality indicates the impact of the quality of the transmission on the dynamics of conversational exchanges between two parties; such metrics take into account delay, echo, and recency. For example, for a link with a large delay, participants in a conversation might frequently find themselves interrupting each other and talking over each other, since one party will be unable to perceive when the other party has started talking. Some users may prefer R factor measurements to MOS, since MOS scales may differ based on the CODEC type and region of deployment, whereas R factor measurements are consistent across CODECs and regions. |
DspRFactrMosConv | The conversational quality MOS. Conversational quality indicates the impact of the quality of the transmission on the dynamics of conversational exchanges between two parties; such metrics take into account delay, echo, and recency. For example, for a link with a large delay, participants in a conversation might frequently find themselves interrupting each other and talking over each other, since one party will be unable to perceive when the other party has started talking. |
DspRFactrMosLisn | The listening quality MOS. Listening quality indicates the perceived quality of the transmission for a user not actively involved in the conversation, but passively listening. Listening quality does not consider delay or recency. |
DspCealRatioAV | Average of Concealment Ratio reports since the start of a call. |
DspConfJtrTyp | The configured jitter buffer type for this RTP stream, either adaptive or fixed. An adaptive jitter buffer dynamically varies the delay from packet reception to packet playback; a fixed jitter buffer uses the same delay for each packet. This is a jitter buffer; no packets are actually being discarded. |
DspConfJtrMin | The minimum delay that will be applied to packets received when using an adaptive jitter buffer. |
DspConfJtrInit | The value that represents the initial delay that will be applied to received packets when using an adaptive jitter buffer. When using a fixed jitter buffer, this represents the delay that will be applied to each packet when it is received. |
DspConfJtrMax | The value that represents an upper bound on the delay that will be applied to received packets when using an adaptive jitter buffer. When using a fixed jitter buffer, this metric represents the maximum number of packets that can be inserted into the buffer. (Subsequently, inserted packets will be discarded.) |
DspRXEarlPkt | The total number of packets for this RTP stream arriving early (prior to the anticipated packet arrival). Each packet is classified as either late or early with the exception of the first packet that is treated as a reference packet. |
DspRXLatPkt | The total number of packets for this RTP stream arriving late (after the anticipated packet arrival). Each packet is classified as either late or early with the exception of the first packet that is treated as a reference packet. |
DspPktBfrOvr | The total number of packets discarded by the jitter buffer due to jitter buffer overrun. |
DspPktCealCount | The total number of packets discarded by the jitter buffer due to jitter buffer underrun. |
The aqm-register-fnf command must be configured at the global configuration mode to export the audio and video call quality metrics to flow record using Flexible NetFlow collector.
1.
enable
2.
configure terminal
3.
voice service voip
4.
media monitoring
max-calls
5.
exit
6.
dial-peer voice
tag
voip
7.
media monitoring
max-calls
1.
enable
2.
configure terminal
3.
voice service voip
4.
media statistics
5.
end
Command or Action | Purpose | |
---|---|---|
Step 1 |
enable
Example: Device> enable |
Enables privileged EXEC mode. |
Step 2 | configure terminal
Example: Device# configure terminal |
Enters global configuration mode. |
Step 3 | voice service voip
Example: Device(config)# voice service voip |
Enters voice service VoIP configuration mode. |
Step 4 | media statistics
Example: Device(conf-voi-serv)# media statistics |
Enables media statistics to estimate the values of packet loss, jitter, and Round Trip Time (RTT) statistics. |
Step 5 | end
Example: Device(conf-voi-serv)# end |
Returns to privileged EXEC mode. |
Perform this task to verify the configuration for voice quality monitoring. The show commands can be entered in any order.
1.
enable
2.
show voip rtp connections
3.
show sccp
connections
4.
show voice monitoring-channels
5.
show call active
voice
6.
show call active voice stats
Step 1 |
enable
Enables privileged EXEC mode. Example: Device> enable
| |||||||||||||||||||||||||||||||||||
Step 2 | show voip rtp connections
Displays Real-Time Transport Protocol (RTP) named event packets. Example: Device# show voip rtp connections
No. CallId dstCallId LocalRTP RmtRTP LocalIP RemoteIP MPSS
1 37 38 16582 18236 10.1.1.2 10.1.1.7 NO
2 38 37 16524 19542 10.1.1.2 10.1.1.1 NO
3 39 40 17644 2000 10.1.1.2 10.1.1.2 NO
4 41 40 16622 2000 10.1.1.2 10.1.1.2 NO
| |||||||||||||||||||||||||||||||||||
Step 3 | show sccp
connections
Displays information about the connections controlled by the Skinny Client Control Protocol (SCCP) transcoding and conferencing applications. Example: Device# show sccp connections
sess_id conn_id stype mode codec ripaddr rport sport
3 4 xcode sendrecv g711u 100.1.1.2 2000 16622
3 3 xcode sendrecv g711u 100.1.1.2 2000 17644
Total number of active session(s) 1, and connection(s) 2
| |||||||||||||||||||||||||||||||||||
Step 4 | show voice monitoring-channels
Displays voice monitoring statistics. Example: Device# show voice monitoring-channels
max vq mon channels = 10 vq mon channels in use = 2 vq mon channels left =8
| |||||||||||||||||||||||||||||||||||
Step 5 | show call active
voice
Displays statistics on the CUBE if the Voice Quality Metrics feature is configured. Example: Device# show call active voice
RxPakNumber=5496
RxSignalPak=0
RxComfortNoisePak=0
RxDuration=109900
RxVoiceDuration=109920
RxOutOfSeq=0
RxLatePak=0
RxEarlyPak=0
RxBadProtocol=0
LevelRxPowerMean=0
ErrRxDrop=0
ErrRxControl=0
| |||||||||||||||||||||||||||||||||||
Step 6 | show call active voice stats
Displays Concealment Statistics and R-Factor Statistics (G.107 MOS) on the Cisco UBE if the Voice Quality Metrics feature is configured. A sample output is provided below for a voice call using G.711ulaw, VAD on, and at 5 percent packet loss rate. Example: Device# show call active voice statslsec MC
DSP/CS: CR=0.0527, AV=0.0502, MX=0.0527, CT=1220, TT=24270, OK=50, CS=44, SC=0, TS=50, DC=0
SP/RF: ML=3.9855, MC=0.0000, R1=79, R2=0, IF=15, ID=0, IE=0, BL=25, R0=94, VR=1.1
In the sample output, the following can be noted: The following table defines the abbreviations used in the sample output.
|
Use the following debug commands to troubleshoot the Voice Quality Monitoring feature.
Device> enable Device# configure terminal Device(config)# voice service voip Device(conf-voi-serv)# media monitoring 300 Device(conf-serv-sip)# exit Device(config)# dial-peer voice 5 voip Device(config-dial-peer)# media monitoring 300
Device> enable Device# configure terminal Device(config)# voice service voip Device(conf-voi-serv)# media statistics Device(conf-voi-serv)# end
The following table provides release information about the feature or features described in this module. This table lists only the software release that introduced support for a given feature in a given software release train. Unless noted otherwise, subsequent releases of that software release train also support that feature.
Use Cisco Feature Navigator to find information about platform support and Cisco software image support. To access Cisco Feature Navigator, go to www.cisco.com/go/cfn. An account on Cisco.com is not required.Feature Name |
Releases |
Feature Information |
---|---|---|
Voice Quality Monitoring |
15.3(3)M |
The Voice Quality Monitoring (VQM) feature uses Flexible NetFlow to export voice quality metrics related to media (voice) quality, such as conversational mean opinion score (MOS), packet loss rate, and so on. VQM enables you to monitor the quality of calls traversing your VoIP network, and you can diagnose the cause of voice quality issues and troubleshoot them. |