MXPA06006330A - Sistema de transferencia de datos sincronizado. - Google Patents

Sistema de transferencia de datos sincronizado.

Info

Publication number
MXPA06006330A
MXPA06006330A MXPA06006330A MXPA06006330A MXPA06006330A MX PA06006330 A MXPA06006330 A MX PA06006330A MX PA06006330 A MXPA06006330 A MX PA06006330A MX PA06006330 A MXPA06006330 A MX PA06006330A MX PA06006330 A MXPA06006330 A MX PA06006330A
Authority
MX
Mexico
Prior art keywords
sub
information
block
node
message
Prior art date
Application number
MXPA06006330A
Other languages
English (en)
Inventor
Steven W Rose
Original Assignee
Interactive Content Engines Ll
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Interactive Content Engines Ll filed Critical Interactive Content Engines Ll
Publication of MXPA06006330A publication Critical patent/MXPA06006330A/es

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/1097Protocols in which an application is distributed across nodes in the network for distributed storage of data in networks, e.g. transport arrangements for network file system [NFS], storage area networks [SAN] or network attached storage [NAS]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/1066Session management
    • H04L65/1101Session protocols
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/60Network streaming of media packets
    • H04L65/61Network streaming of media packets for supporting one-way streaming services, e.g. Internet radio
    • H04L65/612Network streaming of media packets for supporting one-way streaming services, e.g. Internet radio for unicast
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/60Scheduling or organising the servicing of application requests, e.g. requests for application data transmissions using the analysis and optimisation of the required network resources
    • H04L67/62Establishing a time schedule for servicing the requests
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/40Network security protocols
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/21Server components or server architectures
    • H04N21/218Source of audio or video content, e.g. local disk arrays
    • H04N21/21815Source of audio or video content, e.g. local disk arrays comprising local storage units
    • H04N21/2182Source of audio or video content, e.g. local disk arrays comprising local storage units involving memory arrays, e.g. RAID disk arrays
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/21Server components or server architectures
    • H04N21/218Source of audio or video content, e.g. local disk arrays
    • H04N21/21815Source of audio or video content, e.g. local disk arrays comprising local storage units
    • H04N21/21825Source of audio or video content, e.g. local disk arrays comprising local storage units involving removable storage units, e.g. tertiary storage such as magnetic tapes or optical disks
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/231Content storage operation, e.g. caching movies for short term storage, replicating data over plural servers, prioritizing data for deletion
    • H04N21/2312Data placement on disk arrays
    • H04N21/2315Data placement on disk arrays using interleaving
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/231Content storage operation, e.g. caching movies for short term storage, replicating data over plural servers, prioritizing data for deletion
    • H04N21/2312Data placement on disk arrays
    • H04N21/2318Data placement on disk arrays using striping
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/232Content retrieval operation locally within server, e.g. reading video streams from disk arrays
    • H04N21/2326Scheduling disk or memory reading operations
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/24Monitoring of processes or resources, e.g. monitoring of server load, available bandwidth, upstream requests
    • H04N21/2405Monitoring of the internal components or processes of the server, e.g. server load
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N7/00Television systems
    • H04N7/16Analogue secrecy systems; Analogue subscription systems
    • H04N7/173Analogue secrecy systems; Analogue subscription systems with two-way working, e.g. subscriber sending a programme selection signal
    • H04N7/17309Transmission or handling of upstream communications
    • H04N7/17318Direct or substantially direct transmission and handling of requests
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/1001Protocols in which an application is distributed across nodes in the network for accessing one among a plurality of replicated servers
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/1001Protocols in which an application is distributed across nodes in the network for accessing one among a plurality of replicated servers
    • H04L67/10015Access to distributed or replicated servers, e.g. using brokers

