You are on page 1of 5

1

MEGACO
Autores: Diego J. Colcha, David I. Cholota, Miguel A. Ordoez, Escuela Superior Politcnica de Chimborazo (ESPOCH), Riobamba-Ecuador

II. DESCRIPCIN GENERAL ResumenSe presenta una breve revisin del protocolo
MEGACO o tambin llamado H.248 [UIT-T H.248], el cual soporta el control de un Media Gateway (traducido en espaol como pasarela de medios) por parte de un Media Gateway Controller. Como ya se vio, este protocolo es importante en el desarrollo conceptual de las arquitecturas ETSI TIPHON, ETSI TISPAN y 3GPP. Sin embargo, MEGACO es un protocolo que se maneja a lo interno de las redes de los operadores y no forma parte de la interconexin. Una de las principales caracteristicas de megaco es que los MGW son capaces de mantener comunicaciones tanto con H.323 y con SIP, algo fundamental para la implementacin de VoIP. Adems los MGW nos permiten tener una multillamada lo cual es muy til en las empresas.

A. Concepto Megaco o H.248 (nombre dado por la ITU) define el mecanismo necesario de llamada para permitir a un controlador Media Gateway el control de puertas de enlace para soporte de llamadas de voz/fax entre redes RTC-IP o IPIP. Este protocolo est definido por la IETF RFC 3525 y es el resultado del trabajo realizado por la IETF y la ITU. Antes de la cooperacin entre ITU e IETF, existan diversos protocolos que cumplan estas funciones; entre ellos se encontraban MDCP y MGCP. H.248 es un complemento a los protocolos H.323 y SIP: se utilizar el H.248 para controlar las Media Gateways y el H.323 o SIP para comunicarse con otro controlador Media Gateway. El objetivo inicial de MEGACO fue la utilizacin de redes de paquetes como backbone para la transmisin de trfico de voz originado por redes tradicionales. Los operadores tradicionales fueron uno de los que mayor inters han mostrado en esta propuesta, pensando en integrar progresivamente sus redes de telefona basadas en conmutacin de circuitos y sus redes de datos basadas en conmutacin de paquetes en una red homognea que transportar ambos tipos de trfico (voz y datos) y que fuera transparente a los usuarios finales.

I. INTRODUCCION xisten una gran cantidad de protocolos que proponen formas distintas de establecer y controlar comunicaciones voz sobre redes IP. Mucho se habla de ellos, y la gran cantidad de acrnimos y abreviaturas hacen que reiteradas veces se confundan las funciones y el alcance de cada uno de ellos. Uno de estos es Megaco que est adquiriendo solidez en el mercado porque permite una mayor escalabilidad que H.323, y da respuesta a las necesidades tcnicas y a las funciones de conferencia multimedia que se pasaron por alto en el protocolo MGCP. MGCP se utiliza mucho aunque de a poco MEGACO fue quitndole terreno en soluciones con troncales o grandes cantidades de abonados POTS. La especificacin de MGCP no se desarrolla ms y toda modificacin sobre este tipo de arquitectura se realiza sobre la especificacin de MEGACO/H.248. La idea de este documento es clarificar los conceptos elementales para poder clasificar de manera precisa el alcance y las funciones bsicas de que este protocolo utilizado para el transporte de audio sobre redes IP. Queda excluido del objetivo de este documento profundizar en los detalles de las normas que definen los protocolos aqu mencionados, sino simplemente clarificar algunos conceptos bsicos sobre sealizacin y transporte de voz en redes IP enfocados en al protocolo MEGACO. Por ello se han pasado por alto muchos detalles especficos de los protocolos con el objetivo de simplificar las explicaciones.
Este trabajo fue apoyado por los distintos autores que nos ofrecieron su material desde muchas universidades especialmente en el rea de electrnica en telecomunicaciones y redes. D. Colcha, D. Cholota, M. Ordoez son estudiantes en la Facultad de Ingeniera Electrnica de la Escuela Superior Politcnica de Chimborazo, Riobamba-Ecuador, (email: diegojav@gmail.com, David_isra@yahoo.es, mordoez@espoch.edu.ec).

