250 likes | 388 Vues
This comprehensive course dives into the essentials of Voice over Internet Protocol (VoIP), covering key aspects such as the basics of VoIP, various codecs, and performance issues affecting quality. It explores historical developments, from the 1980s satellite packet voice innovations to the commercialization of VoIP. Learn about delay, loss, and quality metrics, as well as tools used in the industry today. Understand the significance of protocols like RTP, H.323, and SIP in ensuring efficient and effective VoIP communications.
E N D
CS644Advanced 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 • MBone popularized audio and video conferencing tools • Nevot, vat, vic, rat • Late 1990s • Commercialization of VoIP
Time Digitizing Voice 쏼~~라 쏴 ~ㄹ~~ㄹ~~~~~~~라~~
Talkspurts Silence period Talk and Silence in Voice 쏼~~라 쏴 ~ 라~~ Time
Look-ahead Voice to Packets 쏼~~라 쏴 ~ 라~~ Time
Popular Waveform Codecs • PCM (Pulse Code Modulation) • G.711 • Audible frequency (300-3KHz) • By Nyquist theorem, sample 8bits at 8KHz = 64 Kbps • ADPCM (Adaptive Differential PCM) • G.726 • Sample differences: 4bit at 8KHz
Alternative for compression • companding • non-linear quantization: μ-law (G.711) • waveform • exploit statistical correlation • model • model voice, extract parameters • subband • split signal into bands and cod e individually (MPEG audio) • exploit masking properties of human ear
Other Codecs • G.729 for mobile telephony • Conjugate structure, algebraic-code-excited linear prediction (CS-ACELP) • 80bits at 100Hz = 8 kbps • requires 40% of 100MHz Pentium • G.729A: reduced-complexity version • G.723.1 for videotelephony • MP-MLQ (Multipulse, multilevel quantization) • 30ms blocks of 240 16-bit samples into 24B = 6.3kbps • requires 25% of 100MHz Pentium • GSM full rate • GSM 06.10, 13Kbps • Regular Pulse Excited (RPE) codec • GSM 06.20 = half-rate
Basic Attributes of Codecs • Bit rate • economy of bandwidth • in multimedia applications, more b/w to video • Silence compression • voice activity detector (VAD) • discontinuous transmission (DTX) • comfort noise generator (CNG) • Complexity • limiting factor in terms of memory and CPU (e.g. in portable devicies) • Delay • frame-size, look-ahead: algorithmic delay • processing delay: depends on complexity and H/W • Resilience to loss • Quality • Others • layered coding • decoding telephone digits?
RTP/RTCP • Use of Real Time Protocol • adds sequence number, timestamp, payload type • Use of Real Time Control Protocol • transmits control packets to participants • offers feedback on performance • correlate and synchronize different media streams
Session Management • H.323 • SIP (Session Initiation Protocol) • e2e, client-server session signalling protocol • not a transport/QoS reservation/gateway control protocol
H.323 • Suite of ITU-T recomm. protocols for multimedia collaboration among 2+ entities • H.225.0-Q.931 • pt2pt call signalling • initiation/proceeding/alerting/connection/termination • H.245 • call-control • master-slave determination/terminal capability set/logical channel management/
H.323 Call Flow End System A End System B Setup H.225 (TCP port 1720) Alerting/Connect Capabilities Exchange / MSD Open Logical Channel H.245 (TCP dynamic port) Open Logical Channel Acknowledge RTP Stream RTP Stream UDP RTCP Stream
Key Components of SIP • SIP end devices • UA client (originates calls) • UA server (listens for incoming calls) • SIP workhorses • proxy server • relays call signaling (i.e. acts as both client/server) • redirect server • redirects callers to other servers • registar • accept registration requests from users • maintains user’s whereabouts at a Location Server
Basic SIP Capabilities • user location • correct device with which to comm to reach a particular user • user availability • willing/able to take part in a session • user capabilities • determines choice of media, codecs • session setup • establishes session parameters, s.a. port nubmers • session management • call forwarding, modifying session parameters
SIP RFC 2543 Methods • INVITE • ACK • BYTE • CANCEL • OPTIONS • REGISTER
Session/Call Control - SIP cisco.com proxy princeton.edu proxy mypc.cisco.com yourpc.princeton.edu Sue@cisco.com Meeyoung@princeton.edu
Performance Issues • Delay • transmission, router-processing, propagation, and queueing delays • packetization • Loss • network drop • late arrival • FEC (Forward Error Correction) • Adds redundant data • Issues?
Playout Delay Adjustment 쏼~~라 쏴 ~ 라~~ 쏴~~라 쏴 ~ 라~~ 쏴~~라 쏴 ~ 라~~ Playout Delay
Voice Quality Rating Measures • MOS (Mean Opinion Score) • range of 1.0 to 4.5 (very poor to best) • mean of response scores of human beings • PSQM • Perceptual Speech Quality Measurement • Automated human listener • Designed to measure the perceived quality of codec-quality voice based on • Evaluates original signal against “perceptual model” and compares coded signal againt it based on • distortion, effects of noise, and overall perceptual fidelity • E-model • ITU-T Recommendation G.107 • range of 0 to 100 • R = R0 -Is-Id-Ie+A • effects of noise, simultaneous impairments at quantization, mouth-to-delay impairment, signal distortion, advantage factor (willingness to tolerate deterioration)
Readily Available Tools • Audio on Linux • /dev/audio for μ-law • /dev/dsp for general samples • Java sound I/F • java.sun.com/proudcts/java-media/sound/ • higher layer • Java Media Framework (JMF) includes RTP
Other Public VoIP Tools • rat (Robust Audio Tool) • http://www-mice.cs.ucl.ac.uk/multimedia/software/rat/ • Public VoIP S/W repository • http://www.vovida.org/ • Many VoIP freeware for Windows
References • Voice over IP Fundamentals, J. Davidson, J. Peters, 2000, Cisco Press • ITU-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