Updated EN_KCP Feature (markdown)

winlin 2017-02-16 11:17:48 +08:00
parent 10ead5e832
commit cc7b34e9a9

@ -22,6 +22,6 @@ TCP is design to transmit as most data as possible over internet, but maybe not
ARQ(Automatic Repeat reQuest) includes UNA and ACK responding mode. UNA specifies the last completely series(group) of received packet number, while ACK specifies the received packet number; when use UNA, all packets will retransmit the whole group when any packet dropped; when use ACK, it cost a lot when packets dropped. Other protocols use either UNA or ARQ, but KCP use a mix model of UNA and ACK, each packet contains UNA and there is also ACK packets.
#### 非退让流控:
#### Efficient Flow Control
KCP正常模式同TCP一样使用公平退让法则即发送窗口大小由发送缓存大小、接收端剩余接收缓存大小、丢包退让及慢启动这四要素决定。但传送及时性要求很高的小数据时可选择通过配置跳过后两步仅用前两项来控制发送频率。以牺牲部分公平性及带宽利用率之代价换取了开着BT都能流畅传输的效果。
KCP use the same algorithm as TCP for Flow Control, the send window size depends on: send buffer size, the receive peer buffer size, packets dropping rate and slow startup. User can config KCP to only use the send and receive buffer size, not use the last two factors, for fast transmission for very small packet but require realtime delivery. It's impressive to fast transmit in bad networking with packets dropped.