5 ms·
KCP: A Fast and Reliable ARQ Protocol
- rektide 6y agoARQ: Automatic Repeat Request[1]. This is an article about a TCP competitor boasting lower latency. [1] https://en.wikipedia.org/wiki/Automatic_repeat_request https://en.wikipedia.org/wiki/Automatic_repeat_request
- kenniskrag 6y agoand this an implementation: https://github.com/nicosta1132/atp-go https://github.com/nicosta1132/atp-go
- eps 6y agoBeating TCP is not hard. But doing it without starving TCP sessions to death is. The only way to co-exist gracefully with TCP is to use a compatible backoff mechanism. Anything more aggressive will basically steal all of the bandwidth from TCP and that's it.
- miohtama 6y agoIs the competition on your local boxes (computer, router) or in the network backbone and middleware boxes? Seems like KCP is aimed for real-time gaming and this case it does not matter if your own other connections (browser, autoupdater) suffer at the same time.
- alaties 6y agoIt'd be wherever in the network path has the most contention, all else being equal. For a home environment, this would most likely be at the Internet Gateway level, since home networks usually operate at >100Mbps transfer rates between nodes, but to the internet have <=100Mbps. That all being said, contention at the gateway level like this would be assuming that KCP and TCP are both being used for, say, large file downloads. If KCP is limited to use for sharing game state data for a game like Counter Strike, then the likelihood that KCP would consume all available bandwidth within a given time window is low, since the data rate is measured in hundreds of Kbps, not Mbps.
- ysfgaming 6y agoIt's worth mentioning that at least a few popular and successful games, such as Genshin Impact, use this protocol. The aforementioned is actually the only reason I knew it existed before now.