14
 Práctica 2 Videoconferen cia y video streaming en multicast (versión 2012-2013) Autores: Santiago Felici Rogelio Montañana 1.- Introducción y objetivos  En esta práctica se realizan pruebas con diversas herramientas de videoconferencia y vídeo streaming en multicast. También se llevan a cabo diversos experimentos de transmisión multicast con el objeto de que el alumno se familiarice con su funcionamiento. Para el desarrollo de la práctica se utilizan ordenadores con sistema operativo MS Windows XP que deben tener instalados los siguientes paquetes de software:  El programa Wireshark que se utiliza como analizador de tráfico. Es un software de libre distribución que puede obtenerse de www.wireshark.org .  Tres herramientas del paquete MBone llamadas SDR, RAT y VIC. Se trata de un software de videoconferencia con capacidad multicast, de libre distribución que puede obtenerse de http://www-mice.cs.ucl.ac.uk/multimedia/software/   El programa VideoLAN, que sirve para enviar y recibir emisiones de vídeo en IP. Es un software de libre distribución que puede funcionar en unicast y en multicast y que se puede obtener de www.videolan.org Los ordenadores deben estar dotados de cámara de vídeo, micrófono y auriculares. 2.- Preparación En primer lugar los alumnos deben organizarse para trabajar por parejas de ordenadores, a ser posible habiendo un alumno por ordenador. La práctica se desarrolla con el sistema operativo Windows XP. El profesor indicará el usuario y contraseña que deben utilizar los alumnos.  A continuación, los alumnos conectarán la cámara de vídeo, el micrófono y los auriculares.  Ahora los alumnos deben averiguar los siguientes datos de su ordenador y el de su vecino: Dato Ordenador mío Ordenador del vecino Dirección IP Máscara Router por defecto ó ‘puerta de enlace’ Para obtener los datos de tu ordenador procede de la siguiente forma: haz clic con el botón izquierdo del ratón en el icono ‘Inicio’ en la parte inferior izquierda de la pantalla y en el menú desplegable selecciona ‘Ejecutar…’. En el campo ‘Abrir’ teclea ‘cmd’ y en la ventana que aparece teclea el comando ipconfig . De la respuesta a dicho comando obtendrás todos los datos requeridos. Es posible que el ordenador tenga varias interfaces de red (reales o virtuales); en ese caso la que nos interesa es la que conecta el ordenador a la red de la universidad que será una dirección que empezará por 147.156. Las otras interfaces tendrán normalmente direcciones privadas, o la dirección loopback.

Practica2 Multimedia Multicast

Embed Size (px)

Citation preview

Ampliacin de Redes

Prctica 2: Videoconferencia y vdeo streaming en multicastPrctica 2Videoconferencia y video streaming en multicast(versin 2012-2013)

Autores: Santiago FeliciRogelio Montaana

1.- Introduccin y objetivosEn esta prctica se realizan pruebas con diversas herramientas de videoconferencia y vdeo streaming en multicast. Tambin se llevan a cabo diversos experimentos de transmisin multicast con el objeto de que el alumno se familiarice con su funcionamiento.

Para el desarrollo de la prctica se utilizan ordenadores con sistema operativo MS Windows XP que deben tener instalados los siguientes paquetes de software:

El programa Wireshark que se utiliza como analizador de trfico. Es un software de libre distribucin que puede obtenerse de www.wireshark.org . Tres herramientas del paquete MBone llamadas SDR, RAT y VIC. Se trata de un software de videoconferencia con capacidad multicast, de libre distribucin que puede obtenerse de http://www-mice.cs.ucl.ac.uk/multimedia/software/ El programa VideoLAN, que sirve para enviar y recibir emisiones de vdeo en IP. Es un software de libre distribucin que puede funcionar en unicast y en multicast y que se puede obtener de www.videolan.org

Los ordenadores deben estar dotados de cmara de vdeo, micrfono y auriculares.2.- PreparacinEn primer lugar los alumnos deben organizarse para trabajar por parejas de ordenadores, a ser posible habiendo un alumno por ordenador.

La prctica se desarrolla con el sistema operativo Windows XP. El profesor indicar el usuario y contrasea que deben utilizar los alumnos.

A continuacin, los alumnos conectarn la cmara de vdeo, el micrfono y los auriculares.

Ahora los alumnos deben averiguar los siguientes datos de su ordenador y el de su vecino:

DatoOrdenador moOrdenador del vecino

Direccin IP

Mscara

Router por defecto puerta de enlace

Para obtener los datos de tu ordenador procede de la siguiente forma: haz clic con el botn izquierdo del ratn en el icono Inicio en la parte inferior izquierda de la pantalla y en el men desplegable selecciona Ejecutar. En el campo Abrir teclea cmd y en la ventana que aparece teclea el comando ipconfig. De la respuesta a dicho comando obtendrs todos los datos requeridos. Es posible que el ordenador tenga varias interfaces de red (reales o virtuales); en ese caso la que nos interesa es la que conecta el ordenador a la red de la universidad que ser una direccin que empezar por 147.156. Las otras interfaces tendrn normalmente direcciones privadas, o la direccin loopback.

