cs644 advanced topics in networking

Click here to load reader

Post on 11-Jan-2016




2 download

Embed Size (px)


CS644 Advanced Topics in Networking. VoIP Wed, 2004/9/8. VoIP. Basics Codecs Performance issues Delay, loss, quality Other subjective/objective measures Available tools. History of VoIP. 1980s Packet voice over satellite links in Lincoln Lab Early 1990s - PowerPoint PPT Presentation


  • CS644Advanced Topics in NetworkingVoIP

    Wed, 2004/9/8

  • VoIPBasicsCodecsPerformance issuesDelay, loss, qualityOther subjective/objective measuresAvailable tools

  • History of VoIP1980sPacket voice over satellite links in Lincoln LabEarly 1990sMBone popularized audio and video conferencing toolsNevot, vat, vic, ratLate 1990sCommercialization of VoIP

  • Digitizing Voice

    ~~ ~~~~~~~~~~~~

  • Talk and Silence in Voice

    ~~ ~ ~~Time

  • Voice to Packets

    ~~ ~ ~~Time

  • Popular Waveform CodecsPCM (Pulse Code Modulation)G.711Audible frequency (300-3KHz)By Nyquist theorem, sample 8bits at 8KHz = 64 Kbps

    ADPCM (Adaptive Differential PCM)G.726Sample differences: 4bit at 8KHz

  • Alternative for compressioncompandingnon-linear quantization: -law (G.711)waveformexploit statistical correlationmodelmodel voice, extract parameterssubbandsplit signal into bands and cod e individually (MPEG audio)exploit masking properties of human ear

  • Other Codecs

    G.729 for mobile telephonyConjugate structure, algebraic-code-excited linear prediction (CS-ACELP)80bits at 100Hz = 8 kbpsrequires 40% of 100MHz PentiumG.729A: reduced-complexity versionG.723.1 for videotelephonyMP-MLQ (Multipulse, multilevel quantization)30ms blocks of 240 16-bit samples into 24B = 6.3kbpsrequires 25% of 100MHz PentiumGSM full rateGSM 06.10, 13KbpsRegular Pulse Excited (RPE) codecGSM 06.20 = half-rate

  • Basic Attributes of CodecsBit rateeconomy of bandwidthin multimedia applications, more b/w to videoSilence compressionvoice activity detector (VAD)discontinuous transmission (DTX)comfort noise generator (CNG)Complexitylimiting factor in terms of memory and CPU (e.g. in portable devicies)Delayframe-size, look-ahead: algorithmic delayprocessing delay: depends on complexity and H/WResilience to lossQualityOtherslayered codingdecoding telephone digits?

  • RTP/RTCPUse of Real Time Protocol adds sequence number, timestamp, payload type

    Use of Real Time Control Protocoltransmits control packets to participantsoffers feedback on performancecorrelate and synchronize different media streams

  • RTP Header

  • Session ManagementH.323SIP (Session Initiation Protocol)e2e, client-server session signalling protocolnot a transport/QoS reservation/gateway control protocol

  • H.323Suite of ITU-T recomm. protocols for multimedia collaboration among 2+ entitiesH.225.0-Q.931pt2pt call signallinginitiation/proceeding/alerting/connection/terminationH.245call-controlmaster-slave determination/terminal capability set/logical channel management/

  • H.323 Call FlowSetupAlerting/ConnectCapabilities Exchange / MSDOpen Logical ChannelOpen Logical Channel AcknowledgeRTP StreamRTP StreamRTCP StreamH.225(TCP port 1720)H.245(TCP dynamic port)UDPEnd System AEnd System B

  • Key Components of SIPSIP end devicesUA client (originates calls)UA server (listens for incoming calls)SIP workhorsesproxy serverrelays call signaling (i.e. acts as both client/server)redirect serverredirects callers to other serversregistaraccept registration requests from usersmaintains users whereabouts at a Location Server

  • Basic SIP Capabilitiesuser locationcorrect device with which to comm to reach a particular useruser availabilitywilling/able to take part in a sessionuser capabilitiesdetermines choice of media, codecssession setupestablishes session parameters, s.a. port nubmerssession managementcall forwarding, modifying session parameters


  • Session/Call Control - SIPcisco.com [email protected][email protected]

  • Performance IssuesDelaytransmission, router-processing, propagation, and queueing delayspacketizationLossnetwork droplate arrivalFEC (Forward Error Correction)Adds redundant dataIssues?

  • Playout Delay Adjustment

    ~~ ~ ~~

    ~~ ~ ~~

    ~~ ~ ~~Playout Delay

  • Voice Quality Rating MeasuresMOS (Mean Opinion Score)range of 1.0 to 4.5 (very poor to best)mean of response scores of human beings PSQMPerceptual Speech Quality MeasurementAutomated human listenerDesigned to measure the perceived quality of codec-quality voice based onEvaluates original signal against perceptual model and compares coded signal againt it based on distortion, effects of noise, and overall perceptual fidelityE-modelITU-T Recommendation G.107range of 0 to 100R = R0 -Is- Id- Ie+Aeffects of noise, simultaneous impairments at quantization, mouth-to-delay impairment, signal distortion, advantage factor (willingness to tolerate deterioration)

  • Readily Available ToolsAudio on Linux/dev/audio for -law/dev/dsp for general samplesJava sound I/Fjava.sun.com/proudcts/java-media/sound/higher layerJava Media Framework (JMF) includes RTP

  • Other Public VoIP Toolsrat (Robust Audio Tool)http://www-mice.cs.ucl.ac.uk/multimedia/software/rat/Public VoIP S/W repositoryhttp://www.vovida.org/Many VoIP freeware for Windows

  • ReferencesVoice over IP Fundamentals, J. Davidson, J. Peters, 2000, Cisco PressITU-T Recomm. P.861 [PSQM]IP Telephony with H.323, V. Kumar, M. Korpi, S. Sengodan, 2000, Wiley [H.323]C. Boutremans, J-Y Le Boudec, Adaptive Joint Playout Buffer and FEC Adjustment for Internet Telephony, INFOCOM 2003

    Complexity: fixed point vs floating point, encoding vs. decodidng

    Others: tandem performance, non-speech performance like DTMFDTMF (dual-tone multi frequency, a.k.n. touch-tone): audible sounds you hear when you press keys on your phoneRTP can indicate packet loss, recover synchronization, indicate frame boundary,sends user-friendly sender identity