1. A method for transferring data between a source computing device and a destination computing device, comprising: identifying a data file on the source computing device, portions of which may be transferred to the destination computing device, for use in performing a desired task by the destination computing device; generating an information file on the source computing device, wherein said information file contains a description of one or more attributes of said data file; accessing said information file, by the destination computing device; determining, by the destination computing device, by using said information file, one or more portions of said data file needed to perform the desired task; communicating from the destination device to the source computing device identification of the one or more portions of the data file that are needed to perform the desired task; and sending, by the source computing device said one or more portions of the data file as determined by the destination computing device to be needed to perform the task on the destination computing device.