一、KCP简介
KCP通信是一种利在udp通信的基础上实现的一套模拟Tcp通信的协议。
KCP是一个快速可靠协议,能以比 TCP浪费10%-20%的带宽的代价,换取平均延迟降低 30%-40%,且最大延迟降低三倍的传输效果的一种实时性强的协议。
二、开发基础与环境
本例子是在skywind3000/kcp的基础上作了一个图形测试工具。
skywind3000/kcp的源码在如下链接:
https://github.com/skywind3000/kcp
本例开发环境:Qt + QtCreater使用C++开发。由于Qt的跨平台性,在Qt所支持的平台上本图形Kcp测试工具都可以成功编译运行。(测试过:MacOs和Windows)。
三、软件架构设计
本工具支持开启服务端和客户端,同时在每个端又支持原始UDP通信、Kcp默认、Kcp普通、Kcp快速模式。
- 服务端和客户端如下图所示: