Algorithms for congestion control and bandwidth-partitioning in data centers