Patent ID: 7627549

Claim:
A method of determining an optimal process for transferring a data file of electronic data between a source having a source access link and one or more destinations each having a respective destination access link, across a network including stages containing storage and processing resources, the method comprising: constructing a plurality of available data transfer sequences for a transfer of the data file including, a direct path corresponding to a direct transfer of the data file from the source to the one or more destinations, a plurality of compression paths, each compression path corresponding to a compression technique for compressing the data file at the source, a direct transfer of the data file from the source to the one or more destinations, and a decompression technique for decompressing the data file at the one or more destinations, at least one staged path corresponding to transferring the data file from the source to at least one storage server in the network and then transferring the data file from the network to the one or more destinations, and a plurality of staged compression paths, each corresponding to a compression technique for compressing the data file at the source, transferring the data file over at least one staged path in the network, and a decompression technique for decompressing the data file at the one or more destinations, wherein said plurality of available data transfer sequences further include at least one of: a path including a satellite transfer of the data file, a path including a compression of delta-changes to the data file at the source, in the network, or at the one or more destinations, a path including storage of the data file on the network, or a path including processing of the data file on the network; associating with each sequence a benefit and a cost; and determining at least one data transfer sequence from said plurality of available data transfer sequences providing a desired benefit-to-cost ratio for the transfer of the data file based upon data parameters of the data file, network parameters of the network and user-defined transfer parameters for transferring the data file between the source and the one or more destinations, wherein said user-defined transfer parameters are determined before said determining at least one data transfer sequence, wherein said determining at least one data transfer sequence is performed by an optimizer of a server.