Internet Telephony Shivkumar Kalyanaraman Based upon slides of
Internet Telephony Shivkumar Kalyanaraman Based upon slides of Henning Schulzrinne (Columbia) Shivkumar Kalyanaraman Rensselaer Polytechnic Institute 1
Overview Telephony: history and evolution q IP Telephony: Why ? q Adding interactive multimedia to the web q Being able to do basic telephony on IP with a variety of devices q Basic IP telephony model q Protocols: SIP, H. 323, RTP, Coding schemes, MGCP, RTSP q Future: Invisible IP telephony and control of appliances Shivkumar Kalyanaraman q Rensselaer Polytechnic Institute 2
Public Telephony (PSTN) History 1876 invention of telephone q 1915 first transcontinental telephone (NY–SF) q 1920’s first automatic switches q 1956 TAT-1 transatlantic cable (35 lines) q 1962 digital transmission (T 1) q 1965 1 ESS analog switch q 1974 Internet packet voice q 1977 4 ESS digital switch q 1980 s Signaling System #7 (out-of-band) q 1990 s Advanced Intelligent Network (AIN) q Shivkumar Kalyanaraman Rensselaer Polytechnic Institute 3
Telephone Service in the US AT&T Divestiture Shivkumar Kalyanaraman Rensselaer Polytechnic Institute 4
Telephone System Overview Analog narrowband circuits: home-> central office q 64 kb/s continuous transmission, with compression across oceans q -law: 12 -bit linear range -> 8 -bit bytes q Everything clocked a multiple of 125 s q Clock synchronization framing errors q AT&T: 136 “toll”switches in U. S. q Interconnected by T 1, T 3 lines & SONET rings q Call establishment “out-of-band” using packetswitched signaling system (SS 7) q Shivkumar Kalyanaraman Rensselaer Polytechnic Institute 5
Telephony: Multiplexing q q Telephone Trunks between central offices carry hundreds of conversations: Can’t run thick bundles! Send many calls on the same wire: multiplexing Analog multiplexing q bandlimit call to 3. 4 KHz and frequency shift onto higher bandwidth trunk Digital multiplexing: convert voice to samples q 8000 samples/sec => call = 64 Kbps Shivkumar Kalyanaraman Rensselaer Polytechnic Institute 6
Trends: Price of Phone Calls: NY - London AT&T Divestiture Shivkumar Kalyanaraman Rensselaer Polytechnic Institute 7
Trends: Data vs Voice Traffic Since we are building future networks for data, can we slowly junk the voice infrastructure and move over to IP? Shivkumar Kalyanaraman Rensselaer Polytechnic Institute 8
Trends: Phone vs Data Revenues Shivkumar Kalyanaraman Rensselaer Polytechnic Institute 9
Private Branch Exchange (PBX) Post-divestiture phenomenon. . . 7040 212 -8538080 External line 7041 Corporate/Campus Private Branch Exchange Telephone switch Another switch 7042 7043 Corporate/Campus LAN Internet Shivkumar Kalyanaraman Rensselaer Polytechnic Institute 10
IP Telephony: PBX Replacement Another campus 7040 Corporate/Campus External line 7041 8152 PBX 8153 7042 8154 7043 LAN Internet LAN Shivkumar Kalyanaraman Rensselaer Polytechnic Institute 11
Voice over Packet Market Forecast – North America Shivkumar Kalyanaraman Rensselaer Polytechnic Institute 12
Invisible Internet Telephony q. Vo. IP technology will appear in. . . q Internet appliances q home security cameras, web cams q 3 G mobile terminals q fire alarms q chat/IM tools q interactive multiplayer games Shivkumar Kalyanaraman Rensselaer Polytechnic Institute 13
IPtel for appliances: “Presence” Shivkumar Kalyanaraman Rensselaer Polytechnic Institute 14
Taxonomy of Speech Coders Waveform Coders Time Domain: PCM, ADPCM Source Coders Frequency Domain: e. g. Sub-band coder, Adaptive transform coder q Waveform coders: Linear Predictive Coder Vocoder attempts to preserve the signal waveform not speech specific (I. e. general A-to-D conv) q PCM 64 kbps, ADPCM 32 kpbs, CVSDM 32 kbps q. Vocoders: q Analyse speech, extract and transmit model parameters q Use model parameters to synthesize speech q LPC-10: 2. 4 kbps q. Hybrids: Combine best of both… Eg: CELP (used in GSM) Shivkumar Kalyanaraman Rensselaer Polytechnic Institute 15
Speech Quality of Various Coders Shivkumar Kalyanaraman Rensselaer Polytechnic Institute 16
Applications of Speech Coding Telephony, PBX q Wireless/Cellular Telephony q Internet Telephony q Speech Storage (Automated call-centers) q High-Fidelity recordings/voice q Speech Analysis/Synthesis q Text-to-speech (machine generated speech) q Shivkumar Kalyanaraman Rensselaer Polytechnic Institute 17
Pulse Amplitude Modulation (PAM) Shivkumar Kalyanaraman Rensselaer Polytechnic Institute 18
Pulse Code Modulation (PCM) * PCM = PAM + quantization Shivkumar Kalyanaraman Rensselaer Polytechnic Institute 19
Quantization Shivkumar Kalyanaraman Rensselaer Polytechnic Institute 20
Companded PCM • Small quantization intervals to small samples and large intervals for large samples • Excellent quality for BOTH voice and data • Moderate data rate (64 kbps) • Moderate cost: used in T 1 lines etc Shivkumar Kalyanaraman Rensselaer Polytechnic Institute 21
Companding Shivkumar Kalyanaraman Rensselaer Polytechnic Institute 22
How it works for T 1 Lines • Companding blocks are shared by all 16 channels Shivkumar Kalyanaraman Rensselaer Polytechnic Institute 23
Adaptive Gain Encoding Automatic Gain control (AGC), but accounting for silence periods Shivkumar Kalyanaraman Rensselaer Polytechnic Institute 24
Time Waveform of Voiced/Unvoiced Sound High correlation (0. 85) between samples, cycles, pitch intervals etc Shivkumar Kalyanaraman Rensselaer Polytechnic Institute 25
Differential PCM Exploits sample-to-sample correlation (0. 85) => differences require fewer bits; feedback avoids cascading quantization errors Shivkumar Kalyanaraman Rensselaer Polytechnic Institute 26
Delta Modulation • Used in first-generation PBXs (switching was more sensitive to Digital conversion cost and less sensitive to quality or data rate) Shivkumar Kalyanaraman Rensselaer Polytechnic Institute 27
Adaptive Predictive Coding Adapt both the prediction coefficients (alphas) and the estimates Based upon past or present samples => 20 d. B prediction gain Shivkumar Kalyanaraman Rensselaer Polytechnic Institute 28
Subband Coding Frequency domain analysis of input instead of time-domain Analysis: adjust quantization based upon energy level of each band Eg: G. 722 coder: 7 k. Hz voice w/ 64 kbps Shivkumar Kalyanaraman Rensselaer Polytechnic Institute 29
G. 722 (7 k. Hz) audio Codec Shivkumar Kalyanaraman Rensselaer Polytechnic Institute 30
Recall: Taxonomy of Speech Coders Waveform Coders Time Domain: PCM, ADPCM Source Coders Frequency Domain: e. g. Sub-band coder, Adaptive transform coder q Waveform coders: Linear Predictive Coder Vocoder attempts to preserve the signal waveform not speech specific. q PCM 64 kbps, ADPCM 32 kpbs, CVSDM 32 kbps q. Vocoders: q Analyse speech, extract and transmit model parameters q Use model parameters to synthesize speech q LPC-10: 2. 4 kbps q. Hybrids: Combine best of both… Eg: CELP Shivkumar Kalyanaraman Rensselaer Polytechnic Institute 31
Vocoders Encode only perceptually important aspects of speech w/ fewer bits than waveform coders: eg: power spectrum vs time-domain Shivkumar Kalyanaraman accuracy Rensselaer Polytechnic Institute 32
LPC Analysis/Synthesis Shivkumar Kalyanaraman Rensselaer Polytechnic Institute 33
Speech Generation in LPC Shivkumar Kalyanaraman Rensselaer Polytechnic Institute 34
Multi-pulse LPC Shivkumar Kalyanaraman Rensselaer Polytechnic Institute 35
CELP Encoder Shivkumar Kalyanaraman Rensselaer Polytechnic Institute 36
Example: GSM Digital Speech Coding q q PCM: 64 kbps too wasteful for wireless Regular Pulse Excited -- Linear Predictive Coder (RPE --LPC) with a Long Term Predictor loop. q Subjective speech quality and complexity (related to cost, processing delay, and power) q Information from previous samples used to predict the current sample: linear function. q The coefficients, plus an encoded form of the residual (predicted - actual sample), represent the signal. q 20 millisecond samples: each encoded as 260 bits =>13 kbps (Full-Rate coding). Shivkumar Kalyanaraman Rensselaer Polytechnic Institute 37
Speech Quality of Various Coders Shivkumar Kalyanaraman Rensselaer Polytechnic Institute 38
Speech Quality (Contd) Shivkumar Kalyanaraman Rensselaer Polytechnic Institute 39
Vo. IP Camps Conferencing Industry Netheads “IP over Everything” Circuit switch engineers “We over IP” “Convergence” ITU standards H. 323 SIP “Softswitch” BICC ISDN LAN conferencing I-multimedia WWW Call Agent SIP & H. 323 BISDN, AIN H. xxx, SIP IP “any packet” Rensselaer Polytechnic Institute Our focus 40 Shivkumar Kalyanaraman
Internet Multimedia Protocol Stack Shivkumar Kalyanaraman Rensselaer Polytechnic Institute 41
IP Telephony Protocols: SIP, RTP q Session Initiation Protocol - SIP Contact “office. com” asking for “bob” q Locate Bob’s current phone and ring q Bob picks up the ringing phone q q Real time Transport Protocol - RTP q Send and receive audio packets Shivkumar Kalyanaraman Rensselaer Polytechnic Institute 42
Internet Telephony Protocols: H. 323 Shivkumar Kalyanaraman Rensselaer Polytechnic Institute 43
H. 323 (contd) q Terminals, Gateways, Gatekeepers, and Multipoint Control Units (MCUs) Shivkumar Kalyanaraman Rensselaer Polytechnic Institute 44
H. 323 vs SIP Typical User. Agent Protocol stack for Internet Terminal Control/Devices Q. 931 H. 245 RAS RTCP TPKT TCP Terminal Control/Devices Codecs SIP SDP RTP RTCP UDP Transport Layer IP and lower layers Shivkumar Kalyanaraman Rensselaer Polytechnic Institute 45
SIP vs H. 323 q q q Text based request response SDP (media types and media transport address) Server roles: registrar, proxy, redirect q q q Binary ASN. 1 PER encoding Sub-protocols: H. 245, H. 225 (Q. 931, RAS, RTP/RTCP), H. 450. x. . . H. 323 Gatekeeper - Both use RTP/RTCP over UDP/IP - H. 323 perceived as “heavyweight” Shivkumar Kalyanaraman Rensselaer Polytechnic Institute 46
Light-weight signaling: Session Initiation Protocol (SIP) IETF MMUSIC working group q Light-weight generic signaling protocol q Part of IETF conference control architecture: q SAP for “Internet TV Guide” announcements q RTSP for media-on-demand q SDP for describing media q others: malloc, multicast, conference bus, . . . q Post-dial delay: 1. 5 round-trip time (with UDP) q Network-protocol independent: UDP or TCP (or AAL 5 or X. 25) q Shivkumar Kalyanaraman Rensselaer Polytechnic Institute 47
SDP: Session Description Protocol q Not really a protocol – describes data carried by other protocols q Used by SAP, SIP, RTSP, H. 332, PINT. Eg: v=0 o=g. bell 877283459 877283519 IN IP 4 132. 151. 1. 19 s=Come here, Watson! u=http: //www. ietf. org e=g. bell@bell-telephone. com c=IN IP 4 132. 151. 1. 19 b=CT: 64 t=3086272736 0 k=clear: manhole cover m=audio 3456 RTP/AVP 96 a=rtpmap: 96 VDVI/8000/1 m=video 3458 RTP/AVP 31 32416 udp wb Shivkumar Kalyanaraman Rensselaer Polytechnicm=application Institute 48
SIP functionality IETF-standardized peer-to-peer signaling protocol (RFC 2543): q Locate user given email-style address q Setup session (call) q (Re)-negotiate call parameters q Manual and automatic forwarding q Personal mobility: different terminal, same identifier q Call center: reach first (load distribution) or reach all (department conference) q Terminate and transfer calls q Shivkumar Kalyanaraman Rensselaer Polytechnic Institute 49
SIP Addresses Food Chain Shivkumar Kalyanaraman Rensselaer Polytechnic Institute 50
SIP components UAC: user-agent client (caller application) q UAS: user-agent server à accept, redirect, refuse call q redirect server: redirect requests q proxy server: server + client q registrar: track user locations q user agent = UAC + UAS q often combine registrar + (proxy or redirect server) q Shivkumar Kalyanaraman Rensselaer Polytechnic Institute 51
IP SIP Phones and Adaptors 1 Are true Internet hosts • Choice of application Analog phone adaptor • Choice of server 2 • IP appliances Implementations 3 • 3 Com (3) • Columbia University Palm control • MIC World. Com (1) • Mediatrix (1) • Nortel (4) 44 5 • Siemens (5) Shivkumar Kalyanaraman Rensselaer Polytechnic Institute 52
SIP-based Architecture rtspd sipconf SIP conference server Telephone switch T 1/E 1 RTP/SIP Cisco 2600 gateway sipd SIP proxy, redirect server RTSP media RTSP server RTSP clients sipum SIP/RTSP Unified messaging SQL database sip 323 Rensselaer Polytechnic Institute Web based configuration Web server e*phone Hardware Internet (SIP) phones sipc Software SIP user agents Quicktime SIPH. 32 3 converto r 53 Net. Meeting H. 323 Shivkumar Kalyanaraman
Example Call • Bob signs up for the service from the web as “bob@ecse. rpi. edu” • He registers from multiple phones • Alice tries to reach Bob INVITE ip: Bob. Wilson@ecse. rpi. edu • sipd canonicalizes the destination to sip: bob@ecse. rpi. edu • sipd rings both e*phone and sipc • Bob accepts the call from sipc and starts talking Web based configuration sipd SIP proxy, redirect server Call Bob SQL database Web server e*phone Hardware Internet (SIP) phones sipc ecse. rpi. edu Software SIP user agents Shivkumar Kalyanaraman Rensselaer Polytechnic Institute 54
PSTN to IP Call PBX PSTN External T 1/CAS 1 Call 9397134 Gateway Internal T 1/CAS (Ext: 7130 -7139) 2 Call 7134 Ethernet Regular phone (internal) 5 3 SIP server SQL database sipd sipc Bob’s phone 4 7134 => bob Shivkumar Kalyanaraman Rensselaer Polytechnic Institute 55
IP to PSTN Call PBX PSTN External T 1/CAS 5 Call 5551212 Gateway (10. 0. 2. 3) Internal T 1/CAS 4 Call 85551212 3 Ethernet 5551212 Regular phone (internal, 7054) 1 Bob calls 5551212 SIP server sipc 2 SQL database sipd Use sip: 85551212@10. 0. 2. 3 Shivkumar Kalyanaraman Rensselaer Polytechnic Institute 56
Traditional voice mail system Dial 853 -8119 Alice 939 -7063 Phone is ringing Bob 853 -8119 . . The person is not available now please leave a message. . . Your voice message. . . Disconnect Bob can listen to his voice mails by dialing some number. Shivkumar Kalyanaraman Rensselaer Polytechnic Institute 57
SIP-based Voicemail Architecture Bob INVITE bob@phone 1. office. com INVITE bob@office. com REGISTER bob@vm. office. com Alice INVITE bob@vm. office. com The voice mail server registers with the SIP proxy, sipd Alice calls bob@office. com through SIP proxy forks the request to Bob’s phone as well as to a voicemail server. Shivkumar Kalyanaraman Rensselaer Polytechnic Institute 58
Voicemail Architecture Bob phone 1. office. com; CANCEL 200 OK Alice 200 OK RTP/RTCP After 10 seconds vm contacts the RTSP server for recording. vm accepts the call. Sipd cancels the other branch and. . . accepts the call from Alice. Now user message gets recorded Rensselaer Polytechnic Institute 59 v-mail vm. office. com; SETUP rtspd Shivkumar Kalyanaraman
SIP-H. 323: Interworking Problems Eg: Call setup translation H. 323 SIP Q. 931 SETUP Q. 931 CONNECT Terminal Capabilities Open Logical Channel INVITE Destination address (Bob@office. com) 200 OK Media capabilities (audio/video) ACK Media transport address (RTP/RTCP receive) • H. 323: Multi-stage dialing Shivkumar Kalyanaraman Rensselaer Polytechnic Institute 60
MGCP and Megaco Media Gateway Controller Protocol (RFC 2705) q Controlling Telephony Gateways from external call control elements called media gateway controllers (MGC) or call agents q q Gateways: Eg: RGW : physical interfaces between Vo. IP network and residences q Call control "intelligence" is outside the gateways and handled by external call control elements Goal: scalable gateways between IP telephony and PSTN q Successor to MGCP: H. 248/Megaco q Shivkumar Kalyanaraman Rensselaer Polytechnic Institute 61
MGCP Architecture Goal: large-scale phone-to-phone Vo. IP deployments RGW: Residential Gateway TGW: Trunk Gateway Rensselaer Polytechnic Institute 62 Shivkumar Kalyanaraman
Summary Telephony and IP Telephony q Protocols: SIP, SDP, H. 323, MCGP q Example operation and services: q Calls, voice mail etc q Future: Integration with Web and long-term replacement for current telephone systems q Shivkumar Kalyanaraman Rensselaer Polytechnic Institute 63
- Slides: 63