lunes, 25 de febrero de 2013

Tarea 4: Calidad de Servicio - PS3 Media Server

Para esta Tarea escogí realizar diferentes pruebas de calidad de servicio (Quality of Service -QoS) a la aplicación PS3 Media Server, a través de una red Infinitum inalámbrica.

PS3 Media Server

PS3 Media Server o PMS, es un serrvidor media uPnP DLNA.


DLNA (Digital Living Network Alliance) es un estándar que permite a los dispositivos digitales como PCs, televisiones, smartphones conectados en una red, compartir datos entre sí, de ser compatibles.

Los dispositivos DLNA-compatibles sirven dos funciones diferentes. 'Servidores' que distribuyen multimedia como imagenes, música, o videos, y 'clientes' que reciben y reproducen dichos datos.

Usando el PS3 como cliente, y una PC ejecutando PMS como servidor, es posible reproducir imagenes, videos o música almacenada en el servidor a través de la red local.

Calidad de Servicio

Al hacer el ejemplo con una red inalámbrica, el setup es similar al siguiente (omitiendo el dispositivo de audio):


Los factores que se tomarán en cuenta (explicados en el post de laboratorio) son los siguientes:
  • Jitter
  • Bit rate
  • Pérdida de Paquetes
  • Latencia
Bit Rate

El bit-rate básicamente es la velocidad de transmisión con la que cuenta la aplicación para trabajar. Aquí el hecho de que se trata un servidor DLNA, es decir, las transmisiones son locales, ayudan bastante a aumentar el bit-rate, lo cual hace que no sea un factor real que afecte en la calidad de servicio.

Con PMS es sencillo monitorear el bit rate debido a que muestra como va cambiando junto al máximo de toda la sesión. Al pausar el video o no reproducirlo, este lógicamente se encontrará en 0 debido a que no se está enviando nada. Pero al  ir reproduciendo el video, el bit rate aumenta y varía con el tiempo, entre 0 y MAX, MAX posiblemente cambiando también.


Current bitrate representa la velocidad de transmisión actual (11 Megabytes por segundo) y Peak bitrate el máximo al que ha llegado en la sesión actual.

Pude observar dos cosas muy importantes:
  • Tomando en cuenta que no tenía ninguna otra aplicación utilizando la red, el promedio en el bitrate rondaba los 11 Mb/s - 12 Mb/s sin ninguna interferencia notable
  • Al bajar de 10 Mb/s, el vídeo se congelaba proporcionalmente al disminuir la velocidad.
Conclusión con el bit rate: Asumiendo que el servicio es utilizado por sí solo, es decir sin utilizar alguna otra aplicación que pudiera limitar el bit rate que PMS utiliza, se comporta de forma excelente sin lag o interferencia notable. Pero esto no siempre es así, normalmente las personas tienen sus smartphones conectados a su red mientras ven películas con este tipo de streams, o existe alguna otra persona simultáneamente realizando alguna otra tarea, lo que afectaría el desempeño de PMS.

Pérdida de Paquetes

Como se menciona en el post de laboratorio, la pérdida de paquetes no es realmente significativa en la calidad de servicio si el bit rate es alto. Entre más incrementa el bit rate, menos es la probabilidad de que exista pérdida de paquetes.

De igual manera, realizando una medición de pérdida de paquetes mediante el uso de Wireshark, podemos ver que esto es cierto. Para ver los paquetes perdidos durante una sesión TCP, primero es necesario aislar dicha sesión de las demás, dando click a un cierto paquete que sepamos que pertenece a dicha sesión y seleccionando Follow TCP Stream. Esto nos presenta una ventana con los paquetes filtrados para mostrar solo los que pertenecen a esta comunicación. Ya con esto, se agrega un nuevo filtro "and tcp.analysis.lost_segment" para poder mostrar los paquetes perdidos. En este caso no apareció ningún paquete que se haya perdido durante la comunicación como se puede observar.



Conclusión: Como trabajamos con velocidades considerablemente altas de bit rate, la pérdida de paquetes no es significativa, agregando además que se trata de una red local.

Latencia (Delay)

Desde el momento de saber que PMS funciona con tecnología DLNA, es decir, en redes locales podemos predecir que la latencia no es un factor real (el servidor y el cliente se encuentran en la misma red), pero de igual manera podemos comprobarlo.

Para medir la latencia, utilicé simplemente ping, haciendo un ping desde la IP del servidor (PC) a la IP del cliente (PS3). Los resultados (cubriendo las IPs por motivos de seguridad) son los siguientes:


Aquí obtenemos un promedio de 3ms en los tiempos, con un máximo de 5ms. El tiempo es excelente como se esperaba, por ser un simple envío a una red local.

Conclusión: La latencia no es factor en el caso de PMS, debido principalmente a que la comunicación entre cliente y servidor se realiza en una red local, y los tiempos de envío y regreso (round trip) son demasiado pequeños.

Jitter

Para estudiar el jitter o (packet delay variation), se hace uso de Wireshark de nuevo, realizando una gráfica de tiempos sobre las transmisiones entre el cliente y servidor (PC y PS3). Esto se puede acceder en la pestaña de Statistics-> Flow graph. Con esto podemos crear un gráfico del flujo de la sesión TCP, mostrando los tiempos en los que se envían y reciben los datos.


Observando a la izquierda, tenemos los tiempos en los que se fueron enviando los paquetes (desde el punto 0 cuando se inicio la medición, en adelante).

Graficando las variaciones en los tiempos, podemos ver los cambios de forma más sencilla:
Conclusión: Existe jitter en la transmisión de datos entre el cliente y servidor, debido a que ciertos paquetes son enviados más rápidamente que otros.


1 comentario:

  1. No me quedó claro cómo se generaba la carga de tráfico durante las mediciones. 9 pts.

    ResponderEliminar