A method implemented as software excuted in one or more host processors, comprising: executing one or more processes that transfer data over a network as regular data transfers, wherein each regular data transfer refers to a data transfer performed with a nominal allocation of bandwidth; implementing a virtual link control module that determines an aggregate traffic rate of the data transferred over the network by the regular data transfers and provides a virtual link through which the regular data transfers flow, wherein the virtual link includes a virtual queue that is filled or emptied in accordance with whether the aggregate traffic rate is greater than or less than, respectively, a specified bandwidth limit ci; implementing a rate control module that regulates the data transfer rate x(t) of each of the regular data transfers based upon a calculated virtual queuing delay reflective of the extent to which the virtual queue is filled with data; executing one or more further processes that transfer data over the network as preferred data transfers that meet a specified delivery deadline; executing the virtual link control module to determine a bandwidth reduction to the regular data transfers as a result of the preferred data transfers, wherein the bandwidth reduction is the reduction in bandwidth endured by the regular processes due to the preferred processes as derived from an increase in the occupancy of the virtual queue or an increase in the virtual queuing delay; calculating a charge for the preferred data transfers as a price that is proportional to a difference between an actual data transfer rate attained by the regular data transfers, ADTR, and a nominally allocated data transfer rate, NADTR, multiplied by a time during which such difference occurs and the number of regular data transfers, where: NADTR = W1 * ci /(W1 * NR + W2 * NP), where NR is the number of regular data transfers, NP is the number of preferred data transfers, W1 is a relative weighting reflective of the network bandwidth allocated to regular data transfers, and W2 is a relative weighting reflective of the network bandwidth allocated to preferred data transfers; and ADTR is the difference between ci and the sum of the data transfer rates of each preferred transfer, which difference is then divided by the number of regular data transfers NR. executing one or more processes that transfer data over a network as regular data transfers, wherein each regular data transfer refers to a data transfer performed with a nominal allocation of bandwidth; implementing a virtual link control module that determines an aggregate traffic rate of the data transferred over the network by the regular data transfers and provides a virtual link through which the regular data transfers flow, wherein the virtual link includes a virtual queue that is filled or emptied in accordance with whether the aggregate traffic rate is greater than or less than, respectively, a specified bandwidth limit ci; implementing a rate control module that regulates the data transfer rate x(t) of each of the regular data transfers based upon a calculated virtual queuing delay reflective of the extent to which the virtual queue is filled with data; executing one or more further processes that transfer data over the network as preferred data transfers that meet a specified delivery deadline; executing the virtual link control module to determine a bandwidth reduction to the regular data transfers as a result of the preferred data transfers, wherein the bandwidth reduction is the reduction in bandwidth endured by the regular processes due to the preferred processes as derived from an increase in the occupancy of the virtual queue or an increase in the virtual queuing delay; calculating a charge for the preferred data transfers as a price that is proportional to a difference between an actual data transfer rate attained by the regular data transfers, ADTR, and a nominally allocated data transfer rate, NADTR, multiplied by a time during which such difference occurs and the number of regular data transfers, where: NADTR = W1 * ci /(W1 * NR + W2 * NP), where NR is the number of regular data transfers, NP is the number of preferred data transfers, W1 is a relative weighting reflective of the network bandwidth allocated to regular data transfers, and W2 is a relative weighting reflective of the network bandwidth allocated to preferred data transfers; and ADTR is the difference between ci and the sum of the data transfer rates of each preferred transfer, which difference is then divided by the number of regular data transfers NR. NADTR = W1 * ci /(W1 * NR + W2 * NP), where NR is the number of regular data transfers, NP is the number of preferred data transfers, W1 is a relative weighting reflective of the network bandwidth allocated to regular data transfers, and W2 is a relative weighting reflective of the network bandwidth allocated to preferred data transfers; and ADTR is the difference between ci and the sum of the data transfer rates of each preferred transfer, which difference is then divided by the number of regular data transfers NR.