Pregntale a tu vecino su direccin IP. La mscara y router por defecto de su ordenador son iguales que las tuyas.

Por ltimo desactiva el cortafuegos de Windows, para ello, pulsa en Inicio, selecciona Panel de control, y pulsa en Firewall de Windows, donde aparecer la opcin de desactivar el cortafuegos.

3.- Pruebas bsicas de multicast

En esta parte de la prctica vamos a realizar diversas pruebas y experimentos de transmisin multicast con el objetivo de familiarizarnos con su funcionamiento y mostrar algunas caractersticas interesantes. Para ello utilizaremos el comando ping y el analizador wireshark.

3.1.- Comprobacin de la ruta para direcciones clase D

Antes de lanzar los ping vamos a comprobar que nuestro ordenador tiene soporte muticast. Para ello comprobaremos que existe una ruta definida para las direcciones clase D mediante el comando route print que ejecutaremos en una ventana de comandos que abriremos seleccionando con el ratn el icono Inicio en la parte inferior izquierda de la pantalla, en el men desplegable seleccionaremos Ejecutar y en el campo Abrir teclearemos cmd. Veremos que en la lista de rutas mostrada aparece una o varias rutas como la siguiente:

Destino de red Mscara de red Puerta de acceso Interfaz Mtrica 224.0.0.0 240.0.0.0 Dir_IP Dir_IP 20

Donde Dir_IP es la direccin de la interfaz Ethernet del host. Esto significa que cuando nuestro host quiera enviar algn paquete a una direccin multicast lo har directamente a travs de dicha interfaz. Si nuestro ordenador tiene varias interfaces (reales o virtuales) normalmente aparecer la ruta multicast replicada para todas ellas; la que nosotros usaremos ser la que nos conecte a lal red de la universidad, cuya direccin que emplieza por 147.156 hemos anotado anteriormente.

Observa que la mscara de esta ruta abarca todo el rango de direcciones clase D (red 224.0.0.0/4, que abarca desde la 224.0.0.0 hasta la 239.255.255.255).

Tambin podemos ver que hay definida una (o varias) ruta(s) host (mscara de 32 bits) para la direccin broadcast (255.255.255.255) lo cual indica que los paquetes enviados a dicha direccin sern enviados tambin por la interfaz Ethernet. Esto indica que los paquetes broadcast recibirn el mismo tratamiento que los paquetes multicast, es decir sern enviados directamente en la red local.

Para lanzar los pings que vienen a continuacin podemos utilizar la misma ventana de comandos que hemos utilizado para el route print.

Calcula, usando los conocimientos vistos en teora, la direccin MAC que se corresponde con una emisin multicast a la direccin IP 224.0.0.1.

Escribe aqu la direccin MAC calculada:

3.2.- Ping a la direccin 224.0.0.1

Ahora vamos a hacer ping a la direccin 224.0.0.1, que corresponde a todos los hosts multicast de la red (si tecleamos el comando nslookup 224.0.0.1 veremos que el DNS resuelve esa direccin en el nombre all-systems.mcast.net). Por tanto este ping debera recibir tantas respuestas como hosts con soporte multicast hay en nuestra red local, ya que como sabemos los paquetes dirigidos a direcciones 224.0.0.0/24 no son propagados por los routers. En este caso la LAN abarca todo el edificio donde nos encontramos. Vamos a enviar un solo paquete de ping a dicha direccin mediante el comando ping -n 1 224.0.0.1 (la opcin n 1 indica que se enve un solo paquete). Con este ping deberamos recibir tantas respuestas como hosts con soporte multicast estn encendidos en estos momentos en nuestra LAN, pero el ping acusa una sola respuesta. Evidentemente hay ms de un host con soporte multicast en nuestra red puesto que ya solo en el laboratorio donde nos encontramos hay varios. Para averiguar lo que ocurre vamos a repetir el mismo ping, pero esta vez poniendo en marcha previamente una captura en el Wireshark con el filtro host direccin_IP and icmp donde direccin_IP es la direccin IP de nuestro ordenador (por ejemplo host 147.156.80.116). Este filtro captura todo el trfico ICMP con origen o destino nuestro ordenador, de forma que podremos ver nuestro ping y las respuestas obtenidas. As podremos ver que, en efecto, el ping recibe mltiples respuestas, aunque el programa ping de Windows solo reporta la primera e ignora el resto, probablemente para evitar confundir al usuario. Por el nmero de respuestas a nuestro ping reflejadas en el Wireshark podremos saber, ahora s, cuantos hosts con soporte multicast se encuentran encendidos y conectados en este momento en el edificio.

Hay algo que falla en el filtro que acabamos de configurar. Tal como lo hemos definido captura el ICMP ECHO que enva nuestro host y los ICMP ECHO-REPLY que nos devuelven los dems hosts de la LAN. Pero como nuestros compaeros del laboratorio estn haciendo lo mismo y al mismo tiempo estamos recibiendo de ellos una serie de ICMP ECHO que estamos respondiendo, y esos paquetes, que no corresponden a nuestro ping, tambin los estamos capturando. Un filtro que evitara capturar esos paquetes, para la direccin 147.156.80.166 por ejemplo, sera el siguiente:

