Sei sulla pagina 1di 13

LABORATORIO #3

TELEFONIA IP

PRESENTADO POR:

Brayan Andrés Martínez

Manuel Fernando Sánchez

PRESENTADO A:
Ingeniero: Marco Andrés Ortiz Niño

ESCUELA COLOMBIANA DE INGENIERIA

“JULIO GARAVITO”

FACULTAD DE INGENIERIA ELECTRONICA

Bogotá, octubre 8 de 2018


1. INTRODUCCION

En el presente informe se presenta el desarrollo de la práctica sobre telefonía


con IP. por otro lado, veremos la implementación de telefonía IP (VoIP) a la
topología inicial y la captura de llamadas dentro de la misma, con dos
computadores asociados.

2. MARCO TEORICO

2.1. PROTOCOLO SIP (PROTOCOLO DE INICIO DE SESION)

El protocolo de inicio de sesión es un control de capa de aplicación, dicho


protocolo nos permite establecer, modificar y analizar sesiones multimedia, o
llamadas.

SIP soporta cinco facetas de establecer y terminar comunicaciones multimedia:


 Ubicación del Usuario: Determinación del sistema final que se utilizará
en la comunicación.
 Disponibilidad del Usuario: Determinación de la voluntad del llamado,
parte para participar en las comunicaciones.
 Capacidades del Usuario: Determinación de los medios y parámetros
de los medios.
 Configuración de sesión: Establecimiento de parámetros de sesión en
ambos llamados y llamantes.
 Gestión de la sesión: Incluyendo la transferencia y terminación de
sesiones, modificando parámetros de sesión, e invocando servicios.

SIP no es un sistema de comunicaciones integrado verticalmente, estas


arquitecturas incluyen protocolos como el transporte en tiempo real (RTP), los
cuales proporcionan retroalimentación de QoS, el protocolo de transmisión en
tiempo (RTSP) para controlar la entrega de medios de transmisión.

SIP se debe utilizar en conjunto con otros protocolos para brindar servicios
completos a los usuarios.

SIP proporciona servicios de seguridad, los cuales incluyen prevención de


denegación de servicio, autenticación de usuario, protección de integridad y
cifrado, y servicios de privacidad.

SIP se basa en un modelo de transacción de solicitud/respuesta similar a


HTTP. Cada una de estas transacciones consiste en una solicitud que invoca
un determinado método, o función en el servidor o al menos una respuesta.

2.1.1. ESTRUCTURA PROTOCOLO SIP

SIP se encuentra estructurado como un protocolo de capas, esto quiere decir


que su comportamiento se describe en términos de un conjunto de etapas de
procesamiento bastante independientes con solo un acoplamiento suelto entre
cada capa, la capa más baja de este protocolo es la sintaxis y la codificación.
La segunda capa es la capa de transporte, la tercera capa es la de transacción,
las transacción es una solicitud enviada por un cliente, a un servidor junto con
todas las respuestas a esa solicitud, a su vez maneja retransmisiones en la
capa de aplicación, coincidencias de respuestas a las solicitudes y tiempos de
espera de la capa de aplicación.

El método más importante de SIP es el método INVITE, el cual se utiliza para


establecer una sesión entre los participantes.

Los mensajes SIP son una solicitud de un cliente a un servidor o una respuesta
de un servidor a un cliente, tanto la solicitud como la respuesta usan el formato
básico Formato de mensajes de Internet.

2.1.2. SOLICITUDES

Las solicitudes SIP se caracterizan por tener una línea de solicitud, la cual
contiene el nombre del método, un URI de solicitud y la versión del protocolo, y
debe terminar con CRLF.

El Método contiene seis parámetros Registro para registrar la información de


los contactos, Invitar, ACK y cancelar; para configuración de sesiones, BYE
para terminar la sesión, y Opciones.

2.1.3. RESPUESTAS

Las respuestas SIP se distinguen de las solicitudes al tener una línea de estado
como su línea de salida, esta línea consiste en la versión del protocolo seguido
de un código de estado numérico y su frase textual asociada.

