Folks,
Nathan Jay et al assert that there is no one-size-fits-all TCP congestion control algorithm. Different apps have different goals for their service lifetimes: Streaming video apps are sensitive to bandwidth fluctuations, voice chats desire low latency and bulk transfers only care about completion time. Varying link characteristics add another dimension to a congestion control algorithm: hardwired assumptions about the cause of packet loss or measured latency inflation can lead to reduced application performance.
PCC-Vivace was created to address these issues. PCC-Vivace congestion control algorithm provides an explicit utility function that allows developers to provide weights to different performance metrics like throughput, latency, packet loss and jitter. PCC-Vivace's online learning framework also allows it to adapt to a variety of network conditions, consistently delivering high performance.
The talk will discuss the challenges of implementing PCC-Vivace in the Linux kernel. Nathan will present initial results comparing the performance of Vivace with other existing Linux congestion controllers(BBR etc). The talk will also demonstrate the implementation's flexibility by creating and testing a variety of utility functions.
More info at: https://www.netdevconf.org/0x12/session.html?a-pcc-vivace-kernel-module-for-...
cheers, jamal