icmp and ((src 147.156.80.116 and multicast) or dst 147.156.80.116)

Si haces el ping a 224.0.0.1 con este filtro s podrs estar seguro de capturar solo tu ping y sus respuestas.

En el detalle mostrado por el Wireshark selecciona ahora el primer paquete de la captura, que es el ICMP ECHO-REQUEST enviado por tu ordenador, y responde a las siguientes preguntas:

Qu direccin MAC de destino tiene el ICMP ECHO REQUEST del ping multicast?

Se corresponde con la MAC calculada anteriormente?

Cuntos equipos hay en nuestra red con soporte multicast encendidos en este momento?

icmp and ((src 147.156.80.116 and multicast) or dst 147.156.80.116)

3.3.- Ping a la direccin broadcast de nuestra red

Vamos a hacer ahora un ping a la direccin broadcast de la red en la que nos encontramos. Sera ms fcil hacer ping a la direccin 255.255.255.255, pero Windows no lo permite. En cualquier caso el ping que vamos a hacer es completamente equivalente. Debes ahora calcular la direccin IP broadcast de tu red a partir de la IP y mscara de tu ordenador. Una vez obtenida debers lanzarle un ping n 1 (solo enviaremos un paquete) poniendo previamente en marcha la captura del Wireshark con el filtro de antes (icmp and ((src 147.156.80.116 and multicast) or dst 147.156.80.116). Observars el mismo comportamiento que antes, es decir el programa ping reporta una nica respuesta, pero el Wireshark nos permite saber cuantas hay realmente. Ahora el nmero de respuestas recibidas corresponde al nmero de hosts con soporte del protocolo IP que estn encendidos en este momento en el edificio. El nmero de respuestas puede ser ligeramente superior al de antes, ya que ahora deberan contestar todos los hosts de antes ms aquellos que tienen IP sin soporte multicast[footnoteRef:1]., que pueden ser por ejemplo: [1: Para que el cmputo fuera riguroso habra que haber hecho los dos pings al mismo tiempo, ya que entre uno y otro puede haberse encendido o apagado algn equipo del edificio. Adems puede haber ordenadores con filtro configurado en el cortafuegos a los pings de uno u otro tipo (o ambos).]

Impresoras con conexin LAN. Estos dispositivos se comportan como hosts en la red pero debido a su naturaleza no requieren soporte multicast. Equipos de red gestionables de nivel 2 (conmutadores LAN). Tampoco requieren soporte multicast. Otros dispositivos conectados a la red que no necesitan muticast, por ejemplo equipos de medida o de control de laboratorio con sistemas embebidos Sistemas operativos con multicast desactivado o sin soporte multicast, por ejemplo, Windows 95.

Responde ahora a las siguientes preguntas:

Qu direccin IP has empleado en el ping broadcast?

Qu direccin MAC de destino emplea ahora el ICMP ECHO REQUEST?

Suponiendo que la prueba hecha es fiable Cuntos equipos hay en nuestra red sin soporte multicast?

Podra ser que recibamos alguna respuesta de direcciones de otra red IP. Esto se debe a que, aunque el ping lo hemos enviado a la direccin broadcast de nuestra red IP, si existen en la LAN ordenadores de otra red IP tambin nos respondern. Lo mismo podra ocurrir con el ping a la direccin 224.0.0.1.

3.4.- Ping broadcast a una red remota

Ahora vamos a hacer un ping a la direccin broadcast de una red IP remota. Vamos a utilizar para ello la 147.156.8.0/23, que corresponde al Servicio de Informtica. Como siempre primero pondremos en marcha el Wireshark con el filtro host direccin_IP and icmp (a partir de ahora este filtro es suficiente para capturar solo nuestro trqafico). Luego haremos ping n 1 direccion_IP donde direccion_IP ser en este caso la direccin broadcast de la red 147.156.8.0/23. En esta red siempre hay al menos una docena de ordenadores encendidos, por lo que lo normal sera recibir mltiples respuestas. Responde ahora a las siguientes preguntas:

Qu direccin IP has utilizado en el ping broadcast?

Cuantas respuestas se reciben?

Qu direccin de origen tienen?

Sabras explicar el resultado obtenido?(pista: las rutas pueden ser asimtricas)

3.5.- Ping a la direccin 224.0.0.2 (todos los routers multicast) y a otras direcciones multicast reservadas de la red 224.0.0.0/24

Ahora probaremos a enviar un ping a la direccin 224.0.0.2, que corresponde a todos los routers multicast (all-routers.mcast.net en el DNS), Utilizaremos el Wireshark con el filtro (host direccin_IP and icmp) para saber el nmero de respuestas realmente recibidas.

Haz ping ahora a la direccin 224.0.0.2 y con la ayuda del Wireshark responde a la siguiente pregunta:

Cuantos routers con soporte multicast hay en la LAN del edificio?

Recuerda que las direcciones 224.0.0.0/24 siempre tienen restringido su mbito a la red local (TTL=1). Otras direcciones multicast reservadas de la red 224.0.0.0/24 son las siguientes:

DireccinSignificadoNombre en el DNS

224.0.0.5Routers OSPFospf-all.mcast.net

224.0.0.10Routers IGRP/EIGRPigrp-routers.mcast.net

224.0.0.13Routers PIM v2pim-routers.mcast.net

224.0.0.22Routers con soporte de IGMPv3 (envo de Membership Report)igmp.mcast.net

Ahora, haciendo ping n 1 a cada una de estas direcciones y con la ayuda del Wireshark responde a las siguientes preguntas:

Cuantos routers OSPF hay en la LAN del edificio?

Cuantos routers IGRP/EIGRP hay en la LAN del edificio?

Cuantos routers PIM v2 hay en la LAN del edificio?

Cuantos routers IGMPv3 hay en la LAN del edificio?

3.6.- Ping a otras direcciones multicast reservadas

Otras direcciones multicast reservadas son por ejemplo las siguientes:

DireccinSignificadoNombre en el DNS

224.0.1.16Servidores Music-ServiceMusic-service.mcast.net

224.0.1.41Gatekeepers H.323Gatekeeper.mcast.net

224.2.127.254Anuncio de sesiones SAP, (Session Announcement Protocol)sap.mcast.net

Estas no estan reservadas al mbito de la red local, sino que se propagan en principio por toda la internet

Resulta interesante para esta prueba activar la funcin de resolucin de nombres de Wireshark. Para ello hay que marcar en Capture Options la casilla Enable network name resolution. Una vez tengas activada esta opcin pon el filtro de captura habitual (host direccin_IP and icmp) y lanza un ping n 1 a cada una de ellas. Utiliza las respuestas obtenidas para responder a las siguientes preguntas:

Cuantos servidores Music-Service hay accesibles ahora mismo en Internet?

Y cuntos Gatekeepers H.323?

Cuntos hosts estn en este momento participando del protocolo SAP?

Por alguna razn que desconozco el ping a estas direcciones no funciona si se hace con una frecuencia superior a dos pings por minuto desde una misma direccin IP. Por tanto si necesitas repetir alguno de estos pings debes esperar al menos 30 segundos antes de volver a intentarlo, ya que de lo contrario no responde nadie.

Seguramente cada uno de estos grupos (especialmente el SAP) tiene en Internet muchos ms participantes de lo que a la vista de las pruebas anteriores parece deducirse. Lo que ocurre es que la mayora de los equipos no responde a los pings o se encuentran detrs de cortafuegos que no dejan pasar los pings.4.- Pruebas con las herramientas MBone (SDR, VIC, RAT)

Las herramientas MBone son un conjunto de programas que permiten realizar videoconferencias multicast a travs de Internet. De la multitud de programas disponibles nosotros utilizaremos el SDR, el VIC y el RAT. El SDR es el directorio de sesiones, y es el nico que invocamos directamente; el VIC y el RAT son las herramientas de vdeo y audio, respectivamente, y se invocan de forma automtica cuando arrancamos el vdeo o el audio en una conferencia. Este software es de libre distribucin y puede obtenerse del paquete Mash (http://www-mice.cs.ucl.ac.uk/multimedia/software/). Se trata de programas bastante antiguos que hoy en da estn declarados obsoletos, pero que presentan algunas caractersticas interesantes para lo que hacemos en esta prctica. Su funcionamiento con las versiones de Windows ms recientes presenta algunos problemas de compatibilidad, por lo que a veces los programas pueden abortar.

4.1.- Recibir la lista de emisiones de Internet con SDR

SDR (Session Directory) permite crear y anunciar sesiones multicast, as como unirnos a otras ya existentes. Es la aplicacin principal ya que acta como gestor de las dems herramientas y es la nica que se invoca directamente.

Primeramente arranca el Wireshark con un filtro para capturar nicamente los paquetes destinados a la direccin 224.2.127.254, que es la direccin utilizada por el protocolo SAP (Session Announcement Protocol). De momento no se captura ningn paquete.

A continuacin arranca el SDR. Para ello debes hacer doble clic en el icono correspondiente del escritorio, o si no lo encuentras clicar Inicio -> Todos los programas, de la lista seleccionar Mbone Tools y una vez all sdr. A continuacin aparece una ventana con una lista en la que en unos instantes van apareciendo las sesiones anunciadas en Internet.

Vers entonces que el Wireshark empieza a recibir gran cantidad de paquetes, en un flujo constante. Parando la captura podrs analizar alguno de ellos y observars que contiene informacin detallada sobre las diferentes sesiones que aparecen anunciadas en la ventana del SDR. Los anuncios se reiteran peridicamente con el fin de que, si aparece un nuevo participante en la red, reciba en unos pocos minutos la informacin de todas las sesiones anunciadas. En nuestra captura el primer mensaje capturado no debera ser un anuncio SDR sino un IGMP Membership Report, por medio del cual nuestro host se ha unido al grupo multicast del SDR (224.2.127.254). Ahora analiza ese paquete IGMP y responde a la siguiente pregunta:

Qu versin de IGMP est utilizando Windows XP?

Para apuntarnos a una sesin la debemos seleccionar mediante doble clic. Sin embargo no intentaremos seguir ninguna, ya que todas o la mayora de las sesiones utilizan cdecs no soportados por el VIC ni el RAT.

Nuestro mayor inters en relacin con las herramientas MBone no es ver las emisiones que llegan del exterior, sino realizar emisiones multicast propias.

4.2.- Realizar emisiones propias con SDR

Vamos a utilizar ahora las posibilidades de emisin multicast de las herramientas MBone para establecer una multi-conferencia entre todos los alumnos del laboratorio, sin necesidad de ningn servidor que se encargue de replicar el flujo de audio-video al resto, esto lo har de manera natural la transmisin multicast. Para ello uno de los participantes crear una sesin a la cual se unirn todos los dems. Pero antes, y con el fin de practicar todos lo ms posible, vamos a hacer algo que no sera muy normal en una situacin real, que es crear una emisin multicast diferente en cada ordenador, de forma que habr tantas emisiones simultneas como ordenadores estn realizando la prctica. Una vez terminada esa prueba todos nos uniremos a una de las emisiones creadas para poder participar en la misma videoconferencia.

Para crear una sesin debemos seleccionar en la ventana de sesiones del SDR New y a continuacin Create advertised session. Entramos entonces en un dilogo con varias etapas:

0. En la etapa 0 asignars a la sesin un nombre, que ser AR.x.y donde x.y son los dos ltimos bytes de la direccin IP de tu ordenador. Por ejemplo si el ordenador tiene la direccin 147.156.80.116 la sesin se llamar AR.80.116. Adems le debes asignar una descripcin (el campo Description no puede estar en blanco).1. En la etapa 1 elegirs el valor por defecto (sesin tipo Test).2. En la etapa 2 tambin elegirs los valores por defecto (sesin de dos horas de duracin a empezar de forma inmediata).3. En la etapa 3, Select the Distribution Scope, elegirs tambin la opcin por defecto, IPv4 Local Scope. De este modo la sesin recibir direcciones del rango 239.255.0.0/16, que tienen restringido el alcance al mbito local.4. En la etapa 4 debes elegir los medios que quieres utilizar (audio, video, pizarra, etc.). El audio est elegido por defecto, debes elegir adems video. Puedes adems elegir aqu los codecs por defecto que quieres utilizar en la sesin (luego esto puede cambiarse). En audio deja el que aparece por defecto (PCM) y en vdeo selecciona M-JPEG, ya que presenta menos problemas de compatibilidad que el H.261 que aparece por defecto.5. En la etapa 5 Provide Contact Details deja los valores por defecto (en blanco).6. En la etapa 6 Select security parameters for this session deja tambin los valores por defecto.

A continuacin aparece una pantalla resumen (Review session details) que muestra las direcciones multicast y los nmeros de puerto que el SDR ha asignado a los flujos de vdeo, y de audio. Las direcciones de ambos flujos son diferentes, dando as la posibilidad de que un participante reciba solo uno de los flujos, si lo desea (por ejemplo solo audio si tiene ancho de banda pequeo). Estas direcciones las elige el SDR de forma que sean nicas en el mbito de difusin de la emisin, evitando as conflicto con otras sesiones anunciadas o activas. Como en la etapa 3 hemos elegido la opcin IPv4 Local Scope el SDR nos ha asignado direcciones del rango 239.255.0.0/16, de lo contrario nos habra asignado direcciones del rango 224.2.0.0/16, reservado para el SDR.

Qu direcciones y puerto se van a utilizar para las emisiones de video y audio?

Una vez introducidos todos los datos pulsa el botn Aceptar. Pasados unos instantes todos los ordenadores del laboratorio que estn ejecutando el SDR vern aparecer tu sesin en la lista del SDR; t tambin vers aparecer las suyas. A partir de este momento puedes hacer clic en cualquier sesin y te aparecer una ventana mostrando su descripcin y la lista de medios disponibles (audio y video) con la direccin multicast y puerto utilizados por cada uno.

Como lo interesante es participar todos en la misma sesin, no cada uno en una diferente, vamos a unirnos todos a la primera sesin AR.x.y de la lista; puesto que todos vemos la lista en el mismo orden todos elegiremos la misma sesin. Una vez seleccionada pulsa el botn Join, con lo cual te unes a todos los medios disponibles (audio y vdeo en este caso) y te aparecern dos nuevas ventanas, que corresponden al VIC (video) y al RAT (audio).

En la ventana del VIC irn apareciendo pequeas ventanas que irn mostrando a los participantes a medida que activan la transmisin de vdeo. Para activar el tuyo pulsa en la ventana VIC el botn Menu y en la ventana que aparece clica la casilla Transmit; en ese momento empieza a emitirse tu video al resto de participantes de la sesin.

La ventana de Menu te ofrece una amplia lista de controles de tu emisin, que puedes modificar con la transmisin en marcha. Por ejemplo el mando Rate Control te permite regular el caudal generado en un rango muy amplio, desde 1 Kb/s hasta unos 3 Mb/s. Tambin puedes ajustar el nmero de fotogramas por segundo, de 1 a 30 fps, segn la agilidad que darle a tu emisin. En la parte Encoder puedes indicar el formato de compresin de vdeo; como al crear la sesin se eligi M-JPEG el encoder elegido es jpeg, pero puedes elegir otro. Aunque M-JPEG no es un cdec muy eficiente lo hemos elegido porque es compatible con la mayora de drivers y hardware; otros cdecs que suelen funcionar bastante bien son cellb, nv y nvdct; lamentablemente los cdecs H.26x, que son ms eficientes, fallan a menudo en el VIC. Tambin podemos cambiar la resolucin del vdeo eligiendo entre tres tamaos posibles, small, normal y large, que corresponden a los tamaos SQCIF, QCIF y CIF, respectivamente. Por ltimo, el control Quality te permite marcar tu preferencia entre calidad y agilidad del vdeo; en el extremo derecho de la escala se consigue la mxima calidad y mnima agilidad, siendo lo contrario en el extremo izquierdo.

Durante la emisin cada mini-ventana del VIC muestra la direccin IP del emisor, el caudal que est generando en Kb/s, la tasa de prdidas en % (obtenida a partir de los informes de RTCP) y el nmero de fotogramas por segundo. Clicando en la imagen de cualquiera de esas mini-ventanas puedes verla ampliada; la ventana ampliada puede configurarse para que conmute automticamente por voz, lo cual es especialmente interesante en conferencias multipunto como la nuestra. Desde el momento en que nos unimos a una sesin de vdeo nuestra CPU est recibiendo los flujos de vdeo de todos los participantes, independientemente de que los ampliemos o no, puesto que todos se envan al mismo grupo multicast y por tanto la interfaz de red no puede seleccionar uno y filtrar el resto. Para que la recepcin selectiva fuera posible cada flujo de vdeo debera utilizar una direccin multicast diferente, lo cual requerira que cada uno estuviera en una sesin SDR diferente. En cambio el audio de la conferencia, que se emite en una direccin muticast diferente, s puede ser sintonizado de forma independiente del vdeo, pero tampoco es posible recibir un audio aislado del resto; esto permitira por ejemplo que un participante con una conexin de baja velocidad, no capaz de soportar el video, siguiera la conferencia sintonizando solo la parte de audio.

Vamos a ver ahora las posibilidades que nos brinda el audio. En la ventana de RAT aparecen unos indicadores de nivel simulando una escala de LEDs y unos potencimetros que nos permite regular el volumen del micrfono y del altavoz. La lista que aparece a la izquierda muestra los nombres de los usuarios que han hablado recientemente, estando el usuario actual o ms reciente en la parte superior de la lista. En la parte inferior de la ventana tenemos el botn de Options que nos permite configurar diversas caractersticas, siendo las ms importantes la seleccin del cdec de audio (Primary Encoding) y la posibilidad e activar o no la supresin de silencios. Para conseguir mxima compatibilidad con todo tipo de drivers y de hardware hemos optado por utilizar la versin 3 de RAT, cuyas opciones y posibilidades son mucho menores que las de la versin 4.

Ahora debes identificar las direcciones IP de origen de la emisin multicast que est teniendo lugar en el laboratorio. Con el Wireshark define un filtro que capture nicamente el trfico de dicha emisin y responde a las siguientes preguntas:

Cules son las direcciones IP de origen de la emisin Multicast?

Cules es la direccin MAC de destino? Coincide con la que sera previsible?

Ahora define un filtro en el Wireshark para capturar nicamente los mensajes IGMP. Con el filtro activado abandona la emisin y vuelve a unirte a ella para provocar el envo de mensajes IGMP y analizarlos en detalle. Ahora responde a las siguientes preguntas:

Qu cdigo se utiliza en el campo protocolo de la cabecera IP para indicar IGMP?

Cmo sabemos si es trata de IGMP v1, v2 v3? Qu versin estamos utilizando?

Va escrita en algn sitio de los mensajes IGMP la direccin multicast sobre la que se aplica el comando?

Cundo se produce el Membership Report al grupo multicast de la emisin de vdeo?a) Cuando se arranca el SDRb) Cuando nos unimos a una sesinc) Cuando ampliamos una ventana de vdeo

