Modified from the talk by

Slides:



Advertisements
Similar presentations
An Introduction to Megaco/H.248
Advertisements

Umut Girit  One of the core members of the Internet Protocol Suite, the set of network protocols used for the Internet. With UDP, computer.
H. 323 Chapter 4.
July 20, 2000H.323/SIP1 Interworking Between SIP/SDP and H.323 Agenda Compare SIP/H.323 Problems in interworking Possible solutions Conclusion Q/A Kundan.
Basics of Protocols SIP / H
Voice over IP Fundamentals
© 2004, NexTone Communications. All rights reserved. Introduction to H.323.
Packet Based Multimedia Communication Systems H.323 & Voice Over IP Outline 1. H.323 Components 2. H.323 Zone 3. Protocols specified by H Terminal.
1 Roch H. Glitho- Ericsson/Concordia UniversityJanuary 2008 INSE 7110 – Winter 2008 Value Added Services Engineering in Next Generation Networks Week #4,
Voice over IP Protocols
CHAPTER 13 Gateway Control Protocols. Media Gateway Control Protocol: MGC: Media Gateway Controller MG: Media Gateway Master/Slave relationship MG handles:
SIP, Session Initiation Protocol Internet Draft, IETF, RFC 2543.
Internet Telephony Helen J. Wang Network Reading Group, Jan 27, 99 Acknowledgement: Jimmy, Bhaskar.
Internet Telephony System implementation (SIP User Agent, MGCP Library and RTP Replicator) AT&T Research Lab Xiaotao Wu.
Media Gateway Control Protocol
Scott Hoffpauir BroadSoft, Inc. Vice President, Engineering OPENSIG October 15, 1999 The Enhanced Services Layer in a Distributed Packet Network.
Signaling interworks in PSTN and Voice-over-IP networks
Media Gateway Control and the Softswitch Architecture
Process-to-Process Delivery:
Property of i3 Forum (all rights reserved) Analysis of T.38 protocol Survey results, carrier’s remarks and suggestions Contact Points: Dr. Jerzy Soldrowsky.
3. VoIP Concepts.
Protocols Suite By: Aleksandr Gidenko. What is H.323? H.323 is a multimedia conferencing protocol for voice, video and data over IP-based networks that.
© 2008 Cisco Systems, Inc. All rights reserved.CIPT1 v6.0—4-1 Enabling Single-Site On-Net Calling Implementing MGCP Gateways in Cisco Unified Communications.
Media Gateway Control Protocol (MGCP) PTCL Training & Development MGCP.
VoIP Protocol Introduction(MGCP) PKT-SP-EC-MGCP-I
MGCP Megaco H.248 by Bob Young. MGCP - Megaco - H.248 "It's all one."
FTP Client Application CSC 8560 Brian Jorgage 4/27/2004.
Session Initiation Protocol (SIP). What is SIP? An application-layer protocol A control (signaling) protocol.
User Application Low Level API High Level API RequestsData & Events Low Level API Calls IP NIC Digital T1/E1 PCI and PCIe Analog Station FXS PCIe Analog.
User Application AoH APIAoB APIGP API RequestsData & Events Daytona MM PCI Inline MM PCI PrimeNet MM PCI cPCI PrimeNet MM Digital Gateway Low Level API.
H.323, IP Multicast Conferencing, And TAPI 3.0 Don Ryan Development Lead Windows Networking And Communications Microsoft Corporation.
SIP:Session Initiation Protocol Che-Yu Kuo Computer & Information Science Department University of Delaware May 11, 2010 CISC 856: TCP/IP and Upper Layer.
Omar A. Abouabdalla Network Research Group (USM) SIP – Functionality and Structure of the Protocol SIP – Functionality and Structure of the Protocol By.
User Application AoH API GP API RequestsData & Events Low Level API Calls IP NIC Digital T1/E1 PCI and PCIe Analog Station FXS PCIe Analog Trunk FXO PCIe.
Session Initiation Protocol (SIP) Chapter 5 speaker : Wenping Zhang data :
May 1998 Page 1 SOLIANT Internet Systems SGCP - Simple Gateway Control Protocol Christian Huitema
SIP & H.323 Interworking Name: Amir Zmora Title: PM Date: Feb
GPRS functionality overview in Horner OCS. GPRS functionality – Peer to Peer communication over GPRS – CSCAPE connectivity over GPRS – Data exchange using.
CSE5803 Advanced Internet Protocols and Applications (14) Introduction Developed in recent years, for low cost phone calls (long distance in particular).
SIP-H.323 Interworking Group RRR-1 IETF-48 SIP-H.323 Interworking Requirements draft-agrawal-sip-h323-interworking-reqs-00.txt Hemant.
MEGACO SIP State Machine Inter-conversion and Message Translation
3/10/2016 Subject Name: Computer Networks - II Subject Code: 10CS64 Prepared By: Madhuleena Das Department: Computer Science & Engineering Date :
سمینار تخصصی What is PSTN ? (public switched telephone network) تیرماه 1395.
VoIP ALLPPT.com _ Free PowerPoint Templates, Diagrams and Charts.
Basics of Protocols SIP / H
Executive Summary H.323 was first approved in February 1996, the same month that the first SIP draft was published Designed to operate over complex networks,
Chapter 9: Transport Layer
IP Telephony (VoIP).
Instructor Materials Chapter 9: Transport Layer
NET 3710 Signaling.
SIX MONTHS INDUSTRIAL TRAINING REPORT
Session Initiation Protocol
Presentation 8 - MGCP and Megaco/H.248
CHAPTER 3 Architectures for Distributed Systems
Session Initiation Protocol (SIP)
User Application GP API AoH API AoB API Requests Data & Events
A SIP Event Package for DTMF Event Monitoring
VoIP Signaling and Call Control
Routing and Switching Essentials v6.0
VOIP Introduction -MGCP
Gary Thom President, Delta Information Systems, Inc.
Process-to-Process Delivery:
Overview of ETS in IPCablecom Networks
Testing Telecoms Software with QuickCheck
Chapter 12: Circuit Switching and Packet Switching
William Stallings Data and Computer Communications
The Interworking of IP Telephony with Legacy Networks
VoIP Signaling Protocols Framework
Process-to-Process Delivery: UDP, TCP
Exceptions and networking
Presentation transcript:

