Computer file transmission system and method
First Claim
Patent Images
1. A system for transmitting a computer file from a transmitting computer to a receiving computer, the system comprising:
- a file splitter at the transmitting computer that separates the computer file into component sections; and
a file transmitter at the transmitting computer that independently sends the component sections to the receiving computer;
wherein the file splitter further comprises a recursive file splitter, wherein the recursive file splitter, upon detecting one or more transmission failures during transmission of a larger component section, recursively splits the larger component section into smaller component subsections for retransmission.
5 Assignments
0 Petitions
Accused Products
Abstract
A system and method for transferring large computer files across computer networks that has a file splitter that separates a computer file into component sections, and a file transmitter that independently sends the component sections to a receiving computer by a recursive process that starts recursively splitting from a preselected maximum size for a component section and stops when the size of the smallest component section is equal to or less than a selected minimum size for a component section.
-
Citations
44 Claims
-
1. A system for transmitting a computer file from a transmitting computer to a receiving computer, the system comprising:
-
a file splitter at the transmitting computer that separates the computer file into component sections; and
a file transmitter at the transmitting computer that independently sends the component sections to the receiving computer;
wherein the file splitter further comprises a recursive file splitter, wherein the recursive file splitter, upon detecting one or more transmission failures during transmission of a larger component section, recursively splits the larger component section into smaller component subsections for retransmission. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12)
an initial file size selector that selects an initial size for a component section; and
a threshold selector that starts the recursive splitter to create a plurality of subsections if the file transmitter fails to transmit a component section that comprises the initial size and that stops the recursive splitter when a subsection of the plurality of subsections comprises a size that is less than or equal to a threshold size.
-
-
6. The system as recited in claim 1 further comprising means for determining a value of a preselected environmental variable, and wherein the threshold selector includes a variable s elector that changes the in, size of the component section in accordance with the value of the preselected environmental variable.
-
7. The system as recited in claim 6 wherein the transmission controller includes a router that independently controls transmission of each of the component sections to the receiving computer.
-
8. The system as recited in claim 6 wherein the transmission controller includes a file compressor that independently controls compression of each of the component sections prior to transmission thereof to the receiving computer.
-
9. The system as recited in claim 6 wherein the transmission controller includes a retransmitter that independently controls retransmission of each of the component sections upon transmission failure.
-
10. The system as recited in claim 6 wherein the transmission controller includes means for transmitting the component sections asynchronously.
-
11. The system as recited in claim 6 wherein the transmission controller includes means for transmitting the component sections concurrently.
-
12. The system as recited in claim 1 wherein the file transmitter includes a transmission controller that independently controls transmission of each of the component sections to the receiving computer.
-
13. A system for transmitting a computer file from a transmitting computer to a receiving computer, the system comprising:
-
means at the transmitting computer for separating the computer file into component sections;
means at the transmitting computer for independently sending the component sections to the receiving computers;
wherein the means for separating further comprises a means for recursively splitting, wherein the means for recursively splitting, upon detecting one or more transmission failures during transmission of a larger component section, recursively splits the larger component section into smaller component subsections for retransmission. - View Dependent Claims (14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29)
means for establishing an initial size for a component section of the component sections, and means for recursively splitting the component section into smaller component sections, until a smaller component section of the smaller component sections comprises a size that is equal to or less than a threshold size, upon a failure to transmit the component section that comprises the initial size.
-
-
15. The system of claim 14 further comprising means for determining a value of a preselected environmental variable, and wherein the means for establishing includes means for selectively changing a preselected size of the component sections in accordance with the value of the preselected environmental variable.
-
16. The system of claim 13 in which the independently sending means includes a transmission controller at the transmitting computer for independently controlling transmission of each of the component sections to the receiving computer.
-
17. The system of claim 16 in which the transmission controller includes means for independently controlling routing of transmission of each of the component sections.
-
18. The system of claim 16 in which the transmission controller includes means for independently controlling compression of each of the component sections prior to transmission thereof to the receiving computer.
-
19. The system of claim 16 in which the transmission controller includes means for independently controlling retransmission of each of the component sections upon transmission failure.
-
20. The system of claim 16 in which the transmission controller includes means for transmitting the component sections asynchronously.
-
21. The system of claim 16 in which the transmission controller includes means for transmitting the component sections concurrently.
-
22. The system of claim 13 in which the sending means includes
means for determining whether a component section has been successfully transmitted, and means responsive to the determining means for transmitting each of the component sections until the first to occur of the component section being successfully received by the receiving computer, and a preselected maximum number of unsuccessful retransmissions being attempted. -
23. The system of claim 22 in which the sending means includes means responsive to a selected maximum number of unsuccessful attempts of retransmission via one route for retransmitting the component section via at least one alternative route.
-
24. The system of claim 13 in which the sending means includes means for determining whether a component section transmitted via one route has been successfully received by the receiving computer, and
means responsive to the determining means for retransmitting the component section via an alternative route if transmission via the one route has been unsuccessful. -
25. The system of claim 13 in which the sending means includes means for terminating transmission of all the component sections in response to at least one of:
-
unsuccessful transmission of any one of the component sections, exceeding of a preselected maximum transmission time for successful transmission of every one of the component sections, and receipt of a transmission termination request.
-
-
26. The system of claim 13 further comprising means for logging results of a plurality of unsuccessful transmission attempts.
-
27. The system of claim 26 in which the results logging means logs data concerning transmission of at least:
-
size of the file, size of each of the component sections, a count of the component sections, interval times, number of attempted retransmissions, time of retransmission for the component sections, routing path for each of the component sections, and reason for any failure in transmission of the component sections.
-
-
28. The system of claim 13 further comprising means for performing a number of clean-up functions after conclusion of an attempted sending of all the component sections.
-
29. The system of claim 13 further comprising
means at the receiving computer for receiving the component sections from the transmitting computer; - and
means at the receiving computer for combining the component sections received at the receiving computer into a composite received file that comprises a substantial duplicate of the computer file transmitted from the transmitting computer.
- and
-
30. A method for transmitting a computer file from a transmitting computer to a receiving computer comprising the steps of:
-
at the transmitting computer, separating the computer file into component sections; and
at the transmitting computer, independently sending the component sections to the receiving computers;
upon detecting one or more transmission failures during transmission of a larger component section, recursivly splitting the larger component section into smaller component subsections for retransmission. - View Dependent Claims (31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44)
determining whether a component sections has been successfully transmitted, and responding to a determination of an unsuccessful transmission result by retransmitting each of the component sections until the first to occur of the component section being successfully received by the receiving computer, and a preselected maximum number of unsuccessful retransmissions being attempted.
-
-
38. The method of claim 37 in which the step of sending includes the step of responding to a selected maximum number of unsuccessful attempts of retransmission via one route by retransmitting the component section via at least one alternative route.
-
39. The method of claim 30 in which the step of sending includes the steps of
determining whether a component section transmitted via one route has been successfully received by the receiving computer, and responding to a determination that transmission via the one route has been unsuccessful by retransmitting the component section via an alternative route. -
40. The method of claim 30 including the step of terminating transmission of all the component sections in response to at least one of:
-
unsuccessful transmission of any one of the component sections, exceeding of a preselected maximum transmission time for successful transmission of every one of the component sections, and receipt of a transmission termination request.
-
-
41. The method of claim 30 including the step of logging results of at least one unsuccessful transmission of the component sections.
-
42. The method of claim 41 in which the results include data concerning transmission of at least:
-
size of the file, size of each of the component sections, a count of the component sections, interval times, number of attempted retransmissions, time of retransmission for the component sections, routing path for each of the component sections, and reason for any failure in transmission of the component sections.
-
-
43. The method of claim 30 including the step of performing a clean-up function after conclusion of an attempted sending of all the component sections.
-
44. The method of claim 30 including the steps of
at the receiving computer receiving the component sections from the transmitting computer, and at the receiving computer combining the component sections received at the receiving computer into a composite received file that comprises a substantial duplicate of the computer file transmitted from the transmitting computer.
Specification