This flow control mechanism forces the sender after transmitting a data frame to stop and wait until the acknowledgement of the data-frame sent is received. Two types of mechanisms can be deployed to control the flow: What if the speed (hardware/software) of the sender or receiver differs? If sender is sending too fast the receiver may be overloaded, (swamped) and data may be lost. That is, sender sends at a speed on which the receiver can process and accept the data.
When a data frame (Layer-2 data) is sent from one host to another over a single medium, it is required that the sender and receiver should work at the same speed. Data-link layer is responsible for implementation of point-to-point flow and error control mechanism.