Figura 1. Esquema megaco

PROTOCOLO H.248 (MEGACO). El protocolo H.248 o Megaco permite la conmutacin de llamadas de voz, fax y multimedia entre la red PSTN y las redes IP de siguiente generacin. El protocolo Megaco, que tiene su origen en el protocolo MGCP (Media Gateway Control Protocol, Protocolo de control de puerta de enlace al

2 medio), proporciona un control centralizado de las comunicaciones y servicios multimedia a travs de redes basadas en IP. Megaco est adquiriendo solidez en el mercado porque permite una mayor escalabilidad que H.323, y da respuesta a las necesidades tcnicas y a las funciones de conferencia multimedia que se pasaron por alto en el protocolo MGCP. Funcionalmente, Megaco es un protocolo de sealizacin utilizado entre los elementos de una arquitectura distribuida que incluye media gateway y controladores de media gateway (conocidos a menudo como softswitches, gatekeeper o call server). H.248 es el resultado de la cooperacin entre la ITU y el IETF. Antes de lograr esta cooperacin existan varios protocolos similares compitiendo entre si, principalmente MGCP (la combinacin de SGCP e IPDC) y MDCP. H.248 se considera un protocolo complementario a H.323 y SIP, ya que un Media Gateway Controller (MGC), controlar varios Media Gateways utilizando H.248, pero ser capaz de comunicarse con otro MGC utilizando H.323 o SIP. B. Arquitectura MEGACO resuelve este problema dividiendo las pasarelas en tres entidades diferentes: Controlador de Medios (Media Gateway Controller MGC).- Proporciona la sealizacin H.323 o SIP y realiza el mapping entre la sealizacin de redes tradicionales y las redes de paquetes. Pasarela de Medios (Media Gateway MC-).- Proporciona la adaptacin de medios y/o las funciones de transcodificacin. Este bloque realiza las funciones de traslacin de direcciones, cancelacin de eco, envo/recepcin de dgitos DMTF, etc. Pasarela de Sealizacin (SG).- Proporciona funciones de mediacin de sealizacin entre redes IP y SCN. En un escenario habitual los tres elementos estn fsicamente separados de modo que pueden proporcionar ventajas como la concentracin de muchos MG (conectados a usuarios finales) en algunos MGC controlados por un SG. La Figura 2 muestra la arquitectura de MEGACO. Media Gateway Control Protocol (MGCP) es un protocolo cliente/servidor que controla el intercambio de informacin entre MG y MGC. MGCP es el resultado de protocolos anteriormente propuestos y ha sido propuesto en distintos organismos de estandarizacin como el grupo de trabajo MEGACO del IETF [12], [13] y la ITU-T [14] donde se ha denominado H.248. MGCP utiliza a su vez el protocolo SDP para el intercambio de parmetros entre el MG y MGC (direccin IP, puerto UDP, codificadores a utilizar, etc.). III. FUNCIONAMIENTO A. Modelos de conexin Terminacin y contexto El modelo de conexin del protocolo MEGACO es un modelo orientado a objeto. Describe las entidades lgicas u objetos en el seno del MGW que pueden ser controlados por el MGC. Las principales abstracciones utilizadas en este modelo de conexin son las terminaciones (termination) y los contextos (context). El protocolo MEGACO permite el establecimiento de llamadas multipartes a diferencia del protocolo MGCP, que slo permite las llamadas entre dos partes. Una terminacin MEGACO comienza o termina uno o varios flujos. Una terminacin est descrita por un conjunto de propiedades reagrupadas en un conjunto de descriptores incluidos en las instrucciones. Una terminacin tiene una identidad nica (TermiantionId) otorgada en el momento de su creacin por el MGW. Ciertas terminaciones que representan entidades fsicas son semi-permanentes. Un circuito de voz ligado a un MGW es un ejemplo de terminacin semi-permanente. Otras terminaciones representan flujos temporales tales como los flujos RTP que slo existen durante el transcurso de la llamada correspondiente. Se trata de terminaciones temporales. Contexto Un contexto es una asociacin entre terminaciones. Existe un tipo especial de contexto, el contexto null, que contiene todas las terminaciones no asociadas a otra terminacin. Por ejemplo, en un Trunking Gateway, todas las lneas en reposo estn representadas por terminaciones del contexto null. Las terminaciones temporales son creadas por la instruccin Add en el que la funcionalidad es similar a CreateConnection del protocolo MGCP. Son suprimidas por la instruccin Substract correspondiente a DeleteConnection con MGCP. Una terminacin fsica se aade a un contexto mediante la instruccin Add, y se elimina del contexto null en el que se encontraba por defecto. Es retirada de un contexto dado mediante la instruccin Substract, pasando a ocupar el contexto null. Terminaciones Las terminaciones estn designadas por un identificador de terminacin que es una secuencia arbitraria, escogida por el MGW. Los identificadores de terminaciones fsicas pueden estar determinados por el MGW.
Figura 2. Arquitectura megaco

