A method, comprising: accepting, by a bandwidth, BW, management system on behalf of a receiving host, data packets for a first individual flow at a flow rate sent by a sending host, the bandwidth management system configured to manage bandwidth of a collection of individual flows by traffic classes, the traffic classes arranged in a hierarchical bandwidth tree, HBT, each traffic class of the HBT containing one or more nodes in the HBT associated with the collection of individual flows, wherein a traffic class at the highest level of the HBT represents a universal traffic class, and the traffic classes at the lowest level of the HBT represent leaf traffic subclasses, further wherein the first individual flow is included within the collection of individual flows associated with one or more of the traffic classes; managing, by a quality of service, QOS, manager module, the bandwidth for the leaf traffic subclasses based on application priority classifications of the individual flows associated with the leaf traffic subclasses; controlling, using a processor of a machine, by the BW management system, the rate at which the sending host is transmitting the data packets for the first individual flow using a sliding window protocol by managing the bandwidth utilization of the nodes to conform to bandwidth limits assigned to the nodes; and receiving, by the BW management system, the data packets for the first individual flow at an adjusted flow rate based on the sliding window protocol; wherein the BW management system includes a window manager, WM, module, the quality of service, QOS, manager module, and a bandwidth, BW, manager module; wherein controlling by the BW management system the rate at which the sending host is transmitting the data packets for the first individual flow using the sliding window protocol further comprises: generating, by the WM module, bandwidth requests indicating bandwidth amounts for the individual flows in the collection of individual flows associated with the traffic class, a bandwidth amount is based on an estimated rate at which the receiving host is receiving the accepted data packets from the BW management system for one of the individual flows; and sending, to the QOS manager module, the bandwidth requests indicating the bandwidth amounts. accepting, by a bandwidth, BW, management system on behalf of a receiving host, data packets for a first individual flow at a flow rate sent by a sending host, the bandwidth management system configured to manage bandwidth of a collection of individual flows by traffic classes, the traffic classes arranged in a hierarchical bandwidth tree, HBT, each traffic class of the HBT containing one or more nodes in the HBT associated with the collection of individual flows, wherein a traffic class at the highest level of the HBT represents a universal traffic class, and the traffic classes at the lowest level of the HBT represent leaf traffic subclasses, further wherein the first individual flow is included within the collection of individual flows associated with one or more of the traffic classes; managing, by a quality of service, QOS, manager module, the bandwidth for the leaf traffic subclasses based on application priority classifications of the individual flows associated with the leaf traffic subclasses; controlling, using a processor of a machine, by the BW management system, the rate at which the sending host is transmitting the data packets for the first individual flow using a sliding window protocol by managing the bandwidth utilization of the nodes to conform to bandwidth limits assigned to the nodes; and receiving, by the BW management system, the data packets for the first individual flow at an adjusted flow rate based on the sliding window protocol; wherein the BW management system includes a window manager, WM, module, the quality of service, QOS, manager module, and a bandwidth, BW, manager module; wherein controlling by the BW management system the rate at which the sending host is transmitting the data packets for the first individual flow using the sliding window protocol further comprises: generating, by the WM module, bandwidth requests indicating bandwidth amounts for the individual flows in the collection of individual flows associated with the traffic class, a bandwidth amount is based on an estimated rate at which the receiving host is receiving the accepted data packets from the BW management system for one of the individual flows; and sending, to the QOS manager module, the bandwidth requests indicating the bandwidth amounts. generating, by the WM module, bandwidth requests indicating bandwidth amounts for the individual flows in the collection of individual flows associated with the traffic class, a bandwidth amount is based on an estimated rate at which the receiving host is receiving the accepted data packets from the BW management system for one of the individual flows; and sending, to the QOS manager module, the bandwidth requests indicating the bandwidth amounts.