El código de estado es un código de resultado entero de tres dígitos el cual


indica el resultado de entender y satisfacer una petición. El primer número del
código de estado define el tipo de respuesta, los otros dos número no tienen
injerencia alguna en está.

Códigos de estado:
 1xx: Provisional: Solicitud recibida, continua procesando la solicitud.
 2xx: Éxito: la acción fue recibida exitosamente.
 3xx: Redirección: es necesario tomar medidas adicionales para
completar la solicitud.
 4xx: Error de cliente: La solicitud contiene una sintaxis incorrecta.
 5xx: Error del servidor: El servidor no cumplió aparentemente con la
solicitud valida.
 6xx: Fallo global: La solicitud no se puede cumplir en ningún momento.

2.2. PROTOCOLO RTP (Protocolo de transporte para


aplicaciones en tiempo real).

Este protocolo proporciona servicios de entrega de extremo a extremo para


datos con características en tiempo real, como audio y video. Estos servicios
incluyen identificación de tipo de carga útil, numeración de secuencia, sellado
de tiempo y seguimiento de la entrega, este protocolo usa protocolo de
transporte UDP, para hacer uso de sus servicios de multiplexación y sumas de
comprobación, soporta transferencia de datos a múltiples destinos.

El protocolo RTP no garantiza la entrega oportuna o proporciona garantías de


calidad del servicio, pero se basa en servicios de capa inferior para hacerlo.

RTP consta de dos partes:


 Protocolo de transporte en tiempo real (RTP): Para transportar los
datos que tienen propiedades en tiempo real.
 Protocolo de control RTP (RTCP): Para monitorear la calidad del
servicio y transmitir información sobre los participantes en una sesión en
curso.

Algunas de las aplicaciones que usan RTP son por ejemplo, mezcladores y
traductores, audio y video conferencia y conferencia de audio multicast online.

En RTP todos los campos enteros se transportan en bytes, siendo el octeto


más significativo el primero. Todos los datos del encabezado se alinean en su
longitud natural, lo que quiere decir que los campos de 16 bits se alinean en
desplazamientos uniformes, los campos de 32 bits se alinean en
desplazamientos divisibles por cuatro, y los octetos designados como relleno
tendrán un valor de cero.

2.2.1. ENCABEZADO RTP

El encabezado RTP está constituido de la siguiente manera:

 Versión (V): Tamaño de 2 bits, este campo identifica la versión de RTP.


 Relleno (P): Tamaño de 1 bit, si este paquete está establecido, quiere
decir que el paquete contiene uno o más octetos de relleno adicionales
que no forman parte de la carga.
 Extensión (X): Tamaño de 1 bit. Si se establece el bit de conexión, el
encabezado fijo va seguido exactamente por una extensión de
encabezado.
 Recuento de CSRC (CC): Tamaño de 4 bits. El recuento de CSRC
contiene el número de identificadores de CSRC que siguen el
encabezado fijo.
 Marcador (M): Tamaño de 1 bit. Está definido mediante un perfil,
destinado a permitir eventos significativos.
 Tipo de carga útil (PT): Tamaño 7 bits. Este campo identifica el formato
de la carga útil de RTP y determina su interpretación por al aplicación.
 Número de Secuencia: Tamaño 16 bits. El número de secuencia se
incremente en una para cada paquete de datos RTP enviado, y el
receptor puede utilizarlo para detectar la pérdida de paquetes y restaurar
la secuencia de paquetes.
 Marca de tiempo: Tamaño de 32 bits. La marca de tiempo refleja el
instante de muestreo del primer octeto en el paquete de datos RTP.
 SSCR: Tamaño de 32 bits. El campo SSRC identifica la fuente de
sincronización, dicho sincronizador se elige a la zar, para que no haya
dos fuentes de sincronización dentro de una misma sesión RTP con el
mismo identificador.

2.3. Protocolo RTP de control.

Este protocolo se basa en la transmisión periódica de paquetes de control a


todos los participantes en la sesión. Realiza cuatro funciones principales:
 Proporciona retroalimentación sobre la calidad de la distribución de