Modified from the talk by MEGACO Protocol Modified from the talk by Wei-Kuo Chiang (江為國) Internet Telecom. Dept. (K200) CCL/ITRI wkchiang@itri.org.tw 2019/2/23 1

H323, SIP & MGCP, MEGACO PSTN SS7 MGCP GK GW TN GK GW TN PSTN H.323 CA PSTN SG MGCP TGW RGW GK GW TN GK GW TN CO PSTN H.323 RTP MCU TN TN MCU TN TN GW : Gateway GK : Gatekeeper TN : Terminal MCU : Multipoint Control Unit CA : Call Agent TGW : Trunking Gateway RGW : Residential Gateway SG : Singling Gateway 2019/2/23 2

H323, SIP & MGCP, MEGACO Concept H.323, SIP Problems MGCP, MEGACO peer-to-peer internet oriented intelligent endpoint optional GK decentralized Problems maintenance cost & scalability of large systems signaling & media control are coupled interoperability with SS7 MGCP, MEGACO client-server traditional telephony intelligent server “dumb” terminal “stateless” terminal centralized Concept gateway decomposed separate call control from media ports CA, MG, SG interoperability with PSTN 2019/2/23 3

MEGACO Features Media Gateway Control Protocol Change of Connection Model Concept of Context Change of Command Naming Comparison of Commands MEGACO Transaction & Descriptor Call Flows: RGW to RGW 2019/2/23 4

MEGACO Connection Model MGCP MEGACO 1 Endpoint Termination 2 Connection Context 3 Call Agent (CA) Media Gateway Controller (MGC) 2019/2/23 5

Text encoding and binary encoding TransactionRequest Consists of a number of commands Usually requested by an MGC TransacionReply A number of responses Text encoding and binary encoding Augmented Backus-Naur Form, RFC 2234 Abstract Syntax Notation One (ASN.1), ITU-T R X.680 2019/2/23 6

MEGACO Connection Model Termination A logical entity on a MG that sources / sinks media / control streams Two kinds of Termination Physical Interface RTP stream (ephemeral termination) Add/subtraction command CreateConnection and DeleteConnection 2019/2/23 7

