Method and system for transmitting a data file over a data network
First Claim
1. A method of streaming a data file to a remote device over a data network, the data file comprising a plurality of ordered data segments having associated respective numerical ordinal values and a header file, the header file including a segment frequency value representing the number of segments in the data file, the method comprising:
- transmitting the header file to the remote device over the data network;
transmitting the first data segment of the plurality of ordered data segments over the data network to the remote device at the request of a first execution thread, operating on the remote device, concurrently with the second or subsequent data segments;
transmitting the second data segment of the plurality of ordered data segments over the data network to the remote device at the request of a second execution thread, operating on the remote device, concurrently with the first or subsequent data segments;
transmitting the subsequent data segments over the data network to the remote device at the request of the next available first or second execution threads, which operate concurrently;
increasing the value of a counter value on the remote device to the numerical ordinal value associated with the data segment most recently transmitted over the data network following the complete transmission of each data segment; and
sorting each transmitted data segment into order at the remote device based on the counter value following the complete transmission of each data segment, and wherein the number of segments in the data file is greater than the number of execution threads, on the remote device.
1 Assignment
0 Petitions
Accused Products
Abstract
In one form the invention provides a method of modifying a data file for transmission over a data network. The method comprises the steps of receiving the original data file and creating a header file, the header file including the length in bytes of the original data file. At least one repetition byte sequence is identified within the original data file, the repetition byte sequence comprising a byte value that is repeated consecutively within the repetition byte sequence. A modified data file is created by replacing the repetition byte sequence with a repetition marker, the repeated byte value, and a repeat frequency value representing the number of times the repeated byte value occurs within the repetition byte sequence. The repetition marker is added to the header file. The invention further provides a method of transmitting a data file to a remote device over a data network.
-
Citations
32 Claims
-
1. A method of streaming a data file to a remote device over a data network, the data file comprising a plurality of ordered data segments having associated respective numerical ordinal values and a header file, the header file including a segment frequency value representing the number of segments in the data file, the method comprising:
-
transmitting the header file to the remote device over the data network; transmitting the first data segment of the plurality of ordered data segments over the data network to the remote device at the request of a first execution thread, operating on the remote device, concurrently with the second or subsequent data segments; transmitting the second data segment of the plurality of ordered data segments over the data network to the remote device at the request of a second execution thread, operating on the remote device, concurrently with the first or subsequent data segments; transmitting the subsequent data segments over the data network to the remote device at the request of the next available first or second execution threads, which operate concurrently; increasing the value of a counter value on the remote device to the numerical ordinal value associated with the data segment most recently transmitted over the data network following the complete transmission of each data segment; and sorting each transmitted data segment into order at the remote device based on the counter value following the complete transmission of each data segment, and wherein the number of segments in the data file is greater than the number of execution threads, on the remote device. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14)
-
-
15. A data file streaming system operable to stream a data file to a remote device over a data network, the data file comprising a plurality of ordered data segments having associated respective numerical ordinal values and a header file, the header file including a segment frequency value representing the number of segments in the data file, the system comprising a processor and associated memory which stores readable instructions for execution by the processor to:
-
transmit the header file to the remote device over the data network; transmit the first data segment of the plurality of ordered data segments over the data network to the remote device at the request of a first execution thread, operating on the remote device, concurrently with the second or subsequent data segments; transmit the second data segment of the plurality of ordered data segments over the data network to the remote device at the request of a second execution thread, operating on the remote device, concurrently with the first or subsequent data segments; transmit the subsequent data segments over the data network to the remote device at the request of the next available first or second execution thread, which operate concurrently; increase the value of a counter value on the remote device to the numerical ordinal value associated with the data segment most recently transmitted over the data network following complete transmission of each data segment; and sort each transmitted data segment into order at the remote device based on the counter value following complete transmission of each data segment, and wherein the number of segments in the data file is greater than the number of execution threads on the remote device. - View Dependent Claims (16, 17, 18, 19, 20, 21, 22, 23)
-
-
24. A method of receiving a streamed data file at a remote device, the data file being sent from a computing device over a data network and the data file comprising a plurality of ordered data segments having associated respective numerical ordinal values and a header file, the header file comprising a segment frequency value representing the number of segments in the data file, the method comprising:
-
receiving the header file from the computing device over the data network; operating a first execution thread on the remote device to request and receive the first data segment of the plurality of ordered data segments over the data network from the computing device, concurrently with the second or subsequent data segments; operating a second execution thread on the remote device to request and receive the second data segment of the plurality of ordered data segments over the data network from the computing device, concurrently with the first or subsequent data segments; receiving the remaining subsequent data segments from the computing device over the data network at the request of the next available first or second execution thread, which operate concurrently; increasing the value of a counter value on the remote device to the numerical ordinal value associated with the data segment most recently received over the data network from the computing device following the complete reception of each data segment; and sorting each received data segment into order on the remote device based on the counter value following complete reception of each data segment. - View Dependent Claims (25, 26, 27, 28, 29, 30, 31, 32)
-
Specification