1 / 39

Realizado por: Juan Luis Acedo Ruiz Dirigido por: Eduardo Casilari Pérez

Desarrollo de una herramienta software de evaluación de la calidad en comunicaciones IP en tiempo real. Realizado por: Juan Luis Acedo Ruiz Dirigido por: Eduardo Casilari Pérez Dpto. Tecnología Electrónica - Universi dad de Málaga Málaga Noviembre 2003. Índice de contenidos.

leiko
Download Presentation

Realizado por: Juan Luis Acedo Ruiz Dirigido por: Eduardo Casilari Pérez

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Desarrollo de una herramienta software de evaluación de la calidad en comunicaciones IP en tiempo real Realizado por: Juan Luis Acedo Ruiz Dirigido por: Eduardo Casilari Pérez Dpto. Tecnología Electrónica - Universidadde Málaga Málaga Noviembre 2003

  2. Índice de contenidos • 1. Introducción • 2. Descripción del software desarrollado • 3. Fase de pruebas • 4. Manual de usuario • 5. Conclusiones y líneas futuras

  3. Índice de contenidos • 1. Introducción • 2. Descripción del software desarrollado • 3. Fase de pruebas • 4. Manual de usuario • 5. Conclusiones y líneas futuras

  4. Internet es uno de los fenómenos que capta mayor interés en el mundo de las telecomunicaciones Concepto AllIP Los datos en tiempo real tienen requisitos temporales muy estrictos y necesitan la llegada ordenada de paquetes Necesidad de estudiar y comprender los protocolos de tiempo real RTP y RTCP Objetivo del proyecto: desarrollar un programa que ofrezca información acerca de la calidad de las comunicaciones IP en tiempo real • Introducción

  5. Protocolo de transporte de datos en tiempo real sobre Internet Definido formalmente en la RFC 1889 Se implementa sobre UDP Servicio extremo a extremo Añade facilidades necesarias para ofrecer una determinada calidad de servicio pero no garantiza dicha calidad Cada medio implicado en una comunicación en tiempo real transcurre por una sesión RTP diferente RTP (Real Time Protocol)

  6. Formato paquete RTP

  7. Protocolo de control de transporte de datos en tiempo real sobre Internet Envío periódico de paquetes a los participantes Contiene información sobre participantes y estadísticas de rendimiento y pérdidas para realizar cierto control de flujo y congestión Tipos de mensajes RTCP: SR (Sender Report) RR (Receiver Report) SDES (Source DEScription) BYE APP RTCP (Real Time Control Protocol)

  8. Formato paquete RTCP (SR/RR)

  9. ¿Por qué no capturar paquetes RTCP si éstos proporcionan directamente información sobre la calidad de la comunicación en tiempo real? La información que proporcionan los paquetes RTCP no es en tiempo real Con los paquetes RTP se puede obtener información actualizada con cada nuevo paquete Con los paquetes RTP se pueden realizar análisis que no son posibles con los paquetes RTCP Justificación captura paquetes RTP

  10. Índice de contenidos • 1. Introducción • 2. Descripción del software desarrollado • 3. Fase de pruebas • 4. Manual de usuario • 5. Conclusiones y líneas futuras

  11. Winpcap: versión para Windows de pcap (packet capture) Librería de funciones que permiten la captura y procesado de paquetes La usan programas ya existentes tales como windump y Ethereal Punto de partida: librería winpcap

  12. rtiptv1.exe: programa básico basado en la librería winpcap sin entorno visual y ejecutable en modo consola rtiptini.exe/rtiptend.exe/help.exe: programa que añade al básico un interfaz de entrada visual y uno de salida gráfico (librería clPlot.dll). rtiptini.exe: interfaz de entrada rtiptend.exe: programa básico e interfaz de salida gráfico help.exe: ayuda para interpretar los ficheros de salida Estructuración del software

  13. Diagrama de flujo programa básico Captura de paquetes Extracción del número de secuencia, SSRC, timestamp... paquete Se establece num. conversación a que pertenece Se descarta el paquete no ¿Cumple filtro? si Extracción de la longitud, tiempo, tipo de carga ... si ¿Número de secuencia esperado? no si no ¿Es RTP? Incrementar Desordenados y Llegados ¿Es mayor de lo esperado? no Incrementar Total y Llegados si Incrementar Llegados Perdidas=numsecactual-numsecesperado Total=Total+perdidas+1 Cálculo del tiempo entre paquetes, jitter... Escribir en ficheros

  14. OnButton1 de rtiptend.exe Filtrado y captura de paquetes packet_handler de rtiptend.exe Procesado de los paquetes y de la información contenida en ellos. Cálculo de los parámetros de calidad Escritura en los ficheros Funciones del programa básico

  15. OnButton1 de rtiptend.exe Usuario elige parámetros de funcionamiento no pcap_open_offline Abre el flujo de paquetes desde fichero ¿Online? si pcap_open_live Abre el flujo de paquetes desde la red pcap_dispatch Captura de paquetes pcap_datalink Detecta el tipo de red ¿Timeout? si pcap_compile Compila filtro no ¿Fin de fichero? si pcap_setfiler Fija filtro no packet_handler Procesado de los paquetes Fichero leído (solo se da en modo offline)

  16. Cálculo de los parámetros de calidad packet_handler de rtiptend.exe(I)

  17. Escritura en los ficheros: Fichero .bas: fichero con toda la información básica de cada una de las conversaciones detectadas: número de paquetes, porcentaje de pérdidas, tiempo medio entre paquetes, jitter medio... Fichero .int: fichero con la información correspondiente a cada intervalo de muestreo y especificada para cada conversación Fichero .paq: fichero con la información de todos los paquetes RTP que cumplen los filtros seleccionados: número del paquete dentro de su conversación y en el total de paquetes capturados, direcciones IP, puertos, momento de la captura, longitud, timestamp, tipo de carga, número de secuencia... packet_handler de rtiptend.exe(II)

  18. Entorno visual: Interfaz entrada

  19. Función OnInitDialog de rtiptini.exe

  20. OnSelChangeCombo Activa cuando seleccionamos el tipo de dispositivo Usa la función pcap_findalldevs si el tipo de dispositivo es Net Escribe nombres de ficheros en nombre del dispositivo si el tipo de dispositivo es File OnButton1 Escritura de los valores seleccionados por el usuario en el fichero temp.tmp Otras funcionesde rtiptini.exe

  21. Se añaden dos nuevas funciones al código fuente de rtiptend.exe: OnInitDialog Crea las gráficas en modo online OnTimer Representa los valores en las gráficas y almacena los valores de las gráficas en un nuevo fichero con extensión .seq Pequeñas modificaciones a las funciones OnButton1 y packet_handler de rtiptend.exe para tener la salida gráfica En packet_handler se escribe un nuevo tipo de fichero con extensión .tim que almacena números de secuencia y tiempos entre paquetes Entorno visual: Interfaz salida(I)

  22. Entorno visual: Interfaz salida(II)

  23. Entorno visual: Ayuda

  24. Índice de contenidos • 1. Introducción • 2. Descripción del software desarrollado • 3. Fase de pruebas • 4. Manual de usuario • 5. Conclusiones y líneas futuras

  25. Pruebas en condiciones de baja carga en la red Pruebas con red saturada Banco de pruebas Real-Time IP Tester Netmeeting Red Ethernet 150.214.59.115 Máquina 1 150.214.59.120 Máquina 2 mgenpasivo mgen mgenactivo Netmeeting Red Ethernet 150.214.59.115 Máquina 1 150.214.59.120 Máquina 2

  26. Prueba convencional Pruebas baja carga en la red(I)

  27. Prueba cambiando el tamaño del vídeo enviado Cambia ligeramente ancho de banda Aumenta el tamaño de los paquetes enviados Aumenta el tiempo medio entre paquetes Prueba de sincronización con nueva conversación detectada Los 2 vídeos son detectados en el momento que empiezan a transmitirse Prueba cambiando el formato de audio y parando el vídeo durante algunos intervalos Cambia ancho de banda del audio El ancho de banda del vídeo es 0 en las intervalos en los que está desconectado Pruebas baja carga en la red(II)

  28. Prueba variando el intervalo de muestreo, el número de gráficas y el filtro adicional Pruebas baja carga en la red(III)

  29. Uso del programa mgen Variación del parámetro X (tasa de envío de paquetes UDP por segundo) Aparecen pérdidas en modo online a partir de X=400 Estas pérdidas no aparecen en modo offline Pruebas con red saturada

  30. Generación de gráficas y ficheros Detección y generación de estadísticas hasta de 4 sesiones RTP Posibilidad de cambiar el intervalo de muestreo, de incluir un filtrado adicional de paquetes y de elegir cualquier combinación de las 4 gráficas posibles Generación a posteriori de otras gráficas o de otros análisis gracias a los ficheros numéricos Prestaciones

  31. Pérdidas en modo online a partir de una tasa de envío de paquetes “basura” de X=400, es decir, cuando la fuente interferente alcanza los 3 Mbps aproximadamente Máximo de cuatro sesiones RTP detectables El intervalo de muestreo debe ser un entero entre 1 y 10 Si alguna sesión RTP usa un puerto fuera del rango establecido tampoco será detectada Limitaciones

  32. Índice de contenidos • 1. Introducción • 2. Descripción del software desarrollado • 3. Fase de pruebas • 4. Manual de usuario • 5. Conclusiones y líneas futuras

  33. Ejecución del programa >> rtiptv1 portini portfin [-f fichero]|[-n numeroAdaptador] fichero_salida [-v|-b] intervalo [nombrefiltro] Ejemplos de ejecuciones Salida a través de los ficheros .bas, .int y .paq Programa modo consola

  34. Ejecución del programa. Hay que ejecutar rtiptini.exe Programa entorno visual(I)

  35. Salida: A través de 5 ficheros: .bas, .int, .paq, .seq y .tim Salida gráfica Programa entorno visual(II)

  36. Índice de contenidos • 1. Introducción • 2. Descripción del software desarrollado • 3. Fase de pruebas • 4. Manual de usuario • 5. Conclusiones y líneas futuras

  37. Se ha hecho necesario el estudio y comprensión de los protocolos de tiempo real RTP y RTCP Uso de la librería winpcap, elemento central del software desarrollado Desarrollo del software en varias etapas: dos programas independientes Íntima relación entre programación y análisis de protocolos IP Conclusiones

  38. Partiendo del Real-Time IP Tester como herramienta genérica, se pueden obtener otras herramientas que se centran de un modo más concreto en una de las medidas que el software ofrece Realizar comparativas de los resultados obtenidos con los valores contenidos en algunos campos de los paquetes RTCP Código optimizado para la velocidad de procesado con el fin de evitar las pérdidas en modo online Adaptar el software de forma que pueda ejecutarse en otros sistemas operativos Líneas futuras

  39. Desarrollo de una herramienta software de evaluación de la calidad en comunicaciones IP en tiempo real Realizado por: Juan Luis Acedo Ruiz Dirigido por: Eduardo Casilari Pérez Dpto. Tecnología Electrónica - Universidadde Málaga Málaga Noviembre 2003

More Related