-
一个以为发一次就收一次的 TCP 通信程序,在高频发送时把多条消息粘成了一坨、又把一条拆成了两半:一次 TCP 粘包拆包的深度复盘
基于 TCP 自研的设备协议,平时好好的,一到高频上报服务端就疯狂报 JSON 解析失败——有时一次收到两三条消息粘在一起、有时只收到半条。抓包看设备发得一条是一条,根因是把 TCP 当成了消息流:TCP 是面向字节流的,只保证字节有序可靠到达、不维护消息边界,会为效率合并小包或按 MSS 拆大包,send 与 recv 次数根本不对应,而协议里没有任何消息边界设计。本文讲透 TCP 为何必然粘包…- 0
- 0
消息边界
幸运之星正在降临...
点击领取今天的签到奖励!
恭喜!您今天获得了{{mission.data.mission.credit}}积分
我的优惠劵
-
¥优惠劵使用时效:无法使用使用时效:
之前
使用时效:永久有效优惠劵ID:×
没有优惠劵可用!

