Voip en Español

[[modulo_ser_mediaproxy]]

Traza: » modulo_ser_auth_db » modulo_ser_textops » telefonos_asterisk » modulo_ser_postgres » milkfish_sip_router » modulo_ser_nathelper » modulo_ser_registrar » ser_sip_provisioning » sip_respuestas_clase6 » modulo_ser_mediaproxy

Login

¡Actualmente no estás identificado! Introduce abajo tus datos de identificación para abrir una sesión. Necesitas tener las cookies activadas para identificarte.

Ingresar

Has olvidado tu contraseña? Obten una nueva.: Enviar nueva contraseña

Modulo mediaproxy de SER

ARREGLAR

MediaProxy

                     Copyright Dan Pascu
                    Proyectos 2003-2005 del AG

MediaProxy es una solución traversal NACIONAL far-end para la rebajadora expresa del SIP (SER) eso tiene las características siguientes: - Localización geográfica distribuida - Scalability, el balancear de la carga y redundancia - Estadística en tiempo real de las sesiones - Gama portuaria configurable del IP y del UDP - Ayuda para las corrientes audio y video - Ayuda para las corrientes múltiples de los medios por llamada - Contabilidad del tráfico de la red

Para la información sobre la instalación del proxy server y del módulo del mediaproxy así como para la información de la ayuda consultar por favor el archivo de la INSTALACIÓN. Para la información que licencia leer por favor el archivo de la LICENCIA.

El proxy server se significa para ser utilizado conjuntamente con el mediaproxy de SER módulo. En el resto de este documento serán nombrados “proxy server” y “módulo del mediaproxy” o “módulo” para evitar la confusión entre ellos.

Este proxy server representa una de las piezas que componen el traversal NACIONAL solución puesta en ejecución por mediaproxy. El otro es el módulo del mediaproxy de SER sobre cuál puedes encontrar más lectura la documentación disponible con ella. El módulo del mediaproxy se distribuye con las fuentes de SER en módulos/directorio del mediaproxy.

1. Arquitectura

  1. ———–

El proxy server se diseña alrededor del concepto del tener diverso poder servidores disponibles para diversos dominios así como poder tener servidores múltiples del poder para un dominio que hará balancear de la carga de los medios traficar que los pasos a través de ellos, o las capacidades del retraso de la oferta si alguno de van fuera de línea (los otros absorberán su redistribución de la parte del tráfico la carga equilibrio entre los servidores restantes).

Para poner esto en ejecución el MediaProxy se divide en 2 componentes:

i. el proxy server sí mismo (ocupando de la expedición de las corrientes de RTP en medio

 los partidos del SIP).

ii. el despachador del poder que se determina cuáles de los poderes disponibles

 manejará una conversación dada (sesión) y transmitirá a la petición
 ese poder.

Describiremos estos componentes, no obstante comenzaremos con el despachador pues es la base del sistema.

1.1 Despachador del poder

  1. —————

Basan al despachador puesto en ejecución aquí en distribuir las sesiones basadas en el dominio del SIP del llamador/de la destinación usando expedientes del DNS SRV. Si a el dominio no define ningún servidor del mediaproxy, un defecto será utilizado.

Sin embargo debe ser bastante fácil poner a otro despachador en ejecución que utilice a diverso medio de determinar el proxy server (como usar una base de datos traz), o aún para distribuir el tráfico por otros medios que Domain Name del SIP.

El módulo del mediaproxy entra en contacto con y pasó al despachador del poder crear/operaciones de búsqueda de los comandos una información de la sesión. El despachador recibirá entre otras informaciones que el dominio nombra para llamador y la destinación así como la información si son locales o no (es decir si se colocan con el servidor de SER en causa).

El despachador utilizará el dominio si el remitente es local, voluntad del remitente utilizar el dominio de la destinación si la destinación es local. Si son ningunos de ellos local, rechazará utilizar un proxy server en todos. Una vez que haya determinado qué dominio para utilizar obtener la lista de disponible los servidores del poder, hará operaciones de búsqueda del DNS para los expedientes siguientes de SRV:

