Voice Over Internet Protocol
(VoIP)
Submitted By:
Amit Prakash
Computer Communication Networks- II
ECE 436
University of Illinois at Chicago
Abstract:
This paper discuses the Voice Over Internet Protocol, VoIP, Voice over IP (or VoIP) is defined as “the ability to make telephone calls and send facsimiles over IP-based data networks with a suitable quality of service (QoS) and a superior cost/benefit” which can be used to transmit Voice over the Internet, provide a low cost communication medium. This basically requires the packetization of the voice and then sending it over the Internet Protocol. The paper provides a brief overview of the technology and how this technology can be applied for the integration of voice and data networks. It also gives the main characteristics and typical hardware architecture and covers most VoIP system issues, including the technical problems and Quality of Service concerns. It also provides a brief summary about the standards for VoIP.
Contents Page Number
1. Introduction 3
2. Main Issues Concerning the Implementation of VoIP 4
2.1 Quality of Voice 4 2.2 Interoperability 4 2.3 Security 4 2.4 Integration with PSTN 4 2.5 Scalability 4 3. Implementation of VoIP 4 3.1 Overview of TCP/IP 5 3.2 Packetization 6 4. Components of VoIP 7 4.1 SS7 8 4.2 H.323 8
4.3 Session Initiation Protocol (SIP) 9
4.4 Voice Coders 10
4.5 Real- time Transport Protocol (RTP) 10 4.6 Real-time Control Protocol (RTCP) 11
4.7 Gateway Control 11
5. QoS Requirements for VoIP 11
6. Summary and Future Work 12
1. Introduction
Voice is a primary means of human communications. Traditionally, voice traffic is transported over the public switched telephone networks (PSTNs) by circuit switching. Due to the advantages of statistical multiplexing, there are growing interests to transport voice traffic over packet-switched networks. In particular, voice communications over the Internet are becoming quite popular, supported by many applications. The ultimate aim is to achieve full computer-telephony integration. Key problem of sending voice traffic over the Internet is to minimize packet delay. The focus of this paper is to shorten packetization delay for the case of international voice traffic. It is expected that employing resource reservation protocols such as RSVP in the future can better control queuing delay. Furthermore using adaptive playback buffer and forward error control techniques can also enhance voice quality.
Currently a typical way to transport voice over the Internet is to pack the data bits generated by a voice encoder into Internet protocol (IP) packets and transmit them over the Internet as asynchronous data traffic. It implements store and forward switching of discrete data units (packets), and implies statistical multiplexing. This is an ideal environment for non-voice data, where the performance of a best effort delivery model in terms of throughput is more desirable then delivery of packets within bounded latency and jitter. Crudely sending voice data over such a network will lead to poor and even unacceptable quality.
What is required is a mechanism to transport voice over a packet-switched network: Voice over Internet Protocol (VoIP). A discussion on how VoIP is implemented will be presented. The goal of VoIP is to provide the efficiency of a packet-switched network while rivaling the quality of a circuit-switched network. The quality of VoIP does not yet match the quality of a circuit-switched telephone network, but there is an abundance of activity in developing protocols and speech encoders for the implementation of the high Quality voice service. One formidable problem is that the Internet was designed for data communications; consequently, packets suffer a long and variable delay that decreases voice quality. To overcome this problem, protocols are being developed to provide a certain share of network resources for each voice call through the network.
On the whole, many proprietary technologies for VoIP are available, and it is expected that these applications will expand as the technologies mature into certified standards perhaps forming a single standard that is an amalgamation of current schemes. The Internet will also be widely used for facsimile calls and videoconferencing as standards evolve; however, these topics are outside the scope of this paper.
This paper is organized as follows, we discuss the Implementation of VoIP, having an overview of all the protocols required to use the concept of Internet Telephony. We then discuss all the components required to set up a connection and describe the function of each. Later in the end we discuss the QoS issues in the Implementation of VoIP.
2. Main Issues Concerning the Implementation of VoIP
For VOIP to become popular, some key issues need to be resolved. Some of these issues stem from the fact that IP was designed for transporting data while some issues have arisen because the vendors are not conforming to the standards. The key issues are discussed below:
2.1 Quality of voice
As IP was designed for carrying data, so it does not provide real time guarantees but only provides best effort service. For voice communications over IP to become acceptable to the users, the delay needs to be less than a threshold value and the IETF (Internet Engineering Task Force) is working on this aspect. To ensure good quality of voice, we can use Echo Cancellation, Packet Prioritization (giving higher priority to voice packets) or Forward Error Correction
2.2 Interoperability
In a public network environment, products from different vendors need to operate with each other if voice over IP is to become common among users. To achieve interoperability, standards are being devised and the most common standard for VOIP is the H.323 standard.
2.3 Security
This problem exists because in the Internet, anyone can capture the packets meant for someone else. Using encryption and tunneling can provide some security. The common tunneling protocol used is Layer 2 Tunneling protocol and the common encryption mechanism used is Secure Sockets Layer (SSL).
2.4 Integration with Public Switched Telephone Network (PSTN)
While Internet telephony is being introduced, it will need to work in conjunction with PSTN for a few years. We need to make the PSTN and IP telephony network appear as a single network to the users of this service.
2.5 Scalability
As researchers are working to provide the same quality over IP as normal telephone calls but at a much lower cost, so there is a great potential for high growth rates in VOIP systems. VOIP systems needs to be flexible enough to grow to large user market and allow a mix of private and public services.
3. Implementation of Voice over IP
Voice over Internet Protocol (VoIP) is a means to talk over IP instead of solely over the PSTN. VoIP can be implemented in several ways, as shown in Figure 1. The first scenario depicts a voice call made from one PSTN telephone to another. This can call either be transmitted over traditional analog lines, or can be converted to IP, then back to the PSTN. This would be done to reduce cost by exploiting utilization optimization. The next scenario portrays a voice call made from a PSTN telephone to a voice application residing on a personal computer (PC). Finally, the third scenario illustrates a voice call initiated from the PC via its VoIP server, acting in a PSTN capacity, which is routed over the Internet to a telephone attached to an organization's call center, usually a Private
Branch Exchange (PBX). Not shown in the diagram is a fourth scenario, which is simply a PC-to-PC call where the voice signal is transported via IP without accessing the PSTN.
Before delving into the details of VoIP and the topics normally associated with it, such as vocoders and the slew of industry standards, an overview of the Transmission Control Protocol/Internet Protocol (TCP/IP) will be provided. VoIP interacts intimately with TCP/IP, be it for call setup, the actual conversation, or call teardown, so it is prudent to understand this concept.
3.1 Overview of TCP/IP
TCP/IP is defined as an industry standard suite of protocols that computers use to find, access, and communicate with each other over a transmission medium. In this context, a protocol is the set of standards and rules that a machine's hardware and software must
Figure 1. VOIP Applications
follow in order to be recognized and understood by other computers. The protocol suite is implemented via a software package most commonly known as the TCP/IP stack, which breaks the job into a number of tasks. Each layer corresponds to a different facet of communication. The TCP/IP architecture consists of four "layers" performing certain functions:
1. Application layer, 2. Transport layer, 3. Internet layer and
4. Physical (network interface) layer.
Each layer contains protocols, which will be briefly summarized here. A full-scale description of each layer and its underlying functionality is well beyond the scope of this paper Figure 2 describes the TCP/IP reference model and how it maps to the Open Systems Interconnected reference model (OSI/RM), the standard that all other protocols follow.
Figure 2. OSI and TCP/IP Reference Models
When transmitting voice over the Internet, the data being sent starts from the application layer (typically via the GUI), traverses down the "stack" to the network interface card (NIC) with each layer adding header and trailer frames. It is then sent to the receiver, where the data goes up the "stack" in reverse order, this time stripping the appropriate header and trailer frames.
3.2 Packetization
Given the nature of addition and removal of header/trailer data in each packet, there is an innate packetization and processing delay. For a latency-sensitive application such as voice, it is imperative that this delay be minimized. Conversely, it is desired to efficiently transmit packets over the Internet to fully utilize the bandwidth. There is clearly a trade-off in the desire to maintain small packets to minimize delay and the desire to send a large payload to minimize the overhead due to header content, thus maximizing payload efficiency. Packets are efficient for data transfer, but are not so attractive for real-time services such as voice.
The smallest packetization delay obviously occurs if only one sample of voice was sent at a time. However, that would cause a great number more of packets to be sent which would strain packetization processing as the single sample traversed the TCP/IP stack. If voice were digitized at 8,000 samples/s, where each sample is 1 byte, then a 500-byte packet would take 62.5 ms to fill. For a desired delay of no more than 100 ms, it would mean that 62.5 percent of the delay budget is spent in packetization. Each voice packet
OSI Ref. TCP/IP
Ref. Voice GUI TCP UDP IP NIC A P S T N D.L. P A T I P
incurs an uncompressed 40-byte header that comprises 20 bytes for the IP header, 8 bytes for the UDP header, and 12 bytes for the Real-Time Transport Protocol (RTP) header. The IP header consists of several fields, including version, its length, type of service, flags, time to live, protocol, header checksum, and source and destination IP addresses. The UDP header contains 8 bytes of Protocol Control Information (source and destination ports, UDP length and checksum). Finally, the RTP packet is used on top of UDP to allow the transport of isochronous data across a packet network, which introduces jitter and may send packets out of order.
4. Components of VoIP
The Public Switched Telephone Network (PSTN) is the collection of all the switching and networking equipment that belongs to the carriers that are involved in providing telephone service. In this context, the PSTN is primarily the wired telephone network and its access points to wireless networks, such as cellular. The overall technology requirements of an Internet Protocol (IP) telephony solution can be split into four categories: signaling, encoding, transport and gateway control.
The purpose of the signaling protocol is to create and manage connections between endpoints, as well as the calls themselves. Next, when the conversation commences, the analog signal produced by the human voice needs to be encoded in a digital format suitable for transmission across an IP network. The IP network itself must then ensure that the real-time conversation is transported across the available media in a manner that produces acceptable voice quality. Finally, it may be necessary for the IP telephony system to be converted by a gateway to another format-either for interoperation with a different IP-based multimedia scheme or because the call is being placed onto the PSTN.
Figure 3 displays processing that must occur between the user’s voice input and output. The diagram illustrates the necessary steps to achieve packetized voice, from data processing by the digital signal processor (DSP) to transmitting packets over IP. There are numerous packet-handling processes that must be encountered; hence, a nontrivial amount of latency (time delay) is present, which affects perceived voice quality.
4.1 SS7
Once a user dials a telephone number (or clicks a name hyperlinked to a telephone number), signaling is required to determine the status of the called party—available or
busy—and to establish the call. Signaling System 7 (SS7) is the set of protocols
(standards for signaling) used for call setup, teardown, and maintenance in the Public Switched Telephone Network (PSTN). It is currently the one being used in North America to establish and terminate telephone calls. SS7 is implemented as a packet-switched network and typically uses dedicated links, nodes and facilities. In general, it is a non-associated, common channel out-of-band signaling network allowing switches to communicate during a call. SS7 signals may traverse real or virtual circuits on links that also carry voice traffic.
However, the industry is moving toward a converged network infrastructure to provide a more efficient and effective way of handling increased call volumes as well as deliver new and enhanced services. The integration of SS7 and IP will provide significant benefits. Figure 4 depicts a type of VoIP network utilizing an SS7-to-IP gateway. SS7 provides the call control on either side of the traditional PSTN, while H.323/Session Initiation Protocol (SIP) provides call control in the IP network. (Neither H.323 nor SIP alone has a complete set of IP telephony protocols.) The media gateway provides circuit-to-voice conversion.
Figure 4. SS7 based VoIP Network 4.2 H.323
H.323, ratified by the International Telecommunication Union Telecommunication (ITU-T), is a set of protocols for voice, video, and data conferencing over packet-based networks, such as the Internet. The H.323 protocol stack is designed to operate above the transport layer of the underlying network. Therefore, H.323 can be used on top of any packet-based network transport, for instance TCP/IP, to provide real-time multimedia communication. H.323 specifies protocols, including Q.931, H.225, H.245, and ASN.1,
for real-time point-to-point audio communication between two terminals on a packet-based network that does not provide a guaranteed quality of service (QoS). The scope of H.323, however, is much broader and encompasses networking multipoint conferencing among terminals that support not only audio but also video and data communications. In a general H.323 implementation, three logical entities are required: gateways, gatekeepers and multipoint control units (MCUs). Terminals, gateways, and MCUs are collectively known as endpoints. It is possible to establish an H.323-enabled network with just terminals, which are H.323 clients. Yet for more than two endpoints, a MCU is required. It can be combined with a terminal, gateway or gatekeeper.
4.3 SIP
Session Initiation Protocol, SIP, defined by the Internet Engineering Task Force IETF), is a signaling protocol for telephone calls over IP. Unlike H.323, however, SIP was designed specifically for the Internet. It exploits the manageability of IP and makes developing a telephony application relatively simple. SIP is an application- layer control (signaling) protocol for creating, modifying and terminating sessions with one or more participants. SIP can be employed to initiate sessions and invite members to sessions that have been advertised by other means, such as via multicast protocols. The signaling protocol transparently supports name mapping and redirection services. This allows the implementation of intelligent network telephony subscriber services. These facilities also enable personal mobility-the ability of end users to originate and receive calls and access subscribed telecommunication services on any terminal in any location. This mobility can be augmented via wireless VoIP. SIP supports five facets of establishing and terminating multimedia communications:
• User location: determination of the end system to be used for communication; • User capabilities: determination of the media and media parameters to be used;
• User availability: determining the called party’s willingness to engage in communications;
• Call setup: “ringing,” establishing call parameters at both called and calling party; • Call handling: including transfer and termination of calls.
SIP can also initiate multiparty calls using a multipoint control unit MCU or a fully meshed interconnection instead of a multicast. Gateways that connect PSTN parties can also use SIP to set up calls between them. The protocol is designed as part of the overall Internet Engineering Task Force (IETF) multimedia data control architecture. It incorporates many protocols, for example Resource Reservation Protocol (RSVP) and Real- Time Transport Protocol (RTP), for proper functionality and operation.
Table 1. Comparison of H.323 and SIP 4.4 Voice coders
An efficient voice encoding and decoding mechanism is vital for using the packet-switched technology. The purpose of a voice coder (vocoder)-also referred to as a codec (coding/decoding)- is to use the analog signal (human speech) and transform and compress it into digital data. A number of factors must be taken into account including bandwidth usage, silence compression, intellectual property, look-ahead and frame size, resilience to loss, layered coding, and fixed-point vs. floating point digital signal processor (DSPs).
The bit-rate of available narrowband vocoders ranges from 1.2 to 64 kbps, with an inevitable effect on the quality of the restituted voice. There is ordinarily, but not always, a trade-off between voice quality and bandwidth used. Using today’s most efficient vocoder allows quasi-toll quality bandwidth usage to be as low as 5 kbps. Toll quality is recognized as the standard of a long-distance PSTN call. As newer and more sophisticated algorithms are developed, this bit-rate will decrease. This will permit more samples to be squeezed more efficiently while minimally sacrificing quality, if at all.
The algorithmic delay introduced by a coding/decoding sequence is the frame length plus the look-ahead size. A vocoder with a small frame length has a shorter delay than one with a longer frame length, but it introduces a larger overhead. Most implementations choose to send multiple frames per packet. Thus, the real frame length to take into account is the sum of all frames stacked in a single IP packet. The smaller the frame size, the more frames in an IP packet; thereby, there is minimal influence on latency.
4.5 RTP
Real-time Transport Protocol (RTP) provides end-to-end delivery services for data with real-time characteristics. Those services include payload type identification; sequence numbering, time stamping and delivery monitoring. Applications typically run RTP on top of User Datagram Protocol (UDP) to make use of its multiplexing and checksum services. In fact, both protocols contribute parts of the transport protocol functionality; however, RTP may be used with other apposite network layer or transport-layer protocols. RTP does not intrinsically provide any mechanism to ensure timely delivery or
provide other Quality of Service guarantees. Instead, RTP relies on lower-layer services to provide them. A signaling protocol also must set up the connection and negotiate the media format that will be used. RTP does not guarantee delivery or prevent out-of order delivery, nor does it assume that the network can reliably deliver packets in sequence. 4.6 RTCP
Real-Time Control Protocol (RTCP) is based on the periodic transmission of control packets to all participants in the session. It uses the same distribution mechanism as the data packets. The underlying protocol must provide multiplexing of the data and control packets. RTCP performs the following functions:
• Provide feedback on the quality of the data distribution (primary function);
• Carry a persistent transport-layer identifier for a Real-time Transport Protocol (RTP) source, canonical name;
• Controls the rate in order for RTP to scale up to a large number of participants; and • Conveys minimal session control information.
4.7 Gateway control
Gateways are responsible for converting packet-based audio formats into protocols understandable by PSTN systems. The aforementioned signaling protocols provide more services than are necessary, such as service creation and user authentication, which are irrelevant for gateways. Vendors have gravitated towards simplified Device Control Protocols rather than all encompassing signaling protocols.
The IETF standard Media Gateway Control Protocol (MGCP) is a merger between the Internet Protocol Device Control and the Simple Gateway Control Protocol. The Megaco protocol (H.248), which is still evolving, is MGCP’s progeny. It contains all of MGCP’s functionality, plus superior controls over analog telephone lines and the ability to transport multiple commands in a single packet. Media gateways will be the junctions that provide paths between switched and packet networks for voice. When media gateways are initially set up for communication, a vocoder approach normally is used. Megaco-related standards will enable support of existing and new applications of telephone service over hybrid telephone networks containing an assortment of technologies.
5. QoS Requirements for VoIP
H.323, the global standard for packet-based multimedia communication like VoIP, provides telephone functionality that is comparable to the public switched telephone network. But the other key requirement for successful VoIP communications is quality of service (QoS). Voice communications requires networks with very low latency, low jitter, and minimal packet loss. Two factors drive these QoS requirements:
• Very high user expectations
Telephone users have very high expectations because they are accustomed to the QoS provided by the PSTN and private PBX based networks. These connection-oriented, circuit-switched networks provide each user with dedicated bandwidth for the duration of each call. The result is extremely low latency and jitter, and minimal disruption due to "noise" on the connections. Low latency allows users to carry on natural conversations. Users differ in their delay tolerance, but a good rule of thumb is to limit one-way delay to about 150 milliseconds (ms). This delay budget includes the processing delays introduced by the end systems plus the latency of the network.
When coders/decoders (codecs) in VoIP terminals compress voice signals they introduce three types of delay:
• Processing, or algorithmic, delay – the time required for the codec to encode a single voice frame
• Look ahead delay – the time required for a codec to examine part of the next frame while encoding the current frame (most compression schemes require look ahead)
• Frame delay – the time required for the sending system to transmit one frame
The following are some commonly used ITU-T standard codecs and the amount of one-way delay that they introduce:
• G.711 uncompressed 64 Kbps speech adds negligible delay
• G.729 encodes speech at 8 Kbps and adds a one-way delay of about 25 ms.
• G.723.1 encodes speech at 6.4 Kbps or 5.3 Kbps and adds a one-way delay of about 67.5 ms.
In general, greater levels of compression introduce more delay and require lower network latency to maintain good voice quality. When using G.723.1 compression, for example, the network component of one-way delay should not exceed:
150ms – 67.5 ms = 82.5 ms. 6. Summary and Future Work
In this paper we discuss the basic VoIP features, including the Implementation Issues, Implementation and the various protocols required in the Implementation of VoIP. We then discuss the QoS issues in the Implementation of VoIP.
The future work could be a detailed study on the Protocol Architecture of VoIP. This also seems to have enough scope of Connecting Computing Devices- in Wireless Networks and the Impact of VoIP in real time voice traffic. We can also study the Voice Coders and suggest some changes to develop better Voice Coders.
7. References:
[1] C.H.B Chan and V.C.M Leung “Voice over Quantum IP”, Electrical and Computer Engineering, 2000 Canadian Conference on , Volume: 1 , 2000 Page(s): 459 -463 vol.1 [2] Mehta, P.; Udani, S. “Voice over IP” IEEE Potentials , Volume: 20 Issue: 4 , Oct.-Nov. 2001 Page(s): 36 -40
[3] http://www.cis.ohio-state.edu/~jain/refs/ref_voip.htm
[4] http://www.iec.org/online/tutorials/vfoip/topic01.html
[5] http://www.ti.com [Texas Instruments]
[6] http://www.research.avayalabs.com/project/voip/ [7] http://www.ericsson.co.nz/ericsson/datacom/broadband/attachments/VoiceOverIP-QoS.pdf [8] http://www.aarnet.edu.au/network/design/voice/configuration.pdf [9]http://www.cisco.com/univercd/cc/td/doc/product/access/acs_mod/1700/1750/1750voi p/intro.htm