Abstract: A method and apparatus for passing a large file from a server machine to a client machine as a collection of smaller files. Server code implements a user interface which allows a user on the client machine to input the name of the file to be downloaded. A pull-down menu allows the user to specify portion sizes for the file to be downloaded based on the capabilities and transfer rates of the client machine. Server code dynamically generates a page based on the user input showing the portion sizes which is displayed to the user at the client machine. Server code generates download links (Buttons) required to download the file including a download link (Button) to a platform specific shell script or batch file which is dynamically created for the download scenario. Server code uses the original source file to transmit smaller portions to the client machine.