_mediaproxy. _tcp.selected.domain.name

Si estas operaciones de búsqueda no rinden ningún expediente, el despachador decide que el dominio no define ningunos servidores del mediaproxy y retraso de la voluntad para utilizar un defecto servidor del mediaproxy como configurado (véase la sección 3.1 sobre cómo es el defecto proxy server configurado en el despachador).

Sin embargo si las operaciones de búsqueda rinden un o más SRV registra una lista de servidores hacerte del donde su orden se basa en las características de la prioridad y del peso los expedientes de SRV encontrados. De esta lista volverá el primer servidor del mediaproxy que responde.

El resultado final de este algoritmo es que el tráfico de RTP será carga balanceada entre los servidores en la misma prioridad pero con diversos pesos. Si alguno de ellos no está respondiendo su parte del tráfico será distribuida en medio los otros servidores en la misma prioridad. Cuando ningunos de los servidores en dado está retraso la prioridad accesible de la voluntad a la prioridad siguiente donde las mismas reglas se aplicará.

Después de que se haya determinado el proxy server la petición será remitida a este proxy server y la contestación serán enviados de nuevo al módulo del mediaproxy. Recordará el poder asociado a la sesión y más lejos a las peticiones para la misma sesión irá al mismo poder.

1.2 El proxy server

  1. —————

El proxy server hace la expedición real del tráfico de RTP entre los partidos implicado en la conversación usando Traversal usando protocolo NACIONAL del relais (VUELTA).

Asigna un par de los zócalos para cada corriente de los medios que una sesión tiene (una para RTP el otro para RCTP) y las vueltas es poseer IP address y una lista de puertos que el módulo del mediaproxy utilizará substituir los valores originales en el SDP mensaje. Después de que esto mangling se haga, los partidos implicaron en la conversación entrará en contacto con el proxy server pensando que entran en contacto con el otro partido. Esto es necesario porque el proxy server (que debe tener un Internet público la dirección) puede esta manera de determinar las direcciones de donde los medios las corrientes originan. Esta información es desconocida cuando el SIP que señala tomas lugar, porque no puede ser determinado hasta que las corrientes de RTP comienzan realmente para fluir. Después de que haya asignado los zócalos para cada corriente, el poder esperará a escuchar un paquete entrante de los 2 partidos. Una vez que lleguen éstos, el poder puede para saber dónde los paquetes se deben remitir y pueden comenzar la expedición ellos entre los 2 partidos. Observar por favor sin embargo eso si un partido no está detrás NACIONAL el proxy server puede enviarte los paquetes incluso antes de que recibe a paquete de él, puesto que el IP/port se sabe ya. Debido a esto, nuestro el servidor del mediaproxy puede trabajar aun cuando encadenado con otro mediaproxy servidor. No habrá bloqueo de las corrientes de los medios porque ambo mediaproxy los servidores son pasivos y espera por siempre para un paquete de uno a. En lugar nuestro el servidor del mediaproxy será solamente pasivo y espera para un paquete si el partido él las negociaciones con están detrás de NACIONAL permitiendo encadenar tanto mediaproxy servidores sin el bloqueo.

El proxy server puede trabajar directamente con el módulo del mediaproxy fuera teniendo el despachador entre ellos, no obstante esta manera una suelta capacidad de utilizar diversos servidores del mediaproxy para diversos dominios del SIP, capacidad de hacer balancear de la carga del tráfico de RTP entre el mediaproxy múltiple servidores así como la capacidad de funcionar un proxy server del telecontrol (el mediaproxy el módulo puede solamente hablar con alguien que escucha en un filesystem local del UNIX zócalo). Sin embargo esto puede ser hecha si uno necesita solamente un solo proxy server ese funciona en el mismo anfitrión que SER sí mismo. Desde el despachador y uso del proxy server que el mismo sistema de comando de ellos puede hablar con módulo del mediaproxy directamente. De hecho el despachador lo pasa los comandos recibe del módulo del mediaproxy al proxy server directamente fuera modificación de ellos en todos (interpreta solamente una cierta información presente en ordenar para tomar la decisión a la cual proxy server para remitir el comando).

