package
1.0.1
Repository: https://github.com/qixi7/xengine_core.git
Documentation: pkg.go.dev

# README

rdp

        RDP - Redundant Data Protocol
一、概述
	冗余传输协议。
	1).基于UDP. 算法实现
	2).通过冗余包实现可靠传输
	3).协议层摒弃定时器以更大提升性能, 依赖外部定时器
	4).更短的RTO. (TCP->指数增长, KCP->1.5倍增长, RDP弃用RTO)
	5).Ack+Select Ack更快确认机制
	6).支持链路探路探测控制冗余包粒度
	7).支持分包(传输大包, 但不推荐传输大包)

二、缺点
	1).为了更快到达对端, 没有实现拥塞控制, 因此使用在小包传输场景。比如帧同步

三、TODO.
	1).根据探测结果动态调整冗余个数

四、协议序
	ACK包: [协议头(1字节) + 包类型(1字节) + ack(4字节) + ackBit(4字节)]
	数据包: [协议头(1字节) + 包类型(1字节) + seq(4字节) + bodySize(2字节) + 是否子包(1字节) + body]
	其他包: [协议头(1字节) + 包类型(1字节)]