Como ya hemos visto SDR realiza el anuncio de sesiones mediante el protocolo SAP (Session Announcement Protocol) que utiliza la direccin 224.2.127.254. Establece un filtro en el Wireshark para capturar solo ese tipo de paquetes y responde ahora a las siguientes preguntas:

Con que frecuencia se envan los mensajes de SAP?

Qu hosts envian los mensajes SDR? Todos? Solo los que emiten audio o vdeo?

Si, estando en una sesin, paramos la emisin de audio y vdeo en nuestro ordenador, pero mantenemos la recepcin dejamos completamente de transmitir en ese grupo multicast?Qu filtro pondras en el Wireshark para comprobarlo?

5.- Pruebas de recepcin multicast con VideoLAN

Como ya vimos en la prctica anterior VideoLAN permite realizar distribucin de vdeo streaming por Internet, incorporando en el mismo ejecutable tanto las funciones de servidor como de cliente. En esta prctica vamos a hacer uso de sus posibilidades de emisin en multicast.

5.1.- Recibir la lista de emisiones multicast de Internet con VideoLAN

Antes de arrancar el VideoLAN pon en marcha el Wireshark con un filtro para capturar los paquetes dirigidos a la direccin 224.2.127.254 (SAP) para observar lo que ocurre cuando arrancamos VideoLAN.

