Skip to content
winlin edited this page Feb 20, 2017 · 19 revisions

Introduction

KCP is a fast and reliable ARQ protocol, which can decrease the latency 30%-40%(2/3 in the best situation), by using FEC/ARQ which costs about 10%-20% bandwidth. As KCP consists of a series of application-level algorithms, the under-layer transport is not limited, so user must specify the concrete protocol such as UDP, or choose any protocol preferred; KCP provides API to set the callback to send packets, update the received bytes and update the wall clock. There is no syscalls in KCP, it's well defined library to integrated to any applications.

There are only two source files, the ikcp.h and ikcp.c, which can be easily integrated to your protocol stack. For example, if your application works without ARQ/FEC mechenism, such as a P2P system or RTMP/RTSP/HTTP server, KCP can help you to take advantage of ARQ or FEC by few lines(maybe < 10) of codes.

Content

Clone this wiki locally