TCP传输模块解决丢包粘包问题

易语言 2020-04-10 16:14:02

TCP传输模块解决丢包粘包问题

读取到至少四个字节后 把这四个字节组成一个整数 继续读取该整数长度的字节

读取完整后再传递给校验程序处理丢包

丢包的思路是手动添加数据序号 每次重新客户端和服务器端连接后序号重置

发送有两个关联的列队 一个存发送的数据 一个存发送数据的序号

发送后不立即清除缓存 等待接收方接收后 返回一个接收的序号 再再两个列表中删除
接收方收到的序号和当前存储的序号如果差距大于一 先缓存 不返回给调用程序 再发送指令给发送方 要他重发。

而且对于我自定义的类型 用等号(=)左边被赋值的是数值而并不是这个对象本身 (我自己测试过的 有点点不明白 但是确实是这样子的 )