3GPP Third Generation Partnership ProjectA-BGF Access Border Gateway function AAD Average Acknowledgement Delay AAL2 ATM Adaptation Layer 2 ACD Automatic Call Distribution ACELP Algebrai
Trang 1Deploying VoIP Protocols and IMS Infrastructure, Second Edition
Olivier Hersent
CEO of Actility
A John Wiley and Sons, Ltd., Publication
Trang 3Deploying VoIP Protocols and IMS Infrastructure, Second Edition
Trang 5Deploying VoIP Protocols and IMS Infrastructure, Second Edition
Olivier Hersent
CEO of Actility
A John Wiley and Sons, Ltd., Publication
Trang 6First edition published 2005
Registered office
John Wiley & Sons Ltd, The Atrium, Southern Gate, Chichester, West Sussex, PO19 8SQ, United Kingdom For details of our global editorial offices, for customer services and for information about how to apply for permission to reuse the copyright material in this book please see our website at www.wiley.com.
The right of the author to be identified as the author of this work has been asserted in accordance with the Copyright, Designs and Patents Act 1988.
All rights reserved No part of this publication may be reproduced, stored in a retrieval system, or transmitted,
in any form or by any means, electronic, mechanical, photocopying, recording or otherwise, except as permitted by the UK Copyright, Designs and Patents Act 1988, without the prior permission of the publisher Wiley also publishes its books in a variety of electronic formats Some content that appears in print may not
be available in electronic books.
Designations used by companies to distinguish their products are often claimed as trademarks All brand names and product names used in this book are trade names, service marks, trademarks or registered trademarks of their respective owners The publisher is not associated with any product or vendor mentioned
in this book This publication is designed to provide accurate and authoritative information in regard to the subject matter covered It is sold on the understanding that the publisher is not engaged in rendering professional services If professional advice or other expert assistance is required, the services of a competent professional should be sought.
Library of Congress Cataloguing-in-Publication Data
Trang 7Abbreviations ix
1.1 Transporting voice, fax, and video over a packet network 11.1.1 A Darwinian view of voice transport 11.1.2 Voice and video over IP with RTP and RTCP 5
2.1.3 Relation between H.323 and H.245 versions, H.323 annexes,
2.2.1 The ‘hello world case’: simple voice call from terminal A
Trang 82.2.2 A more complex case: calling a public phone from
2.2.4 H.323 calls across multiple zones or administrative domains 86
2.3.6 Using RAS properly and only when required 106
2.5.2 Contacting an email alias with H.323 and the DNS 115
3.1.2 From RFC 3261 to 3GPP, 3GPP2 and TISPAN 166
3.3.2 The proxy function, back to back user agents 230
Trang 93.5 Instant messaging (IM) and presence 2543.5.1 Common profile for instant messaging (CPIM) 2553.5.2 RFC 3265, Specific Event Notification 2603.5.3 RFC 3428: SIP extensions for instant messaging 266
4.1.1 Centralized value added services platforms on switched
telephone networks: the ‘tromboning’ issue 269
4.1.3 How VoIP solves the ‘tromboning’ issue The value added
4.1.4 The IMS architecture is ideal for mobile
4.4.3 Summary of SIP extensions required in an IMS network 311
5.2.4 Extensions for phone user interface control 354
Trang 106 Advanced Topics: Call Redirection 367
6.1.1 Call transfer, call forward, call deflection 367
6.1.3 Reference network configurations in the PSTN 3716.1.4 Reference network configurations with VoIP 374
6.1.6 VoIP call redirection and call routing 388
7.1 Introduction to Network Address Translation 393
7.2 Workarounds for VoIP when the network cannot be controlled 398
7.2.2 Using port forwarding to solve the wrong media
7.2.4 Other proposals: COMEDIA and TURN 4027.3 Recommended network design for service providers 4047.3.1 Avoid NAT in the customer premises for VoIP 405
Trang 113GPP Third Generation Partnership Project
A-BGF Access Border Gateway function
AAD Average Acknowledgement Delay
AAL2 ATM Adaptation Layer 2
ACD Automatic Call Distribution
ACELP Algebraic-Code-Excited Linear-Prediction
ACL Access Control List
ACM Address Complete Message
ADEV Average Delay Deviation
ADPCM Adaptive Differential Pulse Mode ModulationADSL Asymmetric Digital Subscriber Line
AES Advanced Encryption Standard
AGCF Access Gateway Control Function
AMF Access Management Function
AMR Adaptive Multi-Rate
AMR-WB Adaptive Multi-Rate (Wide Band)
AN-GW Access Network Gateway
ANDSF Access Network Discovery and Selection Function
ANSI American National Standard Institute
AoR SIP Address of Record
APDU Application Protocol Data Unit
Trang 12API Application Programming Interface
ARF Access Relay Function
ASCII American Standard Code for Information Interchange
ASF Application Server Function
ASN-1 Abstract Syntax Notation One
ASP Application Service Provider
ASR Automatic Speech Recognition or Answer Seizure RatioATM Asynchronous Transfer Mode
AVT Audio/Video Transport
B2BUA Back-to-back User Agent
BASIC Beginners’ All-purpose Symbolic Instruction Code
BBERF Bearer Binding and Event Reporting Function
BGCF Breakout Control Gateway Function
BGF Border Gateway Function
BICC Bearer Independent Call Control
BTF Basic Transport Function
C-BGF Core Border Gateway function
CALEA Communication Assistance for Law Enforcement Act
CallID Call Identifier
CBC Cipher Block Chaining
CCF Charging Collector Function
CCIR Consultative Committee for International Radio (ITU)
CDMA Code Division Multiplex Access
CELP Code-excited Linear Prediction
CFU Call Forwarding Unconditional
CIC Circuit Identification Code
CID Conference Identifier
Trang 13CIF Common Intermediary Format
CLEC Competitive Local Exchange Carrier
CLF Connectivity Session Location and Repository FunctionCLIP Calling Line Identity Presentation
CLIR Calling Line Identity Restriction
CMTS Cable Modem Termination System
CND Customer Network Device
CNG CalliNG; Comfort Noise Generator
CNG Customer Network Gateway
CNGCF CNG Configuration Function
CoIx Connectivity-oriented Interconnection
COMEDIA Connection-oriented Media Transport in SDP
COPS Common Open Policy Service
CPE Customer Premises Equipment
CPG Call Progress (Message)
CPIM Common Profile for Instant Messaging
CPL Call Processing Language
CPN Customer Premises Network
CPU Central Processing Unit
CRC Cyclic Redundancy Check
CRLF Carriage Return and Line Feed
CRV Call Reference Value
CS-ACELP Conjugate Structure, Algebraic Code-Excited Linear PredictionCSRC Contributing Source
CTI Computer Telephony Integration
DCME Digital Circuit Multiplication Equipment
DCS Distributed Call Signaling
DCT Discrete Cosine Transform
DES/CBC Data Encryption Standard, Cipher Block Chaining
DES Data Encryption Standard
DHCP Dynamic Host Configuration Protocol
DiffServ Differentiated Services
DIS Digital Identification Signal
DLSR Delay Since Last Sender Report
Trang 14DNS Domain Name System
DNSSEC Domain Name System Security Protocol
DOCSIS Data over Cable Service Interface Specification
DSL Digital Subscriber Line
DSMIP Dual Stack Mobile IP
DSP Digital Signal Processor
DSS1 Digital Subscriber Signaling 1
ECF Elementary Control Function
EFF Elementary Forwarding Function
ENUM “Electronic Numbers” Protocol
EPCF Endpoint Configuration Command
ePDG evolved Packet Data Gateway
ETSI European Telecommunications Standardisation InstituteETSI TIPHON ETSI Telephony and Internet Protocol Harmonization Over
NetworksETTB Ethernet to the Building
ETTX Ethernet to the<anything> (Curb, Home, Building)
FEC Forward Error Correction
FIF Fax Information Field
FIFO First in First Out
FIPS PUB Federal Information Processing Standards Publication
GEF Generic Extensibility Framework
GGSN Gateway GPRS Support Node
Trang 15GSM Global System for Mobile Communications
GTD Global Transparency Descriptor
GTP Generic Tunneling Protocol
HDLC High-level Data Link Control
HLR Home Location Register
HLR/AuC HLR Authentication Center
HSPA High Speed Packet Access
HSS Home Subscriber Server
HTML Hypertext Markup Language
HTTP Hypertext Transfer Protocol
I-BGF Interdomain Border Gateway function
I-CSCF Interrogating Call/Session Control Function
IAD Integrated Access Device
IAM Initial Address Message
IANA Internet Assigned Numbers Authority
IARI IMS Application Reference Identifier (IARI)
IBCF Interconnection Border Control Function
ICID IMS Charging Identifier
ICMP Internet Control Message Protocol
ICSI IMS Communication Service Identifier
IEC ISO International Electrotechnical Commission
IETF Internet Engineering Task Force
IFP Internet Fax Protocol
IFT Internet Fax Transmission protocol
ILS Internet Locator Service (Microsoft)
IMCN IP Multimedia Core Network
IMPI IP Multimedia Private Identity
IMPP Instant Messaging and Presence Protocol
IMPU IP Multimedia Public Identity
IMS IP Multimedia subsystem
IMTC International Multimedia Teleconferencing Consortium
INAP Intelligent Network Application Protocol
IntServ Integrated Services
IOI Inter Operator Identifier
IP Intelligent Peripheral
IP CAN Internet Protocol Connectivity Access Network
IP-PBX Internet Protocol–Private Branch Exchange
IPDC Internet Protocol Device Control
Trang 16IPR Intellectual Property Rights
IPSec Internet Protocol Security
IRC Internet Relay Chat
IRQ Information Request
IRR Information Request Response
ISDN Integrated Service Digital Network
ISP Internet Service Provider
ISUP ISDN USER PART protocol
ITSP Internet Telephony Service Provider
ITU International Telecommunications Union
IVR Interactive Voice Response
IWF Interworking Function
JFIF JPEG File Interchange Format
JPEG Joint Photographic Experts Group
LCD Liquid Crystal Display
LD-CELP Low-delay, Code-excited Linear Prediction
LDAP Lightweight Directory Access Protocol
LNP Local Number Portability
MEGACO Media Gateway Controller
MGCF Media Gateway Control Function
MGCP Media Gateway Control Protocol
Trang 17MME Mobility Management Entity
MMS Multimedia Message Service
MMUSIC Multiparty Multimedia Session Control
MP-MLQ Multipulse Maximum Likelihood Quantization
MPEG Moving Picture Experts Group
MPLS Multiprotocol Label Switching
MRFC Media (or Multimedia) Resource Function Controller
MRFP Media (or Multimedia) Resource Function Processor
MTP Message Transfer Part
MTT Minimum Transmission Time
MTU Maximum Transmission Unit
MWI Message Waiting Indication
NACF Network Access Configuration Function
NAPT Network Address and Port Translation
NAPTR Naming Authority Pointer Record
NAS Network Access Server
NASS Network Attachment Subsystem
NAT Network Address Translation
NCS Network Based Call Signaling Protocol
NFE Network Facility Extension
NTP Network Time Protocol
NTSC National Television System Committee
OSP Open Settlement Protocol
P-CSCF Proxy Call/Session Control Function
P-frame Prediction Frame
PAL Phase-alternation-line
PBDF Profile Data Base Function
PBX Private Branch Exchange
PCC Policy and Charging Control
PCEF Policy and Charging Enforcement Function
PCM Pulse Code Modulation
PCMA Pulse Code Modulation A Law
PCMU Pulse Code Modulationµ Law
Trang 18PCRF Policy and Charging Rule Function
PDF Policy Decision Function
PDN-GW Packet Data Network Gateway
PEP Policy Enforcement Point
PER Packed Encoding Rules
PES PSTN/ISDN Emulation Subsystem
PGR Pages Received (Fax)
PIDF Presence Information Data Format
PIM Protocol-independent Multicast
POSIX Portable Open System Interconnect
POTS Plain Old Telephone Service
PSTN Public Switched Telephone Network
QCIF Quarter CIFV (144∗176)
QoP Quality of Protection
RACF Resource and Admission Control Function
RACS Resource and Admission Control Subsystem
RAI Resource Availability Indicator
RAS Registration, Admission, Status Protocol
RC Reception Report Count
RCEF Resource Control Enforcement Function
RED Random Early Detection
RSA Rivest, Shamir, Adleman (public key algorithm)
RSIP Restart in Progress
RSVP Resource ReserVation Protocol
Trang 19RTC Return to Command
RTCP Real-time Control Protocol
RTO Retransmission Timeout
RTP/AVT Real Time Protocol under the Audio/Video Profile
RTP Real-time Transport Protocol
RTSP Real-time Streaming Protocol
S-CSCF Serving Call/Session Control Function
S/MIME Secure Multipurpose Internet Mail Extension
SAP Session Announcement Protocol
SBC Session Border Controller
SCN Switched Circuit Network
SCP Service Control Point
SCTP Stream Control Transport Protocol
SDES Source Description RTP Packet
SDL Specification and Description Language
SDP Session Description Protocol
SECAM S´equentiel Couleur `a M´emoire
SGCF Signaling Gateway Control Function
SGCP Simple Gateway Control Protocol
SGF Signaling Gateway Function
simcap Simple Capability (SDP Declaration)
SIMPLE SIP for Instant Messaging and Presence Leveraging ExtensionsSIP Session Initiation Protocol
SIPS Session Initiation Protocol Secure
SLF Subscription Locator Function
SMG Special Mobile Group (of ETSI)
SMS Short Message Service
SMTP Simple Mail Transfer Protocol
SoIx Service-oriented Interconnection
SS-CD Supplementary Service: Call Deflection
SS-CFB Supplementary Service: Call Forwarding on Busy
SS-CFNR Supplementary Service: Call Forwarding on No Reply
SS-CFU Supplementary Service: Call Forwarding UnconditionalSS-DIV All Diversion Supplementary Services
SSF Service Switching Function
Trang 20SSL Secure Sockets Layer
STP Signaling Transfer Point
STUN Simple Traversal of UDP through Network Address
Translators
TAPI Microsoft Telephony API
TCAP SS-7 Transaction Capabilities
TCF Training Check Function
TCP Transport Control Protocol
TCS Terminal Capability Set
TCS=0 NullCapabilitySet Call Flow in H.323
TDM Time Division Multiplexing
TE Terminal Equipment Unit
TFTP Trivial File Transfer Protocol
TGCF Trunking Gateway Control Function
TIA Telecommunications Industry Association (USA)
TIPHON Telephony and Internet Protocol Harmonization over Networks
(ETSI)TLS Transport Layer Security
TLV Type, Length, Value Format
TPKT Transport Packet (RFC 1006)
TURN Traversal Using Relay NAT
UAAF User Access Authorization Function
UCF Unregistration Confirm
UCS Universal Character Set
UDP User Datagram Protocol
UDPTL UDP Transport Layer
UICC Universal Integrated Circuit Card
UII User Input Indication
UMTS Universal Mobile Telecommunication System
UPSF User Profile Server Function
UPT Universal Personal Telephony
URI Uniform Resource Identifier
URJ Unregistration Reject
URL Uniform Resource Locator
Trang 21URN Uniform Resource Name
URQ Unregistration Request
USH Universit´e de Sherbrooke
UTF UCS Transformation Format
UTRAN UMTS Terrestrial Radio Access Network
VAD Voice Activity Detector
VASA Value Added Services Alliance
VLAN Virtual Local Area Network
VoIP Voice over Internet Protocol
VPIM Voice Profile for Internet Messaging
VPN Virtual Private Network
VSELP Vector Sum-excited Linear Prediction
WAP Wireless Application Protocol
XML eXtensible Markup Language
XMPP eXtensible Messaging and Presence Protocol
Trang 23Abstract Syntax Notation-1
(ASN-1)
Defined in ITU standard X.691
Access Control List (ACL) A packet filter on a router
Admission Confirm (ACF) A RAS message defined in H.225.0
Admission Reject (ARJ) A RAS message defined in H.225.0
Admission Request (ARQ) A RAS message defined in H.225.0
Application Protocol Data
Units (APDUs)
See H.450.1
Associate Session A related session Two related sessions must be
synchronized (e.g., an audio session can specify
a video session as being related) The receivingterminal must perform lip synchronization forthose sessions
Backus–Naur Form (BNF) See RFC 2234
Bandwidth Confirm (BCF) A RAS message defined in H.225.0
Bandwidth Reject (BRJ) A RAS message defined in H.225.0
Bandwidth Request (BRQ) A RAS message defined in H.225.0
Basic Encoding Rule (BER) See ASN.1
Call Identifier (Call-ID) A globally unique call identifier
Call Reference Value (CRV) A 2-octet locally unique identifier copied in all
Q.931 messages concerning a particular call (seealso conference identifier)
Conference Identifier (CID) This is not the same as the Q.931 Call Reference
Value (CRV) or the call identifier (CID) TheCID refers to a conference which is the actualcommunication existing between the
participants In the case of a multipartyconference, if a participant joins the conference,leaves, and enters again, the CRV will change,while the CID will remain the same
Trang 24The Common Intermediary
Format (CIF)
A video format which has been chosen because itcan be sampled relatively easily from both the525-line and 625-line video formats: 352× 288pixels
Contributing Source (CSRC) When an RTP stream is the result of a combination
put together by an RTP mixer of severalcontributing streams, the list of the SSRCs ofeach contributing stream is added in the RTPheader of the resulting stream as CSRCs Theresulting stream has its own SSRC
Disengage Confirm (DCF) A RAS message defined in H.225.0
Disengage Reject (DRJ) A RAS message defined in H.225.0
Disengage Request (DRQ) A RAS message defined in H.225.0
Dynamic Host Configuration
Fast-Connect A procedure to eliminate media delays after the
connection of the call introduced in H.323v2.Another name used for the same procedure isFast-Start
Fast-Start See Fast-Connect
Gatekeeper Confirm (GCF) A RAS message defined in H.225.0
Gatekeeper Request (GRQ) A RAS message defined in H.225.0
Gatekeeper Reject (GRJ) A RAS message defined in H.225.0
Information Request (IRQ) A RAS message defined in H.225.0
Information Request
Response (IRR)
A RAS message defined in H.225.0
Initial Address Message
(IAM)
SS7 ISUP message initiating a call set-up
Inter-mode Refers to a video-coding mode where compression
is achieved by reference to the previous, orsometimes the next, frame
Trang 25Interactive Voice Response
server (IVR)
A machine accepting DTMF or voice commands,and executing some logic which interacts withthe user using pre-recorded prompts or syntheticvoice
Internet Fax Transmission
(IFT)
A protocol, see ITU recommendation T.38
Internet Relay Chat (IRC) The famous ‘chat’ service of the Internet, based on
a set of servers mirroring text-basedconversations in real-time
Intra-mode Refers to a video-coding mode where compression
is achieved locally (i.e., not relatively to theprevious frame)
IP-PBX Private phone switch with a VoIP wide area
network interface Most IP-PBXs have an H.323WAN interface See also IPBX
IPBX Same as IP-PBX Some use the term IPBX for
private phone switches which use only VoIP(i.e., the phones are also IP phones), whereas anIP-PBX can be a traditional PBX with analogphones and only uses a WAN VoIP interface.See IP-PBX
Jitter Statistical variance of packet interarrival time It is
the smoothed absolute value of the meandeviation in packet-spacing change between thesender and the receiver The smoothing isusually done by averaging on a sliding window
of 16 instantaneous measures
Location Confirm (LCF) A RAS message defined in H.225.0
Location Reject (LRJ) A RAS message defined in H.225.0
Location Request (LRQ) A RAS message defined in H.225.0
macroblock For the H.261 algorithm, a group of four 8∗8
Multipoint Processor (MP) The H.323 entity which processes the media
streams of the conference and does all thenecessary switching, mixing, etc
Trang 26Naming Authority Pointer
This defines a standard way to format a timestamp,
by writing the number of seconds since 1/1/1900with 32 bits for the integer part and 32 bits forthe decimal part expressed as number of 1/232seconds (e.g., 0x800000000 is 0.5 s) A compactformat also exists with only 16 bits for theinteger part and 16 bits for the decimal part Thefirst 16 digits of the integer part can usually bederived from the current day, the fractional part
is simply truncated to the most significant 16digits
P-frame Prediction frame obtained by motion estimation or
otherwise, and representing only the differencebetween this image and the previous one.Packed Encoding Rules
(PER)
See ASN.1
Payload Type (PT) As defined by RTP
port An abstraction that allows the various destinations
of the packets to be distinguished on the samemachine (e.g., Transport Selectors, or TSELs, inthe OSI model, or IP ports) On the Internet,many applications have been assigned
‘well-known ports’ (e.g., a machine receiving an
IP packet on port 80 using TCP will route it tothe web server)
Prediction frame (P-frame) Obtained by motion estimation or otherwise, and
representing only the difference between thisimage and the previous one
Private Branch Exchange
(PBX)
A private phone switch
Proxy server An intermediary program that acts as both a server
and a client for the purpose of making requests
on behalf of other clients Requests are servicedinternally or by passing them on, possibly aftertranslation, to other servers A proxy interprets,and, if necessary, rewrites a request messagebefore forwarding it
Q-interface Signaling
(QSIG)
Protocol used at the Q-interface between twoswitches in a private network ECMA/ISO havedefined a set of QSIG standards
Trang 27Real-time Control Protocol
Registration Confirm (RCF) A RAS message defined in H.225.0
Registration Reject (RRJ) A RAS message defined in H.225.0
Registration Request (RRQ) A RAS message defined in H.225.0
Registration, Admission,
and Status (RAS)
The name of the protocol used between thegatekeeper and a terminal, and betweengatekeepers for registration, admission, andstatus purposes Defined in H.225.0
Return To Command (RTC) Six consecutive EOLs instructing a G3 Fax to
return to command mode
Sender Report (SR) Used in RTCP and RTP
Session ID A unique RTP session identifier assigned by the
master The convention is that the value of thesession ID is 1 for a primary audio session, 2 for
a primary video session, and 3 for a primarydata session See Associate session
Single Use Device (SUD) See H.323 annex F
SIP dialog This was defined in RFC 3261 as a peer-to-peer
SIP relationship between two UAs whichpersists for some time A dialog is established
by SIP messages, such as a 2xx response to anINVITE request A dialog is identified by a callidentifier, a local tag, and a remote tag
A dialog was formerly known as a call leg inRFC 2543
SIP final response A SIP response that terminates a SIP transaction
(e.g., 2xx, 3xx, 4xx, 5xx, 6xx responses) SeeSIP provisional response
SIP provisional response A SIP response that does not terminate a SIP
transaction, as opposed to a SIP final response(1xx responses are provisional)
SIP redirect server A redirect server is a server that accepts a SIP
request, maps the address into zero or more newaddresses, and returns these addresses to theclient Unlike a proxy server, it does not initiateits own SIP request Unlike a user agent server,
it does not accept calls
SIP registrar A registrar is a server that accepts REGISTER
requests A registrar is typically co-located with
a proxy or redirect server and may offer locationservices
Trang 28SIP server A server is an application program that accepts
requests in order to service requests and sendsback responses to those requests Servers areeither proxy, redirect, or user agent servers orregistrars
SIP transaction A SIP transaction occurs between a client and a
server, and comprises all messages from the firstrequest sent from the client to the server up to afinal (non-1xx) response sent from the server tothe client A transaction is identified by theCSeq sequence number within a single-call leg.The ACK request has the same CSeq number asthe corresponding INVITE request, but
comprises a transaction of its own
Stream Control Transport
Talkspurt A period during which a participant usually speaks,
as opposed to silence periods
Time Division Multiplexing
stream between two hosts, but there is nodelimitation of individual messages within thisstream RFC 1006 defines a simple TPKT packetformat to delimit such messages It consists of aversion octet (‘3’), two reserved octets (‘00’),and the total length of the message including theprevious headers (2 octets)
Transport address Combination of a network address (e.g., IP address
10.0.1.2) and port (e.g., IP port 1720) whichidentifies a transport termination point
Transport Control Protocol
(TCP)
The most widely used, reliable transport protocolfor IP networks
Trang 29Transport Layer Security
Uniform Resource Identifier
(URI)
Defines a uniform syntax and semantic conventionfor any resource The URI is defined in RFC
2396 See also URL, URN
Uniform Resource Locator
A RAS message defined in H.225.0
Unregistration Reject (URJ) A RAS message defined in H.225.0
Unregistration Request
(URQ)
A RAS message defined in H.225.0
User Agent Client (UAC) Also known as a calling user agent A user agent
client is a client application that initiates the SIPrequest
User Agent Server (UAS) Also known as a called user agent A user agent
server is a server application which contacts theuser when a SIP request is received and returns
a response on behalf of the user The responseaccepts, rejects, or redirects the request
User agent A SIP end system participating in a SIP
transaction See UAC, UAS
User Datagram Protocol
(UDP)
The most widely used unreliable transport protocolfor IP networks UDP only guarantees dataintegrity by using a checksum, but anapplication using UDP has to take care of anydata recovery task
Zone An H.323 zone is the set of all H.323 end points,
MCs, MCUs, and gateways managed by a singlegatekeeper
Trang 31VoIP 1998– 2004, 6 YEARS FROM R&D LABS TO LARGE SCALE DEPLOYMENTS
Since 1998 Voice over IP, in short VoIP, has been the favorite buzzword of the telecomindustry In 1998, IP was not yet as established and dominant as it is today, and mosttelecom engineers still believed that only ATM technology would be able to supportmultimedia applications Indeed at this time most of us experienced the Internet onlythrough dial-up modems and most ISPs, unable to keep-up with the exploding demandfor Internet connections, were providing a level of service that could hardly qualify evenfor ‘best effort’
But even in this context, the R&D teams that started to work on VoIP were not simplytaking a leap of faith Their bet on VoIP was backed by the last developments of packetnetworking theory, which proved that properly designed IP networks could provide anappropriate support for applications requiring quality of service Knowing this, most ofthese teams felt confident that VoIP could be deployed on a wide scale in the future,and in the mean time tried to evaluate what could be the impact of VoIP, compared toprevious technologies
It took a relatively long time to understand the reasons that would lead a service provider
to deploy VoIP instead of traditional switched voice networks Initially VoIP was presented
as a technology that could enable a service provider to transport voice ‘for free’ over theInternet, because IP transport was ‘free’, and calls could be routed to local breakout trunks
on the far end The first commercial applications of VoIP focused on prepaid telephony,which was a reasonable target given that potential buyers of prepaid card systems do careabout costs, and they are much more tolerant to quality of service issues than any othermarket segment VoIP prepaid telephony systems did have a great success—today themajority of international calling card services use VoIP—but not because of cheaper calltermination costs (which are regulated independently of the technology in most countries),
Trang 32or cheaper transport costs (traditional voice compression systems are much more efficientthan VoIP systems) The reason for the success was mainly because VoIP facilitates thetrading of minutes between multiple networks without the constraint of establishing leasedlines: on the Internet, virtually all VoIP service providers ‘see’ each other and can decide
to exchange traffic immediately, or to stop as soon as better arbitrage opportunities exist
In addition the central switching system of a VoIP service provider does not processvoice streams, but only signaling messages: a call initiated from a gateway in Paris can
be routed to a gateway in London by a VoIP call controller located in NewYork with veryfew overhead costs Only signaling messages make the round trip through the Atlantic,voice packets only cross the Channel
It is now clear that the key reasons for the success of VoIP are:
– location independence: because of the unique characteristics of VoIP call controllers,
or ‘Softswitches’, many functions that previously required multiple distributed points
of presence can now be centralized, reducing administrative overheads and ing deployments
accelerat-– simplification of transport networks: in the example above, service providers no longerneed to establish leased lines dedicated to voice prior to exchanging traffic But theuse of standard IP data networks—configured appropriately—is a major breakthrough
in many other circumstances: core transport networks no longer need to maintain thededicated network that was required by SS7 signaling, enterprises moving to newoffices can save the significant expenses required by dedicated telephony wiring anduse virtual LANs instead
– the ability to establish and control multimedia communications, e.g interactive audioand video calls, data sharing sessions, etc
Because of these unique characteristics, VoIP technology is a very good choice everytime a relatively complex call control function would require multiple points of presenceclose to the end-users in traditional switched technology, and can be centralized with anapplication softswitch:
– In residential telephony, new service providers can deploy centralized VoIP call control
servers and use any IP networking technology For instance FastWeb, in Italy, serves theItalian market from just two PoPs located in Milan and Rome This is not possible withtraditional technology using traditional (TDM) switches (even with V5.2/GR303 ATMgateways used at the edge of the network), because the voice streams need to bephysically switched by the backplane of the TDM switch In addition of course, VoIPtechnology makes it possible to introduce additional media, like video communications,which differentiate the service and help maintain the ARPU1
– Informal, Distributed contact centers also become much easier and cheaper to operate
with VoIP: the centralized call distribution point no longer needs to switch the voice
1 Average Revenue Per User
Trang 33streams, and therefore tromboning2 through the VoIP call distribution server is pletely eliminated, which reduces communications costs and minimizes the requiredbandwidth for the connection of the call distribution platform
com-– In general, all applications which previously required a complex intelligent network
architecture in order to minimize tromboning (call switching occurs at specific nodes
in the network, and the applications can be located elsewhere), can be significantlysimplified using a centralized call control server which controls voice signaling butoptimizes the voice path through the IP network
Today more and more service providers and enterprises, as they have become confident
in the VoIP technology and quality of service of IP networks, deploy VoIP applications inorder to enjoy the location independence and greater flexibility of the technology Withmore successful deployments, VoIP is gaining in maturity, and the cost of VoIP gatewaysand IP phones is quickly dropping with the increased volumes
SCOPE OF THIS BOOK
In IP Telephony, we will also assume, like the pioneers of VoIP, that it is possible to
carry multimedia data flows over an IP network with an appropriate quality (i.e lowlatency and low packet loss), and we will focus only on the functional aspects of VoIP.Voice coding technology is presented as a ‘black box’, with enough information for anengineer who wants to use an existing coder in an application, but without describ-
ing the technology in detail IP Telephony will be useful mainly in the lab (development
platforms, validation platforms), when designing and troubleshooting new interactive timedia applications
mul-The companion book Beyond VoIP Protocols becomes necessary when you deploy these applications in the field, over a real network with limited capacity Beyond VoIP protocols
contains an overview of the techniques that can be used to provide custom levels of quality
of service for IP data flows, and guidelines to properly dimension an IP network for voice
It also delves into the details of voice coding technology, and the influence of the selectedvoice coder and the transmission channel parameters on perceived voice quality
In theory, it is sufficient to read the VoIP standards in order to become an efficientVoIP engineer Although reading the standards is always necessary at some point, thesedocuments were never written to be read from A to Z Not only the mere volume is aproblem, hundreds of pages for each standard, but also the structure is inappropriate: allVoIP standards are written as umbrella documents, which point explicitly or implicitly
to dozens of other more detailed documents Sometimes, these documents are also leading, because some of the recommended methods were discussed in a specific context
mis-2 ‘Tromboning’ refers to a non-optimal media path through the network, compared to the shortest path It happens when the media streams have to ‘zigzag’ across multiple nodes, reminding of the shape of a bent trombone.
Trang 34in the standard bodies, but this context was lost or not clearly expressed in the writtenrecommendation (see for instance the issues presented in Chapter 7 for call redirection).Last but not least most standards are the result of ‘diplomatic’ agreements between firms,which often result in multiple alternate ways of doing the same thing, very long andcumbersome documents with many ‘options’ and unclear sentences designed to preservethe agreed compromise, while in practice after a few years, the market forces lead to a
‘de-facto’ standard choice, in general adopted from the practice of the dominant players
We wrote IP Telephony because we believe it is much more efficient to gain first a
general overview on VoIP, and only then go into the details of the standard documents,but only when needed and if clarification is required on a specific item Initially this bookwas designed as an internal training tool within France Telecom, and over the years itdeveloped by capturing the accumulated experience of the authors and their colleagues, inover 50 voice over IP deployments, among which some of the largest VoIP deploymentsworldwide: Orange and its multi-million livebox deployment (well over 50% of theFrench telephony traffic now uses VoIP), FastWeb in Italy, Equant (the world’s largestVoIP virtual private network), etc
IP telephony begins by giving an overview of the techniques that can be used to encode
media streams and transmit them over an IP network (Chapter 1) It focuses on the tional requirement of transmitting an isochronous data stream over an asynchronous net-work which introduces delay variations (“jitter”) The media encoding methods themselvesare presented very briefly, with just enough details for an engineer who wants to use themand understand the main parameters required for the transmission of the resulting data.The most popular VoIP standards are presented in Chapter 2 (H.323), Chapter 3 (SIP),and Chapter 5 (MGCP) In Chapter 4 we describe the IMS (IP multimedia subsystem),which has become the standard architecture for large scale residential VoIP networks(using the TISPAN profile, also described in Chapter 3) and will be the cornerstone offuture LTE deployments These chapters do not intend to fully replace the standards, butprovide a detailed overview that should be sufficient for most engineers and pointers torelevant normative documents if further reference is required The value of these chapterscomes also from the many discussions on aspects of the standards that are still immature,and descriptions of calls flows or protocol extensions commonly used by vendors but notdescribed in standard documents
func-The ‘advanced topics’ chapters (Chapters 6 and 7), discuss two issues faced by allservice providers when deploying public VoIP services (as opposed to custom servicesdesigned for a single enterprise) The first issue comes from the incompatibility of currentVoIP protocols with Network Address Translation routers and firewalls, which changethe addresses of IP packets on the fly but without properly translating the IP addressescontained in the VoIP messages carried by these packets The second issue comes fromthe widespread confusion between private telephony techniques and public telephonytechniques for call transfers In both cases the chapter presents techniques that weredeployed successfully, and explains the pros and cons of each possible method
Trang 35When the first edition of this book was published, VoIP standards were beginning tomature, at the protocol level VoIP products, which were using totally proprietary protocolsbefore the year 2000, began to interwork first using H.323 and then MGCP and SIP also.Simultaneously, some operators began to deploy huge VoIP residential networks, reachingmillions of users In 2005, most deployments used standard protocols; however, the archi-tectural details of the VoIP networks were still proprietary and specific to each VoIP net-work: network interconnection was possible, but roaming across networks was impossible.The need for a standard architecture became stronger as the size of deployments reachedmassive dimensions: the work of 3GPP on the IP Multimedia Subsystem architectureaimed at defining such a standard architecture This was quite an ambitious and difficultchallenge, but with the help of ETSI TISPAN which complemented the standard with spe-cific functions required in fixed networks, the IMS architecture, in its release 8 (“CommonIMS”), finally reached a level of maturity which makes real deployments possible
In this new edition, we dedicate a full chapter to the IMS architecture, the underlyingtransport network architecture (Enhanced Packet System), and the TISPAN specific addi-tions for fixed networks We continue, however, to present in detail, protocols such asH.323 or MGCP which are not used inside the IMS system, but as peer networks or atthe edges of the IMS network These protocols are still used intensively in existing VoIPnetworks, and are still the best candidates in some situations, e.g., videoconferencing andISDN PBX trunking for H.323, or business IP phone control for MGCP It is likely thatfuture evolutions of SIP and IMS will progressively alleviate the need for other protocols
in VoIP; however, most VoIP operators will still need to support multiple VoIP protocols
in the next 5 to 10 years
We hope that this book will help network engineers to deploy, maintain, or upgradetheir VoIP networks, using each protocol where it fits best, and with full awareness of thepotential pitfalls and difficulties
Trang 37Multimedia Over Packet
1.1 TRANSPORTING VOICE, FAX, AND VIDEO OVER A PACKET NETWORK
1.1.1 A Darwinian view of voice transport
The most common telephone system on the planet today is still analog, especially at theedge of the network Analog telephony (Figure 1.1) uses the modulation of electric signalsalong a wire to transport voice
Although it is a very old technology, analog transmission has many advantages: it issimple and keeps the end-to-end delay of voice transmission very low because the signalpropagates along the wire almost at the speed of light
It is also inexpensive when there are relatively few users talking at the same time andwhen they are not too far apart But the most basic analogue technology requires onepair of wires per active conversation, which becomes rapidly unpractical and expensive.The first improvement to the basic ‘baseband’ analog technology involved multiplexingseveral conversations on the same wire, using a separate transport frequency for eachsignal But even with this hack, analog telephony has many drawbacks:
• Unless you use manual switchboards, analog switches require a lot of electromechanicalgear, which is expensive to buy and maintain
• Parasitic noise adds up at all stages of the transmission because there is no way todifferentiate the signal from the noise and the signal cannot be cleaned
For all these reasons, most countries today use digital technology for their core telephonenetwork and sometimes even at the edge (e.g., ISDN) In most cases the subscriber lineremains analogue, but the analogue signal is converted to a digital data stream in the
IP Telephony: Deploying VoIP Protocols and IMS Infrastructure, Second Edition O Hersent
2011 John Wiley & Sons, Ltd
Trang 38Figure 1.1 Analog telephony, as old as the invention of the telephone, and still in use today
at the edge of the network.
first local exchange Usually, this signal has a bitrate of 64 kbit/s or 56 kbit/s (one sampleevery 125µs)
With this digital technology, many voice channels can easily be multiplexed along the
same transmission line using a technology called time division multiplexing (TDM) In
this technology, the digital data stream which represents a single conversation is dividedinto blocks (usually an octet), and blocks from several conversations are interleaved in around robin fashion in the time slots of the transmission line, as shown in Figure 1.2
Trang 39Because of digital technology, the noise that is added in the backbone does not influencethe quality of the communication because digital ‘bits’ can be recognized exactly, even inthe presence of significant noise Moreover, digital TDM makes digital switching possible.The switch just needs to copy the contents of one time slot of the incoming transmissionline into another time slot in the outgoing transmission line Therefore, this switchingfunction can be performed by computers.
However, a small delay is now introduced by each switch, because for each conversation
a time slot is only available every Tµs, and in some cases it may be necessary to wait up
to T µs to copy the contents of one time slot into another Since T equals 125 µs in all
digital telephony networks, this is usually negligible and the main delay factor is simplythe propagation time
Unless you really have a point to make, or you’re a politician, you will usually speakonly half of the time during a conversation Since we all need to think a little before wereply, each party usually talks only 35% of the time during an average conversation
If you could press a button each time you talk, then you would send data over thephone line only when you actually say something, not when you are silent In fact, most
of the techniques used to transform your voice into data (known as codecs) now have theability to detect silence With this technique, known as voice activity detection (VAD),instead of transmitting a chunk of data, voice, or silence every 125µs, as done today onTDM networks, you only transmit data when you need to, asynchronously, as illustrated
Trang 40And when it comes to multiplexing several conversations on a single transmission line,instead of occupying a fraction of bandwidth all the time, ‘your’ bandwidth can be used
by someone else while you are silent This is known as ‘statistical multiplexing’
The main advantage of statistical multiplexing is that it allows the bandwidth to be
used more efficiently, especially when there are many conversations multiplexed on the
same line (see companion book, Beyond VoIP protocols Chapter 5 for more details) But
statistical multiplexing, as the name suggests, introduces uncertainty in the network Asjust mentioned, in the case of TDM a delay of up to 125µs could be introduced at eachswitch; this delay is constant throughout the conversation The situation is totally differentwith statistical multiplexing (Figure 1.4): if the transmission line is empty when you need
to send a chunk of data, it will go through immediately If on the other hand the line isfull, you may have to wait until there is some spare capacity for you
This varying delay is caller jitter, and needs to be corrected by the receiving side.
Otherwise, if the data chunks are played as soon as they are received, the original speechcan become unintelligible (see Figure 1.5)
The next generation telephone networks will use statistical multiplexing, and mix voiceand data along the same transmission lines Several technologies are good candidates(e.g., voice over frame relay, voice over ATM, and, of course, voice over IP)
Jitter and delay
Statistical multiplexer
Bandwidth optimization
‘Hello, How are you today?’
w are you today?’
‘Hello, ho