3 Pueden ser elegidos para poseer una cierta estructura. Por ejemplo, un identificador de terminacin se puede componer de un grupo de circuitos (Trunk) y de una unin local en este grupo. Se puede utilizar un mecanismo de substitucin por caracteres genricos, utilizando dos tipos de caracteres genricos, con los identificadores de terminacin. Estos dos caracteres son ALL (*) y ANY o CHOOSE ($). El primero sirve para disear simultneamente varias terminaciones mientras que el segundo sirve para indicar a un MGW que debe seleccionar una terminacin correspondiente al identificador de terminacin parcialmente especificado. Esto permite al MGC solicitar al MGW la eleccin, por ejemplo, de un circuito dentro de un grupo de circuitos. Si el carcter ALL es utilizado en el identificador de terminacin de una instruccin, el efecto es idntico a una repeticin de la instruccin con cada uno de los identificadores de terminacin reales correspondientes. Considerando que cada uno de las instrucciones puede generar una respuesta, el tamao de la respuesta completa puede ser importante. Si no se requieren respuestas individuales, se puede solicitar una respuesta genrica. En este caso, se genera una sola respuesta que contiene la UNION de todas las respuestas individuales que habran sido generadas, donde los valores repetidos han sido suprimidos. Por ejemplo, dada una terminacin Ta con las propiedades p1=a, p2=b y una terminacin Tb con propiedades p2=c, p3=d, una respuesta UNION contendra un identificador de terminacin substituido por un carcter genrico y la secuencia de propiedades p1=a, p2=b,c y p3=d. La respuesta genrica puede ser particularmente til en el caso de instrucciones audit. B. Instrucciones Megaco El protocolo MEGACO define ocho instrucciones que permiten la manipulacin de entidades lgicas del modelo de conexin, que son los contextos y las terminaciones (Tabla 1). La mayora de las instrucciones son emitidas por un MGC hacia un MGW. Se trata de las instrucciones Add (aade una terminacin a un contexto), Modify (Modificacin de una terminacin en un contexto), Subtract (Extraccin de una terminacin de un contexto), Move (Desplazamiento de una terminacin de su contexto a otro contexto), AuditValue y AuditCapabilities (lectura de los valores actuales y posibles de las propiedades de una terminacin), Notify (notificacin del suceso de un evento sobre una terminacin) ServiceChange (suspensin o retoma de una terminacin). Se pueden emitir dos instrucciones de un MGW a un MGC: Notify (notificacin de eventos sucedidos en el MGW) y ServiceChange (notificacin de la suspensin o retoma de una terminacin).

Add La instruccin Add (MGCMGW) aade una terminacin a un contexto. Si la instruccin no especifica el contexto en el que aadir la terminacin, entonces se crea un nuevo contexto. Si la instruccin no especifica un identificador de terminacin (terminationId) sino el carcter especial ($), el MGW crea una terminacin temporal, le asocia un identificador y lo aade al contexto. Add corresponde a la instruccin MGCP CreateConnection. En el caso de una terminacin semipremanente con el MGC, es necesario el uso de una instruccin Add sobre este tipo de terminacin, la cual precisa el identificador de la terminacin. Por el contrario, una terminacin temporal ser creada por el MGW, quien le proporciona un identificador. Modify La instruccin Modify (MGCMGW) permite modificar los valores de las propiedades de una terminacin. Modify es similar a la instruccin ModifyConnection del protocolo MGCP. Subtract La instruccin Subtract (MGCMGW) extrae una terminacin de un contexto y devuelve las estadsticas relativas a la actividad de la terminacin en este contexto. La instruccin correspondiente al protocolo MGCP es DeleteConnection.

