En la navegación por
Internet es necesario descargar previamente el archivo (página HTML, imagen
JPG, audio MP3, etc.) desde el servidor remoto al cliente local para luego
visualizarlo en la pantalla de este último.
La tecnología de
streaming se utiliza para optimizar la descarga y reproducción de archivos de
audio y video que suelen tener un cierto peso.
El streaming funciona
de la siguiente forma:
- Conexión con el servidor. El reproductor cliente conecta con el servidor remoto y éste
comienza a enviarle el archivo.
- Buffer. El
cliente comienza a recibir el fichero y construye un buffer o almacén
donde empieza a guardarlo.
- Inicio de la reproducción. Cuando el buffer se ha llenado con una pequeña fracción inicial
del archivo original, el reproductor cliente comienza a mostrarlo mientras
continúa en segundo plano con el resto de la descarga.
- Caídas de la velocidad de conexión. Si la conexión experimenta ligeros descensos de velocidad durante
la reproducción, el cliente podría seguir mostrando el contenido
consumiendo la información almacenada en el buffer. Si llega a consumir
todo el buffer se detendría hasta que se volviera a llenar.
El streaming puede
ser de dos tipos dependiendo de la tecnología instalada en el servidor:
- Descarga progresiva. Se produce en servidores web que disponen de Internet Information
Server (IIS), Apache, Tomcat, etc. El archivo de vídeo o audio solicitado
por el cliente es liberado por el servidor como cualquier otro archivo
utilizando el protocolo HTTP. Sin embargo, si el archivo ha sido
especialmente empaquetado para streaming, al ser leído por el reproductor
cliente, se iniciará en streaming en cuanto se llene el buffer.
- Transmisión por secuencias. Se produce en servidores multimedia que disponen de un software
especial para gestionar más óptimamente el streaming de audio y vídeo:
Windows Media Server, Flash Communication Server, etc. La utilización de
un servidor multimedia ofrece múltiples ventajas frente al servidor web.
Las más destacadas son:
- Mayor rapidez en la visualización de este
tipo de contenidos.
- La comunicación entre servidor/cliente se
puede realizar por protocolos alternativos al HTTP. Tiene el
inconveniente del bloqueo impuesto por Firewalls pero tiene la ventaja de
una mayor rapidez.
- Mejor gestión del procesador y ancho de banda
de la máquina del servidor ante peticiones simultáneas de varios clientes
del mismo archivo de audio o vídeo.
- Control predefinido sobre la descarga que
pueden realizar los clientes: autentificada, filtrada por IP, sin
almacenarla en la caché del cliente, etc.
- Mayor garantía de una reproducción
ininterrumpida gracias al establecimiento de una conexión de control
inteligente entre servidor y cliente.
- Posibilidad de distribución de transmisiones
de audio y vídeo en directo.