En fin, si uno necesita funcionar un servidor alejado del mediaproxy, desea distribuir el tráfico de RTP basado en el dominio del SIP del llamador/de la destinación, desea a hacer un equilibrio de la carga del tráfico de RTP en los servidores múltiples del poder (sean local o alejado) o una combinación de las razones lo mencionó aquí necesita funcionar a despachador también.

2. Características

  1. ——-

- Servidores geográficamente distribuidos del poder - Capacidad de tener diversos poderes para diversos dominios del SIP - Capacidad de utilizar los servidores múltiples del poder por dominio del SIP - El balancear y redundancia de la carga - Sesiones activas de los medios de la exhibición - Contabilidad del tráfico de la red - Gama portuaria configurable del IP y del UDP - Ayuda para audio y el vídeo (manijas todas las corrientes de los medios en una sesión) - Independiente de la versión de SER - Utilizar solamente 2 puertos por la corriente de los medios (una para RTP uno para RTCP) para ambos puntos finales de una llamada

3. Línea de comando opciones

  1. ——————

3.1 proxydispatcher.py

  1. —————–

Si funcionas proxydispatcher.py –ayuda demostrará la pantalla de la ayuda según lo visto debajo:

uso: opciones de proxydispatcher.py

opciones: –número y salida de versión del programa de la demostración de la versión - h, –demostración de la ayuda este mensaje y salida de la ayuda –la ninguno-bifurcación funciona el proceso en el primero plano –archivo del pid del pid=FILE (/var/run/proxydispatcher.pid) –registro del log=FILE a este archivo también, junto con syslog (ninguno)

En esta pantalla de la ayuda describe las opciones que acepta, qué él significa y dentro de paréntesis los valores prefijados para esas opciones en caso de que él sea no especificado.

Hay un número de opciones disponibles configurar al despachador. Para ellas, consultar por favor mediaproxy.ini en la sección del despachador donde él está explicado detalladamente.

3.2 mediaproxy.py

  1. ————

Si funcionas mediaproxy.py –ayuda demostrará la pantalla de la ayuda según lo visto abajo:

uso: opciones de mediaproxy.py

opciones: –número y salida de versión del programa de la demostración de la versión - h, –demostración de la ayuda este mensaje y salida de la ayuda –la ninguno-bifurcación funciona el proceso en el primero plano –archivo pid=File del pid (/var/run/mediaproxy.pid) –registro log=File a este archivo también, junto con syslog (ninguno)

En esta pantalla de la ayuda describe las opciones que acepta, qué ellas los medios y dentro de paréntesis los valores prefijados para esas opciones en caso de que sean no especificado.

Hay un número de opciones disponibles configurar MediaProxy. Para ellas, consultar por favor mediaproxy.ini en la sección de MediaProxy donde él está explicado detalladamente.

3.3 sessions.py

  1. ———-

Esta escritura se utiliza para demostrar las sesiones actualmente funcionamiento e información sobre ellos (como estado, tipo del codec, la duración, el tráfico,…) en un terminal.

Si deseas un cheque ajustado a formato más agradable de la página la página de media_sessions.phtml en subdirectory de la tela que ajusta a formato el mismo Info en un Web page. La escritura del php se puede poner en un web server y exhibir en un web browser.

Si funcionas sessions.py –ayuda demostrará la pantalla de la ayuda según lo visto abajo:

uso: opciones de sessions.py

opciones: –número y salida de versión del programa de la demostración de la versión - h, –demostración de la ayuda este mensaje y salida de la ayuda –puerto del control de los mediaproxy proxy=Host|File (/var/run/mediaproxy.sock)

–el poder especifica donde el proxy server preguntar se localiza. Por defecto él

     negociaciones con el proxy server que funciona en el mismo anfitrión con 
     Zócalo del UNIX de /var/run/mediaproxy.sock.
     Puedes utilizar las formas siguientes para especificar el proxy server para preguntar:
  1. /some/path
       Para especificar un zócalo local del UNIX.
       El proxy server funcionará en el mismo anfitrión en este caso
  1. hostname: puerto u hostname o IP address: puerto o IP address
       Para especificar una dirección de red por el hostname o el IP address
       El proxy server puede funcionar en el mismo anfitrión o un anfitrión alejado en esto
       caso. Si el puerto no se especifica 25060 es utilizado por el defecto.

