DynamicFL: Federated Learning with Dynamic Communication Resource Allocation