Distributing files from a single server to multiple clients via cyclical multicasting
First Claim
1. In a network that includes a server maintaining first and second communication channels with each of multiple client devices, a method for cyclically transferring file data from the server to the multiple client devices such that the client devices can determine the completeness of received file data, the method comprising:
- creating a set of metadata specifying properties associated with the file data, wherein the properties include at least error correction information for the file data, and wherein the error correction information is configured for use by a client device, after transmission of the file data from the server, to determine the completeness of the file data;
transmitting the set of metadata over the network from the server to the multiple client devices in cycles via the first communication channel, each cycle comprising a full transmission of the set of metadata and being repeated periodically while and until it is determined that no client device of the multiple client devices has not yet received in full the set of metadata; and
transmitting the file data over the network from the server to the multiple client devices in cycles via the second communication channel, each cycle comprising a full transmission of the file data and being repeated periodically while and until it is determined that no client device of the multiple client devices has not yet received in full the file data, and such that the error correction information for determining completeness of the transmitted file data after transmission is transmitted independent of the file data.
3 Assignments
0 Petitions
Accused Products
Abstract
A method and system are disclosed for reliably distributing file data from a single server to multiple client computers using a cyclical multicast approach. By “cyclical,” it is meant that data is distributed repeatedly onto the network at a certain period. The server transmits metadata asynchronously onto the network via a first communication channel, and file data via a second communication channel. Both data sets are received by one or more client devices operating a data catch module, which listens for metadata and file data from the network via a first and second communication channel. Once the metadata is received, the first channel is disconnected, and the one or more client devices operating the data catch module listen for file data for which the metadata is associated. Any file data not received during one cycle can be received by the client device in a subsequent cycle.
-
Citations
46 Claims
-
1. In a network that includes a server maintaining first and second communication channels with each of multiple client devices, a method for cyclically transferring file data from the server to the multiple client devices such that the client devices can determine the completeness of received file data, the method comprising:
-
creating a set of metadata specifying properties associated with the file data, wherein the properties include at least error correction information for the file data, and wherein the error correction information is configured for use by a client device, after transmission of the file data from the server, to determine the completeness of the file data; transmitting the set of metadata over the network from the server to the multiple client devices in cycles via the first communication channel, each cycle comprising a full transmission of the set of metadata and being repeated periodically while and until it is determined that no client device of the multiple client devices has not yet received in full the set of metadata; and transmitting the file data over the network from the server to the multiple client devices in cycles via the second communication channel, each cycle comprising a full transmission of the file data and being repeated periodically while and until it is determined that no client device of the multiple client devices has not yet received in full the file data, and such that the error correction information for determining completeness of the transmitted file data after transmission is transmitted independent of the file data. - View Dependent Claims (2, 3, 4, 5, 6, 42, 43, 45)
-
-
7. A method for receiving file data from a network by a client device, the client device being communicably linked to the network via first and second communications channels and capable of determining the completeness of the received file data, the method comprising:
-
at the client device, receiving metadata specifying properties associated with the file data via the first communication channel by listening to a repeated periodic transmission of the metadata over the network; at the client device, receiving file data via the second communication channel once the metadata is received in its entirety by listening to a repeated periodic transmission of the file data over the network; after the client device receives the file data, determining, at the client device, whether the file data contains any transmission error, the determination being made according to error correction information specified by the metadata, and wherein the error correction information is received independent of the received file data; and storing the file data into a memory location that is accessible to the client device if the file data is without error. - View Dependent Claims (8, 9, 10, 11, 12, 13, 14, 15, 16)
-
-
17. A system for cyclically distributing file data to a plurality of client devices in a manner that allows the client devices to determine the completeness of the distributed file data, the plurality of client devices being communicably linked to a network via a first and second communication channel respectively, the system comprising:
-
a server for maintaining the file data; a first communication channel to the network from the server for transmitting metadata to the plurality of devices, the metadata specifying properties associated with the file data, wherein the specified properties include at least error correction information for the file data, and wherein the error correction information is configured to be used by the plurality of client devices, after transmission of the file data, to determine the completeness of the file data; a second communication channel to the network from the server for transmitting the file data to the plurality of clients devices, and such that the error correction information for determining the completeness of the file data is transmitted independent of the file data transmitted over the second communication channel; and an executable datacaster hosted by the server for transmitting the metadata and file data in cyclical transmissions over the first and second communication channels respectively, the cyclical transmission for the first channel being repeated periodically upon the completion of a full transmission of the metadata, the cyclical transmission for the second channel being repeated periodically upon the completion of a full transmission of the file data, the cycle period for the transmission of the metadata being independent of the cycle period for the transmission of the file data. - View Dependent Claims (18, 19, 20, 21, 22, 23, 40, 41, 46)
-
-
24. A system for receiving file data transmitted over a network by a server, the server being communicably linked to the network via first and second communication channels, the file data being distributed by the server in cycles over the second communication channel, the system comprising:
a client device comprising; a first communication port for detecting the receipt of metadata from the network, the metadata being distributed by the server over the first communication port, the metadata specifying properties associated with the file data, wherein the properties include at least error indicating information for the file data; a second communication port for detecting the receipt of file data from the network, the file data being distributed by the server over the second communication port, and such that the error indicating information for the file data is received independent of the file data; and a receiving module for consuming the metadata and the file data as it is received at the first and second communication ports respectively, the receiving module deactivating the first communication port in response to the metadata being received in its entirety, and deactivating the second communication port in response to the file data being received in its entirety, wherein the receiving module uses the error indicating information specified in the metadata to determine whether the file data has been received in its entirety. - View Dependent Claims (25, 26, 27, 28, 29, 30, 44)
-
31. A system for distributing file data over a network to multiple client devices without prior knowledge of the number of client devices or their locations on the network, the system comprising:
-
means for creating metadata specifying properties associated with the file data, the properties including at least error correction information for the file data, said error correction information being configured for use by a client device, after transmission of the file data, to determine the completeness of the file data; means for transmitting the metadata over the network in periodic cycles over a first communication channel; and means for transmitting the file data over the network in periodic cycles over a second communication channel, and such that the error correction information for the file data is transmitted independent of the transmitted file data. - View Dependent Claims (32, 33)
-
-
34. A method for transferring primary information to a plurality of recipients, each recipient being capable of using the primary information to perform a desired network or computing task, the primary information being retrieved by each recipient via a primary connection to a network, the method comprising:
-
multicasting secondary information to the plurality of recipients repeatedly over a secondary connection to the network, each cycle being repeated asynchronously, the secondary information specifying properties associated with the primary information, wherein the properties include at least error correction information for the primary information, wherein the error correction information is configured for use by the recipients, after multicasting the primary data, to determine the completeness of the primary information, and wherein at least one of the plurality of recipients is capable of receiving the secondary information; and multicasting the primary information to the plurality of recipients repeatedly over the primary connection, wherein at least one of the plurality of recipients is capable of receiving the primary information, and such that the error correction information for determining the completeness of the primary information is multicasted independent of the primary information. - View Dependent Claims (35, 36, 37, 38, 39)
-
Specification