0%

java | 粘包 & 半包分析

从各个层面分析两种现象产生的原因。

粘包

  • 应用层: ByteBuf 设置太大,netty 默认 1024
  • 滑动窗口:滑动窗口设置过大
  • Nagle 算法

半包

  • 应用层: ByteBuf 设置太小
  • 滑动窗口:滑动窗口滑动过程中,正好切分数据
  • 超过 MSS 限制
    • 链路层,对数据包的大小有限制
    • 环回地址的大小远大于网络层的大小
请我喝杯咖啡吧~