Imagine having an ongoing team or a group video call, only to realize that there is buffering in the video or the audio has some frustrating pauses. The frustrating pauses in audio and buffering in video are often caused by network traffic congestion. This occurs whenever the transmitted audio and video data exceed the network's capacity. To overcome these problems, network congestion prevention architectures like Transport Wide Congestion Control (TWCC) can be employed.
What is TWCC?
TWCC is a sender-side WebRTC approach and bandwidth estimation technique for preventing network congestion that occurs when the network receives more transported data than it can carry. TWCC takes place between a sender and a receiver. The role of the sender is to analyze the information it gets from a receiver and propose available bandwidth. The receiver watches the network for problems such as packet losses and delivery times and informs the sender.
How does TWCC Work?
In TWCC, the receiver informs the sender about the received packets. The sender uses the information to calculate the bitrate, attaches a timestamp to the packets, and transports them to the receiver based on the network condition. In this case, the sender decides whether to reduce or increase the bitrate to ensure smooth data transmission. The fundamental operating principle of TWCC is demonstrated in the diagram below.
Benefits of TWCC
- Removal or audio/video buffering: Since TWCC adjusts the bitrate dynamically, it helps to prevent the occurrence of buffering and choppy audio.
- Accuracy: Compared to REMB, in TWCC, the sender obtains more detailed network information than REMB. The detailed information helps to ensure more accurate congestion control.
Disadvantages of TWCC
- Architecture complexity: The architecture of this traffic control mechanism is more complex than REMB.Â
- Limited device support: The decoding of TWCC does not support all platforms.
Frequently Asked Questions
IS TWCC a requirement for WebRTC?
In WebRTC, TWCC is optional and it is not as popular as REMB.
How does TWCC differ from REMB?
They are all procedures used for preventing congestion in a network. REMB is a receiver-side WebRTC technology, while TWCC is a sender-side congestion control mechanism.