METHOD AND SYSTEM FOR TRANSMITTING A DATA FILE OVER A DATA NETWORK
First Claim
1. A method of modifying a data file comprising:
- receiving the original data file, the original data file having a length in bytes with each byte having a bit-length;
dividing the data file into data groups of sequential bytes; and
modifying one or more of the data groups separately, wherein modifying a data group comprises the steps of;
a) designating byte offset values to respective bytes within the data group;
b) applying a data transformation to the bytes within the data group based at least partly on the byte offset values;
c) calculating the number of unique byte values within the data group;
d) comparing the calculated number of unique byte values with a predetermined threshold value; and
e) repeating steps (a) to (d) until the calculated number of unique byte values equals the predetermined threshold value.
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
24 Claims
-
1. A method of modifying a data file comprising:
-
receiving the original data file, the original data file having a length in bytes with each byte having a bit-length; dividing the data file into data groups of sequential bytes; and modifying one or more of the data groups separately, wherein modifying a data group comprises the steps of; a) designating byte offset values to respective bytes within the data group; b) applying a data transformation to the bytes within the data group based at least partly on the byte offset values; c) calculating the number of unique byte values within the data group; d) comparing the calculated number of unique byte values with a predetermined threshold value; and e) repeating steps (a) to (d) until the calculated number of unique byte values equals the predetermined threshold value. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14)
-
-
15. 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 ordinal values and a header file, the header file including a segment frequency value representing the number of segments in the data file, and/or other values required for decompression, 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 additional data segments; transmitting subsequent alternate data segments over the data network to the remote device at the request of the first and second execution threads concurrently; increasing the value of a counter value on the remote device to the ordinal value associated with the data segment most recently transmitted over the data network following complete transmission of each data segment; and sorting each transmitted data segment into order at the remote device based on the counter value following complete transmission of each data segment. - View Dependent Claims (16, 17, 18, 19, 20, 21, 22)
-
-
23. A data modification system operable to modify a data file, the system comprising a file modifier that is configured to:
-
receive the original data file, the original data file having a length in bytes with each byte having a bit-length; divide the data file into data groups of sequential bytes; and modify one or more of the data groups separately, wherein each data group modification comprises; a) designating byte offset values to respective bytes within the data group; b) applying a data transformation to the bytes within the data group based at least partly on the byte offset values; c) calculating the number of unique byte values within the data group; d) comparing the calculated number of unique byte values with a predetermined threshold value; and e) repeating steps (a) to (d) until the calculated number of unique byte values equals the predetermined threshold value.
-
-
24. 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 ordinal values and a header file, the header file including a segment frequency value representing the number of segments in the data file, and/or other values required for decompression, the system being configured 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 additional data segments; transmit subsequent alternate data segments over the data network to the remote device at the request of the first and second execution threads concurrently; increase the value of a counter value on the remote device to the ordinal value associated with the data segment most recently transmitted over the data network following complete transmission of each data segment; and sorting each transmitted data segment into order at the remote device based on the counter value following complete transmission of each data segment.
-
Specification