|
Congestion Control AlgorithmThis article covers the algorithm of congestion control. The key strategy lies in maintaining the congestion level under optimal load conditions. Refer to congestion control basics for an introduction to the subject. Basic AlgorithmThe following figure describes the basic algorithm for congestion control.
The above algorithm presents a simplistic handling of congestion control. We will discuss other aspects of congestion control in the following sections. Congestion Threshold ManagementTo avoid oscillations of resource usage between overload region and optimum load region or between the optimum load region and under load region on application of congestion control action, the abatement threshold is kept different from the onset threshold. The following figure shows the threshold settings for CPU utilization trigger reporting in a typical system.
If the CPU utilization increases beyond 50%, the system moves from under load region to optimum load region. The system can only move back to under load region if the CPU utilization falls below 45%. This difference in onset and abatement thresholds ensures that no oscillations would take place when the load is close to 50%. In absence of this difference, the system would have probably alternated between reporting under load and optimum load regions. Similar reasoning applies to the difference in the overload onset and overload abatement thresholds. This differential threshold setting is also referred to as hysteresis (The name comes from BH hysteresis curves.). The tuning of onset and abatement thresholds is more of an art rather than a science. It involves a lot of hit and trial. It is generally based on simulation and real life traffic statistics. Congestion Action HangoverIt should be noted that noticeable difference in system performance happens only after the congestion control action has been in effect for sometime. Thus there is a requirement that the congestion control task ignores the congestion triggers received immediately after the congestion control action has been applied. This duration is again tuned on the basis of traffic statistics. Taking our central bank example, when the central bank raises or lowers the key lending rates, the economy takes some time to react to the changes. |
|
|