This preview shows page 1. Sign up to view the full content.
Unformatted text preview: UT D CS 6386 Telecommunications Software Design Session 4 Data & Voice Convergence Voice over IP Protocols
Slides from TRA are used with permission Some slides are from vovida.org Outline Voice and Data Convergence What Why How VoIP protocols H.323 SIP MGCP (MEGACO)
2 1 Data & Voice Convergence What The Holy Grail of Telecom One network for all communications needs Third attempt so far ISDN ATM Voice over IP
3 Telecom Networks From Multiple Networks
Site A Site B Internet
PC IP Router Modem Phone Voice Switch Intranet IP Router Modem PC Private Voice Network PSTN Voice Switch Phone Fax Fax 2 Telecom Networks Converging...
PC with Voice/Fax Site B
PC with Voice/Fax Internet
IP Router IP Phone PSTN Gateway PSTN Gateway Intranet IP Router IP Phone PSTN 5 Data & Voice Convergence Why Economics Carriers (service providers): looking for an efficient infrastructure to minimize CapEx and OpEx Users: want cheaper long-distance and longinternational telephone services Rich communications services Marriage between computing and communications technologies Faster, cheaper and easier service (feature) creation 6 3 Data & Voice Convergence Goals 7 Data & Voice Convergence 8 4 Voice and Data Convergence 9 Voice and Data Convergence 10 5 Voice and Data Convergence 11 Voice over IP History In the Beginning... 12 6 Voice over IP History 13 Voice over IP History 14 7 Voice over IP History 15 Voice over IP 16 8 Voice over IP 17 Voice over IP 18 9 Voice over IP 19 Voice over IP 20 10 Voice over IP 21 Voice over IP 22 11 VoIP Network Architecture 23 VoIP Network Architecture 24 12 Media Gateway Controller (Softswitch) 25 Network Components Example 26 13 VoIP Protocols Overview
Call Control and Signaling
H.323 H.225 H.245 Q.931 RAS SIP MGCP RTP RTCP RTSP Signaling and Gateway Control Media
Audio/ Video TCP UDP IP 27 H.323 What is H.323? " Describes terminals and other entities that provide multimedia communications services over Packet Based Networks (PBN) which may not provide a guaranteed Quality of Service. H.323 entities may provide real-time audio, video and/or data communications.
ITU-T Recommendation H.323 Version 4 "
28 14 H.323 Framework
H.323 defines: Call establishment and teardown Audio visual or multimedia conferencing Main focus is multimedia communications, including conferencing Point to point Point to multi-point multi Multi-point to multi-point Multimulti29 H.323 Components Gatekeeper Multipoint Control Unit Packet Based Networks Terminal Gateway Circuit Switched Networks 30 15 H.323 Terminals
H.323 terminals are client endpoints that must support: H.225 call control signaling H.245 control channel signaling RTP/RTCP protocols for media packets transport Audio codecs (data compression) Video codecs support is optional
31 H.323 Gateway
A gateway provides translation: A gateway can provide translation between entities in a packet switched network (e.g. IP network) and circuit switched network (e.g. PSTN) Gateways can also provide transmission formats translation, communication procedures translation, H.323 and non-H.323 nonendpoints translations or codec translation
32 16 H.323 Gatekeepers
Gatekeepers in a H.323 network provide these functions: Address translation Admission control Bandwidth control Zone management Call control signaling (optional) Call authorization (optional) Bandwidth management (optional) Call management (optional) Gatekeepers are optional If a gatekeeper presents in a H.323 network, all H.323 endpoints must register with the gatekeeper and receive permission before making a call
33 H.323 Multipoint Control Unit MCU provide support for conferences of three or more endpoints An MCU consist of: A Multipoint Controller (MC) provides control functions A Multipoint Processor (MP) receives and processes audio, video and/or data streams 34 17 H.323 an Umbrella Specification
H.261 and H.263 Video codecs G.711, G.723, G.729 Audio codecs RTP/RTCP Media Transport protocols H.323
Media Data/Fax Call Control and Signaling Data/Fax
T.120 Data conferencing T.38 Fax
Audio Codec G.711 G.723 G.729 Video Codec H.261 H.263 RTCP T.120 T.38 H.225 H.225 Q.931 RAS H.245 Call Control and Signaling
H.245 - Capabilities advertisement, media channel establishment, and conference control H.225 Q.931 - call signaling and call setup RAS - registration and other admission control with a gatekeeper RTP UDP TCP IP TCP UDP TCP 35 H.323 Other ITU H Series Recommendations
Protocol H.235 H.450.N Description Specifies security and encryption for H.323 and H.245 based terminals. H.450.1 specifies framework for supplementary services. H.450.N recommendation specifies supplementary services such as call transfer, call diversion, call hold, call park, call waiting, message waiting indication, name identification, call completion, call offer, and call intrusion. Specifies internetworking of H Series terminals with circuit switched terminals. H.246 36 18 H.323 Components and Signaling
H.225/RAS messages over RAS channel H.225/Q.931 (optional) H.245 messages (optional) H.225/RAS messages over RAS channel H.225/Q.931 (optional) H.245 messages (optional)
Gatekeeper H.225/Q.931 messages over call signaling channel H.245 messages over call control channel PSTN
Gateway Terminal H.245 A protocol for capabilities advertisement, media channel establishment and conference control H.225 - Call Control - Q.931 A protocol for call control and call setup - RAS Registration, admission and status protocol used for communicating between an H.323 endpoint and a gatekeeper 37 H.323 Establishing Communication
Establishing communication using H.323 may occurs in five steps:
1. Call setup 2. Initial communication and capabilities exchange 3. Audio/video communication establishment 4. Call services 5. Call termination
38 19 H.323 Simplified Call Setup Both endpoints have previously registered with the gatekeeper Terminal A initiates the call to the gatekeeper (RAS messages are exchanged) The gatekeeper provides information for Terminal A to contact Terminal B Terminal A sends a SETUP message to Terminal B Terminal B responds with a Call Proceeding message and also contacts the gatekeeper for permission Terminal B sends a Alerting and Connect message Terminal B and A exchange H.245 messages to determine master slave, terminal capabilities, and open logical channels The two terminals establish RTP media paths
Terminal A Gatekeeper Terminal B 1. ARQ 2. ACF 3. SETUP 4. Call Proceeding 5. ARQ 6. ACF 7.Alerting 8.Connect H.245 Messages RTP Media Path RAS messages Call Signaling Messages
Note: This diagram only illustrates a simple point-to-point call setup where call signaling is not routed to the gatekeeper. Refer to the H.323 recommendation for more call setup scenarios. 39 H.323 Versions
Version H.323 Version 1 Date May 1996 Reference for key feature summary New release. Refer to the specification. http://www.packetizer.com/iptel/h323/ H.323 Version 2 H.323 Version 3 H.323 Version 4 January 1998 September 1999 November 2000 http://www.packetizer.com/iptel/h323/whatsnew _v2.html http://www.packetizer.com/iptel/h323/whatsnew _v3.html http://www.packetizer.com/iptel/h323/whatsnew _v4.html 40 20 References
For more information on H.323 refer to: ITU-T ITU http://www.itu.int/itudoc/itu-t/rec/index.html http://www.itu.int/itudoc/itu- Packetizer http://www.packetizer.com/iptel/h323/ Open H.323 http://www.openH323.org 41 Session Initiation Protocol What is SIP? " Session Initiation Protocol - An application layer signaling protocol that defines initiation, modification and termination of interactive, multimedia communication sessions between users.
IETF RFC 2543 Session Initiation Protocol New Version: RFC 3261 "
42 21 SIP Distributed Architecture
SIP Components Location Server Redirect Server Registrar Server PSTN
User Agent Proxy Server Proxy Server
43 Gateway SIP User Agents
An application that initiates, receives and terminates calls User Agent Clients (UAC) An entity that initiates a call User Agent Server (UAS) An entity that receives a call Both UAC and UAS can terminate a call
44 22 SIP Proxy Server An intermediary node that acts as both a server and a client to make requests on behalf of other clients Requests are serviced internally or by passing them on, possibly after translation, to other servers Interprets, rewrites or translates a request message before forwarding it
45 SIP Location Server A location server is used by a SIP redirect or proxy server to obtain information about a called party's possible location(s) 46 23 SIP Redirect Server A server that accepts a SIP request, maps the address into zero or more new addresses and returns these addresses to the client Unlike a proxy server, the redirect server does not initiate its own SIP request Unlike a user agent server, the redirect server does not accept or terminate calls 47 SIP Registrar Server A server that accepts REGISTER requests The register server may support authentication A registrar server is typically co-located with coa proxy or redirect server and may offer location services 48 24 SIP Messages Methods and Responses
SIP components communicate by exchanging SIP messages: SIP Methods: INVITE Initiates a call by inviting user to participate in session ACK - Confirms that the client has received a final response to an INVITE INVITE request BYE - Indicates termination of the call CANCEL - Cancels a pending request REGISTER Registers the user agent OPTIONS Used to query the capabilities of a server INFO Used to carry out-of-bound out-ofinformation, such as DTMF digits SIP Responses: 1xx - Informational Messages 2xx - Successful Responses 3xx - Redirection Responses 4xx - Request Failure Responses 5xx - Server Failure Responses 6xx - Global Failures Responses 49 SIP Header SIP borrows much of the syntax and semantics from HTTP A SIP messages looks like an HTTP message message formatting, header and MIME support An example SIP header:
------------------------------------------------------------INVITE sip:[email protected] SIP/2.0 Via: SIP/2.0/UDP 192.168.6.21:5060 From: sip:[email protected] To: <sip:[email protected]> CallCall-ID: [email protected] c2943000-e0563-2a1ceCSeq: 100 INVITE Expires: 180 UserUser-Agent: Cisco IP Phone/ Rev. 1/ SIP enabled Accept: application/sdp Contact: sip:[email protected]:5060 ContentContent-Type: application/sdp ------------------------------------------------------------50 25 SIP Addressing The SIP address is identified by a SIP URL, in the format: [email protected] Examples of SIP URLs: sip:[email protected] sip:[email protected] sip:[email protected] 51 SIP Establishing Communication
Establishing communication using SIP usually occurs in six steps:
1. Registering, initiating and locating the user 2. Determine the media to use involves delivering a description of the session that the user is invited to 3. Determine the willingness of the called party to communicate the called party must send a response message to indicate willingness to communicate accept or reject 4. Call setup 5. Call modification or handling example, call transfer (optional) 6. Call termination
52 26 SIP Registration Each time a user turns on the SIP user client (SIP IP Phone, PC, or other SIP device), the client Proxy/ Location/ SIP Phone registers with the Registration Redirect User proxy/registration server Server Server REGISTER REGISTER Registration can also occur when the SIP user client needs to inform 200 200 the proxy/registration server of its location SIP Messages: The registration information is REGISTER Registers the address listed in the To periodically refreshed and each header field. 200 OK. user client must re-register with rethe proxy/registration server Typically the proxy/registration server will forward this information 53 to be saved in the location/redirect server SIP Simplified Call Setup and Teardown
User Agent INVITE Proxy Server Location/Redirect Server INVITE 302 (Moved Temporarily) ACK INVITE Proxy Server User Agent Call Setup INVITE 302 (Moved Temporarily) ACK 180 (Ringing) 200 (OK) ACK 180 (Ringing) 200 (OK) ACK RTP MEDIA PATH BYE 200 (OK) BYE 200 (OK) BYE 200 (OK) INVITE 180 (Ringing) 200 (OK) ACK Media Path Call Teardown 54 27 SIP Design Framework
SIP was designed for: Integration with existing IETF protocols Scalability and simplicity Mobility Easy feature and service creation 55 SIP Feature Creation A SIP based system can support rapid feature and service creations For example, features and services can be created using: Call Processing Language (CPL) Common Gateway Interface (CGI) 56 28 SIP Feature Creation
SIP can support these features and applications: Basic call features (call waiting, call forwarding, call blocking etc.) Unified messaging Call forking Click to talk Presence Instant messaging Find me / Follow me
For more information on SIP refer to: IETF http://www.ietf.org/html.charters/siphttp://www.ietf.org/html.charters/sipcharter.html Henning Schulzrinne's SIP page http://www.cs.columbia.edu/~hgs/sip/ 58 29 What is MGCP? " Media Gateway Control Protocol - A protocol for controlling telephony gateways from external call control elements called media gateway controllers or call agents.
IETF RFC 2705 Media Gateway Control Protocol "
59 MGCP Components
Call agent or media gateway controller Provides call signaling, control and processing intelligence to the gateway Sends and receives commands to/from the gateway
Gateway Call Agent or Media Gateway Controller (MGC) SIP H.323 Call Agent or Media Gateway Controller (MGC) MGCP MGCP Provides translations between circuit switched networks and packet switched networks Sends notification to the call agent about endpoint events Execute commands from the call agents Media Gateway (MG) Media Gateway (MG) 60 30 MGCP Simplified Call Flow
1. 2. 3. 4. 5. 6. 7. When Phone A goes offhook Gateway A sends a signal to the call agent Gateway A generates dial tone and collects the dialed digits The digits are forwarded to the call agent The call agent determines how to route the call The call agent sends commands to Gateway B Gateway B rings phone B The call agent sends commands to both gateways to establish RTP/RTCP sessions
Call Agent Media Gateway Controller MGCP MGCP RTP/RTCP Gateway A Gateway B Phone A Phone B 61 MGCP Commands
Call Agent Commands: EndpointConfiguration NotificationRequest CreateConnection ModifyConnection DeleteConnection AuditEndpoint AuditConnection Gateway Commands: Notify DeleteConnection RestartInProgress 62 31 MGCP Commands Example 63 MGCP Characteristics A master/slave protocol Assumes limited intelligence at the edge (endpoints) and intelligence at the core (call agent) Used between call agents and media gateways Differs from SIP and H.323 which are peer-to-peer peer-toprotocols Interoperates with SIP and H.323 64 32 VoIP Protocols MGCP, SIP and H.323 MGCP divides call setup/control and media establishment functions MGCP does not replace SIP or H.323. SIP and H.323 provide symmetrical or peer-to-peer peer-tocall setup/control MGCP interoperates with H.323 and SIP. For example, A call agent accepts SIP or H.323 call setup requests. The call agent uses MGCP to control the media gateway. The media gateway establishes media sessions with other H.323 or SIP endpoints.
In this example, an H.323 gateway is "decomposed" into: A call agent that provides signaling. A gateway that handles media. MGCP protocol is used to control the gateway. H.323 Gateway H.323
Call Agent/ Media Gateway Controller H.323 Gateway MGCP Media RTP/RTCP
Media Gateway 65 VoIP Protocols Example Comparison
1. 2. 3. 4. 5. A user picks up analog phone and dials a number. The gateway determines how to route the call. The two gateways exchange capabilities information. The terminating gateway rings the phone. The two gateways establish RTP/RTCP session with each other. 3 1
5.RTP/ RTCP H.323 Gateway H.323 Gateway MGCP
1. 2. 3. A user picks up analog phone and dials a number. The gateway notifies call agent of the phone (endpoint) event. The Call agent determines capabilities, routing information, and issues a command to the gateways to establish RTP/RTCP session with other end. 2 4 1 Analog Phone Call Agent/ Media Gateway Controller RTP/ RTCP Gateway B Analog Phone66 Analog Phone Gateway A Analog Phone 33 VoIP Protocols What is Megaco? MEdia GAteway Control Protocol (RFC3525) MEdia GAteway Control (RFC3525) A protocol that is evolving from MGCP and developed jointly by ITU and IETF: IETF: Megaco ITU: H.248 or H.GCP A protocol used by call agents (media gateway controllers) to control telephony gateways and terminals Supports separation of media function and control function for a multi-vendor multienvironment
67 MEGACO Evolution
IPDC MGCP proposal by merging IPDC and SGCP (Telcordia & Level 3) SGCP MGCP I-RFC 2705 MGCP released as Informational RFC Lucent submits MDCP to ITU-T SG16 (Nov 1999) MDCP
(proposal) Consensus between IETF and ITU on Megaco Protocol (March 99) Megaco/H.248 (RFC 3015) IETF RFC 3525 68 34 MEGACO Basic Concepts Termination An end point for media flows Implements Signals, and generates Signals, Events Can appear in at most one context Permanent termination is a special type that can exist outside a context MG
I1 O2=I1+I3 I2 O3=I1+I2 I3 Ta Tc Context Defines a session between terminations, acts as a mixing bridge Contains one or more terminations Supports multiple streams Td Stream Media stream, e.g. audio, video, etc...
69 MEGACO Basic Command Set
Ad d Modify Move Subtract AuditValue AuditCapabilities By
MGC MGC MGC MGC MGC MGC Description
Adds a termination to a context. Modifies a termination's properties, events, and signals. Moves a termination from one context to another. Removes a termination from its context. Returns current state of properties, events, signals, and statistics. Returns all possible values for termination properties, events, and signals allowed by an MG. Informs MGC of event occurrence(s). Takes or places a termination(s) out of or in service. For registration and restart; notifies MGC termination(s) will be taken out of or returned to service.
70 Notify ServiceChange MG MGC MG 35 MEGACO Extensions Packages Extension mechanisms to define new termination and media gateway behavior Add detailed application semantics to the protocol e.g. package dg (0x0005), basic DTMF tone generator Profiles A profile defines a particular application of Megaco/H.248 Specify which packages are to be supported and other protocol options e.g. RFC 3054, Megaco IP Phone Media Gateway Application Profile 71 References
MGCP: http://www.ietf.org/rfc/rfc2705.txt?number=2705 MEGACO: http://www.ietf.org/rfc/rfc2705.txt?number=3525 http://www.ietf.org/html.charters/megacohttp://www.ietf.org/html.charters/megacocharter.html Packetizer http://www.packetizer.com/iptel/h248/
72 36 VoIP Protocols Summary SIP and H.323 are comparable protocols that provide call setup, call teardown, call control, capabilities exchange, and supplementary features MGCP and MEGACO (H.248) are protocols for controlling media gateways from call agents In a VoIP system MGCP/MEGACO can be used with SIP or H.323 SIP or H.323 will provide the call control functionality MGCP/MEGACO can be used to manage media establishment in media gateways 73 37 ...
View Full Document
This note was uploaded on 09/01/2008 for the course CS 6386 taught by Professor Nguyen during the Summer '08 term at University of Texas at Dallas, Richardson.
- Summer '08