Copyrights © All rights Reserved. Introduction to VoIP Chetan Vaity August 2006
Copyright © GS Lab All rights Reserved. Lets make some VoIP calls… Broadvoice Indian PSTN US phone Indian phone Internet 1 US PSTN 2 3
Copyright © GS Lab All rights Reserved. What is VoIP Transfer of voice conversations over an IP based network Also known as: IP Telephony Internet telephony Broadband telephony Voice over Broadband
Copyright © GS Lab All rights Reserved. Essentials What happens in a VoIP call? Establish connection with the target Various protocols Capture voice, digitize and encode Codecs Transfer over network Network issues Interface with PSTN Decode and reproduce voice
Copyright © GS Lab All rights Reserved. Protocols Signaling protocols SIP ( I nternet E ngineering T ask F orce) H.323 ( I nternational T elecommunications U nion) All voice/video communications are done over separate transport protocols, typically RTP Media protocols RTP RTCP
Copyright © GS Lab All rights Reserved. Protocols – SIP Session Initiation Protocol SIP is primarily used in setting up and tearing down voice or video calls SIP clients traditionally use port 5060 to connect to SIP servers SIP acts as a carrier for the Session Description Protocol (SDP), which describes the media content of the session, e.g. what IP ports to use, the codec being used etc. It is human readable and request-response structured SIP messages: INVITE, ACK, BYE, REGISTER SIP responses: 100 Trying 180 Ringing 200 OK 404 Not found SIP shares many HTTP status codes, such as the familiar '404 not found'
Copyright © GS Lab All rights Reserved. Protocols – H.323 H.323 is actually a family of protocols H.323 ties together a number of protocols to allow multimedia transmissions over an unreliable packet based network H.225 for call control and signaling H.245 for exchanging terminal capabilities and creation of media channels H.235 for security RTP/RTCP for media
Copyright © GS Lab All rights Reserved. Protocols – RTP (Real-time Transport Protocol) Media applications are less sensitive to packet loss, but typically very sensitive to delays. UDP is a better choice than TCP RTP generally runs over UDP RTP provides payload-type identification sequence numbering timestamping It does not guarantee any QoS
Copyright © GS Lab All rights Reserved. Protocols - RTCP Real-time transport control protocol (RTCP) is the counterpart of RTP that provides control services. The primary function of RTCP is to provide feedback on the quality of the data distribution. Statistics on a media connection bytes sent packets sent lost packets jitter round trip delay An application may use this information to increase the quality of service perhaps by limiting data sent or maybe using a low compression codec instead of a high compression codec RTCP uses (RTP port + 1)
Copyright © GS Lab All rights Reserved. Speech example Wel come to G S Lab
Copyright © GS Lab All rights Reserved. Codecs Convert speech to a digital format suitable to be transmitted over the network Most codecs utilize compression to reduce the bandwidth requirement But, heavy compression algorithms take time. This adds a delay to the conversation Human speech is a very special signal and its characteristics are exploited in these algorithms
Copyright © GS Lab All rights Reserved. Pulse Code Modulation A PCM representation of an analog signal is generated by measuring ( sampling ) the magnitude of the analog signal at uniform intervals, and then quantizing it to a code.
Copyright © GS Lab All rights Reserved. G.711 (µ-law) 8000 samples per second 8 bits per sample 64 kbps Logarithmic PCM (because the perceived loudness by humans is logarithmic) µ-law: used in North America and Japan a-law: used in the rest of the world
Copyright © GS Lab All rights Reserved. Linear Predictive Coding LPC starts with the assumption that a speech signal is produced by a buzzer at the end of a tube The vocal tract (the throat and mouth) forms the tube, which is characterized by its resonances The buzz is characterized by its intensity (gain) and frequency (pitch) LPC analysis produces estimates for the pitch, gain and a set of numbers for the resonances Voiced and Unvoiced
Copyright © GS Lab All rights Reserved. GSM codec GSM uses linear predictive coding (LPC) Speech is divided into 20 millisecond units (frames) LPC parameters are determined for each frame The number of bits needed to send these parameters is the bit-rate of the codec For GSM, the bit rate is 13kbps
Copyright © GS Lab All rights Reserved. Comparison between codecs CodecBit rateQuality (MOS) G G G LPC Source for wave samples:
Copyright © GS Lab All rights Reserved. Network problems Delay Jitter Echo Congestion Packet loss Disordered packet arrivals
Copyright © GS Lab All rights Reserved. Network issues - Delay A delay of less than 150 ms is acceptable and usually goes unnoticed by humans With delay greater than 400 ms, conversation starts becoming irritating Coder delay is the time taken to compress a block of PCM samples This delay varies with the codec used and processor speed For G.729, delay is around 30ms Packetization delay is the time taken to fill a packet payload with encoded speech Queuing delay and Propagation delay at various network components Jitter buffer delay
Copyright © GS Lab All rights Reserved. Jitter Variation in delay of packets is called Jitter The effects of jitter can be mitigated by storing voice packets in a buffer upon arrival, before playing out Increases delay by the length of the buffer
Copyright © GS Lab All rights Reserved. Echo Echo in telephony systems is caused by two main phenomena Electrical echo due to imperfect impedance matching Acoustic echo due to microphone pickup of audio output Echo becomes noticeable only when there is a delay between speaking and hearing your voice echoed. (more than about 50 ms) In PSTN calls, there is always echo, but it remains unnoticed because the delay is quite small VoIP intrinsically has packetization, depacketization and processing delays built into its protocols VoIP phones don't cause echo. They just make it audible by introducing an extra delay Echo cancellation: Subtract from the received signal Based on the response of the system to a short spike of sound Echo cancellation is a hugely CPU-intensive process
Copyright © GS Lab All rights Reserved. Advantages of VoIP Reduction in costs Uses the internet for long distance calls Uses underutilized existing network capacity Functionality Especially for computer users – (click on name to call) Merging of Data and Voice infrastructures No need for separate cabling Mobility Wherever you are connected to the Internet, you can receive VoIP calls
Copyright © GS Lab All rights Reserved. Disadvantages of VoIP Quality Due to low/variable bandwidth Echo Internet connection VoIP usage is entirely dependent on the quality, reliability and speed of the internet connection If the net is down, you have no telephony Power No phone calls in a power outage
Copyright © GS Lab All rights Reserved. Services Packet8, Vonage, Verizon A black box with a phone attached The user experience is almost indistinguishable from normal PSTN The term “VoIP” is not used, instead – “Internet telephone” or “Digital telephone” Broadvoice Allow direct connect of SIP phones Aimed at tech-savvy clients Allows Skype Rely on the software client on the computer Peer to peer Routes calls through other Skype peers on the network Proprietary, closed source
Copyright © GS Lab All rights Reserved. Legal Issues As the popularity of VoIP grows, and PSTN users switch to VoIP in increasing numbers, governments are becoming more interested in regulating VoIP in a manner similar to legacy PSTN services In some countries, governments fearful for their state owned telephone services, have imposed restrictions on the use of VoIP In India, it is legal to use VoIP. But it is illegal to have VoIP gateways inside India. This effectively means, people who have PCs can use it to make a VoIP call to any number. But if the remote side is a normal phone, the gateway that converts VoIP call to PSTN call should not be inside India
Copyright © GS Lab All rights Reserved. Cougar What is it? What can it do? What software does it use? How do I make calls? Whom should I contact if I can’t? Where to get more info?
Copyright © GS Lab All rights Reserved. References Wikipedia