A continuacin arranca VideoLAN haciendo doble clic en el icono de nombre VLC media player, o bien seleccionando Inicio -> Todos los programas y eligiendo VideoLAN y una vez all VLC media player. En la ventana que aparece elige en el men desplegable Ver y en este la opcin Lista de Reproduccin. De la lista de opciones desplegables que aparecen en la parte superior izquierda abre la de Red local y selecciona la que pone Emisiones de red (SAP)

Inmediatamente vers que el Wireshark empieza a capturar paquetes SAP, y aparece una lista de canales, que va creciendo. Para la captura del Wireshark y fjate en el primer paquete de la captura, que corresponde al IGMP Membership Report que ha emitido nuestro host para unirse al grupo SAP; todos los paquetes que aparecen a continuacin son los anuncios de las sesiones, gracias a los cuales el VideoLAN ha podido crear la lista de canales que nos muestra en pantalla.

La mayora de las entradas de la lista corresponden a canales de televisin, casi todos utilizando cdecs MPEG. Hay tambin algunos canales de radio que utilizan MP3. La lista es similar al directorio de sesiones que veamos con el SDR; la principal diferencia es que el VideoLAN est diseado para emisiones de vdeo streaming unidireccionales con un solo emisor, sin posibilidad de interaccin por parte de los receptores, y que aqu algunas emisiones estn agrupadas. Adems ahora s que podremos recibir algunas de ellas, como veremos enseguida.

