A multi-UAV system relies on communications to operate. Failure to communicate remotely sensed mission data to the base may render the system ineffective, and the inability to exchange command and control messages can lead to system failures. This paper describes a unique method to control network communications through distributed task allocation to engage under-utilized UAVs to serve as communication relays and to ensure that the network supports mission tasks. This work builds upon a distributed algorithm previously developed by the authors, CBBA with Relays, which uses task assignment information, including task location and proposed execution time, to predict the network topology and plan support using relays. By explicitly coupling task assignment and relay creation processes, the team is able to optimize the use of agents to address the needs of dynamic complex missions. In this work, the algorithm is extended to explicitly consider realistic network communication dynamics, including path loss, stochastic fading, and information routing. Simulation and flight test results validate the proposed approach, demonstrating that the algorithm ensures both data-rate and interconnectivity bit-error-rate requirements during task execution.