3.4 rtpgenerator.py y fakeconversations.py

  1. —————————————

Esto es una escritura para uso general encontrada bajo subdirectory de utils/. Es propósito es emular un par de teléfonos del SIP que hacen una conversación con a tipo específico del codec. Es propósito es probar la carga que el mediaproxy el servidor puede dirigir. Observar por favor sin embargo que no lo hacen las corrientes de los medios de RTP contener cualquier dato válido de RTP. Él todo se llena de 0, y todo ese importa sobre él está la cantidad de tráfico que él genera que igual que uno generado por un teléfono verdadero. La escritura puede simular la petición/las operaciones de búsqueda ordena que venido de módulo del mediaproxy para iniciar una sesión de RTP sin la necesidad realmente de tener la llamada viene con el SIP verdadero que señala de SER. De hecho tú incluso no necesitar SER que funciona para probar esto. Todo que es necesario es un funcionamiento servidor del mediaproxy que escucha en un puerto accesible del control.

Si funcionas rtpgenerator.py –ayuda demostrará la pantalla de la ayuda según lo visto abajo:

uso: opciones de rtpgenerator.py

opciones: –número y salida de versión del programa de la demostración de la versión - h, –demostración de la ayuda este mensaje y salida de la ayuda –el IP del ip=IP enviaba/recibe el RTP fluye (127.0.0.1) –zócalo proxy=Host|File del control del mediaproxy (/var/run/mediaproxy.sock) –g711 crean un equivalente de la carga de un codec G711 –g729 crean un equivalente de la carga de un codec G729 –g723 crean un equivalente de la carga de un codec G723 –el G/M crea un equivalente de la carga de un codec del G/M –tarifa de datos del rate=Rate en kpbs 0-512 (64) –el count=Count simula este muchas corrientes de la tarifa dada 1-30 (1)

–el IP especifica de qué IP address a fingir son las llamadas (debe ser a

  IP address válido del anfitrión funcionas la escritura encendido). Necesitas realmente
  especificar uno, como el defecto (127.0.0.1) trabajará solamente al probar
  un proxy server que está en el mismo anfitrión que la escritura del generador.

–el poder especifica donde el proxy server a la prueba se localiza. Por defecto él

     negociaciones con el proxy server que funciona en el mismo anfitrión con 
     Zócalo del UNIX de /var/run/mediaproxy.sock.
     Puedes utilizar las formas siguientes para especificar el proxy server para probar:
  1. /some/path
       Para especificar un zócalo local del UNIX.
       El proxy server funcionará en el mismo anfitrión en este caso
  1. hostname: puerto u hostname o IP address: puerto o IP address
       Para especificar una dirección de red por el hostname o el IP address
       El proxy server puede funcionar en el mismo anfitrión o un anfitrión alejado en esto
       caso. Si el puerto no se especifica 25060 es utilizado por el defecto.

–g711 –g729 –g723 –G/M –la tarifa especificaba qué corriente de RTP a simular. Generarán a

     carga del tráfico equivalente a ese tipo del codec. Con --tarifa puedes
     especificar manualmente qué tarifa deseas entre 0 y 512 kbps.
     Si no se especifica ninguno el equivalente de un codec G711 se genera

–la cuenta simula este muchas corrientes. Esto es como la fabricación de tanto separado

     llamadas usando 2 teléfonos de la cuenta de x. Esta opción permite la generación fácil
     de medios múltiples fluye funcionando la escritura solamente una vez.
     Hay un límite de 30 corrientes que un solo proceso puede generar.
     Si necesitas más, funcionar los tiempos del múltiplo de la escritura.

fakeconversations.py hace igual, pero también masquerades como varios teléfonos para hacer un aspecto mejor en el Web page de media_sesions.phtml