You are on page 1of 6

SERVIDORES DE VIDEO EN APLICACIONES DE VIDEO EN DEMANDA (VoD)

Fernando Rodrigues Da Silva ferrodda@hotmail.com

RESUMEN El Video en Demanda ha comenzado a popularizarse alrededor del mundo ofreciendo una serie de servicios como cine bajo demanda y deportes bajo demanda, permitiendo la libre eleccin al usuario del contenido que desee ver. Un sistema de Video en Demanda (VoD) posee tres componentes bsicos: El set-top box del usuario, la red de distribucin y los servidores de video. Los servidores son elementos donde los comandos del usuario se procesan y donde se almacenan los programas. Las polticas de control de acceso, arquitecturas empleadas, flujo de transmisin de informacin y protocolos de gestin son de vital importancia a la hora de disear un sistema de VoD tanto del punto de vista de operacin como de costos. Palabras Claves: Video en Demanda,VoD, servidor, protocolo

Introduccin Tradicionalmente el televidente ha sido un participante pasivo en recibir los programas que las estaciones de televisin ofrecen a la comunidad. El video en demanda le la flexibilidad al usuario de escoger la programacin que quiere recibir. Para dar tal soporte a una gran comunidad y una alta variedad de informacin y programas, un sistema de video en demanda debe tener servidores de video capaces de almacenar en medios de rpido acceso, administrar grandes volmenes de informacin y enviar un gran nmero de pelculas simultneamente. En este artculo discutiremos los componentes fundamentales de un sistema de video en demanda y su funcin, los servidores como corazn del sistema, diferentes arquitecturas empleadas y los protocolos utilizados en el manejo y gestin de los mismos. Qu es Video en Demanda? Se define Video en Demanda (VoD) como la habilidad de distribuir una pelcula u otro programa de video a un monitor de TV individual, al momento en que es solicitado por el consumidor. La seleccin se lleva a cabo a travs del control remoto del usuario y el video comienza inmediatamente. Actualmente VoD incluye una amplia gama de servicios tales como comercio desde el hogar, juegos y cine bajo demanda. Todo esto ha sido posible gracias a la

aparicin de tcnicas de compresin de video (MPEG) y a que las tcnicas de procesamiento digital de seales permiten el transporte de informacin a tasas de algunos Mbps sobre las redes de cobre ya existentes en distancias de algunos kilmetros. An el ancho de banda es grande solo en el sentido desde el proveedor hacia el usuario, pero cuando se alcance un ancho de banda mayor desde el usuario entonces la interactividad entre el cliente y el proveedor de servicios podr verse incrementada. Basado en el nivel de interactividad disponible los servicios interactivos pueden ser clasificados en varias categoras, teniendo entonces: - Broadcast (No-VoD): Servicio similar al broadcast, en el cual el usuario es un participante pasivo y no tiene control sobre la sesin. - Pay per View (PPV): Servicio en el que el usuario elige y compra un programa especfico. - Casi Video en Demanda (Q-VoD): Agrupa a los usuarios por categoras de inters de manera que los mismos tienen la opcin de cambiarse a un nuevo grupo, sin tener un control interactivo sobre el canal. - Video en Demanda aproximado (N-VoD): Consiste en que el proveedor comienza a transmitir un video cada 10 minutos por ejemplo, y se corre sin parada. El usuario que desee ver un video en particular deber esperar un cierto tiempo hasta que comience; si desea adelantar o

retrasar un evento deber cambiarse a otro canal que est mostrando el mismo programa. - Video en Demanda verdadero (T-VoD): El usuario tiene el control total sobre la sesin, con capacidades completas de un reproductor de video virtual incluyendo seleccin de programas, reproduccin adelantada o retrasada a diferentes velocidades, congelamiento y posicionamiento aleatorio de imgenes, necesitndose entonces un canal por persona.

