netty LengthFieldBasedFrameDecoder 源碼分析

LengthFieldBasedFrameDecoder解碼器自定義長度解決TCP粘包黏包問題。所以又稱爲: 自定義長度解碼器

爲什麼出現 粘包問題

發送方

TCP協議是一個流連接,TCP默認開啓Nagle算法,1:只有上一幀數據確認,纔會發送下一幀。2:收集多個小分組,再確認回覆到來時一塊發送。

接收方

接受的時候採用緩存的方式,自然出現前一個數據包的尾和後一個收據包的頭粘到一起。

使用LengthFieldBasedFrameDecoder 解決粘包拆包

在這裏插入圖片描述

LengthFieldBasedFrameDecoder 解碼方法

在這裏插入圖片描述

自定義的解碼器

在這裏插入圖片描述
在這裏插入圖片描述

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章