VoIP TDC 364
What is VoIP Used For? • Reduced long-distance costs • Some cite this as a large business savings • Residential customers too • More calls with less bandwidth • New technologies allow voice to travel in less than 64 kbps channels (new voice compression techniques • Silence suppression
What Else is VoIP Used For? • More and better enhanced services • VoIP can be recorded, stored, processed, converted, etc. by the same hardware used for data • Computer telephony integration • Unified messaging • Most efficient use of IP • One common protocol
Four Additional Uses of VoIP • International calling • Telemarketing • PC and LAN dial one number after another • Worker reads from a script on their monitor • Depending upon answers/stored data, script changes dynamically • Telephone call goes through the pc
Four Additional Uses of VoIP • Call center • Telemarketing is outbound VoIP, call center is inbound VoIP • Automated attendant, automatic call distribution, interactive voice response • Call centers today are as dependent on the pc and LAN as they are on the telephone
Four Additional Uses of VoIP • Fax • The fax is not going away • Can be a legal document • Is tangible • Is by definition a copy of the original • Transcends languages and national borders • Millions of existing fax machines • But fax standards are antiquated • Fax over IP makes more sense
A Model for VoIP • From business to business • Use: Faxing, tie-line replacement • Need: Better QoS for IP, managed IP network? • Outlook: Do it now • From business to residential • Use: Telemarketing • Need: IP-enabled PBX, ISP to PSTN gateways • Outlook: Do it carefully
A Model for VoIP • From residential to business • Use: Call centers, catalog sales • Need: Voice-enabled Web site, IP-enabled ACD • Outlook: Do it carefully • From residential to residential • Use: Long distance replacement • Need: Many PSTN gateways, basic voice QoS • Outlook: Long distance now, local later?
What is the Basic VoIP Layout? Voice CODEC Compression Create voice datagram Add header (RTP, UDP, IP, etc) Network
What is the Basic VoIP Layout? Network Process header Re-sequence and buffer delay Decompression CODEC Voice
Voice --- Short delay Constant delay No loss No retransmission Direct pass through Data Low error rate Reasonable delay Variable Delay Packet Loss Retransmission Uses protocols Traditional Network Characteristics
Packet Network Technologies • Same components, different performance • Internet – Routing (TCP/IP), frame relay, ATM • Intranet – Routing (TCP/IP), frame relay, ATM • Voice over networks • Internet – No goals, no guarantees • Intranet – Controlled environment, performance objectives, designed to perform
Voice Over Requirements • Compression • Reduced bps vs. quality • Silence suppression • Signaling • Echo control • QoS • Voice enhancements (calling features)
An Example: A Voice-Enabled Web Site • People talk on the telephone • People look at the web • What about voice and the web? • Visual orientation with human interaction • Flexible • Unlimited information • Wide availability (location and time)
Examples • Airline reservations (“Can I connect through Philadelphia instead?”) • Hotel reservations (“Does that room have a view of the ocean?”) • Ticket sales (“Can I get four seats together?”) • Stock trading (“Will I make the split requirements?”)
Call Center Without VoIP 3. Web site forwards To call center 1. User clicks Web Call 2. User enter information Call Me Enter Information: Name: Account #: Phone #: Call information, Account Information, Etc. 5. User answers call, Conversation begins PSTN 4. Agent places PSTN call
Call Center With VoIP 3. Web site forwards all Info to call center 1. User clicks Web VoIP Call Call information, Account information, Etc. 2. VoIP software uses same IP connection to Web site VoIP Call Internet Multimedia pc with VoIP software 4. Conversation through VoIP software
The Web Added to theCall Center PSTN PBX/ ACD Database Voice network to telephones VoIP Gateway Agent with telephone and pc Still two networks Agent with telephone and pc Internet Web Server Agent with telephone and pc
The Web Added tothe Integrated Call Center Database PSTN PBX/ACD VoIP Gateway Agent with telephone and pc Only one network Agent with telephone and pc Internet Web Server
The VoIP Gateway • The device that converts a traditional analog telephone call (voice and signals) into digital data that is sent over an IP network • Gateway functions include: • Destination lookup: converting a telephone number to an IP address • IP connection management: the use of protocols to establish, maintain, and teardown a call
The VoIP Gateway • Gateway functions continued • Compression and digitization • IP packetization and transport • Advanced IP/PSTN signaling • Authorization, access, and accounting
The VoIP Gatekeeper • An optional device, not required for H.323 • Typically found in systems of significant size • Gatekeeper functions include • Address translation (supports the use of proprietary addressing schemes, such as mnemonics, nicknames, or e-mail address) • Admissions control (control the setup of VoIP calls between their terminals and gateways and the rest of the world; access granted or denied based on authentication, source or destination address, time of day, etc.; essentially a security mechanism)
The VoIP Gatekeeper • More functions: • Bandwidth management (controls calls and the bandwidth of each channel) • Zone management (a zone is a combo gatekeeper, gateway, terminals, etc; gatekeeper controls calls within its zone) • Call signaling (may act as a signaling proxy for terminals it represents; or as an initial point of contact for callers)
VoIP Protocols • There are two basic sets of protocols for supporting VoIP: • ITU-T’s H.323 • First issued in early 1996 • IETF’s SIP (Session Initiation Protocol) • Introduced in 1998
VoIP Protocols continued • Interesting facts about the two protocols: • H.323 is named packet-based multimedia communications systems • H.323 originally designed for X.25 and ATM • SIP designed specifically for voice over the Internet by the people that should know the Internet the best • Let’s talk about H.323 first
H.323 Video Audio Control Data H.261 H.263 (video coding) G.711 G.722 G.723 G.728 G.729 H.225 Term. To Gatekeeper signaling H.225 Call signaling H.245 T.120 (multipoint data transfer) RTP RTCP RTP RTCP UDP TCP IP
The Various Pieces – G.711 • G.711 is the international standard for encoding telephone audio on an 64 kbps channel. It is a pulse code modulation (PCM) scheme operating at a 8 kHz sample rate, with 8 bits per sample, fully meeting ITU-T recommendations.
The Various Pieces – G.722 • ITU-T G.722 is the benchmark coder for wideband speech coding quality. The speech signal is sampled at 16000 samples/second. G.722 can handle speech and audio signal bandwidth up to 7 kHz, compared to 3.6 kHz in narrow band speech coders.G.722 coder is based on the principle of Sub Band - Adaptive Differential Pulse Code Modulation (SB-ADPCM). The signal is split into two sub bands and samples from both bands are coded using ADPCM techniques. The system involving G.722 coder can be used to work in three modes 64, 56 and 48 kbit/s. The latter two modes will allow an auxiliary data channel of 8 and 16 kbit/s respectively, within the 64 kbit/s channel.
The Various Pieces – G.723 • G.723.1 is a speech compression algorithm standardized by ITU. G.723.1 has dual coding rates at 5.3 and 6.3 kbps. The vocoders process signals with 30 ms frames and have a 7.5 ms look-ahead and low distortion while passing DTMF tones through. The input/output of this algorithm is 16 bit linear PCM samples.
The Various Pieces – G.728 • ITU-T G.728 is low delay speech coder standard, for compressing toll quality speech (8000 samples/second). The typical application of this speech coder is in telephony over packet networks, especially voice over cable and VoIP. This is a very robust speech coder, with very good speech quality, comparable to 32 kbit/s ADPCM.G.728 coders are based on the principle of Low Delay-Code Excited Linear Prediction (LD-CELP).
The Various Pieces – G.729 • G.729 is an 8 kbps Conjugate-Structure Algebraic-Code-Excited Linear Prediction (CS-ACELP) speech compression algorithm approved by ITU-T. G.729 Annex A is a reduced complexity version of the G.729 coder. G.729 AB speech coder was developed for use in multimedia simultaneous voice and data applications. The coder processes signals with 10 ms frames and has a 5 ms look-ahead which results in a total of 15 ms algorithmic delay. The input/output of this algorithm is 16 bit linear PCM samples. • Forward error correction (FEC) is incorporated in the algorithm to achieve noise immunity of the data stream by including control bits into it.
The Various Pieces – H.225 • H.225 call signaling is used to set up connections between H.323 endpoints (terminals and gateways), over which the real-time data can be transported. • Call signaling involves the exchange of H.225 protocol messages over a reliable call-signaling channel. For example, H.225 protocol messages are carried over TCP in an IP–based H.323 network.
The Various Pieces – H.225 • H.225 messages are exchanged between the endpoints if there is no gatekeeper in the H.323 network. • When a gatekeeper exists in the network, the H.225 messages are exchanged either directly between the endpoints or between the endpoints after being routed through the gatekeeper. • The first case is direct call signaling. The second case is called gatekeeper-routed call signaling. The method chosen is decided by the gatekeeper.
The Various Pieces – H.245 • H.245 control signaling consists of the exchange of end-to-end H.245 capability messages between communicating H.323 endpoints. • The H.245 control messages are carried over H.245 control channels. The H.245 control channel is the logical channel 0 and is permanently open, unlike the media channels. • The messages carried include messages to exchange capabilities of terminals and to open and close logical channels.
RTP – Real-time Transport Protocol • Provides support for the transport of real-time data such as video and audio • Used in conjunction with RTCP to get feedback on quality of data transmission (next) • The Internet has unpredictable delay and jitter. To help alleviate these problems, RTP provides timestamping, sequence numbering, and other mechanisms.
RTP – Real-time Transport Protocol • Timestamps are created by the originator as the data is sampled. These timestamps are then used to play the data back at the same rate. • Since RTP is usually run over UDP, RTP adds a sequence number to all packets (some packets are broken into smaller packets, all with the same timestamp, thus the need for a sequence number)
RTP – Real-time Transport Protocol • Payload type identifier specifies the payload format as well as the encoding and compression schemes. • Source identification informs the receiver where the data is coming from (example – in an audio conference, a user can tell who is doing the talking)
RTCP – Real-time Control Protocol • In an RTP session, participants periodically send RTCP packets to convey feedback on quality of data delivery and information of membership. • Five types of RTCP packets defined: • Receiver Report • Sender Report • Source DEScription • BYE • APPlication specific functions
H.323 Call Stages • Discovery and Registration (RAS) – This is who I am • Call Setup (RAS/H.225/Q.931) – This is who I want to call • Call Negotiation (H.245) – These are our capabilities
H.323 Call Stages • Media Channel Setup (H.245) – Let’s open an audio channel • Media Transport (RTP/RTCP) – Send audio datagrams • Call termination (H.245/H.225/RAS) – We are done
LAN Telephony (A Little More Detail) PSTN PSTN Access Gateway Ethernet Phones Ethernet LAN Analog Phones Converter Gateway WAN or Internet Gatekeeper IP Router PC-based Virtual Phones
SIPSession Initiation Protocol • An application layer control (signaling) protocol for creating, modifying and terminating sessions with one or more participants • These sessions include multimedia conferences, Internet telephone calls, and multimedia distribution
SIPSession Initiation Protocol • SIP has important features: • Scalability • Interoperability • Extensibility • Flexibility • Mobility