A method for optimizing data transmission in a data transfer system is provided
where the data transfer system includes a transmitting device that transmits data
to a receiving device through a switch. The method includes monitoring data transfer
congestion in a buffer of the switch. The monitoring includes marking the data
when data transfer congestion is detected. If data transfer congestion is detected,
the method includes marking an acknowledgement (ACK) data after the marked data
is received by the receiving device. The method further includes transmitting the
ACK data from the receiving device to the transmitting device. The method also
includes adjusting a data transfer rate between the transmitting device and the
receiving device based on data transfer congestion. Monitoring data transfer congestion
includes marking the data according to a probability corresponding to a percentage
of time that the buffer is full.