TCP-Friendly Rate Control (TFRC) is a
congestion control
Network congestion in data networking and queueing theory is the reduced quality of service that occurs when a network node or link is carrying more data than it can handle. Typical effects include queueing delay, packet loss or the blocking o ...
mechanism designed for
unicast
Unicast is data transmission from a single sender (red) to a single receiver (green). Other devices on the network (yellow) do not participate in the communication.
In computer networking, unicast is a one-to-one transmission from one point in ...
flows operating in an Internet environment and competing with
TCP
TCP may refer to:
Science and technology
* Transformer coupled plasma
* Tool Center Point, see Robot end effector
Computing
* Transmission Control Protocol, a fundamental Internet standard
* Telephony control protocol, a Bluetooth communication s ...
traffic. The goal is to compete fairly with TCP traffic on medium timescales, but to be much less variable than TCP on short timescales.
TCP congestion control
Transmission Control Protocol (TCP) uses a network congestion-avoidance algorithm that includes various aspects of an additive increase/multiplicative decrease (AIMD) scheme, along with other schemes including slow start and congestion wind ...
works by maintaining a
window
A window is an opening in a wall, door, roof, or vehicle that allows the exchange of light and may also allow the passage of sound and sometimes air. Modern windows are usually glazed or covered in some other transparent or translucent mate ...
of bytes that have not yet been
acknowledged. This window is increased by a known value(α) every
round-trip time if no packets (a collection of bytes traversing the network) have been lost, and is decreased by a known value(β) if packet loss is detected. Thus TCP's window (and hence throughput) is a function of the losses observed in the network and the round-trip time experienced by the flow.
The idea behind TFRC is to measure the loss probability and round-trip time and to use these as the parameters to a model of TCP throughput. The expected throughput from this model is then used to directly drive the transmit rate of a TFRC flow.
RFC 5348 - ''TCP Friendly Rate Control (TFRC): Protocol Specification''
Flow control (data)