Question? Leave a message!




Internet Telephony

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