5.2.- Recibir una emisin multicast de Internet con VideoLAN

Ahora prueba a sintonizar uno de los canales haciendo doble click encima de su nombre. Aunque la lista de canales que aparece es muy larga la inmensa mayora de las emisiones no estn activas, solo anunciadas. Algunos canales que suelen estar activos continuamente son los siguientes:

RedIRIS-TV TA 3 Monoskop NRC Channel 2 UNIVSL2 University of Silesia, Katowice, Poland RWTH Information

Sintoniza uno cualquiera de estos canales, pero antes de hacer doble clic en el cambia el filtro del Wireshark para que capture solo los mensajes IGMP; de este modo podrs ver el Membership Report que se produce al sintonizar el canal y averiguar la direccin IP multicast del canal que estas sintonizando[footnoteRef:2]. Si no consigues averiguarla puedes abandonar la emisin y volverla a sintonizarla hasta que conseguir identificarla. Cuando la tengas responde a la siguiente pregunta: [2: A diferencia de SDR el VideoLAN mantiene oculta al usuario la direccin multicast de las emisiones]

Que tipo de direccin multicast, de entre las siguientes, se est utilizando?

a) Direccin global asignada por el IANAb) Bloque para asignaciones ad-hocc) Direcciones de Stream Protocold) Bloque SAP/SDPe) Direcciones para SSM (multicast especfico de la fuente)f) glop addressingg) Multicast con mbito limitado por la direccin

