netty LengthFieldBasedFrameDecoder 源码分析

LengthFieldBasedFrameDecoder解码器自定义长度解决TCP粘包黏包问题。所以又称为: 自定义长度解码器

为什么出现 粘包问题

发送方

TCP协议是一个流连接,TCP默认开启Nagle算法,1:只有上一帧数据确认,才会发送下一帧。2:收集多个小分组,再确认回复到来时一块发送。

接收方

接受的时候采用缓存的方式,自然出现前一个数据包的尾和后一个收据包的头粘到一起。

使用LengthFieldBasedFrameDecoder 解决粘包拆包

netty LengthFieldBasedFrameDecoder 源码分析

LengthFieldBasedFrameDecoder 解码方法

netty LengthFieldBasedFrameDecoder 源码分析

自定义的解码器

netty LengthFieldBasedFrameDecoder 源码分析
netty LengthFieldBasedFrameDecoder 源码分析