1. A method of monitoring transmission of data in a network, comprising: receiving data packets for one or more data flows by at least one of a plurality of network switches; sampling queue data in each of the plurality of network switches receiving the one or more data packets, the sampled queue data taken from at least one queue attached to a switch port to which the one or more data packets have been forwarded, wherein the sampling of queue data from the switch port is performed by the network switch that has the switch port; encapsulating, by the network switch that performs the sampling, the sampled queue data in a control packet configured for communication between the plurality of network switches and a logically centralized network controller, the control packet configured to be used by the network controller to control switch configuration and routing; and transmitting the control packet including the sampled queue data by each network switch to the network controller connected to the plurality of switches, the network controller configured to control the plurality of network switches, the network controller configured to determine whether a congestion, unfairness or Service Level Agreement (SLA) infringement condition exists in one or more switches based on the sampled queue data, the network controller configured to select a time period during which the congestion, unfairness or SLA infringement condition was detected, aggregate all of the sampled queue data that was sampled during the time period, and send a control message to all data flow sources responsible for the congestion, unfairness or SLA infringement condition, the control message setting a globally fair transmission rate for all data flows for which the congestion, unfairness or SLA condition was detected, the control message sent to each of the data flow sources so that all of the data flow sources responsible for the congestion, unfairness or SLA infringement condition receive the control message within a time interval that is smaller than the time period.