Congestion occurs when the incoming traffic at a node approaches or exceeds that of the outgoing traffics. In such case the length of the queue at this node grows indefinitely. Since routers queues are of finite lengths, some of the incoming traffic may get dropped. The problem gets even worse when the source try to compensate for the lost packets and level up their transmission rate. Increasing the queue size may not help. Many solutions have been introduced to control network congestion. Due to the unpredictable fluctuations and burstiness of traffic flows within high speed network congestion can occur frequently and TCP will perform poorly in future high speed network. The key objective is to provide high service quality of flows under conditions of congestion.