Highly-scalable data transmission
AssigneeOpenTV, Inc.
InventorsEnrico Vezzuto, Philippe Stransky-Heilkron
Life of this patent
Estimating the term…
Abstract
Methods and systems for transmitting and receiving data, such as, for example, entertainment data, are presented. In one example, a data file is segmented into a plurality of data modules. A header is generated for each of the data modules, with the header including a module identifier for the data module associated with the header. An indication of a number of the plurality of data modules associated with the data file, and at least one multicast address from which the plurality of modules may be received via a multicast transmission, are generated and transmitted. The data modules with their associated headers are transmitted over a communication network in the multicast transmission.
Claims20
A method, comprising:
- generating a plurality of headers, wherein each of the plurality of headers corresponds to one of a plurality of data segments in a data file, and wherein each of the plurality of headers comprises a segment identifier and an offset value for the corresponding data segment, the segment identifier indicating a relative location of the corresponding data segment within the data file compared to other data segments of the plurality of data segments, the offset value being different from the segment identifier and indicating an offset position of the corresponding data segment within the data file;
- transmitting, to a destination device, using a first communication protocol over a network, at least one first address from which the plurality of data segments may be received;
- causing transmission, using the first communication protocol, of a first data segment of the plurality of data segments from a first device to the destination device, the first data segment being transmitted with the header corresponding to the first data segment;
- transmitting, to the destination device, at least one second address from which the plurality of data segments may be received using a second communication protocol;
- and
- causing transmission, using the second communication protocol, of a second data segment of the plurality of data segments from a second device to the destination device, the second data segment transmitted with the header corresponding to the second data segment, the second device being distinct from the first device, the transmission of the second data segment being more frequent than a transmission of a third data segment of the plurality of data segments by reducing a cycle time in a cyclic transmission and based on relative popularity of the second data segment and the third data segment.
A method, comprising:
- receiving, at a destination device, using a first communication protocol over a network, at least one address from which a plurality of data segments may be received, wherein the plurality of data segments is associated with a data file;
- receiving, from a first device at the destination device, using the first communication protocol, a first data segment of the plurality of data segments, the first data segment being transmitted with a corresponding first header, wherein the first header comprises a first segment identifier and a first offset value for the first data segment, the first segment identifier indicating a first relative location of the first data segment within the data file compared to other data segments of the plurality of data segments, the first offset value being different from the first segment identifier and indicating a first offset position of the first data segment within the data file;
- receiving, at the destination device, at least one second address from which the plurality of data segments may be received using a second communication protocol;
- and
- receiving, at the destination device, from a second device distinct from the first device, using the second communication protocol, a second data segment of the plurality of data segments with a second header, wherein the second header comprises a second segment identifier and a second offset value for the second data segment, the second segment identifier indicating a second relative location of the second data segment within the data file compared to other data segments of the plurality of data segments, the second offset value being different from the second segment identifier and indicating a second offset position of the second data segment within the data file, a transmission of the second data segment by the second device being more frequent than a transmission of a third data segment of the plurality of data segments by reducing a cycle time in a cyclic transmission and based on relative popularity of the second data segment and the third data segment.
A system, comprising:
- a communication network interface;
- at least one processor;
- and
- memory comprising instructions that, when executed by the at least one processor, cause the processor to perform operations, comprising:
- generating a plurality of headers, wherein each of the plurality of headers corresponds to one of a plurality of data segments in a data file, and wherein each of the plurality of headers comprises a segment identifier and an offset value for the data segment corresponding to the header, the segment identifier indicating a relative location of the corresponding data segment within the data file compared to other data segments of the plurality of data segments, the offset value being different from the segment identifier and indicating an offset position of the corresponding data segment within the data file;
- transmitting, to a destination device, using a first communication protocol over a network, at least one first address from which the plurality of data segments may be received;
- causing transmission, using the first communication protocol, of a first data segment of the plurality of data segments, the first data segment being transmitted with the header corresponding to the first data segment;
- transmitting, to the destination device, at least one second address from which the plurality of data segments may be received using a second communication protocol;
- and
- causing transmission, using the second communication protocol, of a second data segment of the plurality of data segments with the header corresponding to the second data segment, the transmission of the second data segment being more frequent than a transmission of a third data segment of the plurality of data segments by reducing a cycle time in a cyclic transmission and based on relative popularity of the second data segment and the third data segment.
Dependencies are inferred from the claim text.