KCP is a fast and reliable protocol that can achieve the transmission effect of a reduction of the average latency by 30% to 40% and reduction of the maximum delay by a factor of three, at the cost of 10% to 20% more bandwidth wasted than TCP. It is implemented by using the pure algorithm, and is not responsible for the sending and receiving of the underlying protocol (such as UDP), requiring the users to define their own transmission mode for the underlying data packet, and provide it to KCP in the way of callback. Even the clock needs to be passed in from the outside, without any internal system calls. The entire protocol has only two source files of ikcp.h, ikcp.c, which can be easily integrated into the user's own protocol stack. You may have implement a P2P, or a UDP-based protocol, but are lack of a set of perfect ARQ reliable protocol implementation, then by simply copying the two files to the existing project, and writing a couple of lines of code, you can use it.

Features

  • KCP has both normal and fast modes, achieving the result of flow rate increase
  • KCP normal mode uses the same fair concession rules as TCP
  • KCP is selective in retransmission, and only re-transmits the data packets that are really lost
  • In KCP protocol, all packets have UNA information except for a single ACK packet
  • The protocol default mode is a standard ARQ, and various acceleration switches can be enabled by configuration

Project Samples

Project Activity

See All Activity >

Categories

Data Formats

License

MIT License

Follow KCP

KCP Web Site

Other Useful Business Software
Earn up to 16% annual interest with Nexo. Icon
Earn up to 16% annual interest with Nexo.

Access competitive interest rates on your digital assets.

Generate interest, borrow against your crypto, and trade a range of cryptocurrencies — all in one platform. Geographic restrictions, eligibility, and terms apply.
Get started with Nexo.
Rate This Project
Login To Rate This Project

User Reviews

Be the first to post a review of KCP!

Additional Project Details

Operating Systems

Linux, Mac, Windows

Programming Language

C

Related Categories

C Data Formats Software

Registered

2021-06-14