Broadcasting a file in a communication network
We study the problem of distributing a file, initially located at a server, among a set of n nodes. The file is divided into m≥1 equally sized packets. After downloading a packet, nodes can upload it to other nodes, possibly to multiple nodes in parallel. Each node, however, may receive each packet from a single source node only. The upload and download rates between nodes are constrained by node- and server-specific upload and download capacities. The objective is to minimize the makespan. This problem has been proposed and analyzed first by Mundinger et al. (J Sched 11:105–120, 2008. https://doi.org/10.1007/s10951-007-0017-9) under the assumption that uploads obey the fair sharing principle, that is, concurrent upload rates from a common source are equal at any point in time. Under this assumption, the authors devised an optimal polynomial time algorithm for the case where the upload capacity of the server and the nodes’ upload and download capacities are all equal. In this work, we drop the fair sharing assumption and derive an exact polynomial time algorithm for the case when upload and download capacities per node and among nodes are equal. We further show that the problem becomes strongly NP-hard for equal upload and download capacities per node that may differ among nodes, even for a single packet. For this case, we devise a polynomial time (1+2√2)-approximation algorithm. Finally, we devise two polynomial time algorithms with approximation guarantees of 5 and 2+⌈log2⌈n/m⌉⌉/m, respectively, for the general case of m packets.
Published in: Journal of Scheduling, 10.1007/s10951-020-00643-w, Springer