A client-based system for the fault tolerant delivery of real-time or
continuous data streams, such as real-time multimedia streams, e.g., live
audio and video clips. Multimedia servers are grouped into two or more
sets, for example wherein a first set includes one or more primary servers
using odd-numbered ports and a second set includes one or more secondary
servers using even-numbered ports. The client requests a multimedia stream
through a control server or gateway which routes requests to the
multimedia servers; and the client receives the stream directly from a
selected (primary) server. The client automatically detects load
imbalances and/or failures (complete or partial) and dynamically switches
to a secondary server in order to continue receiving the real-time
multimedia stream with minimal disruption and while maintaining a balanced
load across multiple servers in a distributed network environment. The
determination can be made based on: the received bit or frame rate (for
video); a bit rate or sample rate (for audio); monitoring a delivery rate
or for packets arriving out of order: for example using packet numbering
mechanisms available in TCP; sequence numbering or time stamp capabilities
of RTP (in combination with the User Datagram Protocol (UDP)). In any
case, the determination could be based on the rate measurement or
monitoring mechanism falling below (or exceeding) some threshold.
Alternately, the primary server or the control server could send an
explicit distress or switch signal to the client. An explicit signal can
be used for example to switch clients in phases with minimal disruption.
Un sistema cliente-basado para la entrega tolerante de la avería de las secuencias de datos en tiempo real o continuas, tales como multimedia en tiempo real fluye, los clips e.g., audio y video vivos. Los servidores de los multimedia se agrupan en dos o más fija, por ejemplo en donde un primer sistema incluye unos o más servidores primarios usando puertos con números impares y un segundo sistema incluye unos o más servidores secundarios usando puertos even-numbered. El cliente solicita una corriente de los multimedia a través de un servidor o de una entrada del control que encamine peticiones a los servidores de los multimedia; y el cliente recibe la corriente directamente de un servidor (primario) seleccionado. El cliente detecta automáticamente los desequilibrios y/o las faltas de la carga (completos o parciales) y cambia dinámicamente a un servidor secundario para continuar recibiendo los multimedia en tiempo real fluye con la interrupción mínima y mientras que mantiene una carga equilibrada a través de los servidores múltiples en un ambiente de la red distribuida. La determinación se puede hacer basado encendido: la tarifa recibida del pedacito o del marco (para el vídeo); un índice binario o tarifa de la muestra (para el audio); supervisando una tarifa de la entrega o para llegar de los paquetes fuera de servicio: por ejemplo usando los mecanismos de la enumeración del paquete disponibles en el TCP; capacidades del grupo fecha/hora de la enumeración o de la secuencia de RTP (conjuntamente con el User Datagram Protocol (UDP)). En cualquier caso, la determinación se podría basar en la medida de la tarifa o mecanismo de la supervisión que caía debajo (o que se excede) de un cierto umbral. Alternativamente, el servidor primario o el servidor del control podía enviar una señal de socorro explícita o cambiar la señal al cliente. Una señal explícita se puede utilizar por ejemplo para cambiar a clientes en fases con la interrupción mínima.