3 ms·
I think this is a really good idea. Where TCP will often just multiplicatively decrease sending rate at every dropped packet (which happens 0.5% to 1% of the ti
by jorangreef 12y ago
I think this is a really good idea. Where TCP will often just multiplicatively decrease sending rate at every dropped packet (which happens 0.5% to 1% of the time if the network is normal), PCC does not react immediately but rather feeds this into a learning algorithm, which also learns from doing frequent experiments increasing/decreasing the sending rate and measuring the impact on loss rate, throughput and latency.
Essentially, if I understand it correctly, it's just measuring loss rate, throughput and latency and iteratively adjusting sending rate in response. I think it's very similar to LEDBAT and delay-based congestion control except that it's not just taking delay from bufferbloat into account, but also loss rate and throughput, which makes sense if the goal is to optimize these.
- modong 12y agoThank you! PCC measures these performance metrics and combine them via a utility function describing the data delivery goal, which can be "high throughput, low loss rate, don't care latency" or "high throughput, low latency" as we evaluated in Sec. 4.4 in the full paper