Vamos ahora a observar el efecto que la recepcin del vdeo tiene en el trfico de la red y en la CPU de nuestro equipo. Para ello pon en marcha el Administrador de Tareas de Windows XP y manten en el Wireshark el filtro para que capture nicamente los mensajes IGMP.

Utilizando los mandos de control de VideoLAN puedes pausar o reanudar la reproduccin en curso. Al pausarla se para la visualizacin, pero no la recepcin multicast, como puedes comprobar por la actividad que muestra la pestaa Funciones de red del Administrador de tareas y por la ausencia de mensajes IGMP en la red (lo cual demuestra que no ha habido cambios en los grupos multicast recibidos). En cambio, si cierras la ventana de reproduccin del video s que se para la recepcin multicast, pues hay variacin en la actividad de la ventana Funciones de red, y se generan nuevos mensajes IGMP.

Ahora, repitiendo las pruebas anteriores las veces que sea necesario, intenta responder a las siguientes preguntas:

Cunto tarda la red en dejar de enviar el flujo multicast cuando cierras la ventana de reproduccin del vdeo?

Cunto tarda en enviarlo nuevamente cuando vuelves a sintonizar el canal?

Qu mensaje IGMP enva tu ordenador cuando cierras la ventana de vdeo?

Qu mensaje IGMP enva tu ordenador cuando sintonizas el canal?

Ahora vamos a averiguar de qu direccin IP proviene la emisin que estas recibiendo. Para ello, con la emisin en marcha, para nuevamente el Wireshark y pon un filtro para que capture solo los paquetes de la emisin que estas recibiendo; a partir de ellos podrs averiguar fcilmente la direccin IP de origen de la emisin, y responder a la siguiente pregunta:

De que pas proviene la emisin que estas sintonizando?(pista: utiliza la resolucin inversa del DNS)

Ahora analiza el contenido de los paquetes de la emisin recibidos, que normalmente sern en su mayora paquetes de vdeo, con algn paquete de audio de vez en cuando. A continuacin intenta responder a las siguientes preguntas:

Que cdec de audio y vdeo est utilizando la emisin? (esta informacin tambin la puedes obtener a partir de VideoLAN->Herramientas->Informacin multimedia->Cdec)

Analizando una secuencia de 20 paquetes del mismo flujo Se aprecia prdida o cambio de orden de los paquetes en recepcin?