los datos.
 RTCP lleva un identificador de nivel de transporte persistente para
una fuente RTP llamada nombre canónico, los receptores requieren
que CNAME haga un seguimiento de cada participante, para que no
haya conflictos o se reinicie el programa.
 Las primeras dos funciones requieren que todos los participantes
envíen paquetes RTCP, por lo tanto, la velocidad debe ser
controlada para que RTP pueda escalar hasta un gran número de
participantes. Al hacer que cada participante envíe sus paquetes de
control a todos los demás, cada uno puede observar
independientemente el número de participantes.
 Una cuarta función opcional es transmitir la información de control de
sesión mínima, por ejemplo, la identificación del participante que se
mostrará en la interfaz de usuario. Es más probable que esto sea útil
en sesiones "controladas libremente" donde los participantes entran
y salen sin el control de la membresía o la negociación de
parámetros.

2.3.1. FORMATO DE PAQUETE RTCP.

Se definen los siguientes formatos:


 SR: Informe del remitente, para estadísticas de transmisión y recepción
de participantes activos.
 RR: Informe del receptor, para estadísticas de transmisión y recepción
de participantes activos.
 SDES: Elementos de descripción de fuente, incluido CNAME.
 BYE: Indica fin de participación.
 APLICACIÓN: Funciones específicas de la aplicación.

3. DESARROLLO DE LA PRACTICA

Para el desarrollo de esta práctica se trabajó con la topología que se muestra


en la figura 1, el objetivo principal era lograr realizar una llamada entre dos
computadores, a través de un software, usando nuestra máquina virtual Elastix.
Figura 1. Topología implementada en GNS3.

Lo primero que hacemos es realizar el respectivo enrutamiento basándonos en


la figura 1, para asignar las direcciones Ip correspondientes a cada uno de los
routers, y para nuestra nube se asignó otra interfaz de conexión Ethernet y su
dirección Ip la obtuvimos por DHCP dinámico.

Figura 2. Dirección IP asignada al usuario 1.

No se tiene una imagen de la dirección IP asignada al usuario 2, pero esta fue


la 10.20.23.39 con máscara de 23.
Figura 3. Asignación de dirección ip por dhcp y máscara router 1 y
verificación de la tabla de enrutamiento.

Para el router 3 se procedió a realizar la misma operación, pero con sus


direcciones correspondientes.

Después de que se ha realizado las configuraciones de enrutamiento,


procedemos a verificar las listas de ruteo, en donde podremos ver cómo se
comunica el router en cuestión con cada una de las subredes de la topología

Por último, nos queda comprobar que exista conectividad entre nuestros
equipos esto lo hacemos usando el comando ping.
Figura 4. Comprobación de conexión entre los dos pc.

Para la implementación del servicio de telefonía IP. Se procede en primera


instancia a la instalación del software de servidor de comunicaciones, Elastix, el
cual contiene una interfaz Web en inclusión de un módulo de centro de
llamadas con un marcador predictivo. Posteriormente, se procede a instalar
Zoiper, como software de sistemas de comunicaciones en IP. Siguiendo, se da
inicio a la máquina virtual, a la cual asignaremos una dirección IP estática, la
cual se podrá ver posteriormente como URL, dando ingreso a la interfaz Web
del software, figura 5.

Figura 5. Interfaz web Elastix.

Una vez ingresado se procede a generar dos dispositivos genéricos SIP, los
cuales hacen el rol de dispositivos de telefonía celular por los cuales se harán
la transmisión de datos voz, figura 6.
Figura 6. Asignación de usuarios en Elastix.

A dichos componentes, se les asigna una dirección IP automática durante el


registro, los cuales están asociados a la misma subred del servidor Elastix;
dichos dispositivos cuentan con una extensión que es asignada por el usuario
con el objetivo de generar seudónimo. Posterior a la asignación de lo
identificadores, se ejecuta cada uno de los programas, en donde se procede a
la vinculación de cada uno de los simuladores virtuales con un usuario
registrado en el servidor, figura 7.

Figura 7. Vinculación dispositivos Elastix.

