Transmission control in TCP

There are two main components of transmission control. These tackle two distinct problems that a connection may have:

  • Flow control in TCP: Allows the receiver to control how much data gets sent to it in one go, and
  • Congestion control in TCP: Allows probing of the network to guarantee maximum network utilisation without disruption to service.

These both ultimately effect the number of unacknowledged messages allowed to be sent in ARQ. This will be the minimum of the two window sizes provided by the above controls.

UDP lets the Application layer hand transmission control. Whereas TCP sees this a a widely shared feature that it can abstract away.