6.- Pruebas de emisin multicast con VideoLANVamos ahora a utilizar VideoLAN para establecer un servidor de vdeo streaming multicast.

6.1.- Preparacin del cliente

Para estas pruebas un ordenador de la pareja actuar como servidor y el otro como cliente.

Si el servidor tiene la direccin IP 147.156.x.y utiliza para emitir la direccin multicast 239.255.x.y. De esta forma nos aseguramos de que cada servidor emita en una direccin diferente, sin riesgo de duplicidad de direcciones. Por otro lado al utilizar direcciones 239.255.0.0/16 nos aseguramos de que nuestras pruebas no salen de la LAN (pues este rango de direcciones est siempre confinado a la LAN).

Anota aqu la direccin multicast que vas a utilizar para tu emisin:

239.255.___.___

En primer lugar vas a poner a la escucha al cliente de la emisin multicast. Tienes que especificar en el cliente la direccin multicast que quieres recibir, con lo que el cliente queda sintonizado en ese canal. A partir de ah puedes lanzar las pruebas que quieras en dicha direccin sin necesidad de tocar el cliente para nada. Por supuesto el cliente podra si quisiera ir cambiando de direccin multicast y sintonizando diferentes canales.

El procedimiento para arrancar el cliente VideoLAN es el siguiente (239.255.x.y representa la direccin de la emisin):

1. Arrancar el programa VLC media player2. Seleccionar en la ventana que aparece el men Medio3. Elegir de la lista la opcin Abrir volcado de red 4. Seleccionar la pestaa Red e introducir como URL: rtp://@239.255.x.y:50045. Pulsar el botn Reproducir

El cliente est listo para recibir la emisin multicast en la direccin 239.255.x.y, cualquiera que sea la direccin de origen, siempre y cuando el puerto de destino sea el 5004 (puerto por defecto de las emisiones RTP).

6.2.- Preparacin del servidor y emisin del vdeo streaming

Para las pruebas que siguen utilizaremos los mismos dos ficheros de la prctica anterior, cuyas caractersticas son:

FicheroEthernet.mpgCarmen.mpg

Duracin10 minutos3 minutos

Codec de vdeoMPEG-1MPEG-2

Resolucin352x288 (CIF)720x576

Frecuencia de refresco25 fps25 fps

Caudal de vdeo1500 Kb/s4500 Kb/s

Codec de audioMPEG-1 Capa IIMPEG-1 Capa II

Frecuencia de muestreo44,1KHz48 KHz

Canales2 (stereo)2 (stereo)

Caudal de audio224 Kb/s192 Kb/s

Ambos ficheros deben encontrarse en el escritorio.

El procedimiento para poner en marcha la emisin en el servidor VideoLAN es el siguiente:

1. Arrancar el programa VLC media player2. Seleccionar el men Medio3. Elegir de la lista la opcin Emitir4. Seleccionar la pestaa Archivo5. Pulsar el botn Aadir y seleccionar el fichero correspondiente (Ethernet.mpg Carmen.mpg)6. Pulsar el botn Emitir7. Aparece la ventana Fuente que como su nombre indica nos muestra la fuente de nuestra emisin, que acabamos de seleccionar; pulsar el botn Siguiente.8. Aparece la ventana Configuracin de destino donde en Destinos debemos seleccionar en el desplegable Nuevo destino la opcin RTP / MPEG Transport Stream y darle al botn Aadir. Aparece una nueva pestaa RTP/TS con un campo Direccin en el que introduciremos la direccin IP multicast (239.255.x.y) a la que queremos enviar el flujo de video. Tambin aparece en dicha pestaa el campo Puerto cuyo valor por defecto (5004) no debemos modificar, pues es el que hemos indicado en el cliente (5004 es el puerto por defecto utilizado para las emisiones RTP).9. En esa misma ventana un poco ms abajo aparecen las Opciones de transcodificacin, estando marcada por defecto la opcin Habilitar transcodificar que debemos desmarcar, ya que de momento no vamos a transcodificar el video sino que lo vamos a emitir en su formato original.10. Pulsar el botn Siguiente. 11. Aparece la ventana Configuracin de preferencias en la cual podemos especificar el valor del campo Tiempo de vida (TTL), que por defecto es 1. Con TTL=1 la emisin no podr atravesar ningn router, por lo que el cliente deber estar en la misma LAN que el servidor; dado que este es nuestro caso no vamos a modificar el TTL y pulsamos el botn Emitir, momento en el que empieza la emisin multicast.

Como puede comprobarse fcilmente, durante la emisin los botones de control de vdeo del cliente no funcionan, salvo el de parada/arranque. El servidor tampoco puede utilizar dichos botones, pero dispone de un mando deslizante con el que puede controlar la posicin del vdeo que se est emitiendo.

En la prctica anterior ya probamos las posibilidades de transcodificacin de VideoLAN en unicast. Dichas posibilidades son idnticas en multicast. Asimismo es posible emitir en multicast vdeo en directo generado a partir de una cmara conectada al ordenador.

7.- Finalizacin

Al terminar la prctica debes devolver la cmara y los auriculares al profesor, y apagar el equipo.

P4-14