The properties of a termination Grouped into a set of descriptors Are included in MEGACO commands Can be changed Wild cards *, all ; $, any Termination ID an arbitrary string assigned by the MG at the time of their creation Root Termination the entire MG itself 2019/2/23 8

MEGACO Connection Model Context An association between a collection of terminations Added to, removed from, moved from one to another A termination can exist in only one context at any time describe the topology (who hears/sees whom) refer to Topology Descriptor Context ID a 32-bit integer chosen by the MG  : ALL ; - : NULL; $ : Choosing one Null Context Containing all terminations that are not associated to any other termination 2019/2/23 9

MEGACO Contexts and Termination 2019/2/23 10

MEGACO Connection Model Media Flow Topology of a Context describe the media flow between Terminations within a Context refer to Topology Descriptor Mode of a Termination describe the media flow at the ingress/egress of the media gateway refer to Media Descriptor Stream Descriptor Local Control Descriptor (receive-only, send/receive, …) Context SCN 1 RTP SCN 2 Contexts in GW SCN 1 RTP SCN 1 2019/2/23 11

Add 2 Terminations into 1 context Concept of Context MGCP MEGACO MGC CA MGCP MEGACO MG MG RGW RGW RTP RTP Context IP   Endpoint IP Endpoint Termination SCN Channel Termination RTP Stream Connection established after CRCX  Add 2 Terminations into 1 context 2019/2/23 12

MEGACO Transactions The passing of commands and the responses Commands are directed towards terminations within contexts ContextID + TerminationIDs Multiple commands can be grouped TransactionRequest (TransactionID { ContextID1 {Command, Command, … Command}, ContextID2 {Command, Command, … Command}, ContextID3 {Command, Command, … Command} } ) TransactionReplay (TransactionID { ContextID1 {Response, Response, … Response}, ContextID2 {Response, Response, … Response}, ContextID3 {Response, Response, … Response} } ) 2019/2/23 13

Messages Commands are executed in sequence An interim reply If a command fails, the subsequent commands are not processed Not the case for optional commands O-”command-name” An interim reply TransactionPending (TransactionID {} ) Messages Concatenate multiple transactions The transactions are treated independently 2019/2/23 14

