Load balancing over heterogeneous networks with gossip-based algorithms