Figura 3. Contextos y terminaciones megaco

La figura 3 describe los conceptos de contexto y terminacin. El asterisco encuadrado de cada contexto representa la asociacin lgica de las terminaciones que pertenecen al contexto. El primer contexto activo en el MGW representa una llamada con tres participantes. El segundo contexto es el contexto null. El tercer contexto corresponde a una llamada clsica entre dos participantes.

4 La instruccin Substract aplicada a la ltima terminacin en un contexto suprime el contexto. Una instruccin Substract aplicada a una terminacin semipermanente desplaza esta terminacin al contexto null. Esta misma instruccin aplicada a una terminacin temporal suprime la terminacin. Move La instruccin Move (MGCMGW) desplaza una terminacin de su contexto a otro contexto. Move no puede ser utilizada para desplazar una terminacin desde o hacia el contexto null, ya que son las instrucciones Add y Substract respectivamente quienes realizan estas operaciones. AuditValue La instruccin AuditValue (MGCMGW) devuelve el valor actual de las propiedades, eventos, seales y estadsticas de una o varias terminaciones. AuditCapabilities La instruccin AuditCapabilities (MGCMGW) devuelve los valores de las propiedades, las seales y eventos asociados a una o varias terminaciones. A diferencia de la instruccin AuditValue, AuditCapabilities devuelve el conjunto de los valores posibles. Notify La instruccin Notify permite a un MGW informar a un MGC del suceso de eventos sobre una terminacin del MGW. Los eventos a tratar han sido especificados por el MGC en las instrucciones Add o Modify. Esta instruccin es idntica a la instruccin Notify del protocolo MGCP. Por el contrario, a diferencia del protocolo MGCP, no existe una instruccin NotificationRequest que permita al MGC solicitar al MGW que detecte eventos concretos y que notifique su suceso al MGC. En efecto, cuando un MGC aade una terminacin a un contexto, esta terminacin que es un objeto, incluye en sus propiedades los eventos que deben ser detectados. ServiceChange El MGW utiliza la instruccin ServiceChange para informar al MGC que una terminacin o un grupo de terminaciones estn a punto de ser puestas fuera de servicio o acaban de entrar en servicio. Esta instruccin tambin es emitida por un MGC para informar a un MGW que este ltimo ha pasado bajo control de otro MGC. Cuando se recibe este mensaje, el MGW emite otra instruccin ServiceChange hacia el nuevo MGC para formalizar el establecimiento de una asociacin. El MGC igualmente puede utilizar esta instruccin para solicitar a un MGW que meta en servicio o fuera de servicio una terminacin o un grupo de terminaciones. IV. TRANSACCIONES MEGACO Las instrucciones MEGACO y sus respuestas son transportadas entre el MGC y el MGW dentro de las transacciones. Una transaccin est identificada por un identificador de transaccin (transactionID). Una transaccin consiste en una o varias acciones. Una accin es un conjunto de instrucciones que se aplican a un contexto especfico. Cada accin especfica as un identificador de contexto (contextID) y las instrucciones que se aplicarn al contexto. Existen casos en que contextID no est especificado, por ejemplo, cuando el MGC pide al MGW que cree un contexto. Es el MGW quien atribuye un identificador al contexto. Una transaccin es emitida bajo la forma de una transactionRequest. La respuesta est encapsulada en una transactionReply. Esta ltima puede estar precedida de una o varias transactionPending. El receptor indica a travs de una transactionPending que la transaccin est siendo tratada pero que an no se ha ejecutado completamente; la seguir una transactionReply. Esto permite al emisor saber si la transactionRequest se ha perdido. TransactionRequest Une transactionRequest es invocada por el emisor. Una peticin contiene una o varias acciones, que identifican el contexto considerado y las instrucciones MEGACO que se ejecutarn en este contexto. TransactionRequest(TransactionId { ContextID {Command , , Command}, ... ContextID {Command, , Command } }) El identificador de transaccin (transactionID) indica un valor idntico al que est presentes en la transactionReply o transactionPending reenviadas por el receptor y asociadas a esta transactionRequest. El identificador de contexto (contextID) identifica el contexto presente en el MGW sobre el que se aplican las instrucciones MEGACO, secuencialmente en el orden indicado. Los contextos se identifican mediante identificadores que son atribuidos por el MGW y son nicos en su dominio. El MGC debe utilizar el identificador de contexto proporcionado por el MGW en todas las transacciones subsiguientes que se encuentran en este contexto. El protocolo hace referencia a un valor distintivo que el MGC puede utilizar para referirse a una terminacin que actualmente no est asociada a un contexto, es decir, el identificador de contexto null. El carcter genrico $ sirve para pedir al MGW que cree un nuevo contexto. El MGC no debe utilizar identificadores de contexto parcialmente especificados que contengan el carcter $. El MGC puede utilizar el carcter genrico * para direccional todos los contextos presentes en el MGW. El contexto null no est incluido cuando se utiliza el carcter genrico *. TransactionReply Tras haber ejecutado el conjunto de instrucciones, el receptor devuelve una transactionReply. Esta ltima contiene una o varias acciones, que identifican el contexto considerado y una o varias respuestas por contexto. TransactionReply(TransactionID { ContextID { Response, , Response }, ...

5 ContextID { Response, , Response } }) El identificador de transaccin es idntico al de la transactionRequest correspondiente. El identificador de contexto est seguido por una o varias respuestas a instrucciones que han sido ejecutadas. Si la ejecucin de una de las instrucciones en la transaccin produce un error, las instrucciones siguientes no sern tratadas, entonces no se devuelve ninguna respuesta a estas ltimas. Existe una excepcin, cuando una instruccin es opcional, prefijada por los caracteres o-. Si la ejecucin de una instruccin opcional produce un error, la ejecucin de la transaccin se prosigue; la transactionReply indicar entonces respuestas tras el cdigo de error asociado a la instruccin opcional. V. CONCLUSIONES Al concluir este trabajo vimos una descripcin del protocolo MEGACO que se define en la Recomendacin H.248 de la ITU-T. El protocolo H.248 o Megaco permite la conmutacin de llamadas de voz, fax y multimedia entre la red PSTN y las redes IP de siguiente generacin. El protocolo Megaco, que tiene su origen en el protocolo MGCP (Media Gateway Control Protocol, Protocolo de control de puerta de enlace al medio), proporciona un control centralizado de las comunicaciones y servicios multimedia a travs de redes basadas en IP. 4. El protocolo mejorado para MGCP es: SIP MEGACO RTC RTM 5. Subraye las entidades de MEGACO SS7 MGW MGC SIP

VIII. REFERENCIAS
[1] [2] [3] [4] [5] [6] [7] [8] [9] http://es.scribd.com/doc/56500575/Megaco http://tools.ietf.org/html/rfc3015 http://www.recursosvoip.com/protocolos/megaco.php http://www.buenastareas.com/ensayos/Protocolo-Megaco/6156942.html http://www.efort.com/media_pdf/MEGACO_ES_EFORT.pdf http://dspace.ups.edu.ec/bitstream/123456789/208/2/Capitulo%201.pdf http://www.cisco.com/en/US/docs/voice_ip_comm/pgw/9/feature/modul e/9.7_3_/h_248.pdf http://www.oas.org/en/citel/infocitel/2008/diciembre/ngn-normas_e.asp http://www.itu.int/rec/T-REC-H.248/es

Preguntas
1. Para qu se utiliza MEGACO? Permite la conmutacin de llamadas de voz, fax y multimedia entre la red PSTN y las redes IP de siguiente generacin. Una TransactionRequest y TransactionReply de MEGACO quienes lo realiza el emisor y receptor. VoF MEGACO establece y termina la llamada as tambin tiene el control de la misma. VoF

2.

3.

You might also like