/servers/media/doc/jdocbook-mobicents/target/docbook/publish/en-US/html/ittms-Architecture_the_Media_Server.html
HTML | 186 lines | 186 code | 0 blank | 0 comment | 0 complexity | a0c30f5f86abffeb55c1956599226965 MD5 | raw file
Possible License(s): LGPL-3.0, GPL-3.0, LGPL-2.1, GPL-2.0, CC-BY-SA-3.0, CC0-1.0, Apache-2.0, BSD-3-Clause
- <?xml version="1.0" encoding="UTF-8" standalone="no"?>
- <!DOCTYPE html
- PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
- <html xmlns="http://www.w3.org/1999/xhtml"><head><title xmlns:rf="java:org.jboss.highlight.XhtmlRendererFactory">Chapter 4. Media Server Architecture</title><link rel="stylesheet" href="css/jbossorg.css" type="text/css"/><meta xmlns:rf="java:org.jboss.highlight.XhtmlRendererFactory" name="generator" content="DocBook XSL Stylesheets V1.74.0"/><link rel="home" href="index.html" title="Media Server User Guide"/><link rel="up" href="index.html" title="Media Server User Guide"/><link rel="prev" href="chapter-Installing_the_Media_Server.html" title="Chapter 3. Installing the Mobicents Media Server"/><link rel="next" href="ctms-Configuring_the_Media_Server.html" title="Chapter 5. Configuring the Mobicents Media Server"/></head><body><p id="title"><a href="http://www.jboss.org" class="site_href"><strong>JBoss.org</strong></a><a href="http://docs.jboss.org/" class="doc_href"><strong>Community Documentation</strong></a></p><ul class="docnav"><li class="previous"><a accesskey="p" href="chapter-Installing_the_Media_Server.html"><strong>Prev</strong></a></li><li class="next"><a accesskey="n" href="ctms-Configuring_the_Media_Server.html"><strong>Next</strong></a></li></ul><div class="chapter" lang="en-US"><div class="titlepage"><div><div><h2 class="title"><a id="ittms-Architecture_the_Media_Server"/>Chapter 4. Media Server Architecture</h2></div></div></div><div class="toc"><dl><dt><span class="section"><a href="ittms-Architecture_the_Media_Server.html#ittms-Endpoints">4.1. Endpoints</a></span></dt><dd><dl><dt><span class="section"><a href="ittms-Architecture_the_Media_Server.html#ittms-Endpoint_DS0">4.1.1. Digital Channel DSO</a></span></dt><dt><span class="section"><a href="ittms-Architecture_the_Media_Server.html#ittms-Endpoint_AAP">4.1.2. Announcement Access Point</a></span></dt><dt><span class="section"><a href="ittms-Architecture_the_Media_Server.html#ittms-Endpoint_CNF">4.1.3. Conference bridge</a></span></dt><dt><span class="section"><a href="ittms-Architecture_the_Media_Server.html#ittms-Endpoint_PR">4.1.4. Packet Relay</a></span></dt><dt><span class="section"><a href="ittms-Architecture_the_Media_Server.html#ittms-Endpoint_IVR">4.1.5. Interactive Voice Response</a></span></dt><dt><span class="section"><a href="ittms-Architecture_the_Media_Server.html#ittms-Endpoint_Soundcard">4.1.6. Soundcard</a></span></dt></dl></dd><dt><span class="section"><a href="ittms-Architecture_the_Media_Server.html#ittms-Endpoint_Local_Names">4.2. Endpoint local identifiers</a></span></dt><dt><span class="section"><a href="ittms-Architecture_the_Media_Server.html#ittms-Calls_and_Connections">4.3. Calls and Connections</a></span></dt><dt><span class="section"><a href="ittms-Architecture_the_Media_Server.html#ittms-Controller-Modules">4.4. Controller Modules</a></span></dt><dd><dl><dt><span class="section"><a href="ittms-Architecture_the_Media_Server.html#d0e1556">4.4.1. Media Gateway Control Protocol</a></span></dt></dl></dd></dl></div><p>
- A media gateway can be represented as a collection of endpoints. An endpoint
- is a logical representation of a physical entity, such as an analog phone or
- a channel in a trunk.
- </p><p>
- Endpoints are sources or sinks of data, and can be physical or virtual.
- Physical endpoint creation requires hardware installation, while software is
- sufficient for creating virtual endpoints.
- </p><p>
- An interface on a gateway that terminates at a trunk connected to a PTSN
- switch would be an example of a physical endpoint. An audio source in an
- audio content server would be an example of a virtual endpoint.
- </p><p>
- The Media Server assumes a connection model where the basic constructs are
- endpoints and connections.
- </p><p>
- Connections are grouped in calls. One or more connections can belong to one
- call. Connections and calls are set up at the initiation of one or several
- Call Agents.
- </p><p>
- Controller Modules allow external interfaces to be implemented for the Media
- Server. Each controller module implements an industry standard control
- protocol, and uses a generic SPI to control processing components or
- endpoints.
- </p><div class="figure"><a id="d0e1431"/><div class="figure-contents"><div class="mediaobject" align="center"><a id="ittms-mms-MMSArchictecture-dia-MMS"/><img src="images/mms-MMSArchictecture-dia-MMS2.jpg" align="middle" alt="Media Server Architecture"/></div></div><p class="title"><b>Figure 4.1. Media Server Architecture</b></p></div><br class="figure-break"/><div class="section" lang="en-US"><div class="titlepage"><div><div><h2 class="title"><a id="ittms-Endpoints"/>4.1. Endpoints</h2></div></div></div><p>
- There are a number of basic endpoint types:
- </p><div class="itemizedlist"><ul><li><p>Digital signal (DS0).</p></li><li><p>Announcement server access point.</p></li><li><p>Conference bridge access point.</p></li><li><p>Packet relay.</p></li><li><p>Interactive Voice Response.</p></li><li><p>Sound card.</p></li></ul></div><div xmlns:rf="java:org.jboss.highlight.XhtmlRendererFactory" class="note"><h2>Note</h2><p>
- This list is not final - other endpoint types may be defined in the
- future, such as test endpoints which could be used to check network
- quality, or frame-relay endpoints that could be used to manage audio
- channels multiplexed over a frame-relay virtual circuit.
- </p></div><div class="section" lang="en-US"><div class="titlepage"><div><div><h3 class="title"><a id="ittms-Endpoint_DS0"/>4.1.1. Digital Channel DSO</h3></div></div></div><p>
- Digital channels provide an 8Khz*8bit service. Such channels are found in
- the trunk and ISDN interfaces. They are typically part of digital
- multiplexes, such as T1, E1, T3 or E3 interfaces. Media gateways that
- support such channels are capable of translating the digital signals
- received on the channel, which may be encoded according to A or mu-law,
- using either the complete set of 8 bits or only 7 of these bits, into
- audio packets. When the media gateway also supports a NAS service, the
- gateway will be capable of receiving either audio-encoded data (modem
- connection) or binary data (ISDN connection), and converting them into
- data packets.
- </p><p>
- In some cases, like SS7 "F" links, or ISDN "D" channels, digital channels
- are used to carry signalling. Media gateways that support these
- signalling functions are able to send and receive the signalling packets
- to and from a call agent, using the "back haul" procedures defined by the
- SIGTRAN working group of the IETF.
- </p><p>
- Digital channels are sometimes used in conjunction with channel
- associated signalling, such as "MF R2".
- </p></div><div class="section" lang="en-US"><div class="titlepage"><div><div><h3 class="title"><a id="ittms-Endpoint_AAP"/>4.1.2. Announcement Access Point</h3></div></div></div><p>
- An Announcement Server Endpoint provides access to an announcement
- service. After a request from the call agent, the announcement server
- will "play" a specified announcement. A given announcement endpoint is
- not supposed to support more than one connection at a time. If several
- connections were established to the same endpoint, then the same
- announcements would be played simultaneously over all the connections.
- </p><p>
- Connections to an Announcement Server are typically one way, or "half
- duplex" - the Announcement Server is not expected to listen the audio
- signals from the connection.
- </p></div><div class="section" lang="en-US"><div class="titlepage"><div><div><h3 class="title"><a id="ittms-Endpoint_CNF"/>4.1.3. Conference bridge</h3></div></div></div><p>
- A Conference Bridge Endpoint is used to provide access to a specific
- conference. The Media Server establishes several connections between the
- endpoint and the packet networks, or between the endpoint and other
- endpoints in the same server instance. The precise number of connections
- that an endpoint supports is a characteristic of the server's
- configuration, and may in fact vary according with the used hardware.
- </p></div><div class="section" lang="en-US"><div class="titlepage"><div><div><h3 class="title"><a id="ittms-Endpoint_PR"/>4.1.4. Packet Relay</h3></div></div></div><p>
- A Packet Relay Endpoint is a specific form of conference bridge, that
- typically only supports two connections. Packets relays can be found in
- firewalls between a protected and an open network, or in transcoding
- servers used to provide interoperation between incompatible gateways,
- such as gateways that do not support compatible compression algorithms,
- or gateways that operate over different transmission networks.
- </p></div><div class="section" lang="en-US"><div class="titlepage"><div><div><h3 class="title"><a id="ittms-Endpoint_IVR"/>4.1.5. Interactive Voice Response</h3></div></div></div><p>
- An Interactive Voice Response (IVR) endpoint provides access to an IVR
- service. Under requests from the call agent, the IVR server will "play"
- announcements and tones, and will "listen" to responses from the user.
- </p><p>
- A given IVR endpoint is not supposed to support more than one connection
- at a time. If several connections were established to the same endpoint,
- then the same tones and announcements would be played simultaneously over
- all the connections.
- </p></div><div class="section" lang="en-US"><div class="titlepage"><div><div><h3 class="title"><a id="ittms-Endpoint_Soundcard"/>4.1.6. Soundcard</h3></div></div></div><p>
- The sound card gives access to both the Analogue-to-Digital Converter
- (ADC) and the Digital-to-Analogue Converter (DAC). Data transmission over
- the Internet is done digitally. In order for voice to be transmitted it
- must be converted to digital using an ADC and be converted into analog
- again using a DAC so the voice it can be heard on the other end.
- </p></div></div><div class="section" lang="en-US"><div class="titlepage"><div><div><h2 class="title"><a id="ittms-Endpoint_Local_Names"/>4.2. Endpoint local identifiers</h2></div></div></div><p>
- The syntax of the local name depends on the type of endpoint being named.
- However, the local name for each of these types is naturally hierarchical,
- beginning with a term which identifies the physical gateway containing the
- given endpoint and ending in a term which specifies the individual endpoint
- concerned.
- </p><p>
- The following rules for construction and interpretation of the local
- identifier for these entity types MUST be supported:
- </p><div class="itemizedlist"><ul><li><p>
- The individual terms of the naming path MUST be separated by a single
- slash ("/", ASCII 2F hex).
- </p></li><li><p>
- The individual terms are character strings composed of letters, digits
- or other printable characters, with the exception of characters used as
- delimitors ("/", "@"), characters used for wildcarding ("*", "$") and
- white spaces.
- </p></li><li><p>
- Wild-carding is represented by square brakets and range using the
- following pattern: [a..b] where a and b are integer numbers.
- </p></li><li><p>
- In the ISUP protocol, trunks are grouped into trunk groups, identified
- by the SS7 point codes of the switches that the group connects.
- Circuits within a trunk group are identified by a circuit number (CIC
- in ISUP).
- </p></li></ul></div></div><div class="section" lang="en-US"><div class="titlepage"><div><div><h2 class="title"><a id="ittms-Calls_and_Connections"/>4.3. Calls and Connections</h2></div></div></div><p>
- Connections are created on the call agent for each endpoint that will be
- involved in the "call." Connections may be either point to point or
- multipoint.
- </p><p>
- A point to point connection is an association between two endpoints with
- the purpose of transmitting data between those endpoints. Once this
- association is established for both endpoints, data transfer between these
- endpoints can take place.
- </p><p>
- A multipoint connection is established by connecting the endpoint to a
- multipoint session.
- </p><p>
- Connections can be established over several types of bearer networks:
- </p><div class="itemizedlist"><ul><li><p>
- Transmission of audio packets using RTP and UDP over a TCP/IP network.
- </p></li><li><p>
- Transmission of packets over an internal connection, such as the TDM
- backplane or the interconnection bus of a gateway. This is particularly
- used for "hairpin" connections - connections that terminate in a
- gateway but are immediately rerouted over the telephone network.
- </p></li></ul></div><div class="example"><a id="d0e1540"/><p class="title"><b>Example 4.1. Connections Example</b></p><div class="example-contents"><p>
- In the classic example of a connection between two "DS0" endpoints (EP1
- and EP2), the call agents controlling the end points will establish two
- connections (C1 and C2).
- </p><p>
- Each connection will be designated locally by a connection identifier,
- and will be characterized by connection attributes.
- </p><p>
- Once established, the connection parameters can be modified at any time
- by a "modify connection" command. The call agent may, for example,
- instruct the gateway to change the compression algorithm used on a
- connection, or to modify the IP address and UDP port to which data should
- be sent, if a connection is "redirected."
- </p><p>
- The call agent removes a connection by sending to the gateway a "delete
- connection" command. The gateway may also, under some circumstances,
- inform a gateway that a connection could not be sustained.
- </p></div></div><br class="example-break"/></div><div class="section" lang="en-US"><div class="titlepage"><div><div><h2 class="title"><a id="ittms-Controller-Modules"/>4.4. Controller Modules</h2></div></div></div><p>
- Controller Modules allow external interfaces to be implemented for the
- Media Server. Each controller module implements an industry standard
- control protocol, and uses a generic SPI to control processing components
- or endpoints. One such controller module is the Media Gateway Control
- Protocol.
- </p><div class="section" lang="en-US"><div class="titlepage"><div><div><h3 class="title"><a id="d0e1556"/>4.4.1. Media Gateway Control Protocol</h3></div></div></div><p>
- The Media Gateway Control Protocol (MGCP) is designed as an internal
- protocol within a distributed system that appears on the outside as a
- single VoIP gateway. The MGCP is composed of a Call Agent and a set of
- gateways, including at least one "media gateway" which performs the
- conversion of media signals between circuits and packets, and at least
- one "signalling gateway" when connected to an SS7 controlled network. The
- Call Agent can be distributed over several computer platforms.
- </p><p>
- MGCP is used for controlling telephony gateways from external call
- control elements called Media Gateway controllers or call agents. A
- telephony gateway is a network element that provides conversion betweekn
- the audio signals carried on telephone circuits and data packets carried
- over the Internet or over other packet networks.
- </p><p>
- MGCP assumes a call control architecture where the call control
- intelligence is outside the gateways and handled by external call control
- elements. The MGCP assumes that these call control elements, or Call
- Agents, will synchronize with each other to send coherent commands to the
- gateways under their control. MGCP is, in essence, a master/slave
- protocol, where the gateways are expected to execute the commands send by
- the Call Agents.
- </p></div></div></div><ul class="docnav"><li class="previous"><a accesskey="p" href="chapter-Installing_the_Media_Server.html"><strong>Prev</strong>Chapter 3. Installing the Mobicents Media Server</a></li><li class="up"><a accesskey="u" href="#"><strong>Top of page</strong></a></li><li class="home"><a accesskey="h" href="index.html"><strong>Front page</strong></a></li><li class="next"><a accesskey="n" href="ctms-Configuring_the_Media_Server.html"><strong>Next</strong>Chapter 5. Configuring the Mobicents Media Server</a></li></ul></body></html>