funcin es la de interconectar el servidor de video con el set-top box. Las tecnologas ms empleadas en las aplicaciones VoD son fibra ptica y ADSL, cada tecnologa de acceso posee su propio ancho de banda y rango de servicio. Un sistema de VoD requiere la transferencia de grandes volmenes de datos a una gran velocidad, y dadas las caractersticas del contenido de la seal de video, donde la entrega de data no debe estar garantizada (la prdida de uno o varios paquetes no molestar demasiado al cliente) pero si hecha en orden, entonces obliga al uso de protocolos de comunicacin y arquitecturas como ATM que permite un amplio rango de tipos de trfico incluyendo el video en tiempo real. Las caractersticas que debe tener un red de distribucin son: Debe ser de alta velocidad Debe ser orientada a transferencia Debe minimizar el retardo entre el stream enviado por el servidor y recibido por el cliente y el jitter de dicho retardo. Servidor de Video El servidor de video es el elemento encargado del almacenamiento de los programas que puede ser accesado por los clientes. Entre sus principales funciones se tiene las de control de acceso, manejo de requisiciones, entrega de informacin y la encripcin de la misma.

Componentes de un sistema de Video en Demanda Un sistema de VoD se compone de 3 elementos principales: el set-top box manejado por el cliente la red de distribucin el servidor de video y otras aplicaciones

Figura 1.- Diagrama general de un sistema VoD

Servidores de Video en Demanda El Set-top box En el caso de aplicaciones al hogar, el set-top box es el dispositivo que conecta el televisor a la red de comunicaciones. En la gran mayora de los casos manejado a travs de un control remoto o un teclado inalmbrico, le da al consumindor la oportunidad de conectarse al servidor de video y elegir los diversos contenidos disponibles tales como pelculas, juegos o noticias. El set-top box debe ser capaz de presentar al cliente final todo el stream de datos entregados por el servidor de video y bsicamente se compone de un CPU, memoria, interfaces de red y un decodifcador MPEG. El servidor es el corazn del sistema de Video en Demanda. Debe ser capaz de entregar servicios de alta calidad a los usuarios empleando estrategias que minimicen los costos. En este capitulo discutiremos a fondo los servidores de video y su gestin.

La Red de Distribucin Es la infraestructura de comunicaciones que se encuentra entre el cliente y el proveedor de servicios, su

Figura 2.- Estructura de un servidor de VoD

Control de Acceso Todos y cada uno de los clientes que deseen usar el servicio de VoD debern solicitar y tratar de establecer una conexin con alguno de los servidores disponibles, por lo que un sistema de control de acceso es necesario. De manera a garantizar que los nuevos clientes tengan un playback continuo del programa requerido y asegurar la calidad del servicio, el servidor deber tener recursos suficientes como memoria, ancho de banda de procesamiento y ancho de banda de red antes de admitir una nueva requisicin de conexin. Desafortunadamente los streams con tasas de video variables crean dificultades para la reserva de recursos. Si los recursos son reservados de acuerdo al promedio o al pico de la tasa de transferencia de informacin, entonces los paquetes podran bien perderse o en caso contrario se tendra una red sub-utilizada la mayor parte del tiempo.

Figura 3.- Arquitectura de un sistema de VoD con servidores autnomos

Configuracin de los Servidores de Video Los servidores de video son bsicamente grandes almacenes de informacin que es entregada bajo la demanda de los clientes. La arquitectura de un servidor VoD puede ser definida por la forma como la data se almacena dentro del sistema servidor. La informacin puede almacenarse localmente dentro de un nico servidor o puede estar distribuida a travs de un gran nmero de servidores. Existen entonces dos metodologas distintas para la configuracin de los servidores de video: Servidores Autnomos: Los servidores de este tipo pueden verse como unidades aisladas que almacenan los streams codificados y no requieren de la cooperacin de otros servidores para servir a un cliente. Su implantacin fsica consiste de un CPU, un medio de almacenamiento y una interfaz de red. Los servidores autnomos sufren del problema asociado con el procesamiento centralizado que es un punto comn de falla. En este caso cuando falla el servidor autnomo, todos los clientes servidos por ste son afectados.

Servidores Distribuidos: Son aquellos que en lugar de almacenar todos los streams localmente, estos pueden estar repartidos por un gran nmero de servidores de video distribuidos por una red local o un WAN. En este caso para servir a un cliente VoD, un grupo de servidores necesitarn cooperar entre s.

Figura 4.- Arquitectura de un sistema de VoD con servidores distribuidos

