The present invention provides a system and method for scheduling tasks in
a computing system. The disclosed system model has multiple levels, with
each level having at least one queue. Each queue has at least one
processing function and zero or more clusters associated with it. Flow
control technique is used amongst queues at various levels in order to
schedule tasks efficiently such that task drop rate reduces. Based on the
flow control directives, corrective actions, such as varying the dispatch
rate or changing the buffer capacity of queues may be performed by a
queue. The disclosed system and method can be implemented as Cooperative
Load Distributor (CLD) architecture or as Cooperative Load Distributor
framework.