bittorrent/libutp — pull request #60 by arvidn (2013-09-16 21:36:31+00:00)
Title: nicer slow-start

make slow-start less aggressive, especially when we're not saturating the link. This mitigates issues early on when we may over shoot the cwnd significantly.

In bittorrent, typically there is about 2 or so round-trips that are just hand-shaking. There's no bulk transfer. With the previous logic though, we would still double the cwnd each RTT even though we never bumped up into cwnd, causing us to overshoot the capacity of the link significantly once we do start the bulk transfer. We would overshoot so much that we would almost always end up timing out, then restart from scratch and get into the stable state.

This mitigates that hick-up.