A method of transferring data between a plurality of computer entities communicating via a plurality of communications links, said plurality of computer entities comprising a source computer entity, a destination computer entity (201 - 203), and at least one intermediate computer entity, wherein a data file is transferred between said source computer entity and said destination computer entity (201 - 203) via said intermediate computer entity, said method comprising the steps of: (i) storing said data file in a non volatile data storage device comprising said source computer; (ii) sending a request for file transfer from said destination computer (201 - 203) to said at least one intermediate computer, said request for file transfer requesting transfer of said data file from said source computer to said destination computer (201 - 203) via said at least one intermediate computer; (iii) said intermediate computer requesting transfer of a portion of said data file from said source computer entity to said intermediate computer; (iv) transferring said data file portion and an associated file processing header containing a description of processing to be applied to the file portion from said source computer to said intermediate computer; (v) sending said data file portion from said intermediate computer to said destination computer (201 - 203), the method further comprising the steps of: repeating steps (iv) to (v) to transfer a plurality of said file portions between said source computer and said destination computer (201 - 203) via said intermediate computer, until all of said data file is transferred from said source computer to said destination computer (201 - 203), wherein said intermediate computer applies data processing as specified in the processing header to said file portion prior to sending said file portion to said destination computer (201 - 203). (i) storing said data file in a non volatile data storage device comprising said source computer; (ii) sending a request for file transfer from said destination computer (201 - 203) to said at least one intermediate computer, said request for file transfer requesting transfer of said data file from said source computer to said destination computer (201 - 203) via said at least one intermediate computer; (iii) said intermediate computer requesting transfer of a portion of said data file from said source computer entity to said intermediate computer; (iv) transferring said data file portion and an associated file processing header containing a description of processing to be applied to the file portion from said source computer to said intermediate computer; (v) sending said data file portion from said intermediate computer to said destination computer (201 - 203), the method further comprising the steps of: repeating steps (iv) to (v) to transfer a plurality of said file portions between said source computer and said destination computer (201 - 203) via said intermediate computer, until all of said data file is transferred from said source computer to said destination computer (201 - 203), wherein said intermediate computer applies data processing as specified in the processing header to said file portion prior to sending said file portion to said destination computer (201 - 203). repeating steps (iv) to (v) to transfer a plurality of said file portions between said source computer and said destination computer (201 - 203) via said intermediate computer, until all of said data file is transferred from said source computer to said destination computer (201 - 203), wherein said intermediate computer applies data processing as specified in the processing header to said file portion prior to sending said file portion to said destination computer (201 - 203).