Upload
sana-ullah
View
241
Download
1
Embed Size (px)
Citation preview
8/14/2019 VoIP Testing with TEMS Investigation.pdf
1/18
Prepared by: Date: Document:Ascom Network Testing 28 June 2011 NT11-12850 ver 1.0
Ascom (2011)
TEMS is a trademark of Ascom. All other t rademarks are the property of their respective holders.
No part of this document may be reproduced in any form without the written permission of the copyright holder.
The contents of this document are subject to revision without notice due to continued progress in methodology, design and
manufacturing. Ascom shall have no liability for any error or damage of any kind resulting from the use of this document.
VoIP Testing with TEMS InvestigationTechnical Paper
8/14/2019 VoIP Testing with TEMS Investigation.pdf
2/18
Ascom (2011) Document:NT11-12850 ver 1.0
Contents
1 Introduction ................................................................ 12 How VoIP Works: A Brief Technology
Overview ..................................................................... 13 Testing VoIP with TEMS Investigation ..................... 23.1 Physical Configuration .............................................................23.2 Scripting ....................................................................................33.2.1 Tips on Scripting .........................................................................53.3 Choice of VoIP Client................................................................73.4 Output ........................................................................................73.4.1 VoIP-specific Information Elements ............................................73.4.2 Other Information Elements of Interest .......................................93.4.3 VoIP Events ................................................................................93.4.4 VoIP KPIs (Key Performance Indicators) ..................................103.5 Presentation in TEMS Investigation Windows .................... ..103.6 Ascom Test Setup ..................................................................114 Troubleshooting....................................................... 114.1 Problem: Script Activity Fails ................................................114.2 Problem: Bad Audio Quality (VoIP PESQ Score Low)..........115 Limitations ................................................................ 126 Appendices............................................................... 136.1 SIP Response Codes ..............................................................136.1.1 Informational Responses ..........................................................136.1.2 Successful Responses .............................................................136.1.3 Redirection Responses ......................................... ....................136.1.4 Client Failure Responses ..........................................................136.1.5 Server Failure Responses ........................................................156.1.6 Global Failure Responses ................................ .........................156.1.7 Extended Codes .......................................................................156.2 Abbreviations ..........................................................................16
8/14/2019 VoIP Testing with TEMS Investigation.pdf
3/18
Ascom (2011) Document:
NT11-12850 ver 1.0 1(16)
1 Introduction
VoIP, Voice over IP, is a technology for delivering voice communicationsover IP networks such as the Internet. Being a voice-over-data service,
VoIP has characteristics from both realms. On one hand it is very delay-sensitive (like circuit-switched voice); on the other it is subject to all of thevarious challenges associated with packet-switched services, such askeeping down packet loss and jitter. This makes VoIP a very complicatedservice to optimize.
The present paper describes VoIP in general terms and tells how to testand measure VoIP performance using TEMS Investigation.
2 How VoIP Works: A Brief TechnologyOverview
VoIP (Voice over IP) is an umbrella term for technologies that enabledelivery of voice calls and multimedia sessions over IP networks, such asthe Internet, rather than the public switched telephone network (PSTN).
The voice signal is digitized and encoded using audio codecs, just as incircuit-switched cellular telephony, and then divided into IP packets fortransmission over the packet-switched network. On the receiving sidesimilar steps are applied in the reverse order to reproduce the original voicestream: reception and decoding of IP packets followed by digital-to-analogconversion.
The range of audio codecs used differs between VoIP implementations;some implementations rely on narrowband and compressed speech, whileothers support high fidelity stereo codecs.
VoIP systems employ session control protocols to control the setup andteardown of calls. Examples of such protocols are:
H.323
Media Gateway Control Protocol (MGCP)
Session Initiation Protocol (SIP)
Real-time Transport Protocol (RTP)
Session Description Protocol (SDP)
Of these, SIP and RTP have gained particularly widespread use, and theseprotocols also figure in the present document.
8/14/2019 VoIP Testing with TEMS Investigation.pdf
4/18
Ascom (2011) Document:
3 Testing VoIP with TEMS Investigation
3.1 Physical Configuration
VoIP testing is conducted using two instances of TEMS Investigation,installed on two different PCs, each of which have a mobile phoneconnected.1This setup is necessary to enable end-to-end speech qualitymeasurement for VoIP.
The calling device (caller) is connected to one PC and the called device(callee) to the other. Audio is sent in semi-duplex fashion between theparties, that is, in both directions but only in one direction at a time.
TEMS Investigation has a built-in VoIP client; the VoIP clients thus reside inthe PCs and not in the mobile devices.
It should be noted from the outset that no further devices running dataservices can be connected to the PCs during VoIP testing. See also
chapter 0.
Schematic diagram of physical configuration for VoIP testing.
1Two TEMS Investigation licenses are thus also required, as well as a special
license option for VoIP.
VoIP
server
Caller
side
Callee
side
PCs running TEMS Investigation
Mobile phones VoIP
client
VoIPclient
8/14/2019 VoIP Testing with TEMS Investigation.pdf
5/18
8/14/2019 VoIP Testing with TEMS Investigation.pdf
6/18
Ascom (2011) Document:
NT11-12850 ver 1.0 4(16)
Network Connect
First, both parties need to have an active data session. This is done inTEMS Investigation through the Network Connectactivity.
SIP Registration
Before a VoIP call can begin, both caller and callee must register with theSIP server to be used for VoIP. The SIP Registeractivity is used for thispurpose. Here you indicate the IP address or host name of the server touse. If no special domain needs to be chosen, enter the server addressunder Domain, and leave Proxyempty. If on the other hand you need tospecify a domain within the server, enter the server address in the Proxyfield and the domain in the Domainfield. You also specify the user andpassword the client should use when registering.
VoIP Answer
The callee must be ready to answer before the caller can initiate a call. Tothis end the callee executes the script activity VoIP Answer. In this activityyou select the audio codec and encoding rate the callee should use. Thecallee will communicate these settings to the caller, so that the partiesagree on the same codec and rate.
To ensure that the callee has reached VoIP Answer before the caller dialsthe call, you should insert a wait period in the callers script. Seesection 3.2.1. This detail has been left out of the above diagram to keepthings straightforward.
VoIP Dial
The caller initiates the call by running the activity VoIP Dial. In this activityyou indicate the codec the caller should use, which must be the same asthe callees designated codec (VoIP Answeractivity, see step ). You alsospecify the codec rate and the phone number to call.
VoIP Voice Quality Measurement
Once the call has been connected, voice quality can be measured on bothsides in terms of PESQ. This is done with the VoIP Voice Qualityactivity.The call durations should preferably differ between caller and callee, so thatit can be controlled which side hangs up the call. Compare step .
It is possible to store audio files containing the received audio. All audio
sentences having a MOS score lower than or equal to the MOS limitwill bestored on the PC.2If three consecutive PESQ reports with indication ofsilence are received, the VoIP call is terminated.
If for some reason you do not wish to measure voice quality, simply use aWait activity instead of VoIP Voice Quality. However, be aware that in this
2Storage location: C:\Users\\Documents\TEMS Product Files\TEMS
Investigation 13.0\PESQ.
8/14/2019 VoIP Testing with TEMS Investigation.pdf
7/18
Ascom (2011) Document:
NT11-12850 ver 1.0 5(16)
case you will not obtain any other VoIP quality measurements either, suchas FER and jitter buffer metrics (see the list in section 3.4.1), nor will MTSISession Completion Failure events (dropped calls) be generated.
VoIP Hangup
One of the parties (the one with the duration of the VoIP Voice Qualityactivity set lower) hangs up the call. This is to ensure that the party hangingup has the time to do so before the other party unregisters; otherwise thehangup will fail. This is done through the VoIP Hang Upactivity. In theabove diagram, the caller performs the hangup.
SIP Unregister
Both sides unregister from the SIP server. This is done using the SIPUnregisteractivity.
Network Disconnect
Finally the data session is terminated as each party performs a NetworkDisconnect. If the snippet is executed in a loop, this activity is necessary toforce a disconnect from the network after each VoIP call (desirable for thepurpose of KPI calculation).
3.2.1 Tips on Scripting
The above description covered the key steps in conducting a VoIP call. Inpractice, the scripts should be made slightly more sophisticated.
Suggested setup:
On both sides, run all activities within a while loop. Add an extra Waitactivity as the last item in each loop, with the callers wait period longerthan the callees, to make sure the callee is ready and waiting for thecall when the caller dials. Suggested wait durations are 30 s for thecaller and 10 s for the callee. Compare stepin section 3.2 above.
To ensure that the timing becomes right for the first VoIP call, start thescript on the callee side first, then the caller script.
If the parties are not in sync, that is, if the callee is not registered when thecaller places the call, then the caller will generate an MTSI Session SetupFailure event (see section 3.4.3).
8/14/2019 VoIP Testing with TEMS Investigation.pdf
8/18
Ascom (2011) Document:
NT11-12850 ver 1.0 6(16)
Caller Callee
Use of while loops with VoIP scripting: caller (left) and callee (right).
8/14/2019 VoIP Testing with TEMS Investigation.pdf
9/18
Ascom (2011) Document:
NT11-12850 ver 1.0 7(16)
3.3 Choice of VoIP Client
TEMS Investigation offers CounterPath and PJSIP as VoIP clients.
The rationale for providing more than one client is as follows:
Different customers use different clients. The situation is comparable inprinciple to the (much larger) range of devices available for the voiceservice.
Clients vary in their level of compliance with the VoIP standard and alsoin terms of general quality and performance. It should also be kept inmind that the VoIP standard is less specific than voice telephonystandards such as 3GPP.
In the TEMS Investigation VoIP testing implementation, PJSIP is stronglyrecommended for PESQ measurement. During tests with the CounterPathclient, unexplained dips in the PESQ score have been observed.
The technical description of VoIP and VoIP testing given in this document is
valid regardless of the choice of client.
3.4 Output
3.4.1 VoIP-specific Information Elements
3.4.1.1 Jitter
VoIP RFC 1889 Jitter (ms)
Packet jitter or delay variation as defined in IETF RFC 1889, section 6.3.1:
An estimate of the statistical variance of the RTP data packet interarrival
time [...] The interarrival jitteris defined to be the mean deviation(smoothed absolute value) of the difference in packet spacing at thereceiver compared to the sender for a pair of packets. As shown in theequation below, this is equivalent to the difference in the relative transittime for the two packets [...].
If is the RTP timestamp from packet , and is the time of arrival inRTP timestamp units for packet , then for two packets and, may beexpressed as
(, )= = ( )
The interarrival jitter is calculated continuously as each data packet isreceived [...] using this difference for that packet and the previouspacket 1in order of arrival (not necessarily in sequence), accordingto the formula
+|( 1, )|
16
8/14/2019 VoIP Testing with TEMS Investigation.pdf
10/18
Ascom (2011) Document:
NT11-12850 ver 1.0 8(16)
The quantityis what is output in the VoIP RFC 1889 Jitter informationelement. The latter is updated once every second.
3.4.1.2 Jitter Buffer
A jitter buffer is used to mitigate the effects of packet jitter. The jitter bufferholds the received voice packets briefly, reorders them if necessary, andthen plays them out at evenly spaced intervals to the decoder.
These elements are updated once every second.
VoIP Decoding Errors (%) Percentage of audio frames that could not bedecoded by the speech codec.
VoIP Jitter Buffer LostPackets (%)
Percentage of packets that were missing from theaudio reproduction because they were notdelivered from the jitter buffer to the decoder intimely fashion.
Note that the packet need not have been lost onthe way to the receiving party; it may just havebeen delayed too long, so that it was discarded bythe jitter buffer.
VoIP Jitter Buffer PlayoutDelay Average (ms)
Average playout delay in ms: that is, the averagetime the voice packets were held by the jitterbuffer.
VoIP Jitter Buffer PlayoutDelay Maximum (ms)
Maximum playout delay in ms.
VoIP Jitter Buffer PlayoutDelay Minimum (ms)
Minimum playout delay in ms.
VoIP Jitter Buffer SizeIncrease (%)
Percentage of audio frames where the VoIP clientdecided to increase the jitter buffer size (becausethe jitter was found to be too high). Thisprocedure results in a period of silence in theaudio reproduction as the jitter buffer accumulatespackets without releasing any.
VoIP Jitter BufferOverruns (%)
Percentage of audio frames with overruns.
The VoIP client tries to keep the delays caused bythe jitter buffer reasonably low. When the bufferbecomes too long, the VoIP client will throw awayreceived packets to decrease the buffer size. Thisis referred to as overruns, and it affects the audioreproduction.
Usually occurs after underruns (see below).
VoIP Jitter BufferUnderruns (%)
Percentage of audio frames where the jitter bufferwas empty and had no packets to deliver to thespeech decoder.
8/14/2019 VoIP Testing with TEMS Investigation.pdf
11/18
Ascom (2011) Document:
NT11-12850 ver 1.0 9(16)
3.4.1.3 Audio Quality Related
VoIP FER CombinedPacket Loss (%)
Total percentage of packet loss that affects thereproduction of the audio. Encompasses decodingerrors, underruns, overruns, and jitter buffer size
increases. Should correlate closely to PESQ.
VoIP PESQ Score PESQ (ITU P.862.1) is a method for modelingspeech quality as perceived by human listeners.Its output is a MOS score between 1 (worst) and 5(best). The PESQ score depends on speechcodec and codec rate, on the radio environment,and more.
For VoIP measurements the speech sentencesare 8 s in length. This means that a MOS scorewill be calculated every 16 s (since transmissionsare done in semi-duplex). Notethat aperformance degradation that occurs while themeasurement is done at the other end will not
register in the PESQ score.
3.4.2 Other Information Elements of Interest
Application throughput IEs (Data category).
RAN throughput at various protocol levels (details being dependent onthe cellular technology used; the IEs are found in the relevant category,such as LTE, WCDMA).
3.4.3 VoIP Events
These events underlie the KPIs in section 0:
MTSI Registration Failure One of the parties failed to register with the SIPserver.
MTSI Registration Time Time required for the terminal to register with theSIP server. Also functions as a success event.
MTSI Session CompletionFailure
A VoIP session that was successfully set up failedto complete. Similar to dropped call for CS voice.
MTSI Session CompletionTime
Duration of the VoIP session. Also functions as asuccess event.
Note:This event does not have an associated
KPI, since the VoIP session duration is not arelevant performance measure.
MTSI Session SetupFailure
The terminal failed in setting up a VoIP session.Similar to blocked call for CS voice.
MTSI Session Setup Time Time required to set up the VoIP session. Alsofunctions as a success event.
8/14/2019 VoIP Testing with TEMS Investigation.pdf
12/18
Ascom (2011) Document:
NT11-12850 ver 1.0 10(16)
TEMS Investigation also generates the following VoIP events, which areunrelated to KPI computation:
VoIP Start A VoIP session was started.
VoIP End A VoIP session ended normally.
VoIP Error A VoIP session was aborted because of an error.
3.4.4 VoIP KPIs (Key Performance Indicators)
TEMS Investigation provides data for computation of the following KPIs.The actual computation is done in TEMS Discovery or TEMS Automatic.
MTSI Registration FailureRatio (%)
Denotes the probability that the terminal cannotregister towards IMS when requested.
MTSI Registration Time (s) Denotes the time elapsing from the IMSregistration request until the terminal is registeredto IMS.
MTSI Session SetupFailure Ratio (%)
Denotes the probability that the terminal cannotset up an MTSI session. An MTSI session setup isinitiated when the user presses the call buttonand concludes when the user receives, within apredetermined time, a notification that the calleehas answered.
MTSI Session Setup Time(s)
Denotes the time elapsing from initiation of anMTSI session until a notification is received thatthe session has been set up.
MTSI Session CompletionFailure Ratio (%)
Denotes the probability that a successfully set upMTSI call is ended by a cause other thanintentional termination by either party.
3.5 Presentation in TEMS Investigation Windows
Suitable presentation windows for VoIP data:
VoIP Qualitystatus window containing the information elementsdescribed in section 3.4.1
VoIP Quality Line Charttracking VoIP PESQ Score and VoIP FERCombined Packet Loss, and indicating MTSI events
VoIP AMR Codecs Usagestatus window
Data Reportsmessage window
IP Protocol Reportsmessage window.
8/14/2019 VoIP Testing with TEMS Investigation.pdf
13/18
Ascom (2011) Document:
NT11-12850 ver 1.0 11(16)
3.6 Ascom Test Setup
The VoIP function in TEMS Investigation has been tested with TekSIP, aSIP Registrar and SIP Proxy for Windows (www.teksip.com), as well aswith an Ericsson IMS server.
4 Troubleshooting
4.1 Problem: Script Activity Fails
Check that caller and callee are synchronized, that is, that the calleereaches VoIP Answer before the caller begins VoIP Dial. See section 0.
In the Eventswindow, look for MTSI failure events.
In the Data Reportsmessage window, look into the VoIP Error
Message category. In the IP Protocol Reports message window, study the SIP messages.
If any other ports than SIP port 5060 and RTP port 4000 are used onthe SIP server, the corresponding settings have to be changed in thefile \Application\Configuration\Investigation.Voip.config.
If SIP response code 422 (Session interval too small) is received, setDisableTimers="false"in the same file.
4.2 Problem: Bad Audio Quality (VoIP PESQ ScoreLow)
Investigate throughput and BLER values at different levels. Example:For LTE, this includes the application layer, PDSCH, RLC, PDCP, andMAC. Remember to look at both uplink and downlink.
Check channel quality indicators and serving/neighbor signal strength.Example: In an LTE network, study CQI, Serving Cell RSRP, NeighborCell RSRP.
Check for excessively frequent handovers.
In the IP Protocol Reports message window, look into the RTPmessages.
8/14/2019 VoIP Testing with TEMS Investigation.pdf
14/18
Ascom (2011) Document:
NT11-12850 ver 1.0 12(16)
5 Limitations
You cannot have any other internet connections in parallel while runningVoIP measurements. That is, the PCs cannot be connected to any
further IP addresses, whether through other external devices, throughan Ethernet cable, or by other means. All network interfaces exceptthe testing devices, both fixed and wireless, must be disabled. It ishowever possible to make CS voice calls with devices connected to thePCs.
When running a script for the first time with CounterPath, a pop-up willappear warning about firewall configuration. The pop-up must beacknowledged; however, this will also cause the first VoIP session to fail,and the Service Control script must be restarted manually.
With CounterPath, if a failure event occurs for some activity in the script,the script will terminate and must be restarted manually.
8/14/2019 VoIP Testing with TEMS Investigation.pdf
15/18
Ascom (2011) Document:
NT11-12850 ver 1.0 13(16)
6 Appendices
6.1 SIP Response Codes
6.1.1 Informational Responses
100 Trying
180 Ringing
181 Call is being forwarded
182 Queued
183 Session progress
6.1.2 Successful Responses
200 OK
202 Accepted
Indicates that the request has been understood but actually cannotbe processed
6.1.3 Redirection Responses
300 Multiple choices
301 Moved permanently
302 Moved temporarily
305 Use proxy
380 Alternative service
6.1.4 Client Failure Responses
400 Bad request
401 Unauthorized
Used only by registrars or user agents. Proxies should use proxyauthorization 407
402 Payment required
Reserved for future use
403 Forbidden
404 Not found
User not found
405 Method not allowed
406 Not acceptable
407 Proxy authentication required
8/14/2019 VoIP Testing with TEMS Investigation.pdf
16/18
Ascom (2011) Document:
NT11-12850 ver 1.0 14(16)
408 Request timeout
Could not find the user in time
409 Conflict
410 GoneThe user existed once, but is no longer available here
412 Conditional request failed
413 Request entity too large
414 Request URI too long
415 Unsupported media type
416 Unsupported URI scheme
417 Unknown resource priority
420 Bad extension
Bad SIP protocol extension used, not understood by the server
421 Extension required
422 Session interval too small
423 Interval too brief
424 Bad location information
428 Use identity header
429 Provide referrer identity
433 Anonymity disallowed
436 Bad identity info
437 Unsupported certificate
438 Invalid identity header
480 Temporarily unavailable
481 Call/transaction does not exist
482 Loop detected
483 Too many hops
484 Address incomplete
485 Ambiguous
486 Busy here
487 Request terminated
488 Not acceptable here
489 Bad event
491 Request pending
493 Undecipherable
Could not decrypt S/MIME body part
494 Security agreement required
8/14/2019 VoIP Testing with TEMS Investigation.pdf
17/18
Ascom (2011) Document:
NT11-12850 ver 1.0 15(16)
6.1.5 Server Failure Responses
500 Server internal error
501 Not implemented
The SIP request method is not implemented here
502 Bad gateway
503 Service unavailable
504 Server timeout
505 Version not supported
The server does not support this version of the SIP protocol
513 Message too large
580 Precondition failure
6.1.6 Global Failure Responses
600 Busy everywhere
603 Decline
604 Does not exist anywhere
606 Not acceptable
6.1.7 Extended Codes
701 The called party has hung up
702 VoIP socket error
703 Connection cancelled because of timeout
704 Connection interrupted because of a SIP error
705 SIP memory error
706 SIP transaction memory error
751 Busy tone: No codec match between the calling and calledparty
810 General socket layer error
811 General socket layer error: Wrong socket number
812 General socket layer error: Socket is not connected
813 General socket layer error: Memory error814 General socket layer error: Socket not available check IP
settings/connection problem/VoIP setting incorrect
815 General socket layer error: Illegal application on the socketinterface
922 No DNS server known
923 DNS name resolution failed
8/14/2019 VoIP Testing with TEMS Investigation.pdf
18/18
Ascom (2011) Document:
NT11-12850 ver 1.0 16(16)
924 Insufficient resources for DNS name resolution
925 URL error
6.2 Abbreviations
AMR-NB Adaptive Multi Rate Narrowband
AMR-WB Adaptive Multi Rate Wideband
BLER Block Error Rate
CQI Channel Quality Indicator
FER Frame Erasure Rate
IMS IP Multimedia Subsystem
IP Internet Protocol
KPI Key Performance Indicator
LTE Long Term Evolution
MAC Medium Access Control
MOS Mean Opinion Score
MTSI Multimedia Telephony Service for IMS
PDSCH Physical Downlink Shared Channel
PESQ Perceptual Evaluation of Speech Quality
PSTN Public Switched Telephone Network
RAN Radio Access Network
RSRP Reference Signal Received Power
RTP Real-time Transport Protocol
SIP Session Initiation Protocol
VoIP Voice over IP