Action 2 for the Other Context Action 3 for Another Context MEGACO Transactions MGC to MG1: MEGACO/1 [123.123.123.41]:5555 Transaction = 10003 { Context = $ { Add = A4444, Add = $ { Media { Stream = 1 { LocalControl { …} Local { v=0 c=IN IP4 $ m= audio $ RTP/AVP 4 }}}}} Transaction Action 1 for One Context Command 1 Command 2 Command 3 Action 2 for the Other Context Command 1 Action 3 for Another Context Command 1 Command 2 2019/2/23 15

Similar Commands in MGCP MEGACO Command Naming MEGACO Similar Commands in MGCP (1) Add (Termination to Context) (1) CreateConnection (Endpoint) (2) Modify (Termination-descriptor) (2) ModifyConnection (Endpoint) (3) Subtract (Termination) (3) DeleteConnection (Endpoint) (4) Move (Termination)  CreateConnection + DeleteConnection (5) AuditValue (Termination) (4) AuditEndpoint (6) AuditCapability (Termination) (NONE) (7) Notify (Termination) (5) Notify (Endpoint) (8) ServiceChange (Termination) (6) RestartInProgress (Endpoint) (NONE) (7) AuditConnection  Add, Modify, Move (8) NotificationRequest (Endpoint)  Add, Modify, Move (9) EndpointConfiguration (Endpoint-encode) 2019/2/23 16

MEGACO Commands Add Modify Subtract Adds a termination to a context Change the property values of a termination E.g., to issue signals or to detect specific events Subtract Remove a termination from a context The response provides statistics 2019/2/23 17

Move AuditValue AuditCapabilities From one context to another Cannot be moved to the null context AuditValue Retrieve current values for properties, events, and signals AuditCapabilities Retrieve the possible values of properties, signals, and events 2019/2/23 18

Notify ServiceChange Inform the MGC of events that have occurred Accompanied by a RequestID ServiceChange Inform an MGC that a group of termination will be taken out of service or will resume service 2019/2/23 19

Descriptors For use with commands and responses To qualify a given command/response Mandatory, forbidden or optional Descriptorname=<someID>{parm=value, …} Parameters can be fully specified, under specified; the use of $, over specified; a list of acceptable parameter value in order of preference 2019/2/23 20

Termination Descriptors Transaction Media Descriptors Modem Descriptors MUX Descriptors Events Descriptors Signals Descriptors Digit Map Descriptors Audit Dsp (unused in Reply) Service Change Descriptors ---------------------------- Observed Events Descriptors Event Buffer Descriptors Statistics Descriptors Package Descriptors Action 1 for One Context Topology Descriptor Command 1 Command 2 Command 3 Action 3 for Another Context Command 1 Command 2 2019/2/23 21

Modem Descriptor Multiplex Descriptor Modem type and associated parameters By default, a termination does not have a modem descriptor They may be applied later in an Add or Modify Multiplex Descriptor Multimedia communications; different media streams on different channel channels The association between media streams and bearers 2019/2/23 22

Media Descriptors Describes the various media streams Hierarchical Termination State Descriptor Stream Descriptor Local Control Descriptor Local Descriptor Remote Descriptor 2019/2/23 23

Termination State Descriptor ServiceStates “test,” “out-of-service,” or “in service” EventBufferControl Off, the termination reports detected events immediately Lockstep, the events will be buffered in a FIFO buffer, time-stamped Examined upon receipt of a new Events Descriptor Or when the control is set off 2019/2/23 24

Stream Descriptor A stream is created by specifying a new StreamID on a particular termination in a context A stream is deleted by setting empty Local and Remote Descriptors and by setting ReserveGroup and ReserveValue in LocalControl descriptor to “false” Local Control Descriptor Mode, ReserveGroup, and ReserveValue Properties Mode: sendonly, receiveonly, sendreceive, inactive, and loopback Send and receive directions are w.r.t. the exterior of a context MGC specifies a set of choices for the session ReserveGroup and ReserveValue indicate the resources should be reserved 2019/2/23 25

Events Descriptor Signal Descriptor Local Descriptor and Remote Descriptor Zero or more SDP sessions descriptions It’s permissible to indicate several alternatives for a parameters Events Descriptor A RequestIdentifier and a list of events Off-hook, fax-tone, etc. EventControlBuffer property Signal Descriptor A list of signals that a termination is to apply To just a single stream or to all streams 2019/2/23 26

Audit Descriptor Three type of signals On/off: remains on until it is turned off Timeout Brief: only for a limited time Audit Descriptor A list of information to be returned from an MG to an MGC A list of other descriptors such as Modem, Multiplex, Events, Signals, ObserveEvents, DigitMap, Statistics, Packages, and Eventbuffer 2019/2/23 27

Service Change Descriptor Used only in association with the ServiceChange command The type of service change, ServiceChangeMethod Graceful, the removal of existing terminations w/o interrupting existing connections Forced, an abrupt removal Restart, after a specified delay Disconnected, applied to the entire MG Handoff, from the old MGC; a new MGC is taking over or Failover, from MG to MGC ServiceChangeDelay, a number of seconds SericeChangeReason, Table 6-4, page 279. and a new address 2019/2/23 28

DigitMap Descriptor A dialing plan A string or a list of strings [0-9] and [A-K] x: a wild card .: zero of more repetitions of the immediately proceeding digit A start timer, to start A short timer, when more digits are needed A long timer, to differentiate different routing (0|00|[1-7]xxx|8xxxxxxx|Fxxxxxxx|Exx|91xxxxxxxxxx|9011x.) The timers are applied by default 2019/2/23 29

Statistics Descriptor Statistical information regarding the usage of a termination For the response of a Subtract command In response to the AuditValue command Observed Events Descriptor Mandatory in the Notify command RequestIdentifier Optional time-stamp for each observed event yyyymmddThhmmssss For the response of a ServiceChange command In a response to the AuditValue command Events stored in the event buffer 2019/2/23 30

Topology Descriptor Relevant to a context only How media streams should flow within a context By default, all terminations in a context can send and receive media to and from each other Isolate, oneway and bothway A useful tool for implementing services such as call waiting 2019/2/23 31

Action 3 for Another Context Context Descriptors Context 1 Context 2 Context 3 Transaction T2 T2 T2 Action 1 for One Context Topology Descriptor Command 1 Command 2 T1 T3 T1 T3 T1 T3 1. No topology descriptor 2. T1, T2 isolate 3. T3, T2 oneway Context 4 Context 5 Context 6 T2 T2 T2 Action 3 for Another Context Command 1 T1 T3 T1 T3 T1 T3 4. T2, T3 oneway 5. T2, T3 bothway 6. T1, T2 bothway 2019/2/23 32

Packages Groups of properties, signals, events and statistics For different types of terminations Items are defined and given identifiers Tone Detection Package, DTMF Generator Package, Analog Line Supervision Package, … Package Descriptor Provides the MGC with a list of the packages implemented in a termination 2019/2/23 33

MEGAO Command and Response Command Syntax MEGACO/1 [111.111.222.222]:3456 Transaction = 12345 { Context = - { Modify = * { Events = 7777 {al/of}, DigitMap = Map1 { (0|00|[1-7]xxx|8xxxxxxx|Fxxxxxxx|Exxx|9011x.)} } 2019/2/23 34

Response Syntax MEGACO/1 {111.111.333.333]:5678 Reply = 12345 { context = - { Modify = * } } context = - { Modify = * { Error = 500 {Internal Gateway Error} }}} 2019/2/23 35

Call Setup Using MEGACO pp. 290-294 2019/2/23 36

Based on Detected Events pp. 295- 2019/2/23 37

2019/2/23 38

Call Flow: RGW to RGW Internet MGC 1 3 2 4 RGW A4444  A5555  123.123.123.4 MGC 124.124.124.222 125.125.125.5 1 3 2 4 RGW RGW Internet A4444  A5555  NULL Context NULL Context 1.(3) ServiceChange(ROOT): MG register with MGC 2.(4) Modify(A4444): MGC set Mode(SendReceive) & Events(al/of) 2019/2/23 39

Call Flow: RGW to RGW Internet MGC 5 6 RGW A4444  A5555  123.123.123.4 MGC 124.124.124.222 125.125.125.5 5 6 RGW RGW Internet A4444  A5555  NULL Context NULL Context DTMF detection/ Digit Map Complete Event 5. Notify(A4444): MG report an off hook event(time) 6. Modify(A4444): MGC set Events(al/on, dd/ce, {DigitMap = Dialplan0}) Signals(cg/dt) DigitMap = Dialplan0{…} Call Progress Tone Generator/Dial Tone 2019/2/23 40

8. Add(A4444,$:Mode(ReceiveOnly), Local(RTP)) Call Flow: RGW to RGW 123.123.123.4 MGC 124.124.124.222 125.125.125.5 7 8 RGW RGW Internet A4444  A4445  A5555 Context ID = 2000 Full Match Digit String 7. Notify(A4444): MG report a Digit Map Complete event(ds=916135551212,Meth=FM) 8. Add(A4444,$:Mode(ReceiveOnly), Local(RTP)) 2019/2/23 41

10. Modify(A4444: Signals(cg/rt)); Modify(A4445: Remote(…)) Call Flow: RGW to RGW 123.123.123.4 MGC 124.124.124.222 125.125.125.5 10 9 RGW RGW Internet A4444 A5556 A5555  A4445  Context ID = 2000 Context ID = 5003 9. Add(A5555: Mode(SendReceive), Events(al/of), Signals(al/ri), $: Mode(SendReceive), Local(RTP), Remote(...)) 10. Modify(A4444: Signals(cg/rt)); Modify(A4445: Remote(…)) 2019/2/23 42

Call Flow: RGW to RGW Internet MGC 12 13 11 RGW A4444 A4445 A5556  123.123.123.4 MGC 124.124.124.222 125.125.125.5 12 13 11 RGW RGW Internet A4444 A4445 A5556  A5555  Context ID = 2000 Context ID = 5003 11. Notify(A5555: Observed(al/of)) 12. Modify(A5555: Events(al/on), Signals()); to turn off ringing 13. Modify(A4445: Mode(SendReceive)); Modify(A4444: Signals()) 2019/2/23 43

PSTN Originating Call to IMS 2019/2/23 44

IMS UE termination, CS Domain roaming 2019/2/23 45

PSTN termination call 2019/2/23 46

PSTN initiated session release 2019/2/23 47

Mobile-initiated Hold and Resume of a Mobile-PSTN Session 2019/2/23 48