voip testing with tems investigation.pdf

Upload: sana-ullah

Post on 04-Jun-2018

236 views

Category:

Documents


1 download

TRANSCRIPT

  • 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