En el caso de los procesadores distribuidos la probabilidad de fallar a todos los clientes disminuye considerablemente dada la distribucin de contenidos.

La topologa distribuida sufre del overhead que significa la coordinacin de recursos que son necesarios dada una solicitud por parte del cliente. Este overhead puede medirse en trminos del ancho de banda de red o de utilizacin del CPU. Por todo lo anteriormente dicho, la mejor opcin de diseo se basa en un grupo de servidores distribuidos combinado con la optimizacin de cada servidor para que este pueda proveer el mejor servicio que pueda por el mismo. Estos servidores pueden estar distribuidos alrededor de una red WAN para ofrecer un servicio ms eficiente; el equipo del cliente encontrar el servidor mas cercano que posea el programa deseado y obtener as bajo demanda dicho contenido.

El modelo pull contiene una penalidad intrnseca dado que es necesario efectuar dos transferencias de comunicacin para poder obtener la transferencia de una unidad o bloque de data: la requisicin y transferencia de informacin. Los sistemas VoD donde conseguimos frecuentemente data sncrona explotan entonces mejor las caractersticas del modelo push ya que transmite la informacin a una tasa dada basado en el hecho de que sta se consume al mismo tiempo eliminando retardos y preservando el ancho de banda de la red.

Protocolos Usados Empleados en Servidores de VoD Flujo de Transmisin de Datos en un Servidor de VoD Convencionalmente el flujo de datos en un sistema VoD va desde el servidor de video hacia el cliente. El cliente solicita datos que estn almacenados en el servidor, lo que resulta en un flujo de data desde el servidor hacia el cliente. Existen dos regmenes de manera a llevar esto a cabo: Pull: El lado cliente determina cuanta data se necesita y enva una requisicin por tal monto hacia el servidor VoD. Este responde con la cantidad de data requerida. El cliente recibe la informacin en periodos variables de tiempo y pide mas data desde el servidor. Este ciclo se repite hasta que todo el programa es presentado al espectador; se dice que los datos son poleados en demanda por el cliente. Push: Aqu el cliente no solicita ninguna data desde el servidor, sino que la data es enviada por el servidor en forma continua. Este tipo de tcnica es muy empleada en casos de pelculas codificadas en CBR (Constant Bit Rate). Esto significa que una cierta cantidad de data es siempre consumida en un cierto periodo de tiempo, tal como ocurre con el estndar MPEG1. Este modelo es tambin aplicable a streams de tasa de bits variable (VBR) siempre que el servidor pueda transformar este stream a un formato CBR antes de ser transmitido. Existen diferencias fundamentales entre el modelo push y el pull. En el modelo pull la transferencia de datos es iniciada por el receptor, por lo que podemos clasificar este modelo como un modo receptor-iniciador de transferencia de informacin. El modelo push por su parte es transmisor-iniciador. Muchos protocolos de red soportan monitoreo y gestin de transmisin de datos en tiempo real y aplicaciones de video en demanda. El protocolo mas aceptado es el Real Time Protocol (RTP) y el Real Time Control Protocol (RTCP). Estos protocolos de tiempo real bajo UDP (User Data Protocol) se emplean en aplicaciones multimedia y aplicaciones de control relacionadas a stas. En el caso de RTP, ste se desarroll para proveer servicios de entrega punto a punto de datos en tiempo real. Para ello provee funcionalidades como timestamps y mecanismos de control para sincronizacin de diferentes flujos de datos. El protocolo RTCP opera tambin en modo de multicast y provee de retroalimentacin a la fuente de data RTP y a todos los participantes de la sesin, es decir que es un protocolo de control de distribucin de los paquetes; usa el mismo protocolo de transporte que el RTP, el UDP. Entre sus principales caractersticas tenemos que es un proveedor de informacin, su principal funcin es la de brindar informacin a las aplicaciones en relacin a la calidad de los datos distribuidos; cada paquete RTCP contiene reportes estadsticos del transmisor y del receptor que incluyen el numero de paquetes enviados, numero de paquetes perdidos as como el tiempo de llegada de paquetes. Toda esta informacin sirve de retroalimentacin para determinar si los problemas son locales, regionales o globales, as como para evaluar el rendimiento de las redes, ajuste de ancho de banda, etc. En el caso de los servidores de VoD, generalmente stos se basan en los protocolos RTP, RTCP y RTSP (Real Time Streaming Protocol). El manejo de los servidores se hace en dos caminos: Camino de Entrega: Este camino posee tres funciones claras que son:

