  The proliferation of cloud data center applications and network function
virtualization (NFV) boosts dynamic and QoS dependent traffic into the data
centers network. Currently, lots of network routing protocols are requirement
agnostic, while other QoS-aware protocols are computationally complex and
inefficient for small flows. In this paper, a computationally efficient
congestion avoidance scheme, called CECT, for software-defined cloud data
centers is proposed. The proposed algorithm, CECT, not only minimizes network
congestion but also reallocates the resources based on the flow requirements.
To this end, we use a routing architecture to reconfigure the network resources
triggered by two events: 1) the elapsing of a predefined time interval, or, 2)
the occurrence of congestion. Moreover, a forwarding table entries compression
technique is used to reduce the computational complexity of CECT. In this way,
we mathematically formulate an optimization problem and define a genetic
algorithm to solve the proposed optimization problem. We test the proposed
algorithm on real-world network traffic. Our results show that CECT is
computationally fast and the solution is feasible in all cases. In order to
evaluate our algorithm in term of throughput, CECT is compared with ECMP (where
the shortest path algorithm is used as the cost function). Simulation results
confirm that the throughput obtained by running CECT is improved up to 3x
compared to ECMP while packet loss is decreased up to 2x.