Se realizó una llamada de prueba entre los dispositivos, ingresando la


extensión asignada con antelación de cada uno de los elementos dentro del
servidor. En la imagen se podrá observar que, desde el software Zoiper 1, se
hace una llamada hacia <2>, donde posteriormente se podrá observar que en
el programa Zoiper se genera una llamada entrante de <1>, dicho proceso de
comunicación es analizado por medio de los protocolos SIP y RTP.

Figura 8. Sofware Zoiper.


Al tiempo que realizamos la llamada procedemos a realizar nuestra captura de
datos en wireshark.

Figura 9. Filtro paquetes SIP.

Se puede observar, se genera un inicio de llamada, desde B hacia N, en donde


se envía inicialmente un requerimiento con el identificador INVITADO desde el
computador “Brayan” hacia el servidor Elastix, en donde posteriormente este
responde con un requerimiento de autorización, con el código 401-No
Autorizado. Posterior a esto, el PC interesado en enviar un mensaje de voz,
emite los requerimientos PUBLICAR y SUSCRIBIR, en el cual proporciona al
servidor información acerca del contenido del mensaje, en este caso voz, como
también su destinatario. A continuación, el servidor conecta la llamada con el
computador de Manuel, el cuál alerta sobre la comunicación entrante, a lo cual,
después de contestar, el PC Manuel devuelve un mensaje al servidor con
respuesta asertiva de que se estableció la conexión, 200-OK.

Figura 10. Filtro de paquetes RTP.

Se analiza que, después de que se genera una marcación entre los


dispositivos, y se contesta sobre el receptor, se genera un envío de datos, en
este caso, información de voz, entre el emisor y el servidor el cual re direcciona
la información al receptor, igualmente de forma contraria, por lo que se puede
apreciar que durante el cuerpo del mensaje se genera un número se secuencia
que, después de llegada la información al receptor, servirá como forma de
reconstrucción del mensaje; simultáneamente, se genera un registro de tiempo,
el cual varía de una cantidad a otra con un valor de 162 y una fuente de
sincronización, SSRC, la cual se asigna de forma aleatoria con el fin de evitar
colisiones entre paquetes de datos.
Figura 11. Diagrama de flujo comunicación.

En el diagrama de flujo se puede observar el procedimiento descrito


anteriormente en el protocolo SIP, se puede ver la invitación que se hace para
realizar la llamada, primero del pc de Brayan a la Máquina Elastix, este recibe
la confirmación y luego hace la invitación al pc de Manuel. También se puede
observar el momento en que está entrando la llamada y cuando se realiza la
conexión para la transmisión de paquetes de voz, por último se observa el BYE
el cual indica el cierre de la conexión.

Después de esto nos dirigimos a la ventana Telephony de nuestro wireshark y


allí buscamos la grabación de la llamada, la cual corresponde a nuestro RTP
player.

Figura 12. Grabación de la conversación.

4. CONCLUSIONES.
 En la realización de este laboratorio continuamos trabajando y
reforzando los conocimientos sobre routers y sus respectivos comandos
que se usa para poder enrrutar y asignar las direcciones IP de cada uno
de estos.
 Se aprendió el manejo y configuración de Elastix, ya que por medio de
esta interfaz logramos realizar las llamadas para la comprobación de
nuestro laboratorio.
 El uso del software Zoiper es de gran ayuda para lograr nuestro objetivo,
aunque existen otros software que nos pueden ayudar, optamos por
escoger este.
 A su vez el software wireshark nos permite realizar una grabación de la
llamada que realizamos, esto es muy bueno si lo sabemos utilizar de
forma adecuada en nuestra vida profesional.
 Dentro de los inconvenientes que se presentaron en el desarrollo de la
práctica, fue que no logramos configurar Zoiper, en nuestros teléfonos
móviles.

5. REFERENCIAS.
 https://tools.ietf.org/html/rfc3261#section-20.1
 https://tools.ietf.org/html/rfc1889
 http://www.quasarbi.com/elastix.html
 https://www.youtube.com/watch?v=0KrTC8ODQ4s

Potrebbero piacerti anche