Landscapes

  • Engineering & Computer Science (AREA)
  • Signal Processing (AREA)
  • Multimedia (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Databases & Information Systems (AREA)
  • Computer Security & Cryptography (AREA)
  • General Engineering & Computer Science (AREA)
  • Business, Economics & Management (AREA)
  • General Business, Economics & Management (AREA)
  • Information Transfer Between Computers (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Small-Scale Networks (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)
  • Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)

Abstract

Un sistema (200) de transferencia de datos sincronizado que incluye nodos (103) de procesador de almacenaje, un conmutador (101) de comunicacion principal, multiples titulos subdivididos en sub-bloques (113a)-(113e) de informacion y distribuidos a traves de los nodos, un proceso (207) de usuario ejecutado en un primer nodo (201), un proceso (215) de transferencia ejecutado en un segundo nodo (203), y un proceso (219) de administracion ejecutado en un nodo (205) de administracion. El proceso de usuario envia una solicitud de lectura fechada para solicitar un sub-bloque de informacion correspondiente. El proceso de transferencia envia un mensaje al proceso de administracion para cada solicitud de lectura recibida, donde cada mensaje identifica los nodos de origen y de destino. El proceso de administracion difunde comandos de transmision para iniciar periodos de transmision secuenciales, recibe los mensajes, y selecciona de entre los mensajes recibidos para asegurar que cada nodo envie o reciba solo un sub-bloque de informacion durante cada periodo de transmision. El proceso de administracion envia una solicitud de transmision para cada menaje seleccionado, y el proceso de transferencia envia un sub-bloque de informacion identificado por una solicitud de transmision en respuesta al comando de transmision.

Description

SISTEMA DE TRANSFERENCIA DE DATOS SINCRONIZADO DESCRIPCIÓN DE LA INVENCIÓN La presente invención se refiere a sistemas servidores de banda ancha interactivos, y más particularmente, a un motor de contenido interactivo que emplea un sistema de transferencia de datos sincronizado para facilitar la distribución de múltiples corrientes de datos sincrónicas simultáneas a alta velocidad. Se desea proporcionar una solución para el almacenaje y distribución de contenido de medios continuo. Una meta inicial para la escalabilidad es de 100 a 1,000,000 de corrientes de contenido sincrónicas individuales simultáneas en 4 megabits por segundo (Mbps) por corriente, aunque diferentes proporciones de datos se contemplan. El ancho de banda total disponible es limitado por el conmutador de panel de conexiones más grande disponible. Los conmutadores más grandes actualmente están en el margen de terabit por segundo, o aproximadamente 200,000 corrientes de salida simultáneas. El número de corrientes de salida en forma general es inversamente proporcional a la proporción de bits por corriente. El modelo más simple de almacenaje de contenido es una unidad de disco sencilla conectada a un procesador sencillo que tiene un conector de red sencillo. Los datos, se leen del disco, se colocan en memoria, y se distribuyen en paquetes, mediante una red a cada usuario. Datos tradicionales, tales como páginas Web o similares, pueden distribuirse asincrónicamente. En otras palabras, existen cantidades aleatorias de datos con retardos de tiempo aleatorios. Vídeo de bajo volumen, de baja resolución puede distribuirse desde un servidor Web. Contenidos de medios en tiempo real, tales como vídeo y audio, requieren transmisión sincrónica, o transmisión con tiempos de distribución garantizados. En este escenario, existe una restricción de ancho de banda en la unidad de disco. El disco tiene '-que tratar con movimiento de articulación y latencia rotacional. Si el sistema puede sostener sólo 6 corrientes simultáneas de contenido continuo desde la unidad de disco hasta el procesador en cualquier momento dado, entonces la 7a. Petición del usuario debe esperar a uno de los 6 usuarios previos para renunciar a una corriente de contenido. El punto fuerte de este diseño es la simplicidad. La desventaja es el disco, el cual, como todo el dispositivo mecánico en el diseño, solo puede acceder y transferir datos así de rápido. Una mejora puede hacerse al agregar otra unidad, o unidades de disco e intercalar los accesos de la unidad de disco. También, pueden almacenarse contenidos duplicados en cada unidad de disco para ganar redundancia y rendimiento. Esto es mejor, pero existen aún varios problemas. Sólo tanto contenido puede colocarse en la unidad o unidades de disco local. Las unidades de disco, CPÜ, y la memoria son cada una puntos individuales de falla que podrían ser catastróficos. Este sistema sólo puede escalarse al número de unidades que puede administrar el controlador de disco. Aún con muchas unidades, existe un problema con la distribución de títulos. En el mundo real, todos desean ver lo último en cine. Como la regla del pulgar, el 80% de las solicitudes de contenido son- para sólo el 20% de los títulos. Todo el ancho de banda de una máquina no puede consumirse por un título, ya que puede bloquear el acceso a títulos menos populares almacenados sólo en esa máquina. Como resultado, los títulos "de alta demanda" pueden tener que cargarse en la mayoría o todas las máquinas. En resumen, si un usuario quisiera ver una vieja película, ese usuario podría no tener suerte, aunque se cargue en el sistema. Con una gran biblioteca, la relación puede ser mucho mayor que la regla del 80/20 utilizada en este ejemplo. Si el sistema se basará en la Red de Área Local (LAN) estándar utilizada en el procesamiento de datos, existirían otras ineficiencias . Los sistemas de TCP/IP basados en Ethernet modernos son una maravilla de la distribución garantizada, pero incluyen un costo de tiempo provocado por las colisiones de paquetes y retransmisiones de paquetes parcialmente perdidos y el manejo necesario para hacer todo el trabajo. No existe garantía de que un conjunto puntual de corrientes de contenido vaya a estar disponible. También, cada usuario consume un puerto de conmutación y cada servidor de contenido consume un puerto de conmutación. De este modo, el conteo del puerto de conmutación tiene que ser dos veces el conteo del servidor, limitando el ancho de banda total en línea. BREVE DESCRIPCIÓN DE LOS DIBUJOS Los beneficios, características y ventajas de la presente invención se entenderán mejor con respecto a la siguiente descripción, y los dibujos anexos donde: la FIGURA 1 es un diagrama de bloque simplificado de una porción de un Motor de Contenido Interactivo (ICÉ) implementado de acuerdo con una modalidad ejemplar de la presente invención; y la FIGURA 2 es un diagrama de bloque lógico de una porción del ICE de la FIGURA 1 que ilustra un sistema de transferencia de datos sincronizado implementado de acuerdo con la presente invención. La siguiente descripción se presenta para permitir que alguien con experiencia ordinaria en la técnica haga y utilice la presente invención como se proporciona dentro del contexto de una aplicación particular y sus requerimientos. Varias modificaciones a la modalidad preferida sin embargo, serán aparentes para alguien de experiencia en la técnica, y los principios generales definidos en la presente pueden aplicarse a otras modalidades. Por lo tanto, la presente invención no se pretende para limitarse a las modalidades particulares mostradas y descritas en la presente, sino que debe de estar de acuerdo con el alcance más amplio consistente con los principios y características novedosas descritas en la presente. La arquitectura descrita en la presente acomoda componentes individuales de capacidad variada para evitar que una instalación se limite al punto en el tiempo cuando se hizo la compra del sistema inicial. El uso de componentes de consumo garantiza la reciente tecnología bien aprobada, la evasión de recursos solos, y el costo más bajo por corriente. Se toleran fallas de componentes individuales. En muchos casos, no existe ningún cambio notable en el comportamiento a part i r de la perspectiva de un usuario. En otros casos, existe un breve ciclo de "autoreparación". En muchos casos, múltiples fallas pueden tolerarse. También, en la mayoría, s no es que en todos los casos, el sistema puede recuperarse sin requerir atención inmediata, haciéndola ideal para operación "con ausencia de luz". La asignación de almacenaje de contenido y el ancho de banda interno es administrado automáticamente por los algoritmos Menos Recientemente Utilizados (LRU) que garantizan que el contenido en la memoria caché de RAM y la memoria caché de la disposición de unidades de disco duro sean apropiadas para la demanda actual, y el ancho de banda del conmutador de panel de interconexión se utiliza en su forma más eficiente. El ancho de banda dentro el sistema raramente, si es que nunca, se subscribe demasiado, así que no es necesario descartar o retardar la transmisión de paquetes. La arquitectura proporciona la capacidad de tomar toda la ventaja del ancho de banda compuesto de cada componente para que puedan satisfacerse garantías, y la red es privada y está bajo completo control, así que aún en una situación de demanda pico no anticipada, no se sobrecarga la trayectoria de datos. Corrientes de cualquier proporción de bits pueden acomodarse, pero corrientes típicas se espera que permanezcan en el margen de 1 a 20 Mbps. El contenido asincrónico se acomoda en una base de ancho de banda disponible. El ancho de banda puede reservarse para ese propósito si se requiere por la aplicación. Los archivos pueden ser de cualquier tamaño con un mínimo de ineficiencia de almacenaje. La FIGURA 1 es un diagrama de bloque simplificado de una porción de una Máquina 100 de Contenido Interactivo (ICE) implementada de acuerdo con una modalidad ejemplar de la presente invención. Porciones no aplicables para un entendimiento completo y total de la presente invención no se muestran para propósitos de claridad. La ICE 100 incluye un conmutador 101 de Gigabit Ethernet (GbE) de varios puertos (o multipuertos) apropiado como la estructura del panel . de interconexión que tiene múltiples puertos de Ethernet acoplados a un número de Nodos 103 del procesador de almacenaje (SPN) . Cada SPN 103 es un servidor simplificado que incluye dos puertos de Gigabit Ethernet, uno o más procesadores 107, memoria 109 (por ejemplo, memoria de acceso aleatorio (RAM)) y un número apropiado (por ejemplo, cuatro a ocho) unidades 111 de disco. Un primer puerto 105 de Gb en cada SPN 103 se conecta a un puerto correspondiente del conmutador 101 para la operación dúplex completa (transmisión simultánea y recepción en cada conexión de SPN/puerto) , y se utiliza para mover los datos adentro de ICE 100. El otro puerto de Gb (no mostrado) distribuye la salida de contenido a los usuarios corriente abajo (no mostrados) . Cada SPN 103 tiene acceso a alta velocidad en sus unidades de disco local y a las otras unidades de disco de los cuatro SPN en cada grupo de cinco SPN. El conmutador 101 es un panel de interconexión para ICE 100 en lugar de sólo un dispositivo de comunicación entre los SPN 103. Sólo cinco SPN 103 se muestran para propósitos de ilustración, donde se entiende que el ICE 100 típicamente incluye un gran número de servidores. Cada SPN 103 actúa como almacenaje, procesamiento y transmisor de contenido. En la configuración mostrada, cada SPN 103 se configura utilizando componentes listos para su uso, y no es una computadora en el sentido normal. Aunque los sistemas de operación estándares se contemplan, tales sistemas de operación impulsados por interrupción pueden poseer cuellos de botella innecesarios. Cada título (por ejemplo, vídeo, película u otro contenido de medio) no se almacena completamente en cualquier unidad 111 de disco sencilla. De hecho, los datos para cada título se dividen y almacenan entre varias unidades de disco dentro del ICE 100 para lograr los beneficios de velocidad de acceso intercalado. El contenido de un solo título se propaga a través de múltiples unidades de disco de múltiples SPN 103.
"Tramas de tiempo" cortas de contenido de título se acumulan en una forma cíclica de cada unidad en cada SPN 103. De esta forma, la carga física se propaga escapando de los límites de conteo de la unidad de SCSI y de IDE, o se gana una forma de operación a prueba de fallos, y un gran conjunto de títulos se organiza y administra. En la configuración particular mostrada, cada título de contenido se divide en bloques de información discretos de un tamaño fijo (típicamente alrededor de 2 megabytes (MB) por bloque de información) . Cada bloque de información se almacena en un conjunto diferente de SPN 103 en una forma cíclica. Cada bloque de información se divide en cuatro sub-bloques de información, y se crea el quinto sub-bloque de información que representa la paridad. Cada sub-bloque de información se almacena en una unidad de disco de un SPN 103 diferente. En la configuración mostrada y descrita, el tamaño del sub-bloque de información de aproximadamente 512 ilobytes (KB) (donde "K" es 1024) concuerda con la unidad nominal de los datos de cada una de las unidades 111 de disco. Los SPN 103 se agrupan en cinco a la vez, cada grupo o conjunto de SPN almacena un bloque de información de datos de un título. Como se muestra, los cinco SPN 103 se etiquetan 1-4 y "Paridad", que colectivamente almacenan un bloque 113 de información como cinco sub-bloques 113a, 113b, 113c, 113d y 113e de información separados almacenados en los SPN 1, 2, 3, 4 y de Paridad, respectivamente. Los sub-bloques 113a, 113e de información se muestran almacenados en una forma distribuida en una unidad diferente para cada SPN diferente (por ejemplo, SPN1/DRIVE1, SPN2/DRIVE2, SPN3/DRIVE3, etc.), pero pueden almacenarse en cualquier otra combinación posible (por ejemplo, SPN1/DRIVE1, SPN2/DRIVE1, SPN3/DRIVE3 etc.). Los sub-bloques 1-4 de información comprenden los datos y el sub-bloque de información de Paridad comprende la información de paridad para los sub-bloques de información de datos. El tamaño de cada conjunto de SPN, que típicamente es de cinco, es arbitrario y fácilmente podría ser de tan sólo cualquier otro número adecuado, tal como por ejemplo, 2 SPN a 10 SPN. Dos SPN pueden utilizar 50% de su almacenaje para redundancia, diez pueden utilizar 10%. El cinco es un compromiso entre la eficiencia de almacenaje y la probabilidad de falla. Al distribuir el contenido de esta forma, por lo menos se logran dos metas. La primera, el número de usuarios que puede ver un solo título no se limita al número que puede ser servido por un solo conjunto de SPN, sino por el ancho de banda de todos los conjuntos de SPN tomados en conjunto. =Por lo tanto, sólo una copia de cada título de contenidos se requiere. El intercambio es la limitación en el número de nuevos espectadores para un título dado que puede lanzarse cada segundo, el cual es mucho menos de una restricción que el espacio restringido y la sobrecarga de administración del almacenaje redundante. Una segunda meta es el incremento en la viabilidad general del ICE 100. La falla de una sola unidad se enmascara por la generación en tiempo real de su contenido utilizando la unidad de paridad, similar a una disposición redundante de discos independiente (RAID) . La falla de un SPN 103 se enmascara por el hecho de que contiene una unidad de cada uno de los diversos conjuntos de RAID de los cuales cada uno continúa operando. Los usuarios conectados a un SPN fallido son tomados muy rápidamente por los procesos fantasma que se ejecutan en otro SPN. En el caso de falla de una unidad de disco o de un SPN completo, el operador se notifica para reparar o reemplazar el equipo fallido. Cuando un sub-bloque de información perdido se reconstruye por el proceso de usuario, se transmite nuevamente al SPN que lo pudo haber proporcionado, donde se guarda en memoria caché en RAM (como si se hubiera leído el disco local) . Esto evita desperdiciar tiempo de otros procesos de usuario al hacer la misma reconstrucción para un título popular, ya que solicitudes subsecuentes serán satisfechas de la RAM siempre y cuando ese sub-bloque de información sea lo suficientemente popular para permanecer guardado en memoria caché. La meta de un proceso de usuario (UP) que se ejecuta en cada SPN 103 de "usuario" es reunir los sub-bloques de información de su propio disco más los cuatro sub-bloques de información correspondientes de los otros SPN de usuario para ensamblar un bloque de información de contenido de vídeo para su distribución. Los SPN de usuario se distinguen de uno o más de SPN de MGMT de administración, que se configuran de la misma forma pero desempeñan diferentes funciones, como se describe además en lo siguiente. Un par de SPN de MGMT redundantes se contempla para mejorar la fiabilidad y rendimiento. Las funciones de acumulaciói. y ensamblaje realizadas por cada UP se hace muchas veces a nombre de muchos usuarios en cada SPN 103 de usuario. Como consecuencia, existe una cantidad importante de tráfico de datos que va entre los SPN 103 de usuario. El protocolo de Ethernet típico, con detección de condiciones de paquetes y reintentos, de otra manera puede abrumarse. Protocolos típicos se diseñan para transmisiones aleatorias, y dependen del tiempo de poca actividad entre esos eventos. De esta forma no se utiliza este procedimiento. En el ICE 100, se evitan colisiones al utilizar una arquitectura completamente conmutada, completa dúplex y al administrar el ancho de banda cuidadosamente. La mayor parte de la comunicación se hace sincrónicamente. El conmutador 101 se administra por sí mismo en una forma sincrónica, como además se describe en lo siguiente, de manera que se coordinan las transmisiones. Ya que se determina cuales y cuando los SPN 103 consiguen transmitir, los puertos no se saturan con más datos de los que pueden administrar durante un período dado. De hecho, los datos primero se reúnen en la memoria 109 de los SPN 103 de usuario y después su transferencia se administra sincrónicamente. Como parte de la adaptación, existen señales de estado entre los SPN 103 de usuario. A diferencia dei contenido actual que va hasta el usuario final, al tamaño de datos para señalización entre las unidades de SPN de usuario es bastante pequeño. La longitud de cada bloque de información (aproximadamente 512K bytes, donde "K" es 1024) de otra manera puede saturar cualquier memoria intermedia disponible en el conmutador 101 de GbE si se permitiera que la transmisión de sub-bloque de información se hiciera aleatoria o asincrónicamente. El período para transmitir esa me-yor información es de aproximadamente 4 milisegundos (ms), y se desea asegurarse que varios puertos no traten y transmitan a un solo puerto simultáneamente. Por lo tanto, como se describe adicionalmente en lo siguiente, el conmutador 101 se administra en una forma que le haga operar sincrónicamente, con todos los puertos completamente utilizados bajo condiciones de carga completa. El proceso de directorio redundante que administra el sistema de archivos (o el sistema de archivos virtual o VFS) es responsable de informar dónde un título de contenido dado se almacena cuando se solicita por un usuario. También es responsable de asignar el espacio de almacenaje requerido cuando se va a cargar un nuevo título. Todas las asignaciones son en bloques de información integrales, de los cuales cada uno se compone de cinco sub-bloques de información. El espacio en cada unidad de disco se administra dentro de la unidad mediante Dirección Lógica de Bloque (LBA) . Un sub-bloque de información se almacena en una unidad de disco en sectores contiguos o direcciones de LBA. La capacidad de cada unidad de disco en el ICE 100 se representa por su máxima dirección de LBA dividida por el número de sectores por sub-bloque de información. Cada mapa de título o "entrada de directorio" contiene una lista que indica donde los bloques de información de subtítulo se almacenan, y más específicamente donde cada sub-bloque de información de cada bloque de información se localiza. En la modalidad ilustrada, cada elemento en la lista que representa un sub-bloque de información contiene un SPNID que identifica un SPN 103 de usuario específico, un número de unidad de disco (DD#) que identifica una unidad 111 de disco específica del SPN 103 de usuario identificado, y un puntero de sub-bloque de información (o Dirección Lógica de Bloque o LBA) empacado como un valor de 64 bits. Cada entrada de directorio contiene una lista de sub-bloques de información para aproximadamente media hora de contenido en el 4 Mbps nominal. Esto es igual a 450 bloques de información, o 2250 sub-bloques de información. Cada entrada de directorio es de aproximadamente 20 KB con datos secundarios. Cuando un UP que se ejecuta en un SPN solicita una entrada de directorio, toda la entrada se envía y almacena localmente para el usuario correspondiente. Aún si un SPN soporta 1,000 usuarios, solamente 20 MB de memoria se consume por las listas locales o las entradas de directorio. La ICE 100 mantiene una base de datos de todos los títulos disponibles para un usuario. Esta lista incluye la biblioteca de disco óptico local, la programación de error de tiempo real, y los títulos en lugares remotos donde se han hecho las disposiciones de licencia y transporte. La base- de datos contiene todos los metadatos para cada título, que incluyen la información de administración (período de autorización, proporción de bits, resolución, etc. ) así como la información de interés para el usuario (productor, director, reparto, equipo, autor, etc. ) . Cuando el usuario hace una selección, un directorio de un sistema virtual (VFS) (FIGURA 2) es consultado para determinar si el título ya está cargado a la disposición del disco. Si no es así, un proceso de carga (no mostrado) se inicia para esa pieza de contenido y el UP se notifica si es necesario en cuanto a cuándo estará disponible para su visualización. En la mayoría de los casos, la latencia no es mayor a la latencia mecánica del robot de recuperación de disco óptico (no mostrado) , o aproximadamente 30 segundos. La información almacenada en el disco óptico (no mostrado) incluye todos los metadatos (los cuales se leen en la base de datos cuando el disco primero se carga en la biblioteca) , así como el vídeo digital comprimido y el audio que representa el título y toda la información que puede obtenerse con anticipación sobre esas corrientes de datos. Por ejemplo, contiene punteros para toda la información relevante en las corrientes de datos tales como valores de reloj y fechadores. Ya se divide en sub-bloques de información, con el sub-bloque de información de paridad precalculado y almacenado en el disco. En general, cualquier cosa que pueda hacerse con anticipación para ahorrar tiempo de carga y sobrecarga de procesamiento se incluye en el disco óptico. Se incluye en el sistema de administración de recursos un distribuidor (no mostrado) al cual consulta el UP para recibir un tiempo de inicio para su corriente (normalmente dentro de milisegundos de la solicitud) . El distribuidor asegura que la carga en el sistema permanezca uniforme, que se minimice la latencia, y que en ningún momento haga que el ancho de banda requerido dentro del ICE 100 exceda aquel que está disponible. Siempre que un usuario solicite una parada, pausa, avance rápido, rebobinado u otra operación que interrumpa el flujo de su corriente, su ancho de banda se desasigna y una nueva asignación se hace para cualquier nuevo servicio solicitado (por ejemplo, una corriente de avance rápido) . La FIGURA 2 es un diagrama de bloque lógico de una porción del ICE 100 que ilustra un sistema 200 de transferencia de datos sincronizado implementado de acuerdo con una modalidad de la presente invención. El conmutador 101 se muestra acoplado a varios SPN 103 ejemplares, que incluyen un primer SPN 201 de usuario, un segundo SPN 203 de usuario y un SPN 205 de administración (MGMT) . Como se observa previamente, muchos SPN 103 se acoplan al conmutador 101 y solamente dos SPN 201, 203 de usuario se muestran para ilustrar la presente invención y se implementan físicamente justo como cualquier SPN 103 que se describe previamente. El SPN 205 de MGMT se implementa físicamente sólo como cualquier otro SPN 103, pero generalmente realiza las funciones de administración en lugar de las funciones de usuario específicas. El SPN 201 ilustra ciertas funciones y el SPN 203 ilustra otras funciones de cada SPN 103 de usuario. Se entiende sin embargo, que cada SPN 103 de usuario se configura para realizar las funciones similares para que las funciones (y procesos) descritos para el SPN 201 también se proporcionen en el SPN 203 y viceversa. Como se describe previamente, el conmutador 101 opera a 1 Gbps por puerto, de manera que cada sub-bloque de información (aproximadamente 512 KB) toma aproximadamente 4 ms para pasar desde un SPN a otro. Cada SPN 103 de usuario ejecuta uno o más procesos de usuario (UP) , cada uno para soportar un usuario de corriente abajo. Cuando un nuevo bloque de información de un título se necesita para rellenar una memoria intermedia de salida de usuario (no mostrada) , los siguientes cinco sub-bloques de información de la lista se solicitan de los otros SPN de usuario que almacenan esos sub-bloques de información. Puesto que en muchos UP potencialmente solicitan múltiples sub-bloques de información sustancialmente al mismo tiempo, la duración de transmisión de sub-bloque de información de otra manera puede saturar la capacidad de memoria intermedia de casi cualquier conmutador de GbE para un solo puerto, dejándolo solo para todo- el conmutador. Esto es verdadero para el conmutador 101 ilustrado. Si la transmisión de sub-bloque de información no se administra, puede resultar potencialmente en los cinco sub-bloques de información para cada UP siendo regresados simultáneamente, saturando el ancho de banda del puerto de salida. Se desea reducir el tiempo de las transmisiones de SPN del ICE 100, de manera que los datos más críticos se transmiten primero, e intactos. El SPN 201 se muestra ejecutando un UP 207 para dar servicio a usuario corriente abajo correspondiente. El usuario solicita un título (por ejemplo, una película), cuya solicitud se envía al UP 207. El UP 207 transmite una solicitud de título (TR) al VFS 209 (descrito además en ló siguiente) localizado en el SPN 205 de MGMT. El VFS 209 regresa una entrada de directorio (DE) al UP 207, el cual almacena localmente la DE mostrada en 211. La DE 211 incluye una lista que localiza cada sub-bloque de información del título (SCI, SC2, etc.), cada entrada incluyendo el SPNID que identifica un SPN 103 de usuario específico, el número de unidades de disco (DD#) que identifica una unidad 111. de disco específica del SPN 103 identificado, y una dirección o LBA que proporciona la ubicación específica del sub-bloque de información en la unidad de disco identificada. El SPN 201 inicia una solicitud de lectura fechada (TSRR) para cada sub- bloque de información en la DE 211, una a la vez. En el ICE 100, las solicitudes se hacen inmediatamente y de forma directa. En otras palabras, el SPN 201 comienza a hacer las solicitudes para los sub-bloques de información inmediatamente y en directo a los SPN 103 de usuario- específico que almacena los datos. En la configuración mostrada, las solicitudes se hacen de la misma forma aún. si se almacenan localmente. En otras palabras, aún si el sub-bloque de información solicitado reside en una unidad del disco local del SPN 201, envía la solicitud mediante el conmutador 201 como si se localizara remotamente. La red es la ubicación que puede configurarse para reconocer que una solicitud se está enviando desde un SPN hasta el mismo SPN. Es más simple administrar todos los casos de la misma especialidad en instalaciones más grandes en las que es más probable que la solicitud sea realmente local. Aunque las solicitudes se envían inmediatamente y en forma directa, los sub-bloques de información se regresan cada uno en una forma completamente administrada. Cada TSRR es para un SPN de usuario específico que utiliza el SPNID, e incluye el DD#y LBA para el SPN de usuario objetivo para recuperar y regresar los datos. El TSRR además puede incluir cualquier otra información de identificación suficiente para asegurar que el sub-bloque de información solicitado se regrese apropiadamente al solicitante apropiado y para permitir que el solicitante identifique el sub-bloque de información (por ejemplo, el identificador de UP para distinguir entre múltiples UP que se ejecutan en el SPN de destino, un identificador del sub-bloque de información para distinguir entre los sub-bloques de información para cada bloque de información de datos, etc.). Cada TSRR también incluye un fechador (TS) que identifica el tiempo específico cuando se hace la solicitud original. El TS identifica la prioridad de la solicitud para propósitos de transmisión sincrónica, donde la prioridad se basa en tiempo de manera que las solicitudes previas asuman mayor prioridad. Cuando se reciben, los sub-bloques de información regresados del título solicitado se almacenan en una memoria 213 de títulos local para el procesamiento adicional y la distribución al usuario que solicitó el título. El SPN 203 de usuario ilustra la operación de un proceso 215 de transferencia (TP) y soporta funciones que se ejecutan en cada SPN de usuario (por ejemplo, 201, 203) para recibir los TSRR y para regresar los sub-bloques de información solicitados. El TP 215 incluye o de otra manera se interconecta con un proceso de almacenaje (no mostrado) que interconecta las unidades 111 de disco local en el SPN 203 para solicitar y acceder a los sub-bloques de información almacenados. El proceso de almacenaje puede implementarse en cualquier forma deseada, tal como una máquina de estado similar, y puede ser un proceso separado interconectado entre el TP 215 y las unidades 111 de disco local como se conoce por aquellos con experiencia en la técnica. Como se muestra, el TP 215 recibe uno o más TSRR de uno o más UP que se ejecutan en los otros SPN 103 de usuario y almacena cada solicitud en una cola 217 de solicitud de lectura (RRQ) en su memoria 109 local. La RRQ 217 almacena una lista de solicitudes para sub-bloques de información SCA, SCB, etc. La unidad de disco que almacena los sub-bloques de información solicitados remueve las solicitudes correspondientes de la RRQ 217, las clasifica en orden físico, y después ejecuta cada lectura en el orden clasificado. Los accesos a los sub-bloques de información en cada disco se administran en grupos. Cada grupo se clasifica en orden físico de acuerdo con la operación de "búsqueda ascendente" (un barrido de abajo arriba, después, barrido de arriba abajo, etc. de manera que la cabeza del disco barra de una parte a otra a través de la superficie de disco pausando para leer el siguiente sub-bloque de información secuencial). .Las solicitudes de lectura exitosas se almacenan en una cola 218 de lectura exitosa (SRQ) clasificada en orden de TS . Solicitudes para lecturas fallidas (si las hubiera) se almacenan en una cola 220 de lectura fallida (FRQ) y la información fallida se envía a un sistema de administración de redes (no mostrado) que determina el error y la acción correctiva apropiada. Se observa que en la configuración ilustrada, las colas 217, 218 y 220 almacenan información de solicitudes en lugar de los sub-bloques de información actuales . Cada sub-bloque de información que se 'lee exitosamente se coloca en la memoria reservada para una memoria caché de LRU de los sub-bloques de información recientemente solicitados. Para cada sub-bloque de información recuperado, el TP 215 crea un mensaje correspondiente (MSG) , el cual incluye el TS para el sub-bloque de información, la fuente (SRC) del sub-bloque de información (por ejemplo, el SPNID del cual se está transmitiendo el sub-bloque de información y su ubicación de memoria física junto con cualquier otra información de identificación) , y el SPN de destino (DST) al cual va a transmitirse el sub-bloque de información (por ejemplo, el SPN 201) . Como se muestra, la SRQ 218 incluye mensajes MSGA, MSGB, etc., para los sub-bloques de información SCA, SCB, etc., respectivamente. Después de que se leen y guardan en memoria caché los sub-bloques de información solicitados, el TP 215 envía los MSG correspondientes a un administrador 219 de conmutación sincronizado (SSM) que se ejecuta en el SPN 205 de MGMT. El SSM 219 recibe y da prioridad a múltiples MSG recibidos de los TP de los SPN de usuario y eventualménte envía una solicitud de transmisión (TXR) al TP 215 que identifica uno de los MSG en su SRQ 218, tal como utilizando un identificador de mensaje (MSGID) o similares. Cuando un SSM 219 envía un TXR al TP 215 con un MSGID que identifica un sub-bloque de información en la SRQ 218, la lista de solicitudes se mueve de la SRQ 218 a un proceso 221 de transferencia de red (NTP) , que construye los paquetes utilizados para transferir el sub-bloque de información al SPN de usuario de destino (donde "se mueve" denota retirar la solicitud de la SRQ 218). El orden en el cual las listas de solicitudes de sub-bloques de información se retiran del -3RQ 218 no necesariamente secuencial, pese a la lista que está en orden de fechador, ya que sólo el SSM 219 determina el orden apropiado. El SSM 219 envía un TXR a cada segundo SPN 103 que tiene por lo menos un sub-bloque de información para enviar a menos que el sub-bloque de información vaya a enviarse a un UP en un SPN 103 ya programado para recibir un sub-bloque de información igual o de más alta prioridad, como se describe además en lo siguiente. El SSM 219 entonces difunde un comando de transmisión sencillo (TX CMD) a todos los SPN 103 de usuario. El TP 215 instruye al NTP 221 para transmitir el sub-bloque de información al UP solicitante del SPN 103 de usuario en respuesta al comando TX CMD difundido por el SSM 219. De esta forma, cada SPN 103 que ha recibido un TXR del SSM 219 transmite simultáneamente a otro SPN 103 de usuario solicitante. El VFS 209 en el SPN 205 de MGMT administra la lista de títulos y sus ubicaciones en el ICE 100. En los sistemas de cómputo típicos, los directorios (información de datos) normalmente residen en el mismo disco en el cual residen los datos. En el ICE 100, sin embargo, el VFS 209 se localiza centralmente para administrar los datos distribuidos puesto que los datos para cada título se distribuyen a través de múltiples discos en la disposición de disco, que a su vez se distribuyen a través de múltiples SPN 103 de usuario. Como se describe previamente, las unidades 111 de disco en los SPN 103 de usuario principalmente almacenan los sub-bloques de información de los títulos. El VFS 209 incluye identificadores para la ubicación de cada sub-bloque de información mediante SPNID, DD#, y LBA como se describe previamente. El VFS 209 también incluye identificadores para otras partes del ICE 100 que son externas, tal como el almacenaje óptico. Cuando un usuario solicita un título, un conjunto completo de información de directorios (ID/direcciones) se hace disponible para el UP que se ejecuta en el SPN 103 de usuario que aceptó la solicitud de usuario. Desde ahí, la tarea es transferir los sub-bloques de información fuera de las unidades de disco a la memoria (memorias intermedias), moverlos mediante el conmutador 101 al SPN 103 de usuario solicitante, que ensambla un bloque de información completo en una memoria intermedia, lo distribuye al usuario, y lo repite hasta que se hace. El SSM 219 crea una lista de mensajes "listos" en orden de fechador en una lista 223 de mensajes listos (RDY MSG) . El orden en el cual los mensajes se reciben de los TP en los SPN 103 de usuario no necesariamente es en orden de fechador, sino que se organizan en orden de TS en la lista 223 RDY MSG. Justo antes del siguiente conjunto de transferencias, el SSM 219 explora la lista 223 de RDY MSG que comienza con el fechador más temprano. El SSM 219 primero identifica el TS más temprano en la lista 223 de RDY MSG y genera y envía el mensaje de TXR correspondiente al TP 215 del SPN 103 de usuario que almacena el sub-bloque de información correspondiente para iniciar una transferencia pendiente de ese sub-bloque de información. El SSM 219 continúa explorando la lista 223 para cada sub-bloque de información subsecuente en orden de TS que genera los mensajes de TXR para cada sub-bloque de información cuya fuente y destino no se involucran ya en una transferencia de sub-bloque de información pendiente. Para cada difusión de CMD TX a todos los SPN 103 de usuario, cada SPN 103 de usuario sólo transmite un sub-bloque de información en un momento y sólo recibe un sub-bloque de información en un momento, aunque puede hacer ambos simultáneamente. Por ejemplo, si un mensaje de TXR se envía al TP de SPN #10 para programar una transferencia de sub-bloque de información pendiente a SPN #2, entonces SPN #10 no puede enviar simultáneamente otro sub-bloque de información. SPN #10 sin embargo, puede recibir simultáneamente un sub-bloque de información de otro SPN. Además, el SPN #2 no puede recibir simultáneamente otro sub-bloque de información mientras que recibe el sub-bloque de información de SPN #10, aunque el SPN #2 puede transmitir simultáneamente a otro SPN debido a la naturaleza dúplex completa de cada uno de los puertos .del conmutador 101. El SSM 219 continúa explorando la lista 223 de RDY MSG hasta que todos los SPN 103 de usuario se hayan explicado, o cuando se llegue al final de la lista 223 RDY MSG. Cada entrada en la lista 223 de RDY MSG que corresponde a un mensaje de TXR se retira eventualmente de la lista 223 de RDY MSG (ya sea cuando el mensaje de TXR se envíe o después de que se complete la transferencia) . Cuando la última transferencia del período previo ha terminado, el SSM 219 difunde un paquete de TX CMD que señala a todos los SPN 103 de usuario comenzar la siguiente ronda de transmisiones. Cada transferencia ocurre sincrónicamente durante un período de aproximadamente 4 a 5 ms para la configuración específica ilustrada. Durante cada ronda de transferencia, MSG adicionales se envían al SSM 219 y nuevos mensajes de TXR se envían a los SPN 103 de usuario para programar la siguiente ronda de transmisiones, y el proceso se repite. El período entre TX CMD sucesivos es aproximadamente igual al período necesario para transmitir todos los bytes de un sub-bloque de información, que incluyen la sobrecarga de paquetes y el retardo entre paquetes, más un período para limpiar la memoria caché que puede haber ocurrido en la conmutación durante la transmisión del sub-bloque de información, típicamente 60 microsegundos (µs), más un período para explicar cualesquier fluctuación provocada por un retardo en el reconocimiento de que TX CMD por un SPN individual, típicamente menos de 100 µs . En una modalidad, una SPN de MGMT duplicado o reflejado (no mostrado) refleja el SPN 205 de MGMT primario, de manera que el SSM 219, el VFS 209, y el distribuidor se duplican cada uno en un par de SPN de MGMT dedicados redundantes. En una modalidad, la difusión de sincronización TX CMD actúa como un latido de corazón que indica la salud del SPN 205 de MGMT. El latido de corazón es una señal para el SPN de MGMT secundario de que todo está bien. En ausencia de latido de corazón, el SPN de MGMT secundario asume todas las funciones de administración dentro de un período predeterminado de tiempo, tal como, por ejemplo, dentro de 5 ms. Aunque la presente invención se ha descrito en detalle considerable con referencia a ciertas secciones preferidas de la misma, otras versiones y variaciones son posibles y se contemplan. Aquellos con experiencia en la técnica apreciarán que pueden utilizar fácilmente la concepción descrita y modalidades específicas como una base para diseñar o modificar otras estructuras para proporcionar los mismos propósitos de la presente invención sin apartarse de espíritu y alcance de la invención como se define por las siguientes reivindicaciones.

Claims (24)

  1. REIVINDICACIONES 1. Un sistema de transferencia de datos sincronizado, caracterizado porque comprende: una pluralidad de nodos de procesador; un conmutador de red acoplado a la pluralidad de nodos de procesador para permitir comunicación entre la pluralidad de nodos de procesador; una pluralidad de dispositivos de almacenaje distribuidos a través de la pluralidad de nodos de procesador y que almacena una pluralidad de títulos, cada título dividido en una pluralidad de sub-bloques de información que se distribuyen a través de la pluralidad de dispositivos de almacenaje; una pluralidad de procesos de transferencia, cada uno ejecutado en uno correspondiente de la pluralidad de nodos de procesador y operativo para enviar un mensaje para cada sub-bloque de información que va a transferirse mediante un dispositivo de almacenaje local hacia un nuevo procesador de destino, cada mensaje incluyendo un identificador de nodo de origen y un identificador' de nodo de destino; y un proceso de administrador de conmutación sincrónico, ejecutado en por lo menos uno de la pluralidad de nodos de procesador, que difunde periódicamente un comando de transmisión para iniciar cada uno de una pluralidad de periodos de transmisión secuenciales, que recibe una pluralidad de mensajes y, antes de cada periodo de transmisión, el cual se selecciona de entre la pluralidad de mensajes para asegurar que cada nodo de procesamiento envíe un sub-bloque de información y reciba hasta un sub-bloque de información durante cada periodo de transmisión, y que envía una pluralidad de solicitudes de transmisión que corresponden a los mensajes seleccionados; y donde cada proceso de transferencia que envió por lo menos un mensaje y que recibió una solicitud de transmisión de proceso de administrador de conmutación sincrónico que identifica un sub-bloque de información correspondiente envía el sub-bloque de información correspondiente durante el siguiente periodo de transmisión iniciado por un comando de transmisión difundido.
  2. 2. El sistema de transferencia de datos sincronizados de conformidad con la reivindicación 1, caracterizado porque cada uno de la pluralidad de mensajes comprende una fecha y donde el proceso de administrador de conmutación sincrónico da prioridad a la pluralidad de mensajes basándose en orden de fecha y envía la pluralidad de sus solicitudes de transmisión en orden de fecha.
  3. 3. El sistema de transferencia de datos sincronizados de conformidad con la reivindicación 2, caracterizado además porque comprende: una pluralidad de procesos de usuario, cada uno ejecutado en uno correspondiente de la pluralidad de nodos de procesador y operativo para enviar una pluralidad de solicitudes de salida fechadas; y donde cada proceso de transferencia incorpora una fecha de una solicitud de salida fechada correspondiente-- en un mensaje correspondiente.
  4. 4. El sistema de transferencia de datos sincronizados de conformidad con la reivindicación 3, caracterizado porque el proceso de administrador de conmutación sincrónico organiza la pluralidad de mensajes en una lista de mensajes listos en orden de fecha, explora la lista de mensajes listos en el orden de fecha justo antes de cada uno de la pluralidad de periodos de transmisión secuenciales, y selecciona los mensajes basándose en la prioridad de fecha.
  5. 5. El sistema de transferencia de datos sincronizados de conformidad con la reivindicación 4, caracterizado porque el proceso de administrador de conmutación sincrónico selecciona un mensaje si un nodo de procesador de origen identificado no se ha seleccionado aún para transmitir un sub-bloque de información durante un periodo de transmisión siguiente y si un nodo de procesador de destino identificado no se ha seleccionado aún para recibir un sub-bloque de información durante el siguiente periodo de transmisión.
  6. 6. El sistema de transferencia de datos sincronizados de conformidad con la reivindicación 1, caracterizado además porque comprende: cada uno de la pluralidad de procesos de transferencia que almacena las solicitudes de lectura del sub-bloque de información recibidas en una cola de solicitud de lectura, cada solicitud de lectura del sub-bloque de información indica un sub-bloque de información localmente almacenado; cada uno de la pluralidad de dispositivos de almacenaje que leen los sub-bloques de información identificados en una cola de solicitud de lectura local en orden físico; cada uno de la pluralidad de nodos de procesador que lista los sub-bloques de información leídos exitosamente por un dispositivo de almacenaje correspondiente en una cola de lectura exitosa; y cada uno de la pluralidad de procesos de transferencia que envía un mensaje para cada entrada en una cola de lectura exitosa correspondiente para el proceso de administrador de conmutación sincrónico.
  7. 7. El sistema de transferencia de datos sincronizados de conformidad con la reivindicación 6, caracterizado porque cada solicitud de lectura de sub-bloque de información comprende la solicitud de lectura fechada, donde las entradas en cada cola de lectura exitosa se listan en orden de fecha, y donde cada proceso de transferencia envía un mensaje para cada entrada en una cola de lectura exitosa correspondiente en orden de fecha.
  8. 8. El sistema de transferencia de datos sincronizados de conformidad con la reivindicación 6, caracterizado además porque comprende: cada uno de la pluralidad de procesos de transferencia que remueve una entrada de una cola de solicitud exitosa correspondiente en la cual la entrada, se asocia con un sub-bloque de información identificado por una solicitud de transmisión correspondiente; y una pluralidad de procesos de transferencia de red, cada uno ejecutado correspondiente de la pluralidad de nodos de procesador, y cada uno operativo para construir paquetes de red utilizados para transferir un sub-bloque de información identificado a un nodo de procesador de destino en respuesta a un comando de transmisión.
  9. 9. El sistema de transferencia de datos sincronizados de conformidad con la reivindicación 1, caracterizado porque el conmutador de red comprende un conmutador de Ethernet de gigabit con una pluralidad de puertos, en donde cada uno de la pluralidad de nodos procesados se acopla a un puerto correspondiente de conmutador de red.
  10. 10. El sistema de transferencia de datos sincronizados de conformidad con la reivindicación 1, caracterizado porque la pluralidad de nodos de procesador incluye un nodo de administración que ejecuta el proceso de administrador de conmutación sincrónico.
  11. 11. El sistema de transferencia de datos sincronizados de conformidad con la reivindicación 1, caracterizado porque la pluralidad de nodos de procesador incluye un primer nodo de administración que ejecuta el proceso de administrador de conmutación sincrónico y un segundo nodo de administración que ejecuta un proceso de administrador de conmutación sincrónico reflejado.
  12. 12. Un método para transferir sincrónicamente un sub-bloque de información distribuido de datos en una pluralidad de nodos de procesador acoplados a un conmutador de red, el método caracterizado porque comprende: difundir periódicamente, mediante un proceso de administración ejecutado y por lo menos uno de los nodos de procesador, un comando de '.transmisión para iniciar cada uno de una pluralidad de periodos de transmisión secuenciales; enviar el proceso de administración, por cada nodo de procesador, que tiene por lo menos un sub-bloque de información para enviar un mensaje para cada sub-bloque de información para enviarse, cada mensaje identifica un nodo de procesador de origen y un nodo de procesador de destino; seleccionar, mediante el proceso de administración, mensajes recibidos de los nodos de procesador para asegurar que cada nodo de procesador envíe un sub-bloque de información durante un siguiente periodo de transmisión y que cada nodo de procesador reciba hasta un sub-bloque de información durante el siguiente periodo de transmisión; enviar, mediante el proceso de administración, una pluralidad de solicitudes de transmisión, cada solicitud de transmisión enviada a un nodo de procesador que ha enviando un mensaje correspondiente que se seleccionó; y transmitir, mediante cada nodo de procesador que recibe una solicitud de transmisión, un sub-bloque de información identificado por la solicitud de transmisión recibida a un nodo de procesador de destino en respuesta al siguiente comando de transmisión.
  13. 13. El método de conformidad con la reivindicación 12, caracterizado además porque comprende: antes de enviar un mensaje para cada sub-bloque de información que se envía, fechar cada mensaje; la selección comprende la prioridad basándose en un orden de fecha; y enviar una pluralidad de solicitudes de transmisión que comprende enviar solicitudes de transmisión en orden de fecha.
  14. 14. El método de conformidad con la reivindicación 13, caracterizado además porque comprende: enviar, mediante por lo menos un nodo de procesador, una pluralidad de solicitudes de lectura fechada; y donde fechar cada mensaje comprende incorporar una fecha de una solicitud de lectura fechada recibida en un mensaje correspondiente.
  15. 15. El método de conformidad con la reivindicación 14, caracterizado además porque comprende: organizar, mediante el proceso de administración, mensajes recibidos en una lista de mensajes listos en orden de fecha; y explorar, mediante el proceso de administración, la lista de mensajes listos en orden de fecha justo antes de cada período de transmisión.
  16. 16. El método de conformidad con la reivindicación 15, caracterizado porque la exploración comprende seleccionar un mensaje sin nodo de procesador de origen identificado no se ha seleccionado aún para transmitir un sub-bloque de información durante el siguiente período de información y si el nodo de procesador de destino identificado no se ha seleccionado aún para recibir el sub-bloque de información durante el siguiente período de información.
  17. 17. El método de conformidad con la reivindicación 16, caracterizado porque la exploración se completa cuando 3 toda la lista de mensajes listos se ha explorado, o si todos los nodos de procesador se han seleccionado para transmitir un sub-bloque de información o si todos los nodos de procesador se han seleccionado para recibir un sub-bloque de información.
  18. 18. El método de conformidad con la reivindicación 12, caracterizado además porque comprende: almacenar las solicitudes de lectura de sub-bloque de información recibidas en una cola de solicitud de lectura, cada solicitud de lectura de sub-bloque de información indica una solicitud para un sub-bloque de información localmente almacenado; leer, mediante una unidad de disco local, los sub-bloques de información identificados en la cola de solicitud de lectura en orden físico; listar entradas de sub-bloques de información leídos exitosamente en una cola de lectura exitosa; y enviar un mensaje para cada sub-bloque de información para enviarse que comprende enviar un mensaje para cada entrada en la cola de lectura exitosa.
  19. 19. El método de conformidad con la reivindicación 18, caracterizado porque cada solicitud de lectura de sub-bloque de información comprende una solicitud de lectura fechada, donde las entradas de la lista de los sub-bloques de información leídos exitosamente en una cola de lectura exitosa comprenden entradas de lista en orden de fecha, en donde enviar un mensaje para cada entrada en la cola de lectura exitosa comprende enviar mensajes en una orden de fecha.
  20. 20. El método de conformidad con la reivindicación 18, caracterizado además porque comprende: remover una entrada de la cola de solicitud exitosa que se asocia con un sub-bloque dé información identificado con una solicitud de transmisión correspondiente; y construir paquetes de red utilizados para transferir el sub-bloque de información identificado a un nodo de procesador de destino en respuesta a un comando de transmisión.
  21. 21. El método de conformidad con la reivindicación 12, caracterizado además porque comprende ejecutar el procesador de administración en un primer nodo de administración y ejecutar un proceso de administración reflejado en un nodo de administración reflejado que refleja el primer nodo de administración.
  22. 22. Un sistema de transferencia de datos sincronizados, caracterizado porque comprende: una pluralidad de nodos de procesador de almacenaje que incluyen primer y segundo nodos de usuario y un nodo de administración; un conmutador de comunicación principal acoplado a la pluralidad de nodos de procesador de almacenaje; una pluralidad de títulos divididos cada uno en una pluralidad de sub-bloques de información que se distribuyen a través de la pluralidad de nodos de procesador de almacenaje; un procesador de usuario, ejecutado en el primer nodo de usuario, que envía una pluralidad de colas de lectura fechadas, cada cola de lectura fechada para solicitar un sub- bloque de información correspondiente; un proceso de transferencia, ejecutado en el segundo nodo de usuario, que envía un mensaje para cada solicitud de lectura fechada recibida que solicita un sub-bloque de información localmente almacenado, cada mensaje incluye un identificador de nodo de origen y un identificador de nodo de destino; y un proceso de administración, ejecutado en el nodo de administración, que difunde periódicamente un comando de transmisión mediante el conmutador para iniciar cada uno de la pluralidad de períodos de transmisión secuenciales, que recibe una pluralidad de mensajes, y antes de cada período de transmisión, que selecciona de entre la pluralidad de mensajes para asegurar que cada nodo de procesamiento de almacenaje envía hasta un sub-bloque de información y reciba hasta un sub-bloque de información durante cada período de transmisión, y que envía una pluralidad de solicitudes de transmisión que corresponden a mensajes seleccionados; y donde el proceso de transferencia, en respuesta a recibir una solicitud de transmisión desde el proceso de administración, envía un sub-bloque de información correspondiente durante el siguiente período de transmisión iniciado por el siguiente comando de transmisión difundido.
  23. 23. El sistema de transferencia de datos sincronizados de conformidad con la reivindicación 22, caracterizado porque el proceso de administración selecciona de entre la pluralidad de mensajes basados en prioridad de fecha.
  24. 24. El sistema de transferencia de datos sincronizados de conformidad con la reivindicación 23, caracterizado porque el proceso de administración primero selecciona un mensaje con una fecha de más alta prioridad y después selecciona cada mensaje subsecuente si un nodo de origen identificado no se ha seleccionado aún para transmitir un sub-bloque de información durante el siguiente período de transmisión y si un nodo de destino no identificado no se ha seleccionado aún para recibir un sub-bloque de información durante el siguiente período de transmisión.
MXPA06006330A 2003-12-02 2004-12-02 Sistema de transferencia de datos sincronizado. MXPA06006330A (es)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US52643703P 2003-12-02 2003-12-02
US10/999,661 US7788396B2 (en) 2001-11-28 2004-11-30 Synchronized data transfer system
PCT/US2004/040235 WO2005057828A2 (en) 2003-12-02 2004-12-02 Synchronized data transfer system

Publications (1)

Publication Number Publication Date
MXPA06006330A true MXPA06006330A (es) 2006-08-23

Family

ID=34681500

Family Applications (1)

Application Number Title Priority Date Filing Date
MXPA06006330A MXPA06006330A (es) 2003-12-02 2004-12-02 Sistema de transferencia de datos sincronizado.

Country Status (7)

Country Link
US (1) US7788396B2 (es)
EP (1) EP1692620B1 (es)
JP (1) JP4426589B2 (es)
CA (1) CA2547440C (es)
DE (1) DE04812687T1 (es)
MX (1) MXPA06006330A (es)
WO (1) WO2005057828A2 (es)

Families Citing this family (66)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11106424B2 (en) 2003-07-28 2021-08-31 Sonos, Inc. Synchronizing operations among a plurality of independently clocked digital data processing devices
US9207905B2 (en) 2003-07-28 2015-12-08 Sonos, Inc. Method and apparatus for providing synchrony group status information
US11650784B2 (en) 2003-07-28 2023-05-16 Sonos, Inc. Adjusting volume levels
US11106425B2 (en) 2003-07-28 2021-08-31 Sonos, Inc. Synchronizing operations among a plurality of independently clocked digital data processing devices
US8290603B1 (en) 2004-06-05 2012-10-16 Sonos, Inc. User interfaces for controlling and manipulating groupings in a multi-zone media system
US8234395B2 (en) 2003-07-28 2012-07-31 Sonos, Inc. System and method for synchronizing operations among a plurality of independently clocked digital data processing devices
US8086752B2 (en) * 2006-11-22 2011-12-27 Sonos, Inc. Systems and methods for synchronizing operations among a plurality of independently clocked digital data processing devices that independently source digital data
US11294618B2 (en) 2003-07-28 2022-04-05 Sonos, Inc. Media player system
US9977561B2 (en) 2004-04-01 2018-05-22 Sonos, Inc. Systems, methods, apparatus, and articles of manufacture to provide guest access
US9374607B2 (en) 2012-06-26 2016-06-21 Sonos, Inc. Media playback system with guest access
US8868698B2 (en) 2004-06-05 2014-10-21 Sonos, Inc. Establishing a secure wireless network with minimum human intervention
US8326951B1 (en) 2004-06-05 2012-12-04 Sonos, Inc. Establishing a secure wireless network with minimum human intervention
US7721011B1 (en) * 2005-05-09 2010-05-18 Oracle America, Inc. Method and apparatus for reordering memory accesses to reduce power consumption in computer systems
JP4631569B2 (ja) * 2005-07-12 2011-02-16 パナソニック株式会社 通信システム、並びにこれに用いられるマスター装置及びスレーブ装置、通信方法
EP1858228A1 (en) * 2006-05-16 2007-11-21 THOMSON Licensing Network data storage system with distributed file management
US8483853B1 (en) 2006-09-12 2013-07-09 Sonos, Inc. Controlling and manipulating groupings in a multi-zone media system
US8788080B1 (en) 2006-09-12 2014-07-22 Sonos, Inc. Multi-channel pairing in a media system
US9202509B2 (en) 2006-09-12 2015-12-01 Sonos, Inc. Controlling and grouping in a multi-zone media system
US8943218B2 (en) 2006-10-12 2015-01-27 Concurrent Computer Corporation Method and apparatus for a fault resilient collaborative media serving array
EP2426884B1 (en) 2009-04-28 2018-09-12 Alcatel Lucent A message transmission method and the corresponding device thereof
US9137278B2 (en) 2010-04-08 2015-09-15 Vasona Networks Inc. Managing streaming bandwidth for multiple clients
EP2556439A4 (en) * 2010-04-08 2015-03-04 Vasona Networks CONTINUOUS BANDWIDTH MANAGEMENT FOR MULTIPLE CUSTOMERS
US9374404B2 (en) 2010-08-26 2016-06-21 Vasona Networks Inc. Streaming media flows management
US9143838B2 (en) 2010-09-06 2015-09-22 Vasona Networks Inc. Device and method for quality assessment of encrypted streaming media flows
US8976655B2 (en) 2010-09-16 2015-03-10 Vasona Networks Inc. Evaluating a capacity of a cell of a radio access network
US9872185B1 (en) 2010-09-16 2018-01-16 Vasona Networks Ltd. Policy enforcer in a network that has a network address translator
US8817614B1 (en) 2010-09-16 2014-08-26 Vasona Networks Inc. Policy enforcer having load balancing capabilities
US8902753B2 (en) 2010-09-16 2014-12-02 Vasona Networks Inc. Method, system and computer readable medium for affecting bit rate
US9832671B2 (en) 2010-09-16 2017-11-28 Vassona Networks Modeling radio access networks
US11429343B2 (en) 2011-01-25 2022-08-30 Sonos, Inc. Stereo playback configuration and control
US11265652B2 (en) 2011-01-25 2022-03-01 Sonos, Inc. Playback device pairing
JP5857273B2 (ja) * 2011-05-17 2016-02-10 パナソニックIpマネジメント株式会社 ストリーム処理装置
US8665858B2 (en) 2011-09-15 2014-03-04 Vasona Networks Inc. Method and computer readable medium for gathering user equipment location information
CN103024456B (zh) * 2011-09-27 2016-02-24 腾讯科技(深圳)有限公司 一种在线视频播放方法及视频播放服务器
US8849776B2 (en) * 2011-10-17 2014-09-30 Yahoo! Inc. Method and system for resolving data inconsistency
US9729115B2 (en) 2012-04-27 2017-08-08 Sonos, Inc. Intelligently increasing the sound level of player
US9008330B2 (en) 2012-09-28 2015-04-14 Sonos, Inc. Crossover frequency adjustments for audio speakers
US9510055B2 (en) 2013-01-23 2016-11-29 Sonos, Inc. System and method for a media experience social interface
US9996547B2 (en) * 2013-07-25 2018-06-12 Dropbox, Inc. Prioritizing content item synchronization based on sharing
US9720576B2 (en) 2013-09-30 2017-08-01 Sonos, Inc. Controlling and displaying zones in a multi-zone system
US20150095679A1 (en) 2013-09-30 2015-04-02 Sonos, Inc. Transitioning A Networked Playback Device Between Operating Modes
US9288596B2 (en) 2013-09-30 2016-03-15 Sonos, Inc. Coordinator device for paired or consolidated players
US9654545B2 (en) 2013-09-30 2017-05-16 Sonos, Inc. Group coordinator device selection
US9300647B2 (en) 2014-01-15 2016-03-29 Sonos, Inc. Software application and zones
US9401971B2 (en) * 2014-01-31 2016-07-26 International Business Machines Corporation Resource recommendation, reuse and optimization through common context
US20150220498A1 (en) 2014-02-05 2015-08-06 Sonos, Inc. Remote Creation of a Playback Queue for a Future Event
US9226087B2 (en) 2014-02-06 2015-12-29 Sonos, Inc. Audio output balancing during synchronized playback
US9226073B2 (en) 2014-02-06 2015-12-29 Sonos, Inc. Audio output balancing during synchronized playback
US9679054B2 (en) 2014-03-05 2017-06-13 Sonos, Inc. Webpage media playback
US10587693B2 (en) 2014-04-01 2020-03-10 Sonos, Inc. Mirrored queues
US20150324552A1 (en) 2014-05-12 2015-11-12 Sonos, Inc. Share Restriction for Media Items
US20150356084A1 (en) 2014-06-05 2015-12-10 Sonos, Inc. Social Queue
US9874997B2 (en) 2014-08-08 2018-01-23 Sonos, Inc. Social playback queues
US10645130B2 (en) 2014-09-24 2020-05-05 Sonos, Inc. Playback updates
WO2016049342A1 (en) 2014-09-24 2016-03-31 Sonos, Inc. Social media connection recommendations based on playback information
US9690540B2 (en) 2014-09-24 2017-06-27 Sonos, Inc. Social media queue
US9667679B2 (en) 2014-09-24 2017-05-30 Sonos, Inc. Indicating an association between a social-media account and a media playback system
US9723038B2 (en) 2014-09-24 2017-08-01 Sonos, Inc. Social media connection recommendations based on playback information
US9860286B2 (en) 2014-09-24 2018-01-02 Sonos, Inc. Associating a captured image with a media item
US9959087B2 (en) 2014-09-24 2018-05-01 Sonos, Inc. Media item context from social media
US10248376B2 (en) 2015-06-11 2019-04-02 Sonos, Inc. Multiple groupings in a playback system
US10303422B1 (en) 2016-01-05 2019-05-28 Sonos, Inc. Multiple-device setup
US9886234B2 (en) 2016-01-28 2018-02-06 Sonos, Inc. Systems and methods of distributing audio to one or more playback devices
CN106325768B (zh) * 2016-08-19 2019-08-13 华中科技大学 一种双机存储系统及方法
US10712997B2 (en) 2016-10-17 2020-07-14 Sonos, Inc. Room association based on name
US11048519B2 (en) 2019-11-22 2021-06-29 T-Mobile Usa, Inc. System and method for asynchronous distribution of operations that require synchronous execution

Family Cites Families (59)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS55157181A (en) 1979-05-25 1980-12-06 Nec Corp Buffer memory control system
US5421031A (en) * 1989-08-23 1995-05-30 Delta Beta Pty. Ltd. Program transmission optimisation
US5247347A (en) * 1991-09-27 1993-09-21 Bell Atlantic Network Services, Inc. Pstn architecture for video-on-demand services
US5367520A (en) * 1992-11-25 1994-11-22 Bell Communcations Research, Inc. Method and system for routing cells in an ATM switch
JP2666033B2 (ja) 1993-02-18 1997-10-22 日本アイ・ビー・エム株式会社 データ供給装置
DE69317267T2 (de) * 1993-05-19 1998-06-25 Alsthom Cge Alcatel Netzwerk für Video auf Anfrage
EP0625857B1 (en) * 1993-05-19 1998-06-24 ALCATEL BELL Naamloze Vennootschap Video server
US5581479A (en) 1993-10-15 1996-12-03 Image Telecommunications Corp. Information service control point, which uses different types of storage devices, which retrieves information as blocks of data, and which uses a trunk processor for transmitting information
US5473362A (en) * 1993-11-30 1995-12-05 Microsoft Corporation Video on demand system comprising stripped data across plural storable devices with time multiplex scheduling
JP3617089B2 (ja) 1993-12-27 2005-02-02 株式会社日立製作所 映像蓄積配送装置及び映像蓄積配送システム
US5732239A (en) * 1994-05-19 1998-03-24 Starlight Networks Method for operating a disk storage system which stores video data so as to maintain the continuity of a plurality of video streams
US5521631A (en) * 1994-05-25 1996-05-28 Spectravision, Inc. Interactive digital video services system with store and forward capabilities
US5606359A (en) * 1994-06-30 1997-02-25 Hewlett-Packard Company Video on demand system with multiple data sources configured to provide vcr-like services
US5671377A (en) * 1994-07-19 1997-09-23 David Sarnoff Research Center, Inc. System for supplying streams of data to multiple users by distributing a data stream to multiple processors and enabling each user to manipulate supplied data stream
EP0699000B1 (en) 1994-08-24 2001-06-20 Hyundai Electronics America A video server and system employing the same
US5712976A (en) * 1994-09-08 1998-01-27 International Business Machines Corporation Video data streamer for simultaneously conveying same one or different ones of data blocks stored in storage node to each of plurality of communication nodes
WO1996017306A2 (en) * 1994-11-21 1996-06-06 Oracle Corporation Media server
EP0716370A3 (en) * 1994-12-06 2005-02-16 International Business Machines Corporation A disk access method for delivering multimedia and video information on demand over wide area networks
US5729279A (en) * 1995-01-26 1998-03-17 Spectravision, Inc. Video distribution system
EP0727750B1 (en) * 1995-02-17 2004-05-12 Kabushiki Kaisha Toshiba Continuous data server apparatus and data transfer scheme enabling multiple simultaneous data accesses
US5608448A (en) * 1995-04-10 1997-03-04 Lockheed Martin Corporation Hybrid architecture for video on demand server
US5742892A (en) * 1995-04-18 1998-04-21 Sun Microsystems, Inc. Decoder for a software-implemented end-to-end scalable video delivery system
JP3201219B2 (ja) * 1995-05-29 2001-08-20 三菱電機株式会社 入出力処理システム
JPH08328760A (ja) 1995-06-01 1996-12-13 Hitachi Ltd ディスクアレイ装置
US5721815A (en) * 1995-06-07 1998-02-24 International Business Machines Corporation Media-on-demand communication system and method employing direct access storage device
JP3088268B2 (ja) 1995-06-21 2000-09-18 日本電気株式会社 ビデオ・オン・デマンドシステムにおけるビデオサーバ
US5678061A (en) * 1995-07-19 1997-10-14 Lucent Technologies Inc. Method for employing doubly striped mirroring of data and reassigning data streams scheduled to be supplied by failed disk to respective ones of remaining disks
US5790794A (en) * 1995-08-11 1998-08-04 Symbios, Inc. Video storage unit architecture
US6049823A (en) * 1995-10-04 2000-04-11 Hwang; Ivan Chung-Shung Multi server, interactive, video-on-demand television system utilizing a direct-access-on-demand workgroup
US5862312A (en) * 1995-10-24 1999-01-19 Seachange Technology, Inc. Loosely coupled mass storage computer cluster
US5978843A (en) * 1995-12-06 1999-11-02 Industrial Technology Research Institute Scalable architecture for media-on-demand servers
US6128467A (en) 1996-03-21 2000-10-03 Compaq Computer Corporation Crosspoint switched multimedia system
US6032200A (en) * 1996-09-30 2000-02-29 Apple Computer, Inc. Process scheduling for streaming data through scheduling of disk jobs and network jobs and the relationship of the scheduling between these types of jobs
US5974503A (en) * 1997-04-25 1999-10-26 Emc Corporation Storage and access of continuous media files indexed as lists of raid stripe sets associated with file names
US5892915A (en) 1997-04-25 1999-04-06 Emc Corporation System having client sending edit commands to server during transmission of continuous media from one clip in play list for editing the play list
JP4151991B2 (ja) * 1997-05-26 2008-09-17 コーニンクレッカ フィリップス エレクトロニクス エヌ ヴィ ビデオサーバにおいてデータを取り出すシステム
US6230200B1 (en) * 1997-09-08 2001-05-08 Emc Corporation Dynamic modeling for resource allocation in a file server
US6134596A (en) * 1997-09-18 2000-10-17 Microsoft Corporation Continuous media file server system and method for scheduling network resources to play multiple files having different data transmission rates
US6374336B1 (en) * 1997-12-24 2002-04-16 Avid Technology, Inc. Computer system and process for transferring multiple high bandwidth streams of data between multiple storage units and multiple applications in a scalable and reliable manner
US6415373B1 (en) * 1997-12-24 2002-07-02 Avid Technology, Inc. Computer system and process for transferring multiple high bandwidth streams of data between multiple storage units and multiple applications in a scalable and reliable manner
US6182128B1 (en) 1998-03-05 2001-01-30 Touchmusic Entertainment Llc Real-time music distribution systems
US6101547A (en) * 1998-07-14 2000-08-08 Panasonic Technologies, Inc. Inexpensive, scalable and open-architecture media server
US6370579B1 (en) * 1998-10-21 2002-04-09 Genuity Inc. Method and apparatus for striping packets over parallel communication links
US6289383B1 (en) * 1998-11-30 2001-09-11 Hewlett-Packard Company System and method for managing data retrieval bandwidth
US6401126B1 (en) * 1999-03-10 2002-06-04 Microsoft Corporation File server system and method for scheduling data streams according to a distributed scheduling policy
US6289376B1 (en) 1999-03-31 2001-09-11 Diva Systems Corp. Tightly-coupled disk-to-CPU storage server
US6275898B1 (en) * 1999-05-13 2001-08-14 Lsi Logic Corporation Methods and structure for RAID level migration within a logical unit
JP2001051890A (ja) 1999-08-10 2001-02-23 Toshiba Corp 仮想分散ファイルサーバシステム
US6389420B1 (en) * 1999-09-30 2002-05-14 Emc Corporation File manager providing distributed locking and metadata management for shared data access by clients relinquishing locks after time period expiration
US6604155B1 (en) 1999-11-09 2003-08-05 Sun Microsystems, Inc. Storage architecture employing a transfer node to achieve scalable performance
JP2001166887A (ja) 1999-12-08 2001-06-22 Sony Corp データ記録再生装置及びデータ記録再生方法
US20020073172A1 (en) 1999-12-10 2002-06-13 Diva Systems Corp. Method and apparatus for storing content within a video on demand environment
US6834326B1 (en) * 2000-02-04 2004-12-21 3Com Corporation RAID method and device with network protocol between controller and storage devices
US6571351B1 (en) * 2000-04-07 2003-05-27 Omneon Video Networks Tightly coupled secondary storage system and file system
US6898285B1 (en) 2000-06-02 2005-05-24 General Instrument Corporation System to deliver encrypted access control information to support interoperability between digital information processing/control equipment
US6542962B2 (en) * 2001-03-21 2003-04-01 Hitachi, Ltd. Multiple processor data processing system with mirrored data for distributed access
US20020157113A1 (en) * 2001-04-20 2002-10-24 Fred Allegrezza System and method for retrieving and storing multimedia data
US20030046704A1 (en) 2001-09-05 2003-03-06 Indra Laksono Method and apparatus for pay-per-quality of service for bandwidth consumption in a video system
US6907466B2 (en) 2001-11-08 2005-06-14 Extreme Networks, Inc. Methods and systems for efficiently delivering data to a plurality of destinations in a computer network

Also Published As

Publication number Publication date
JP4426589B2 (ja) 2010-03-03
WO2005057828A3 (en) 2006-04-06
EP1692620B1 (en) 2010-11-03
CA2547440A1 (en) 2005-06-23
WO2005057828A2 (en) 2005-06-23
DE04812687T1 (de) 2007-01-18
US20050114538A1 (en) 2005-05-26
EP1692620A2 (en) 2006-08-23
US7788396B2 (en) 2010-08-31
JP2007513582A (ja) 2007-05-24
EP1692620A4 (en) 2009-08-12
CA2547440C (en) 2011-01-11

Similar Documents

Publication Publication Date Title
MXPA06006330A (es) Sistema de transferencia de datos sincronizado.
US7644136B2 (en) Virtual file system
JP4328207B2 (ja) 対話型ブロードバンドサーバシステム
KR100192723B1 (ko) 매체 스트리머
JP5208446B2 (ja) ネットワークデータストレージシステム
US5915094A (en) Disk access method for delivering multimedia and video information on demand over wide area networks
US7254702B2 (en) Method of distributed recording whereby the need to transition to a second recording device from a first recording device is broadcast by the first recording device
US20080010647A1 (en) Network storage device
JP5324582B2 (ja) 要求応答並列ビデオサーバにおける負荷分散及び受付予定管理
US20020157113A1 (en) System and method for retrieving and storing multimedia data
US20030154246A1 (en) Server for storing files
IL175837A (en) Synchronized data transfer system
EP1858230A1 (en) Network storage device with separated control and storage data interfaces
CN1902620A (zh) 虚拟文件系统
Kumar et al. A High Performance Multimedia Server For Broadband Network Enviromment

Legal Events

Date Code Title Description
FG Grant or registration