Download presentation
Presentation is loading. Please wait.
Published byCatalina Blundell Modified over 9 years ago
2
SpeechTEK 2006 – Voice Over IP Tutorial Andrew Hunt, Ph.D. VP Engineering, Holly Connects Andrew Hunt, Ph.D. VP Engineering, Holly Connects
3
Welcome! Who are you?
4
Andrew Hunt, Ph.D. VP of Engineering Level 11, 301 George Street Sydney, NSW 2000, Australia Tel +61 2 8207 8207 Email: andrew.hunt@holly-connects.com Web: http://www.holly-connects.com/
5
DRAFT V03 DRAFT V03 4 Timing 8:30amStart 10:00-10:30amCoffee break 12:00-1:00pmLunch 2:30-3:00pmCoffee break 4:30pmClose
6
DRAFT V03 DRAFT V03 5 Agenda 1. Welcome & Introductions 2. Why Voice Over IP? 3. Brief History of Telephony 4. Digital Voice 5. Voice Over IP – Basics 6. VoIP Protocols 7. SIP: Session Initiation Protocol 8. RTP: Real-time Transport Protocol 9. Network Issues and Design 10. VoIP and Speech Recognition 11. VoIP and Mobile Telephony 12. Closing
7
DRAFT V03 DRAFT V03 6 Objectives Informative Relevant Interesting Interactive
8
Why Voice Over IP?
9
DRAFT V03 DRAFT V03 8 Module Overview Why Voice Over IP? What is it? Cost Functionality & flexibility Mobility
10
DRAFT V03 DRAFT V03 9 VoIP Definition Definitions “Voice Over IP” is the use of the internet, intranets and other IP networks for the delivery of voice conversations “Internet Protocol” (IP) is a protocol used for communicating data across a packet-switched network (specifically IPv4 or IPv6) Many VoIP protocols exist: focus today on SIP and related protocols for use in speech recognition and IVR contexts
11
DRAFT V03 DRAFT V03 10 Why VoIP? Cost Global data traffic exceeded voice traffic in late 1990’s Telco charges & revenue largely from voice traffic Migration to shared networks Single network for voice and data Utilize spare capacity in many data networks Inwards-out approach to migration Traditional voice carriage costs to business being driven down by VoIP Residential advantages Free services: Skype etc. Lower cost services: Vonage, Skype etc. Regulatory and service capability issues are evolving
12
DRAFT V03 DRAFT V03 11 Why VoIP? Functionality and Flexibility Virtualization &mobility: move calls and agents locally, nationally, globally Match traditional telephony functions Transfers, voice mail, conferencing, redial, speed-dial, forwarding etc. Integration with software and internet services Availability notification (IM) Instant messaging Multi-media services: video, data files etc. Options for traditional and VoIP telephony to co-exist and migrate steadily
13
DRAFT V03 DRAFT V03 12 Why VoIP? Mobility Make VoIP calls virtually anywhere in the world Number portability: landline, mobile, internet Synchronization of address books and contacts
14
Brief History of Telephony
15
DRAFT V03 DRAFT V03 14 Module Overview Brief History of Telephony Telephony switching Basic concepts of telephony Call establishment Circuits Switching Migrating from analogue to digital
16
DRAFT V03 DRAFT V03 15 Telephony: Switching and Circuits Alexander Graham Bell Thomas Watson
17
DRAFT V03 DRAFT V03 16 Telephony: Switching and Circuits 1. Caller picks up 2. Caller “dials” 3. Callee phone rings 4. Callee answers 5. Circuit established 6. Conversation 7. Hang-up & tear-down
18
DRAFT V03 DRAFT V03 17 Telephony: Switching and Circuits Exchange
19
DRAFT V03 DRAFT V03 18 Telephony: Switching and Circuits PSTN: Public Switched Telephony Network 1. A-party picks up 2. A-party dials 3. B-party rings 4. B-party answers 5. Circuit established 6. Conversation 7. Hang-up & tear-down
20
DRAFT V03 DRAFT V03 19 Telephony: Switching and Circuits Pre-Digital “Analogue” Era 1878: New Haven, Connecticut World’s first commercial telephone exchange Built from “carriage bolts, handles from teapot lids and bustle wire” Cost: $40 including the furniture 1891: Topeka, Kansas Almon Strowger, an undertaker, patented the Strowger switch Automation of the telephone circuit switching by decadic pulses 1950 onwards: Crossbar switches 1964: “Dual Tone Multi-Frequency” (DTMF) introduced
21
DRAFT V03 DRAFT V03 20 Telephony: Switching and Circuits Pre-Digital “Analogue” Era Infrastructure Local wiring to each phone System of local, regional, national and international exchanges Shared connections between exchanges Call establishment Numbering scheme (many iterations) Voice decadic pulsing DTMF Mapping of numbering scheme to the exchanges (e.g. CAstle=22) Call communication Dedicated circuit per call
22
DRAFT V03 DRAFT V03 21 Telephony: Switching and Circuits Digital Era Digital started with the core telco networks Efficiency on long-distance carriage Efficiency of solid state switching technology Migrated to local exchanges What is digital voice?
23
Digital Voice
24
DRAFT V03 DRAFT V03 23 Module Overview Digital Speech Sampling: creating digital audio CODECs: Compression and companding Sharing channels: Time Division Multiplexing (TDM) Standard digital data links: E1 & T1
25
DRAFT V03 DRAFT V03 24 Telephony: Packet Switch Network …0101100… …0011100… …1100110… …1101100… …0001100… …0101100… …0011100… …1100110… …1101100… …0001100… …0101100… …0011100… …1100110… …1101100… …0001100… …0101100… …0011100… …1100110… …1101100… …0001100… PSTN: Public Switched Telephony Network
26
DRAFT V03 DRAFT V03 25 Sampling Theory
27
DRAFT V03 DRAFT V03 26 Sampling Theory
28
DRAFT V03 DRAFT V03 27 Sample frequency bandwidth Sampling Theory
29
DRAFT V03 DRAFT V03 28 Sample resolution = bits noise/error Sampling Theory
30
DRAFT V03 DRAFT V03 29 Sampling Theory Time (msec) 0 Value 0 129 257 382 4102 5117 6125 7126 8120 9108 1089 1166 1239 139 14-20 15-49 16-75 17-97 18-114 19-124 20-127 ……
31
DRAFT V03 DRAFT V03 30 Non-linear sampling better noise/error Sampling Theory: Companding G.711 μ-law for North America and Japan G.711 A-law for Europe and rest of the world
32
DRAFT V03 DRAFT V03 31 Sampling Theory MeasureG.711 TelephonyCompact Disc Sampling rate8,000 Hz44,100 Hz Frequency rangeLow – 3.5kHz (4kHz max)Lower – 22 kHz Sample type 8 bit A-law / μ-law Mono 16-bit linear PCM Stereo Signal-to-noise ratio< 70dB96 dB Data bandwidth8 kByte/sec176 kByte/sec Perceived qualityTelephonyGreat
33
DRAFT V03 DRAFT V03 32 Digital Transport 10 52 87 92 102 85 49 10 -18 -48 -60 -12 102 85 49 10 -18 -48 -60 -12 10 52 87 92 10 52 87 92 102 85 102 85 49 10 -18 -48 -49 10 -18 -48 -60 -12 -60 -12 10 52 87 92 TDM = Time Division Multiplex Latency Packet
34
DRAFT V03 DRAFT V03 33 Digital Transport E1 World (ex. NA and Japan) 2.048 Mbit/s full duplex 32 time slots = 32 channels of 8-bit x 8 kHz 1 time slot reserved for framing 1 time slot is typically reserved for signalling 30 time slots for voice communications E3 = 16 x E1 = 480 channels T1 North America and Japan 1.536 MBit/s full duplex 24 time slots = 24 channels of 8-bit x 8kHz
35
DRAFT V03 DRAFT V03 34 Compression Compression of voice and audio CODEC = COmpression - DECompression Reduce bandwidth for the audio signal = more channels on the same transport Lossless vs. lossy algorithms Latency impact CPU impact Quality impact Speech recognition impact
36
DRAFT V03 DRAFT V03 35 Sampling Theory CODECCharacteristicsDescription ITU-T G.711Sample rate: 8kHz Sample size: 8-bit A-law/μ-law Bandwidth: 64kbit/s Standard telephony quality with “companding” ITU-T G.726Sample rate: 8kHz Sample size: 2, 3, 4, 5-bit Bandwidth: 16, 24, 32, 40 kbit/s Adaptive Delta PCM (ADPCM). Supercedes G.721 & G.723 ITU-T G.728Bandwidth: 16 kbit/s Delay: 5 samples, 0.625 ms LDCELP = Low Delay Code Excited Linear Prediction ITU-T G.729Bandwidth: 8 or 6.4, 11.8 kbit/s Delay: 10 ms chunks CS-ACELP = Conjugate-Structure Algebraic-Code-Excited Linear Prediction ITU-T G.722Sample rate: 16kHz Sample size: 14-bit Bandwidth: 32-64kbit/s Standard wideband speech ADPCM codec. Non-telephony CODEC
37
DRAFT V03 DRAFT V03 36 Digital Transport CODECs can increase channel capacity 1 E1/T1 channel = 64 kbit/s = 1 channel of G.711 = 2 channels of G.726 @ 32 kbit/s = 8 channels of G.729 @ 8 kbit/s 1 T1 = 24 channels = 24 channels of G.711 = 48 channels of G.726 @ 32 kbit/s = 196 channels of G.729 @ 8 kbit/s BUT, CODECs can reduce voice quality
38
DRAFT V03 DRAFT V03 37 Digital Transport Advanced topics Unreliable tone transmission on some CODECs DTMF, Fax, Modem etc. Use “out-of-band” communication (more later) Silence suppression Voice Activity Detection Replace by simulated background noise e.g. G.729 Annex B Comfort noise generator (CNG) Played when a communication channel fails temporarily Usability: Reduces hang-up on temporary outages
39
DRAFT V03 DRAFT V03 38
40
Voice Over IP – Basics
41
DRAFT V03 DRAFT V03 40 Module Overview Voice Over IP Basics Internet and intranet for voice communication Challenges of the internet protocols Quick guide to the internet protocols: TCP/IP, UDP Applying internet protocols to session management & voice carriage
42
DRAFT V03 DRAFT V03 41 Telephony: Packet Switch Network …0101100… …0011100… …1100110… …1101100… …0001100… …0101100… …0011100… …1100110… …1101100… …0001100… …0101100… …0011100… …1100110… …1101100… …0001100… …0101100… …0011100… …1100110… …1101100… …0001100… PSTN: Public Switched Telephony Network
43
DRAFT V03 DRAFT V03 42 Voice Over Internet Protocol …0101100… …0011100… …1100110… …1101100… …0001100… …0101100… …0011100… …1100110… …1101100… …0001100… …0101100… …0011100… …1100110… …1101100… …0001100… …0101100… …0011100… …1100110… …1101100… …0001100… Intranet OR Internet
44
DRAFT V03 DRAFT V03 43 Challenges Call establishment protocols Connect A-party and B-party Perform advanced telephony functions Audio transport protocols Get the packets from A-to-B / B-to-A on time Latency Packet loss Jitter Quality of service
45
DRAFT V03 DRAFT V03 44 The Problem The internet was not designed to carry real-time voice traffic!!! (well almost)
46
DRAFT V03 DRAFT V03 45 Internet Protocol Suite Stack Link Layer 1 Network Layer 2 Transport Layer 3 Application Layer 4 Ethernet, Wi-Fi, ATM, Frame Relay… IP (IPv4, IPv6) TCP, UDP, SCTP, DCCP, IL, RUDP, … DNS, FTP, HTTP, SMTP, SNMP, TELNET, SIP, RTP, H.323…
47
DRAFT V03 DRAFT V03 46 Voice Over Internet Protocol Internet Application
48
DRAFT V03 DRAFT V03 47 Internet Protocol Suite Stack Link Network Transport Application Link Network Transport Application Peer-to-peer connection Link Network Link Network
49
DRAFT V03 DRAFT V03 48 Internet Protocol Suite Stack Link Network Transport Application Link Network Transport Application Peer-to-peer connection Link Network Link Network 0101100
50
DRAFT V03 DRAFT V03 49 Internet Protocol Suite Stack Link Network Transport Application Link Network Transport Application Peer-to-peer connection Link Network Link Network 0101100 Packet Loss
51
DRAFT V03 DRAFT V03 50 Internet Protocol Suite Stack TCP/IP = Transmission Control Protocol Transport protocol One of the core protocols of the Internet protocol suite: 75% of all traffic Applications on networked hosts can create connections to one another using TCP for exchange of data or packets. Guarantees reliable and in-order delivery of data from sender to receiver Distinguishes data for multiple, concurrent applications on the same host TCP supports many of the most popular application protocols including HTTP (Web), Email and SIP Send a stream of bytes through a virtual “pipe” Utilizes sequence numbers, acknowledgement, timeout, retransmission…
52
DRAFT V03 DRAFT V03 51 Internet Protocol Suite Stack TCP/IP for Voice Over IP Good for session management H.323 / ASN.1 built on TCP/IP Sub-optimal for near-realtime audio transport Latency Jitter Aside: Utilized for Skype
53
DRAFT V03 DRAFT V03 52 Internet Protocol Suite Stack UDP = User Datagram Protocol Transport protocol: One of the core protocols of the Internet protocol suite: 20% of all traffic Does not provide the reliability and ordering guarantees of TCP Datagrams may arrive out of order or be dropped by the network Datagram transmission is stateless in the network Lower overhead = faster, more efficient, suited to time-sensitive comms UDP supports many application protocols including DNS and RTP
54
DRAFT V03 DRAFT V03 53 Internet Protocol Suite Stack UDP for Voice Over IP OK for session management End-parties need reliable communication about session status SIP utilises UDP with retry behaviour to withstand packet loss UDP offers faster setup time than TCP/IP Suited to near-realtime audio transport Utilized by RTP Better latency than TCP/IP (though not ideal) Better jitter than TCP/IP (though not ideal) Packet loss causes poorer audio transmission than TCP/IP
55
DRAFT V03 DRAFT V03 54 Internet Protocols for Voice Over IP Internet vs. PSTN Internet has smart terminals and “dumb” network PSTN has “dumb” terminals and smart network PSTN dedicates virtual connections for audio and session Internet normally creates connections on an as-needed basis Internet protocols emerging for traffic shaping suited to telephony Network tools also emerging for banishing and punishing telephony
56
VoIP Protocols
57
DRAFT V03 DRAFT V03 56 Module Overview VoIP Protocols Overview of the landscape of VoIP protocols Major IETF standards: SIP, RTP, RTCP Major ITU-T standards: H.323 family
58
DRAFT V03 DRAFT V03 57 VoIP Protocols: IETF ProtocolDescription SIPSession Initiation ProtocolSession management on UDP RTP SRTP Real-time Transport Protocol Secure RTP Audio/video media delivery on UDP RTCP SRTCP Real-time Transport Control Protocol Secure RTCP Out-of-band control protocol for RTP
59
DRAFT V03 DRAFT V03 58 VoIP Protocols About SIP IETF Protocol Standard for initiating, modifying, and terminating a user session that may involves media elements such as voice, video, instant messaging etc. Used widely in telephony environments Supported by numerous IVR platforms Accepted in 2000 as the signalling protocol of the IMS architecture Other uses MRCP v2: Media Resource Control Protocol for Speech Recognition and Text-to- Speech Microsoft Messenger
60
DRAFT V03 DRAFT V03 59 VoIP Protocols: ITU-T ProtocolDescription H.323 Umbrella recommendation for audio-visual comms on any packet network References the following specifications H.225.0 Protocol to describe call signaling, the media (audio and video), the stream packetization, media stream synchronization and control message formats H.245 Control protocol for multimedia communication with messages and procedures used for opening and closing logical channels for audio, video and data, capability exchange, control and indications H.235Describes security in H.323 H.329 Describes dual stream use in videoconferencing, usually one for live video, the other for presentation
61
DRAFT V03 DRAFT V03 60 VoIP Protocols About H.323 Based on ISDN Q.931 Suited to internetworking between IP and ISDN / QSIG Similar call model to ISDN Used widely in telephony environments Telecommunications backbones Other uses Microsoft NetMeeting
62
DRAFT V03 DRAFT V03 61 Today’s Focus We’ll focus on SIP today
63
SIP: Session Initiation Protocol
64
DRAFT V03 DRAFT V03 63 Module Overview Session Initiation Protocol Components of the SIP architecture SIP Messaging Standard SIP exchanges Ring, hold, answer, transfer, consultative transfer, conferencing SIP addresses SIP working with RTP for Voice
65
DRAFT V03 DRAFT V03 64 SIP Overview Session Initiation Protocol (SIP) There are many applications of the Internet that require the creation and management of a session, where a session is considered an exchange of data between an association of participants. The implementation of these applications is complicated by the practices of participants: users may move between endpoints, they may be addressable by multiple names, and they may communicate in several different media - sometimes simultaneously. Numerous protocols have been authored that carry various forms of real-time multimedia session data such as voice, video, or text messages. The Session Initiation Protocol (SIP) works in concert with these protocols by enabling Internet endpoints (called user agents) to discover one another and to agree on a characterization of a session they would like to share. For locating prospective session participants, and for other functions, SIP enables the creation of an infrastructure of network hosts (called proxy servers) to which user agents can send registrations, invitations to sessions, and other requests. SIP is an agile, general-purpose tool for creating, modifying, and terminating sessions that works independently of underlying transport protocols and without dependency on the type of session that is being established.
66
DRAFT V03 DRAFT V03 65 SIP Overview Session Initiation Protocol (SIP) http://www.ietf.org/rfc/rfc3261.txt http://www.ietf.org/rfc/rfc3261.txt Protocol developed by the IETF MMUSIC Working Group (now SIP) Scope: initiate, modify and terminate an interactive user session that involves voice and multimedia elements such as video, instant messaging and games. SIP 2.0 published as RFC 3261 in 2002 Initial release of SIP 1.0 as RFC 2543 in 1996 (now obsolete) SIP enables device-to-device communication with media communication via other protocols SDP: Session Description Protocol - RFC 2327 (describe media capabilities) RTP: Real-time Transport Protocol - RFC 3550 (transport audio, video, media) RTCP: Real-time Transport Control Protocol - RFC 3550 (control transport of media) Standard protocols with high level of product interoperability
67
DRAFT V03 DRAFT V03 66 SIP Overview Session Initiation Protocol (SIP) SIP is an “application-layer” control protocol in Internet stack SIP is an device-to-device, client-server session signalling protocol SIP establishes sessions for voice and other media Allows integration with others services: web, email, IM… Allows presence and mobility services
68
DRAFT V03 DRAFT V03 67 SIP Overview Applications of SIP SIP can convey arbitrary payload Session description Instant messages Pictures (e.g. picture of the caller) Speech recognition control Web pages
69
DRAFT V03 DRAFT V03 68 SIP Overview: Devices Cisco xTen Siemens Avaya BlackBerry Express Talk
70
DRAFT V03 DRAFT V03 69 SIP Overview Network Devices SIP Proxy Server Intermediary to relay call signalling SIP Redirect Server Redirects callers to other servers SIP Registrar Accept registration requests from users Maintains user’s whereabouts SIP IVR SIP PBX
71
DRAFT V03 DRAFT V03 70 SIP Communications SIP Jargon User Agent Client = Initiates a communication User Agent Server = Respondent to a communication Note: device can be both client and server in a single session Examples: Desktop phone is both a client (makes calls) and server (receives calls)
72
DRAFT V03 DRAFT V03 71 SIP Communications SIP Addresses SIP address can make you globally reachable Callees bind to this address using SIP REGISTER method Callers use this address to establish real-time communication with callees SIP address is a URI address format: sip:andrew.hunt@holly-connects.com sip:0282078218@asterisk.holly-connects.com sip:voicemail@holly-connects.com?subject=wassup Can embed in web pages or place on your business card Highlighted text is the public identifier SIP URI address contents Must include host May include user name May include the port number May include others parameters (e.g., transport)
73
DRAFT V03 DRAFT V03 72 SIP Communications Protocol design Similar protocol to HTTP and SMTP Transmission via UDP messages Human-readable messages Simple interaction mechanism User Agent “A” sends a Control Message to User Agent “B” User Agent “B” sends a Response Code to User Agent “A” Retry in the event of communication failure
74
DRAFT V03 DRAFT V03 73 SIP Communications SIP Methods (Control Messages) INVITE = invite a user agent to a session ACK = acknowledge a communication OPTIONS = query servers about their capabilities REGISTER = register with a SIP Registrar BYE = terminate a session CANCEL = cancel a session
75
DRAFT V03 DRAFT V03 74 SIP Communications SIP Response Codes 1xx: Provisional -- request received, continuing to process the request 2xx: Success -- the action was successfully received, understood, and accepted 200 OK 3xx: Redirection -- further action required to complete the request 4xx: Client Error -- the request contains bad syntax or cannot be fulfilled 5xx: Server Error -- the server failed to fulfil an apparently valid request 6xx: Global Failure -- the request cannot be fulfilled at any server
76
DRAFT V03 DRAFT V03 75 SIP Communications SIP Extensions (selection amongst many) INFO = carry session-related control information RFC 2976 e.g. ISUP and ISDN signalling messages REFER = refer the recipient to a new resource RFC 3515 e.g. Call transfer
77
DRAFT V03 DRAFT V03 76 SIP: Simple Peer-to-Peer Session “A” “B” Simple peer-to-peer SIP session Assumptions “A” knows address of “B” “A” and “B” can see each other on the network Audio communication Humans are using “A” and “B”
78
DRAFT V03 DRAFT V03 77 SIP: Simple Peer-to-Peer Session “A” “B” INVITE From:A To:B A-SDP 100 TRYING 180 RINGING Play ring-tone to user B Play ring-tone to user A User makes a call to “B” B User answers call 200 OK B-SDP RTP Audio Stream ACK A hears B B hears A B hangs up BYE 200 OK B terminates RTP audio - - - Call Established - - - A terminates audio - - - Session Over - - - - - - Waiting for answer - - -
79
DRAFT V03 DRAFT V03 78 SIP: Simple Peer-to-Peer Session “A” “B” INVITE From:A To:B A-SDP 100 TRYING 180 RINGING Play ring-tone to user B Play ring-tone to user A User makes a call to “B” B User answers call 200 OK B-SDP RTP Audio Stream ACK A hears B B hears A B hangs up BYE 200 OK B terminates RTP audio - - - Call Established - - - A terminates audio - - - Session Over - - - - - - Waiting for answer - - - SIP Messages Status codes RTP
80
DRAFT V03 DRAFT V03 79 SIP Communications SIP Message: Example INVITE sip:0282078101@10.0.0.113:5077 SIP/2.0 Via: SIP/2.0/UDP 10.0.0.3:5060 From: ;tag=40A0C340-2BC To: Date: Fri, 07 Jul 2006 01:58:55 GMT Call-ID: FB5F1FE3-C9211DB-B22481EA-DE5FE23A@10.0.0.3 Supported: timer,100rel Min-SE: 1800 Cisco-Guid: 4217155242-210899419-2988540394-3730825786 User-Agent: Cisco-SIPGateway/IOS-12.x Allow: INVITE, OPTIONS, BYE, CANCEL, ACK, PRACK, COMET, REFER, SUBSCRIBE, NOTIFY, INFO CSeq: 101 INVITE Max-Forwards: 6 Remote-Party-ID: ;party=calling;screen=yes;privacy=off Timestamp: 1152237535 Contact: Expires: 180 Allow-Events: telephone-event Content-Type: application/sdp Content-Length: 235 > Header To & From Unique call ID User agent details Transmission info Multi-part media content SDP removed
81
DRAFT V03 DRAFT V03 80 SIP Communications SDP – Session Description Protocol RFC 2327 Describe media capability of a SIP user agent v=0 o=Holly-HVG-4-2 2890844526 2890842809 IN IP4 10.0.0.113 s=sip call from the hvg c=IN IP4 10.0.0.113 t=0 0 m=audio 11946 RTP/AVP 8 101 c=IN IP4 10.0.0.113 a=rtpmap:0 PCMU/8000 a=rtpmap:8 PCMA/8000 a=rtpmap:101 telephone-event/8000 a=fmtp:101 0-16 v=0 o=Holly-HVG-4-2 2890844526 2890842809 IN IP4 10.0.0.113 s=sip call from the hvg c=IN IP4 10.0.0.113 t=0 0 m=audio 11946 RTP/AVP 8 101 c=IN IP4 10.0.0.113 a=rtpmap:0 PCMU/8000 a=rtpmap:8 PCMA/8000 a=rtpmap:101 telephone-event/8000 a=fmtp:101 0-16 Agent Description Audio Capability #1 RTP Protocol Agent Address G.711 u-law & A-law 8000Hz DTMF events 0123456789ABCD*#
82
DRAFT V03 DRAFT V03 81 SIP Communications SDP Protocol Structure v= (protocol version) o= (owner/creator and session identifier). s= (session name) i=* (session information) u=* (URI of description) e=* (email address) p=* (phone number) c=* (connection information) b=* (bandwidth information) One or more time descriptions z=* (time zone adjustments) k=* (encryption key) a=* (zero or more session attribute lines) Zero or more media descriptions m= (media name and transport address) i=* (media title) c=* (connection information - optional if included at session-level) b=* (bandwidth information) k=* (encryption key) a=* (zero or more media attribute lines) Time description t= (time the session is active) r=* (zero or more repeat times) * = optional
83
DRAFT V03 DRAFT V03 82 SIP Registration “A” Registration Process SIP Registrar REGISTER 200 OK - - - Repeat regularly (5, 60+ min) - - - REGISTER Via: IP:Host From: “Andrew Hunt” To: CallID: > Expires: 3600 REGISTER Via: IP:Host From: “Andrew Hunt” To: CallID: > Expires: 3600
84
DRAFT V03 DRAFT V03 83 SIP: SIP Session Via a Proxy INVITE From:A To:B A-SDP 100 TRYING 180 RINGING Play ring-tone to user B Play ring-tone to user A User makes a call to “B” B User answers call 200 OK B-SDP RTP Audio Stream ACK A hears B B hears A BYE 200 OK B terminates RTP audio - - - Call Established - - - A hangs up - - - Session Over - - - - - - Waiting for answer - - - “A” SIP Proxy “B” INVITE From:A To:B A-SDP 100 TRYING 180 RINGING 200 OK B-SDP ACK BYE 200 OK A terminates RTP audio
85
DRAFT V03 DRAFT V03 84 SIP: SIP Proxy Chaining “A” “B” SIP Proxy
86
DRAFT V03 DRAFT V03 85 SIP Proxy SIP Proxy Function Serve as rendezvous point at which callees are reachable Perform routing function Select the next hop or hops when chaining Forking: try multiple destinations in parallel or sequence Avoid loops when chaining Available capabilities Programmable routing decisions & tables Least-cost routing Firewall traversal Direct certain calls to PSTN via gateway (e.g. 911, local calls)
87
DRAFT V03 DRAFT V03 86 SIP: Session Via a PBX INVITE From:A To:B A-SDP 100 TRYING 180 RINGING Play ring-tone to user B Play ring-tone to user A User makes a call to “B” B User answers call 200 OK B-SDP RTP Audio Stream ACK A hears B BYE 200 OK B terminates RTP audio - - - Call Established - - - - - - Session Over - - - - - - Waiting for answer - - - “A” SIP PBX (e.g. Asterisk) “B” INVITE From:P To:B P-SDP 100 TRYING 180 RINGING 200 OK B-SDP ACK BYE 200 OK A terminates RTP audio REGISTER OK REGISTER OK RTP Audio Stream B hangs up
88
DRAFT V03 DRAFT V03 87 SIP: Session Via a PBX with Redirect (Direct Audio Link) BYE 200 OK B terminates RTP audio - - - Call Established - - - - - - Session Over - - - “A” SIP PBX (e.g. Asterisk) “B” BYE 200 OK A terminates RTP audio B hangs up (Re)INVITE From:P To:B A-SDP 200 OK RTP Audio Stream (Re)INVITE From:P To:A B-SDP RTP Audio Stream - - - Call Continues - - -
89
DRAFT V03 DRAFT V03 88 SIP-TDM Gateway Translate signalling messages To/From traditional telephony and VoIP e.g. ISUP SIP/RTP Support heterogeneous environments Staged migration to VoIP Numerous gateway products available PSTN IP TDM/ISDN SIP/RTP VoIP Gateway
90
DRAFT V03 DRAFT V03 89 SIP-TDM Gateway Signalling gateway Media Gateway Controller Media Gateway PSTN IP RTP SIP TDM ISDN
91
DRAFT V03 DRAFT V03 90 SIP-TDM Gateway Terminates RTP audio - - - Session Over - - - TDM-VoIP Bridge SIP UA Q.931 RELEASE COMPLETE Terminates RTP audio Pick-up INVITE 555 1234 100 TRYING RTP Audio Stream 180 RINGING Q.931 SETUP Q.931 CALL PROCEEDING Play ring-tone User makes a call Q.931 PROGRESS Q.931 CONNECT Phone rings 200 OK ACK BYE Q.931 DISCONNECT 200 OK Hang up Q.931 RELEASE - - - Call in Progress - - -
92
DRAFT V03 DRAFT V03 91 SIP: Sending Auxiliary Information User makes a call “A” INVITE sip:0282078101@10.0.0.113:5077 SIP/2.0 > Content-type: multipart/mixed; boundary="gc0p4Jq0M2Yt08jU534c0p" MIME-version: 1.0 This is a multi-part message in MIME format. --gc0p4Jq0M2Yt08jU534c0p Content-Type: application/sdp Content-Length: 235 > --gc0p4Jq0M2Yt08jU534c0p Content-type: image/jpeg PGh0bWw+CiAgPGhlYWQ+CiAgPC9oZWFkPgogIDxib2R5PgogI CAgPHA+VGhpcyBpcyB0aGUgYm9keSBvZiB0aGUgbWVzc2Fn ZS48L3A+CiAgPC9ib2R5Pgo8L2h0bWw+Cg== --gc0p4Jq0M2Yt08jU534c0p “Brad calling”
93
DRAFT V03 DRAFT V03 92 SIP: Failed Establishment “A” “B” INVITE From:A To:B A-SDP User makes a call to “B” INVITE From:A To:B A-SDP Timeout - - - Retries - - - “B” gives up INVITE From:A To:B A-SDP Timeout
94
RTP: Real-time Transport Protocol
95
DRAFT V03 DRAFT V03 94 Module Overview RTP: Real-time Transport Protocol Really real-time? RTP session overview RTP packets RTP and network transmission
96
DRAFT V03 DRAFT V03 95 Real-time Transport Protocol Standard for real-time transport over IP networks Streaming audio and video Utilised in SIP/RTP and H.323 Adopted by 3GPP for next generation cellular telephony Widespread use in streaming: QuickTime, Real, Microsoft RTP assumes Network is dumb and imperfect, end-points are smart Network may exhibit delays, jitter, packet loss etc. Real-time Transport Protocol is NOT REAL-TIME No end-to-end protocol, including RTP, can ensure in-time delivery. This would require the support of lower layers (switches, routers etc.) RTP provides functionality suited for carrying real-time content, e.g., a timestamp and control mechanisms for synchronizing different streams with timing properties
97
DRAFT V03 DRAFT V03 96 Real-time Transport Protocol One RTP session transmits one media type Audio / voice Video Multi-media requires multiple RTP sessions RTP session: Implements a particular RTP profile Includes an RTP data flow Transports a single media type according to one or more payload formats e.g. audio in G.711 format Includes an RTP control protocol flow Providing reception quality feedback, user information, etc. Associates: Source and destination IP addresses A pair of UDP ports: one for RTP, one for RTCP
98
DRAFT V03 DRAFT V03 97 Real-time Transport Protocol Media Content Supports mixing e.g. for audio conferencing Detect packet loss Time of last payload sample
99
DRAFT V03 DRAFT V03 98 Real-time Transport Protocol Source Destination Playback Buffer Network Packet loss Out-of-order recovery Late packet loss
100
Network Issues and Design
101
DRAFT V03 DRAFT V03 100 Module Overview Network Issues and Design Quality of Service Packet loss, Latency, Jitter Managing Quality of Service Network quality MPLS Silence suppression Local vs. long distance Network design Firewalls: NAT & STUN
102
DRAFT V03 DRAFT V03 101 Quality of Service QoS Definition Probability of the network meeting a given traffic contract Informally refers to the probability of a packet succeeding in passing between two points in the network within its desired latency period
103
DRAFT V03 DRAFT V03 102 Quality of Service What can go wrong as packets go from “A” to “B”? Dropped packets: routers might fail to deliver (drop) some packets if they arrive when their buffers are full. Some, none, or all of the packets might be dropped, depending on the state of the network, and it is impossible to determine what happened in advance. Delay: it may take a long time for a packet to get from “A” to “B” because it gets held up in long queues or takes a less direct route to avoid congestion Jitter: packets from source will reach the destination with different delays, sometimes by taking different routes Out-of-order delivery: different packets may take different routes with enough difference in delay to change the order of arrival Error: sometimes packets are misdirected, or combined together, or corrupted, while en route
104
DRAFT V03 DRAFT V03 103 Quality of Service
105
DRAFT V03 DRAFT V03 104 Quality of Service QoS issues can have a major impact on real-time media streaming Packet loss Missing packet replaced by silence Jitter & out-of-order Abrupt and unwanted variation in packet arrival timing Arrival of packets out-of-order Original Packet loss Jitter
106
DRAFT V03 DRAFT V03 105 Quality of Service Measure QoS on routers and end-points QoS tends to degrade with network size and congestion Managing Quality of Service Generously over-provision a network – expensive and does not scale Reserve network resources: e.g. RSVP = Resource Reservation Protocol DiffServ: Differentiated services for bulk flows (e.g. packets from a university) Multi-Protocol Label Switching (MPLS): emulates some properties of a circuit- switched network over a packet-switched network. Traffic shaping: control computer network traffic to optimize or guarantee performance, low latency, and/or bandwidth. Traffic shaping deals with concepts of classification, queue disciplines, enforcing policies, congestion management, quality of service (QoS), and fairness. Silence suppression
107
DRAFT V03 DRAFT V03 106 Quality of Service QoS on Local Network QoS generally not a major issue in single-site deployments Dedicate separate switches for voice and data traffic Provide redundant networks for voice and data traffic Gigabit Ethernet Monitor QoS Alarm network outages
108
DRAFT V03 DRAFT V03 107 Firewalls Network Address Translation (NAT): re-writing the source and/or destination addresses of IP packets as they pass through a router or firewall Aka network masquerading or IP-masquerading Firewalls use NAT to enable multiple hosts on a private network to access the Internet using a single public IP address Common in home and SOHO routers SDP addresses are not translated by NAT STUN (Simple Traversal of UDP over NATs, RFC 3489): Network protocol allowing clients behind NAT to find its (a) public address, (b) the type of NAT and (c) the internet side port associated by the NAT with a particular local port. Info is used to set up UDP communication between two machines both behind NAT routers
109
VoIP and Speech Recognition
110
DRAFT V03 DRAFT V03 109 Module Overview VoIP and Speech Recognition MRCP v1 & v2 Impact of CODECs Network issues: packet loss, latency
111
DRAFT V03 DRAFT V03 110 MRCP: Media Resource Control Protocol MRCP v1 IETF protocol Client control of speech resources Speech recognition Text-to-speech MRCP structure is similar to HTTP and SIP Request by client in header+body format Response by server Media delivery typically via RTP Widely supported by VoiceXML Platforms Leverages existing W3C standards for speech recognition and TTS markeup
112
DRAFT V03 DRAFT V03 111 MRCP: Media Resource Control Protocol MRCP v2 IETF protocol to supersede MRCP v1 Broader client control of speech resources Adds speaker verification and speaker identification Adds recording Utilizes SIP+SDP to establish the media pipe
113
DRAFT V03 DRAFT V03 112 VoIP and Speech Recognition Speech Recognition and CODECs Lossless CODECs do not affect speech recognition accuracy No loss of information Lossy CODECs can affect speech recognition accuracy Greater compression tends to cause great degration Speech recognizers are generally very reliable with widely deployed CODECs Mobile telephony has extensive compression Speech recognition trained explicitly for mobile performance DSR Aurora: Distributed Speech Recognition CODEC specialized for the requirements of speech recognition Promoted for mobile carrier usage
114
DRAFT V03 DRAFT V03 113 Speech Recognizer VoIP and Speech Recognition Speech Recognition and Latency Speech recognition not as sensitive to latency as humans Late packet is better than no packet Speech recognizers have extensive buffers for non-real-time processing Note: excessive latency (>1sec) can cause caller perceived service issues Buffer RTP Result
115
DRAFT V03 DRAFT V03 114 Speech Recognizer VoIP and Speech Recognition Speech Recognition and Packet Loss Speech recognition are sensitive to packet loss ASR can use packet loss information to minimize error reduction Buffer RTP Result
116
VoIP and Mobile Telephony
117
DRAFT V03 DRAFT V03 116 Module Overview VoIP and Mobile Telephony Analog mobile Digital mobile 3G and SIP IMS – IP Multi-Media Subsystem Architecture
118
DRAFT V03 DRAFT V03 117 Mobile Telephony Analog Mobile Experimental systems from 1920s “1G” – 1 st Generation AMPS: Advanced Mobile Phone Services Analog transmission 1978: Trial in Chicago 1979: Commercial launch in Japan 1981: Commercial launch in Sweden, Norway, Denmark, Finland 1983: Commercial launch in Chicago Issues: limited capacity, fraud, subscriber volume…
119
DRAFT V03 DRAFT V03 118 Mobile Telephony 2G – 2 nd Generation Mobile Objectives achieved Digital technology Increased capacity Greater security against fraud Global roaming Advanced services Lower power = smaller handsets = longer battery life Many standards evolved (examples) GSM: Pan-European standard that spread globally CDMA: Americas and parts of Asia (aka PCS) PDC: Japan Limitations: Optimized for voice – not suited to data
120
DRAFT V03 DRAFT V03 119 Mobile Telephony 2.5G – Stepping Stone from 2G to 3G 2G system with both packet switching (for data) and circuit switching (for voice) 2.5G is a marketing term – not a standard Objectives achieved Re-use of much 2G infrastructure (GSM & CDMA) Data rate of 144 kbit/sec or better Used for sending photos and much more
121
DRAFT V03 DRAFT V03 120 Mobile Telephony 3G – 3 rd Generation Mobile Combines high-speed mobile access with Internet Protocol (IP) based services Covers range of network technologies WCDMA, CDMA2000, UMTS, EDGE Data rate: 384kbps for mobile systems and 2Mbps for stationary systems Enables video, TV, images, music, games, location services…
122
DRAFT V03 DRAFT V03 121 Mobile Telephony 3GPP – 3 rd Generation Mobile Collaboration agreement (Dec-98) between ETSI (Europe), ARIB/TTC (Japan), CCSA (China), ATIS (North America) and TTA (South Korea). Goal: global 3G specification within the scope of the ITU's IMT-2000 project 3GPP specifications are based on evolved GSM specifications Now generally known as the UMTS system Introduced IMS…
123
DRAFT V03 DRAFT V03 122 Mobile Telephony IMS – IP Multi-Media Sub-System Emerged in 3GPP Release 5 with following enhancements Principles Access independence: work with fixed, mobile or wireless networks Different network architectures: implement on operator-selected architectures Terminal and user mobility: provides terminal mobility (roaming) Extensive IP-based services: offer just about any IP-based service. VoIP, push-to- talk over cellular (POC), multiparty gaming, video conferencing, messaging, community services, presence information, content sharing…
124
DRAFT V03 DRAFT V03 123 Mobile Telephony IMS is Built on SIP 3GPP Variant of SIP Application servers for SIP session management Caller ID, call waiting, call forwarding, transfer, call blocking, interception, announcements, conferencing, voice-mail, SMS… CSCF: Call Session Control Function and other functions by SIP Media Resource Function (MRF): SIP end-point with IVR-like functionality TDM-VoIP gateways to bridge to fixed and mobile telephony Who’s in control? TDM = dumb terminals, smart network Internet VoIP = smart terminals, dumb network IMS = dumb/smart terminals, smart network
125
Closing
126
DRAFT V03 DRAFT V03 125 Module Objectives Go home!!
127
DRAFT V03 DRAFT V03 126 Further Information Web sites IETF: http://www.ietf.org/html.charters/sip-charter.htmlhttp://www.ietf.org/html.charters/sip-charter.html SIP Tutorial: http://www.iptel.org/sip/siptutorial.pdfhttp://www.iptel.org/sip/siptutorial.pdf SIP Home Page: http://www.cs.columbia.edu/sip/http://www.cs.columbia.edu/sip/ SIP Forum: http://www.sipforum.org/http://www.sipforum.org/ Asterisk PBX: http://www.asterisk.org/http://www.asterisk.org/ VoIP Wiki Reference: http://www.voip-info.org/wiki/http://www.voip-info.org/wiki/ SIP Knowledge: http://www.sipknowledge.com/SIP_RFC.htmhttp://www.sipknowledge.com/SIP_RFC.htm SIP FAQ: http://www.sipknowledge.com/faq_main.htmhttp://www.sipknowledge.com/faq_main.htm SIP Tech Portal: http://www.tech-invite.com/http://www.tech-invite.com/
128
Thank you!!!
Similar presentations
© 2024 SlidePlayer.com Inc.
All rights reserved.