Patent ID: 7668177

Claim:
A method for providing quality of service in a host bus adapter, comprising: (a) providing a first selectable mode and a second selectable mode for establishing quality of service for the host bus adapter; wherein in the first selectable mode, the quality of service is based on a user allocating bandwidth of a network link and dynamically adjusting an initial priority assigned to each of a plurality of queues, each queue being associated with an application from among a plurality of applications that are executed by one or more computing system; and wherein in the second selectable mode, the quality of service is based on a user assigning a priority to each of the plurality of applications, and the host bus adapter determines a number of input/output (I/O) requests it needs to process within a duration and then transfers information based on the determined number of I/O requests and the assigned priority; (b) if the first mode is selected, then allocating a percentage of a total bandwidth of the network link among the plurality of applications; (c) determining a transfer rate for the plurality of queues based on the allocated bandwidth; (d) assigning an initial queue priority value for each of the plurality of queues; (e) monitoring a data transfer rate for each of a plurality of I/O requests that service the plurality of queues; and (f) dynamically adjusting the initial queue priority if the data transfer rate is beyond a threshold value at a given time.