**10. Congestion control**

Congestion in a packet switching network is a state in which the performance of the network degrades because of the saturation of network resources. Congestion could result in degradation of service quality to users. To avoid congestion, certain mechanisms have to be provided; such mechanisms are usually called congestion control.

#### **10.1 Categories of congestion control**

Congestion control policies can be categorized differently based on the objective of the policy, the time period of applying the policy, and the action taken to avoid congestion. In the following we will explain some of these policies.

Traffic Engineering 257

traffic. The selection of packets drop in this policy is completely uniform. Random Drop can

Congestion recovery tries to restore an operating state, when demand has exceeded capacity. Congestion avoidance is preventive in nature. It tries to keep the demand on the

**Congestion Indication:** The so-called Congestion Indication policy uses a similar technique as the Source Quench policy to inform the source gateway of congestion. The information is communicated in a single bit. The Congestion Experienced Bit (CEB) is set in the network header of the packets already being forwarded by a gateway. Based on the value of this bit, the end-system user should make an adjustment to the sending window. The Congestion Indication policy works based upon the total demand on the gateway. For fairness the total number of users causing the congestion is not considered. Only users who are sending more than their fair share (allowed bandwidth) should be asked to reduce their load, while others

**Fair Queuing:** Fair queuing is a congestion control policy where separate gateway output queues are maintained for individual end-systems on a source-destination-pair basis. When congestion occurs, packets are dropped from the longest queue. At the gateway, the processing and link resources are distributed to the end-systems on a round-robin basis. Round-robin is an arrangement of choosing all elements in a group equally in a circular.

A Bit-Round Fair Queuing algorithm was an improvement over the fair queuing. It computes the order of service to packets using their lengths, by using a technique that emulates a bit-by-bit round-robin discipline. In this case, long packets do not get an

Stochastic Fairness Queuing (SFQ) is a similar mechanism to Fair Queuing. SFQ looks up the source-destination address pair in the incoming packets and locates the appropriate queue that packet will have to be placed in. It uses a simple hash function to map from the sourcedestination address pair to a fixed set of queues. The price paid to implement SFQ is that it

Network control (NC) can be classified as centralized or distributed. In centralized network control, the route control and route computation commands are implemented and issued from one place. Each node in the network communicates with a central controller and it is the controller's responsibility to perform routing and signaling on behalf of all other nodes. In a distributed network control, each node maintains partial or full information about the network state and existing connections. Each node is responsible to perform routing and signaling. Therefore, coordination between nodes is required to alleviate the problem of contention.

Since its birth, the Internet (IP network) has employed a distributed NC paradigm. The Internet NC consists of many protocols. The functionality of resource discovery and management, topology discovery, and path computation and selection are the responsibility of routing protocols. Multiprotocol label switching (MPLS) has been proposed by IETF, to

Equal allocations of resources are provided to each source-destination pair.

advantage over short packets. Otherwise the round-robin would be unfair.

network at or near the point of maximum power, so that the congestion never occurs.

be categorized as Congestion recovery or congestion avoidance.

could attempt to increase their load where possible.

requires a potentially large number of queues.

**11. MPLS, and GMPLS traffic engineering** 
