Download presentation
Presentation is loading. Please wait.
1
Presentation 8 - MGCP and Megaco/H.248
Up to now, we have concentrated largely on the two main VoIP signaling protocols: H.323 and SIP. And while one or the other of these two protocols is used in the vast majority of VoIP implementations, there is another signaling protocol that is tightly entwined with both H.323 and SIP. Originally called the Media Gateway Control Protocol (MGCP), its most recent offspring goes by two names: Megaco and H.248. Confused? Well, hopefully, you won’t be after today’s presentation.
2
At the end of this presentation, you will be able to:
Objectives At the end of this presentation, you will be able to: As always, let’s start by examining the objectives of this presentation. At the end of today’s presentation, you should be able to:
3
Explain the difference between MGCP and Megaco/H.248.
Explain the difference between a Media Gateway Controller (MGC) and a Media Gateway (MG). Describe the actions of an MGC and MG during an MGCP call. Recognize the difference between MGCP commands and Megaco commands. Explain the difference between MGCP and Megaco/H.248. Explain the difference between a Media Gateway Controller (MGC) and a Media Gateway (MG). Describe the actions of an MGC and MG during an MGCP call. Recognize the difference between MGCP commands and Megaco commands.
4
PSTN (Voice) Internet (Data) Cable (Video)
Most people who study VoIP for the first time, soon ask: Why are there so many different signaling protocols, when all seem to do about the same thing? A few years ago the media picture was less blurred than today. Three different business entities had each staked out their territory based primarily on a particular type of media. The telephone systems (POTS or PSTN) provided two-way voice communication. The Internet provided two-way data communications. And the cable companies provided one-way video. Each had its own multi-billion-dollar cable network leading into millions of homes and businesses. Competition being what it is, each coveted the media of the other two and dreamed of expanding into multimedia. To this end, each began developing its own protocols and techniques for handling voice, data, and video over a single network. Over time, each began incorporating the best ideas of the other two into its own system. With this backdrop, it is not surprising that several different (but somewhat similar) approaches to the same basic problems would eventually emerge.
5
Why so many call processing (signaling) protocols?
H.323 has its roots the telephone world. SIP has its roots the Internet world. MGCP and Megaco/H.248 has its roots in the cable world. The telephone world, largely through the efforts of the International Telecommunications Union (ITU), brought us H.323. In the same way, SIP has its roots in the Internet world, being developed primarily by the Internet Engineering Task Force (IETF). The final two, MGCP and Megaco/H.248 was heavily influenced by the Cable Television world.
6
IETF ITU IETF Simple Gateway Control Protocol (SGCP) Internet Protocol
Device Control (IPDC) Media Gateway Control Protocol (MGCP) IETF Media Gateway Control Protocol (Megaco/H.248) IETF ITU While ITU tinkered with H.323 and IETF was developing SIP, Cable TV operators also had visions of competing with both the telephone companies and the Internet companies. To this end, Bellcore and Cisco joined forces to propose a new, cable-centric protocol called Simple Gateway Control Protocol (SGCP). A short time later, a group of companies which offered Internet services via cable and DSL proposed another protocol called Internet Protocol Device Control (IPDC). Soon, the two groups joined forces and with the help of the IETF, [Click Mouse] SGCP and IPDC were merged to form the Media Gateway Control Protocol (MGCP). MGCP became popular in its own right as a signaling protocol and is still used in some implementations today. At the same time, the protocol continued to evolve. The IETF and the ITU cooperated in developing an updated and expanded successor. [Click mouse] This new protocol goes by the dual name: Megaco/H.248. The IETF calls it Megaco while the ITU calls it H.248.
7
What is MGCP? The call processing (signaling) protocol for voice/data/ and video that was the predecessor of Megaco. Originally released as an “informational document” rather than a standard. Equipment was developed based on this protocol some of which is still being used and marketed today. Considered by most to be “on its way out.” You might rightfully ask: Why are we even discussing MGCP if it as been replaced by the vastly improved Megaco? The question becomes even more pertinent when you considered that MGCP was originally released as an informational document rather than as a standard. Well it turns out that MGCP developed a strong following. Equipment manufacturers quickly embraced the new protocol developing and marketing products based on this informational document. Much of this equipment is still in the field and some new equipment may still use MGCP even today. However, because its successor, Megaco/H.248, is a true standard that has the blessings of both IETF and ITU, many experts agree that MGCP is on its way out and will gradually fade away altogether. Even so, you should know something about this protocol because you are apt to encounter it eventually; either in the field or on certification examinations. Besides, it also makes an excellent introduction to Megaco/H.248 which we will discuss later.
8
What is MGCP? Another multimedia signaling protocol.
A protocol that acts as an interface between a media gateway controller and a media gateway. So, MGCP is yet another multimedia signaling protocol which replicates some of the features of H.323 and SIP. It has been defined as a protocol that acts as an interface between a media gateway controller and a media gateway. This definition probably doesn’t mean a lot at this point because we have not yet defined its two key terms: Media Gateway Controller and Media Gateway. To understand these terms, you first need to understand that MGCP looks at the world differently than either H.323 or SIP. It uses a slightly different paradigm or model and of course it has its own vocabulary.
9
VoIP Paradigms H.323 – Terminals, Gateways, Gatekeepers, and Multipoint Control Units (MCUs). SIP – Clients and Servers MGCP – Call Agents, Signaling Gateways, and Media Gateways. Recall that H.323 sees the world as terminals, gateways, gatekeepers, and multipoint control units. SIP on the other hand sees the world as clients and four different types of servers. MGCP uses a different model. It sees the world as call agents, signaling gateways, and media gateways. Keep in mind that all of these terms refer to software constructs (programs) rather than hardware devices that you can see and touch. Obviously, the programs ultimately reside in some type of hardware device such as a computer or an IP telephone, but they are more concepts than physical entities. Often their functionality is distributed over more than one hardware device.
10
MGCP Terms Media Gateway Controller (MGC) –Handles call signaling and controls media gateways. Call Agent (CA) – Another term for a Media Gateway Controller (MGC) Media Gateway (MG) – Handles the conversion and transfer of the voice stream. Unfortunately, MGCP uses a different vocabulary than either H.323 or SIP. The Media Gateway Controller (MGC) handles call signaling and controls the media gateways. Call Agent (CA) is simply another name for a Media Gateway Controller (MGC). Finally, the Media Gateway (MG) is the entity that handles the conversion and transfer of the voice stream. It does this at the specific direction of the Media Gateway Controller (MGC) or call agent (CA).
11
Separation of Call Signaling from Media Transfer.
Gateway Gateway Call Signaling over IP Call Signaling Call Signaling One of the most basic concepts of MGCP is the separation of call signaling from media transfer. Recall that call signaling is concerned with establishing, maintaining and tearing down a call while media transfer is the actual transfer of the digitized voice signals back and forth between the two parties. Of course, H.323 and SIP also considered these to be separate functions, but MGCP carries the concept to its extreme. Rather than being separate functions in a common gateway as shown here… Media Transfer over IP Media Transfer Media Transfer
12
The MGCP Architecture Media Gateway Controller (MGC) Media Gateway
Call Signaling over IP …MGCP considers the two functions to be totally separate. Call signaling is handled by an entity called the Media Gateway Controller. Voice transfer is handled by an entirely separate entity called a Media Gateway. That is, MGCP treats each gateway function as if it were a separate unit. However, notice the control path leading from the MGC to the MG. That is, the media gateway controller not only sets up the call, it also controls the media device that actually performs the voice streaming. In theory, this architecture gives network designers greater flexibility and choice in that they can chose components from separate vendors. It also allows equipment suppliers to concentrate their efforts in one area of expertise. Also, by placing most of the intelligence in the media gateway controller, this architecture simplifies the media gateway, potentially reducing the complexity and cost of IP phones. The idea is to place the complexity, and therefore the expense, in the infrastructure rather than in the phones. Media Transfer over IP Media Gateway (MG) Media Gateway (MG)
13
Hey MG-1! Monitor Phone 1 for an “off hook” condition.
Internet Phone-2 Hey MG-1! Monitor Phone 1 for an “off hook” condition. Media Gateway MG-2 Media Gateway MG-1 ACK Here we see the various components of an MGCP system. Media Gateway One, which we will call MG-1, is associated with phone-1. If phone-1 is an IP phone, MG-1 will be built into the phone. If phone-1 is a standard analog phone, MG-1 may be a separate box such as a analog telephone adapter. MG-1 may be associated with a single phone or several. The media gateway controller, which we will call MGC, controls every move made by MG-1. MGC may control a single media gateway or several. A typical call may go something like this. First, [Click Mouse] MGC periodically sends a message to MG-1 saying in effect: “Hey MG-1, monitor Phone-1 for an off-hook condition.” MG-1 acknowledges the message [Click Mouse] and patiently waits for the user of phone-1 to pick up the receiver. The wait may be a few minutes or many hours, but eventually… Media Gateway Controller (MGC) Routing Database
14
Hey MGC! Phone-1 just went off-hook.
Internet Phone-2 Buzzzzz… Media Gateway MG-2 Media Gateway MG-1 ACK. Send him a dial tone. Roger. Dial tone sent. … the user picks up the receiver of phone-1. When he does, MG-1 notifies the MGC immediately saying in effect [Click Mouse] “Hey MGC! Phone-1 just went off-hook.” An instant later, MGC acknowledges the message and then issues further orders such as: [Click Mouse] “Send him a dial tone.” MG-1 responds by sending the dial tone to phone-1. [Click Mouse] Next MG-1 acknowledges that the dial tone has been sent. [Click Mouse] Of course, all of these actions take place in a split second. To the user, the dial tone seems to start as soon as he lifts the receiver. Media Gateway Controller (MGC) Routing Database
15
ACK. Collect the dialed digits.
Okay, he dialed Phone-1 Internet Phone-2 1-269- Media Gateway MG-2 Media Gateway MG-1 ACK. Collect the dialed digits. Roger. I will collect the digits. The MGC acknowledges, MG-1’s last message and then orders MG-1 to keep track of what digits are dialed. [Click Mouse] MG-1 acknowledges. [Click Mouse] The user of the phone dials the digits while MG-1 carefully accumulates them. [Click Mouse] When the dialing is done, MG-1 notifies MGC of the digits dialed. [Click mouse] MGC acknowledges receipt of the digits. [Click Mouse] Now recall that VoIP uses IP addresses rather than phone numbers. Therefore, the MGC must determine the IP address and the best route to that IP address. But first there is some housekeeping to take care of. Media Gateway Controller (MGC) Routing Database ACK. I have them.
16
Monitor for “On hook” condition.
Phone-1 Internet Phone-2 Media Gateway MG-2 Media Gateway MG-1 Monitor for “On hook” condition. Roger. I will do that. Realizing that any further action will be wasted if the user of phone-1 hangs up, the MGC orders MG-1 to monitor for an “on-hook” condition. [Click Mouse] MG-1 acknowledges the order. [Click Mouse] Also, in order to complete the call, the MGC must tell MG-1 some of the parameters that it expects. Media Gateway Controller (MGC) Routing Database
17
Seize the circuit and set it up like this….
Phone-1 Internet Phone-2 Media Gateway MG-2 Media Gateway MG-1 Seize the circuit and set it up like this…. Roger. Here is how I have it set up….. The MGC sends a Create Connection message that in effect tells MG-1 certain parameters that it expects to see. [Click Mouse] MG-1 responds with a new connection ID message, which identifies things like which port numbers to use, the default codec and other types of codecs that may be available, etc. Media Gateway Controller (MGC) Routing Database
18
Internet Media Gateway Controller (MGC)
Phone-1 Internet Phone-2 Hey Database! Get me the IP address of and best route to this number? Media Gateway MG-2 Media Gateway MG-1 Here is the information you requested. Once the MGC and MG-1 have negotiated the session characteristics, the MGC must now determine the route the call will take. For this information, the MGC turns to the Routing Database. [Click Mouse] This database may be in the MGC itself or it may be in a router on the Internet. In any event, [Click mouse], it quickly returns the information that was requested. As with most routers, the information is in the form of a routing table that sketches out a route to the called party. Media Gateway Controller (MGC) Routing Database
19
Internet Media Gateway Controller (MGC)
Phone-1 Internet Phone-2 Media Gateway MG-2 Media Gateway MG-1 The MGC now has enough information to find the egress gateway. The egress gateway is the one that is associated with the phone being called. In our case the egress gateway is MG-2 [Click Mouse] and the phone being called is phone-2. [Click Mouse] As always, the MGC calls the shots. Media Gateway Controller (MGC) Routing Database
20
Hey MG-2. Seize the circuit to phone-2 and set it up like this….
Roger. Here is how I have it set up….. Phone-1 Internet Phone-2 Media Gateway MG-2 Media Gateway MG-1 Hey MG-2. Seize the circuit to phone-2 and set it up like this…. The MGC sends a create connection message to MG-2 instructing the gateway as to how to setup the connection. [Click Mouse] MG-2 acknowledges and sends additional connection information via the connection ID message. [Click Mouse] Media Gateway Controller (MGC) Routing Database
21
ringing tones” to phone-1.
Roger. Ringing phone-2. Phone-1 Internet Phone-2 Ring… Ring… Media Gateway MG-2 Media Gateway MG-1 Hey MG-1. Send “comfort ringing tones” to phone-1. Roger. Sending “comfort ringing tones”. Hey MG-2. Ring phone-2. Once the MGC is satisfied with the connection parameters, it orders MG-2 to ring phone-2. [Click Mouse] MG-2 acknowledges the command and starts ringing phone-2. [Click Mouse] As the calling party, the user of phone-1 expects to hear phone-2 ringing. To satisfy this expectation, the MGC orders MG-2 to send comfort “ringing tones” to phone-2. [Click mouse] MG-1 acknowledges that it is carrying out the order. [Click Mouse] and the user of phone-1 hears the reassuring “ringing tones” in his handset. This situation may continue until the user of phone-2 picks up the phone or the user of phone-1 gives-up and hangs up the phone. Or, depending on how the system is configured, the MGC may have been given the power to decide when enough is enough. In our case, let’s assume that the user of phone-2 answers. Media Gateway Controller (MGC) Routing Database
22
Hey MGC. She just picked up
the phone. Phone-1 Internet Phone-2 Ring… Ring… Media Gateway MG-2 Media Gateway MG-1 Hey MG-1. Stop the “comfort ringing tones” to phone-1. Roger. “Comfort ringing tones” stopped. As soon as the called party picks up the receiver, MG-2 stops phone-2 from ringing and notifies the MGC. [Click Mouse] Notice that even though phone-2 has picked up, phone-1 is still hearing the comfort ringing tone. The MGC notifies MG-1 to stop the tones. [Click Mouse] MG-1 stops the tones and sends an acknowledgement to the MGC. Media Gateway Controller (MGC) Routing Database
23
Hey MG-1. Set-up a full duplex connection to MG-2.
Phone-1 Internet Phone-2 Media Gateway MG-2 Media Gateway MG-1 Roger. Full duplex connection set-up.. Hey MG-1. Set-up a full duplex connection to MG-2. The MGC now instructs MG-1 to set up a full duplex connection to MG-2 for the actual voice conversation. [Click Mouse] MG-1 carries out the command and acknowledges. Media Gateway Controller (MGC) Routing Database
24
Internet Media Gateway Controller (MGC)
Phone-1 Internet Phone-2 Media Gateway MG-2 Media Gateway MG-1 Once the full duplex connection is established, the voice conversation begins. [Click Mouse] The two users converse back and forth as they would on any other telephone. This situation continues until the conversation is completed and one party hangs up. Let’s assume that phone-1 hangs up first. Media Gateway Controller (MGC) Routing Database
25
Hey MG-1 and MG-2. Delete the connection.
Phone-1 Internet Phone-2 Statistics Report Statistics Report Media Gateway MG-2 Media Gateway MG-1 Hey MGC. Phone-1 Just hung up. Hey MG-1 and MG-2. Delete the connection. As soon as phone-1 hangs up, MG-1 notifies the MGC. [Click mouse] The MGC responds by ordering both gateways to delete the connection. [Click Mouse] The gateways release resources for the full-duplex connection. [Click Mouse] The two gateways also respond by sending a call statistics report to the MGC. [Click Mouse] These reports indicate the number of packets exchanged, the duration of the call, etc. and may be used to determine billing information. Media Gateway Controller (MGC) Routing Database
26
Hey MG-1! Monitor Phone 1 for an “off hook” condition.
Internet Phone-2 Hey MG-1! Monitor Phone 1 for an “off hook” condition. Media Gateway MG-2 Media Gateway MG-1 ACK With things back to where they started a dozen or so slides back, the MGC once again tells MG-1 to monitor phone-1 for an “off hook” condition. Although not shown here, MG-2 has its own MGC which places MG-2 in the same condition. Of course, if both phones are in the same system, a single MGC might handle both gateways. Media Gateway Controller (MGC) Routing Database
27
MGCP Commands CreateConnection CRCX DeleteConnection DLCX
ModifyConnection MDCX NotificationRequest RQNT Notify NTFY AuditEndPoint AUEP AuditConnection AUCX The specific MGCP commands tend to look like the examples shown here. Their names are descriptive enough that you can pretty well visualize what each one does. Notice that many of the commands are either connection or end point oriented.
28
MGCP Review Most of the intelligence resides in the gateway controller. The gateways require little intelligence and are therefore simple and inexpensive. The protocol is considered to be “on its way out” having been upstaged by Megaco. MGCP results in a system in which most of the intelligence resides in the gateway controller. The gateways, which might reside right inside the IP phones, require little intelligence and are therefore simple and inexpensive. This is one of the features that made it so appealing and is the reason that many manufacturers jumped the gun and produced product even though no formal standard existed at the time. Today, MGCP is considered to be “on its way out” having been upstaged by its successor, Megaco.
29
Megaco/H.248 Grew out of MGCP. Joint effort by ITU and IETF.
Maintains many of MGCP’s characteristics and features. Uses different commands, adds new capabilities, and has two important new abstractions: Terminations and Contexts Megaco stands for Media Gateway Controller. Megaco grew out of MGCP and has many of its characteristics. It was defined by a joint effort of the International Telecommunications Union (ITU) and the Internet Engineering Task Force (IETF). ITU calls it H.248 while IETF calls it Megaco. These are simply two different names for the same protocol. Although Megaco/H.248 grew out of MGCP, it is an entirely separate protocol that uses different commands and is not compatible with MGCP. It even uses a somewhat different paradigm. In particular, it adds two important new abstractions or concepts called Terminations and Contexts.
30
Termination Software construct or abstraction.
Somewhat like a port or a socket in TCP/IP. An entity that sources or sinks a media stream. May be physical or logical. The concept of a termination in Megaco is somewhat like the idea of a port or a socket in TCP/IP. That is, a termination is a software construct or abstraction. A termination is an entity that sources or sinks a media stream. A source provides a media stream, a sink accepts a media stream. A termination may be physical or logical. An example of a physical termination is a DS0 telephone line or an RJ-11 jack for a standard phone. Obviously, such a physical line can provide (source) or accept (sink) a media steam. An example of a logical termination is a time slot in a multiplexed data stream in which packets from a single source are periodically pulled from (or inserted into) a stream made up of packets from multiple sources.
31
Context A collection of terminations.
For example, all the terminations participating in a conference might constitute a single Context. Or, multiple data paths (voice, data, video) used by a single participant might constitute a single Context. All terminations are placed in a context. Any termination not in a specified Context, by default, falls into a Null Context. A context is defined as a collection of terminations. For example, all the terminations participating in a conference might constitute a single context. Or, multiple data paths (voice, data, video) used by a single participant might constitute a single context. All terminations are placed in a context. Any termination not in a specified Context, by default, falls into a Null Context.
32
Megaco Commands Add termination Notify Subtract termination
Modify termination Move termination Notify Audit capability Audit value Service change On the surface, the Megaco commands look very much like their MGCP counterparts with the emphasis being on terminations rather than connections.
33
End This concludes the presentation.
Similar presentations
© 2024 SlidePlayer.com. Inc.
All rights reserved.