Leer el bitstream MPEG del disco o unidad de almacenamiento Paquetizar y agregar los encabezados necesarios del protocolo RTP Enviar el bitstream en tiempo real El bitstream se asume inicialmente almacenado en disco, luego se lee en memoria, se fragmenta y se paquetiza de forma a que solo un frame viaje en la red en cada paquete de manera a evitar que la prdida de este paquete resulte en ms de un frame perdido. Adicionalmente para evitar una nueva fragmentacin a nivel de IP, se escoge el tamao mximo del paquete (incluyendo encabezados UDP y TCP) hasta el mximo de Ethernet que es de 1500 Kb.

Figura 5.- Flujo de entrega y recepcin de informacin en un sistema VoD

Camino de Recepcin: Lee los paquetes de control enviados por el cliente. Estos paquetes de control son paquetes de retroalimentacin que informan al servidor de del status de recepcin desde el ltimo paquete de control recibido. Una vez que se recibe un paquete de control el servidor cambia su modo de envo de acuerdo al feedback recibido. De manera a permitir una mayor cantidad de clientes simultneamente se puede modificar la calidad de la seal enviada desde el servidor al cliente en cuatro grupos: Enviar todos los paquetes Enviar todos los frames I y P pero solo un porcentaje x de los frames B Enviar solo frames I y P Enviar solo frames I Estos cuatro modos proveen suficiente flexibilidad para controlar la degradacin del stream de video y as evitar una sobrecarga del servidor en caso de una gran demanda simultnea de servicios o programas. En el lado del cliente se establece un socket TCP entre el cliente y el servidor y la informacin del cliente (nombre de la pelcula, direccin IP del cliente y nmero de puerto para el envo del stream RTP) se envan al servidor de manera a que ste sepa donde enviar el stream de video y que stream se enviar. Luego de esto, el equipo del cliente crea un archivo HTML que carga el applet para mostrar el video.

Figura 6.- Ejemplo de una ventana para la seleccin de programacin. Notense los campos que contienen informacin del suscriptor (IP address, etc)

Tenemos en resumen que los protocolos mas empleados en la gestin de los servidores en las aplicaciones de video en demanda son: TCP/IP, UDP, RTP y RTCP Para la comunicacin entre servidores de video y clientes. HTTP Protocolo de comunicacin entre el servidor de base de datos y el cliente. RSVP Reservation Protocol

Recientemente se ha introducido un nuevo protocolo de transmisin llamado VDP (Video Datagram Protocol) el cual se dice implusar la transmisin hasta 44 veces la alcanzada con TCP UDP.

Conclusin En este artculo se present una visn global de la arquitectura de un sistema de Video en Demanda haciendo un nfasis sobre el componente clave que es el servidor de video. El servidor de video posee mltiples funciones como las de control de acceso, entrega de informacin y garantizar la transmisin de informacin. En lo referente al manejo y gestin de los servidores VoD una serie de protocolos son manejados tales como TCP/IP, UDP, RTP y RTCP para comunicar a los servidores de video con el cliente y usualmente se emplea el protocolo HTTP para enlazar al cliente con la base de datos del servidor donde se le presentan las diversas opciones de los servicios disponibles. Referencias http://san.stanford.edu/~t361/projects/VODArchitec ture.htm http:/trurl.npac.syr.edu/handout/vod.html http://www.ece.ubc.ca/~irenek/techpaps/vod/vod.ht m http://saltwater.cecs.missouri.edu/~shi/cecs383.prj/g 09/vod_report.html http://cctpwww.cityu.edu.hk/graphics/g2_video.htm http://www.cisco.com/cpress/cc/td/cpress/design/rb b/ch01.htm http://www.dmi.tut.fi/~lohanf/publications/proms20 00/PROMS2000.html http://www.cis.ohio-state.edu/~cliu/ipmultimedia/ http://www.andrew.cmu.edu/~kunwadee/research/fi nal.html

You might also like