Thales Land & Joint Systems LIP6 – DEA réseaux
Technical study
Vincent MAURY
Voice over IP
Quality of Service
April, 19th 2004
Table of content
Introduction 5
Voice over IP 6
Introduction 6
Aim 6
Benefits and stakes 6
Problems 7
VoIP protocols 8
H.323 9
Introduction 9
H.323 specification 9
Problems 11
SIP 12
References 12
Description 12
Example 12
The user agents 13
The messages 13
Requests and responses 14
Quality of service 15
Server 15
SOAP 15
Comparison 16
VoiceXML 18
Introduction 18
Description 18
Architecture and messages 18
MGCP 19
Architecture 19
Messages 20
Example 20
Relation with H.323 and SIP 21
Conclusion 22
Megaco 22
Megaco v1/H.248 22
Megaco v2/H.248.1 22
SIP-H.323 / MGCP-Megaco comparison 22
QoS protocols 24
Intserv & RSVP 24
Introduction 24
Intserv 24
RSVP 24
Reservation process 24
Summary 25
Diffserv 25
Introduction 25
Classes 25
Comparison 26
MPLS 26
RSVP-TE 28
Introduction 28
LSP establishment 28
Characteristics 29
NSIS 29
Concerning SIP and H.323 30
SIP Architecture 31
Components 31
1) The exchange of session parameters using SIP and SDP 32
2) Resource reservation 33
3) End of the establishment 33
Release 34
Conclusion 35
Voice over IP 35
Perspectives 35
Choices in the project 35
VoIP in the world 35
Annexe : implementations 36
H.323 36
SIP 36
VoiceXML 38
RSVP-TE 38
RPC 39
Annexe 2 : Use of these protocols in the industry 40
Nortel Networks 40
Wellx 40
Cisco 40
Mitel 40
VocalData 40
Alcatel 40
Bibliography 41
General documentation 41
VoIP protocols 41
QoS protocols 42
Implementation 42
Perspectives 43
In the industry 43
Table of figures
Figure 1 : H.323 and SIP protocol stack 8
Table 1 : H.323 protocol suite 10
Figure 2 : H.323 call establishment example 11
Figure 3 : SIP call establishment 13
Table 2 : SIP answer codes 14
Figure 4 : SIP and SOAP 16
Table 3 : SIP and H.323 comparison 17
Figure 5 : VoiceXML architecture 18
Figure 6 : MGCP call control 21
Table 4 : IntServ & DiffServ comparison 26
Figure 7 : MPLS architecture example 27
Figure 8 : LSP establishment in RSVP-TE 28
Figure 9 : NSIS layer protocols 29
Figure 10 : Quality of Service in H.323 30
Figure 11 : SIP architecture 31
Figure 12 : SIP call establishment, first step 32
Figure 13 : SIP call establishment, second step 33
Figure 14 : SIP call establishment, third step 33
Figure 15 : RSVP-TE and RPC call 38
Introduction
During the last forty years, a network called PSTN (Public Switched Telephone Network) has been deployed throughout the World, initially made to provide a phoning service. In parallel, Internet-like networks based on the IP protocol have been growing exponentially, but they follow an opposite conception : made to carry data, they do not offer any guaranty of delivering or delay. However, phoning over these networks would present many advantages, one of which is a very low cost.
In this paper, we will study Voice over IP (VoIP), which is the ability to phone using IP networks. First we will introduce VoIP, looking at the main objectives and problems. Then we will present a few existing VoIP protocols for call establishment. The second chapter discusses the problem of quality in IP networks and presents a few protocols that give a solution to this lack of guaranty. Finally we will describe an example of SIP architecture that would be able to provide quality of service in telephony over IP.
A few implementations of these protocols are described in the annexe.
Voice over IP
Introduction
There are mainly two techniques for two interlocutors to talk [I]. On the one side, the circuit-mode telephony, like the PSTN. It consists in opening a communication canal between two persons and reserving the full bandwidth for these two persons. Even if you do not talk, the bandwidth is used and lost. No matter which transport method is used, the logic remains connexion-oriented. Telephony over ADSL is one of these techniques because it uses ATM (Asynchronous Transfer Mode) as transport mode. Thus it is circuit telephony and it is not that far from classical telephony of the PSTN.
On the other side, the packet mode initiates a session – not a connexion – between two users. The network then has a certain level of bandwidth which may be fully used. It means that the network is no longer reserved for the two users. The voice of the users is modulated in data packets sent over the network. Several persons can then dialog during the same time on the network, as long as the bandwidth is not overloaded.
We are interested in the second way of phoning: in packet mode.
Aim
The aim of voice over IP is to apply to voice the treatment made to the data packets travelling through Internet, using IP protocol. 3 types of VoIP connexion are possible [VI][III][VIII] :
- if both correspondents have a PC (with the necessary equipment like a microphone, headphones…), they will be able to communicate provided that they know each other’s address. This technology was introduced in 1995 by VocalTec ;
- if a PC user A wants to call a person B using a phone, he must use a service provider like Net2Phone on the Internet. This provider sets a gateway between Internet and the PSTN ;
- if both users have a phone, the gateway model is reproduced for the two phones. The two gateways inter-communicate using an Internet-like network.
Benefits and stakes
The benefits of VoIP technology can be summarized as follows [XVI] :
- Cost Reduction. Instead of having both a computer network and a circuit-switched telephone network, an enterprise could use VoIP to merge both networks into one. Reducing long distance telephone costs would provide a good reason for introducing VoIP. Indeed, flat rate pricing is available with the Internet and can result in considerable savings for voice.
- Simplification. Merging networks would also simplify the administration. In particular, VoIP may enable the creation of new services using voice and other data types, like unified messaging…
An integrated infrastructure that supports all forms of communication
allows more standardization and reduces the total equipment investment. This combined infrastructure can support dynamic bandwidth optimization.
- Consolidation. In the enterprise, system management can be provided for both voice and data services using VoIP. Universal use of the IP protocols for all applications provides both reduced complexity and more flexibility and also related facilities such as directory services and security services may be more easily shared.
- Advanced Applications. Even though basic telephony is the initial application for VoIP, the longer term benefits are expected to be derived from multimedia and multi-service applications. For example, Internet commerce solutions can combine WWW access to information with a voice call button that allows immediate access to a call centre agent from the PC. Needless to say, voice is an integral part of conferencing systems that may also include shared screens, whiteboarding (sharing and editing document, photos and drawings with others in real-time), etc. Combining voice and data features into new applications will provide the greatest returns over the longer term.
Moreover, VoIP uses about ten times less bandwidth than classical telephony.
Problems
The main problem is the communication quality, which is still not optimal. As Internet is natively best-effort, you may experience long delays that would make you talk each one after each other. You may even lose parts of words, that corresponds to lost packets. These problems are studied in [IX] inside Sprint network, and [X][XLVI] in the Internet.
VoIP protocols
[XIX] specifies which functions or characteristics a signalling protocol for voice communication should be capable of performing. They are :
- User Location Function. It is essential that the Caller should be able to locate the Callee with the User Location Function. The Callee could be at different places at different times and he/she could be reached by several means (e.g. Callee’s PC or Mobile Phone or traditional Landline Phone) simultaneously. For terminals with no permanent IP addresses, the Dynamic Host Configuration Protocol (DHCP) is used to assign temporary IP addresses to them.
- Session or Call Establishment Function. This function basically allows the Callee to reject, accept or forward the call to another person or any other communication devices or tools like the emails or the voice mail services.
- Session Negotiation Function. This function is also known as the Session Capabilities Exchange Function whereby all the call participants involved in a session agree on a set of session parameters so that different media can take place in multicast or unicast format. These media streams usually require different speech and video compression algorithms.
- Call Participant Management Function. This function manages the call participants joining in or leaving a session.
- Feature Invocation. Certain call features like hold and transfer require communication between the call participants.
We will study 3 VoIP protocols offering these functions. The first two protocols use the architecture illustrated on Figure 1, coming from [XIII]:
Figure 1 : H.323 and SIP protocol stack
We are interested in signalling protocols for call establishment. The first protocol on the left is H.323. We will later have a look at the SIP/SDP stack. As we see here, both protocols are based over IP, whatever physical layer we use. Concerning the transport layer, H.323 uses TCP, whereas SIP/SDP is mainly used with UDP, even if it is independent of the transport protocol.
H.323
Introduction
The Internet industry is tackling the problems of network reliability and sound quality on the Internet through the gradual adoption of standards. In May 1996, the International Telecommunications Union (ITU) ratified the H.323 specification, which defines how voice, data, and video traffic will be transported over IP networks ; it also incorporates the T.120 data-conferencing standard. The recommendation is based on the real-time protocol/real-time control protocol (RTP/RTCP) for managing audio and video signals.
H.323 addresses the Internet-telephony applications by defining how delay sensitive traffic, (i.e., voice and video), gets priority transport to ensure end-to-end real-time communications service over the Internet (the H.324 specification defines the transport of voice, data, and video over regular telephony networks, while H.320 defines the protocols for transporting voice, data, and video over ISDN networks).
H.323 is a set of recommendations, one of which is G.729 for audio codecs, which
the ITU ratified in November 1995.
H.323 specification
[XIV] provides a list of protocols used in H.323:
SignallingH.323 V2 / ITU / Packet-based multimedia communications systems
H.225.0 / ITU / Call signalling protocols and media stream packetization for packet-based multimedia (includes Q.931 and RAS)
H.225.0 Annex G / ITU / Gatekeeper to gatekeeper (inter-domain) communications
H.245 / ITU / Control protocol for multimedia communications
H.235 / ITU / Security and encryption for H-series multimedia terminals
H.450.x / ITU / Supplementary services for multimedia (call transfer, diversion, hold, park and pickup, call waiting, message waiting)
H.323 Annex D / ITU / Real-time fax using T.38
H.323 Annex E / ITU / Call connection over UDP
H.323 Annex F / ITU / Single-use device
T.38 / ITU / Procedures for real-time group 3 facsimile communications over IP networks
T.120 series / ITU / Data protocols for multimedia conferencing
Encoding
Pulse Code Modulation (PCM) Variants:
G.711 / ITU / Pulse Code Modulation (PCM) 48 to 64kbps
G.722 / ITU / Sub-band ADPCM
G.726 / ITU / Adaptive Differential PCM (ADPCM) 16 to 40kpbs
G.727 / ITU / AEDPCM
Codebook Excited Linear Prediction (CELP) Variants:
G.723.1 / ITU / MPE/ACELP
H.728 / ITU / LD-CELP
G.729 / ITU / CS-ACELP
G.729 / ITU / CS-ACELP
Transport
RTP (RFC 1889) / IETF / RTP: Real-time transport protocol
RTCP (RFC 1889) / IETF / RTCP: Real-time transport control protocol
RTSP (RFC 2324) / IETF / RTSP: Real-time streaming protocol
Gateway Control
MGCP / IETF / Media gateway control protocol (Internet Draft)
MEGACO / IETF / MEGACO protocol (Internet Draft)
SGCP / IETF / Simple gateway control protocol (Internet Draft)
IPDC / IETF / IP device control (Internet Draft)
H.GCP / ITU / Proposed recommendations for gateway control protocol
Table 1 : H.323 protocol suite
Despite the ITU recommendation, however, the Voice over IP Forum in March 1997 voted to recommend the G.723.1 specification over the G.729 standard. The industry consortium, which is led by Intel and Microsoft, agreed to sacrifice some sound quality for the sake of greater bandwidth efficiency-G.723.1 requires 6.3 kb/s, while G.729 requires 7.9 kb/s. Adoption of the audio codec standard, while an important step, is expected to improve reliability and sound quality mostly for Intranet traffic and point-to-point IP connections. To achieve PSTN-like quality, standards are required to guarantee delay and jitter of Internet connections.
The transport protocol RTP, on which the H.323 recommendation is based, essentially is a new protocol layer for real-time applications; RTP-compliant equipment will include control mechanisms for synchronizing different traffic streams. However, RTP does not have any mechanisms for ensuring the on-time delivery of traffic signals or for recovering lost packets. RTP also does not address the quality of service (QoS) issue related to guaranteed bandwidth availability for specific applications. Currently, there is a draft signalling-protocol standard aimed at strengthening the Internet’s ability to handle real-time traffic reliably (i.e., to dedicate end-to-end transport paths for specific sessions much like the circuit-switched PSTN does). If adopted, the resource reservation protocol, or RSVP, will be implemented in routers to establish and maintain requested transmission paths and quality-of-service levels.
Problems
H.323 is to close from the classical telephony model. Thus it offers poor services (for voice, video and data). Moreover, in ITU-T, the operators are implied in the definition of the protocol, so the conception of H.323 is telecommunication-oriented.
An example of call establishment with H.323 is described in Figure 2 [XVIII] :