1. A method for scheduling a presentation for delivery over a distribution network, the method comprising: generating a contact window that comprises a time period when a presentation is available for delivery to a plurality of devices, wherein delivery of the presentation to any of the plurality of devices can be initiated throughout the time period, and wherein the time period comprises a plurality of time units between a start time and an end time; allocating a sector bandwidth required to deliver the presentation to the plurality of devices within the contact window by: determining an available sector bandwidth for each of the plurality of time units of the contact window based upon an average sector throughput for each time unit of the contact window; performing an allocation cycle by applying a scheduling unit of the presentation for each of the plurality of time units between the end time to the start time; and repeating the allocation cycle until a total size of the presentation is spread among the plurality of time units within the contact window; determining whether the total size of the presentation can be allocated within the contact window prior to delivering the presentation to any of the plurality of devices; adjusting the time period of the contact window if the total size of the presentation cannot be allocated within the contact window; and repeating said allocating, determining and adjusting until the total size of the presentation can be allocated within the contact window.