没有合适的资源?快使用搜索试试~ 我知道了~
百度地图毕业设计源码-netty-master:网络大师
共30个文件
java:14个
png:10个
properties:1个
需积分: 15 0 下载量 172 浏览量
2021-06-06
07:00:45
上传
评论
收藏 930KB ZIP 举报
温馨提示
百度地图毕业设计源码 Netty权威指南 TCP粘包/拆包 TCP是个流协议,所谓流,就是没有界限的一串数据。大家可以想想河流里的流水,它们是连成一片的,其间并没有分界线。TCP底层并不了解上层业务数据的具体含义,它会根据TCP缓冲区的实际情况进行包的划分,所以在业务上认为,一个完整的包可能会被TCP拆分成多个包进行发送,也有可能把多个小的包封装成一个大的数据包发送,这就是所谓的TCP的拆包和粘包问题。 TCP粘包和拆包发生的原因 问题产生的原因主要有三个,分别如下: 应用程序write写入的字节大小大于套接字发送缓冲区大小 进行MSS大小的TCP分段 以太网帧payload大于MTU进行IP分片 粘包问题的解决策略 由于底层的TCP无法理解上层的业务数据,所以在底层是无法保证数据包不被拆分和重组的,这个问题只能通过上层的应用层协议栈设计来解决,根据业界的主流协议的解决方案,可以归纳如下: 消息定长,例如每个报文的大小为固定长度200字节,如果不够,空位补空格; 在包尾增加回车换行符进行分割,例如FTP协议; 将消息分为消息头和消息体,消息头中包含表示消息总长度(或者消息体长度)的字段
资源推荐
资源详情
资源评论
收起资源包目录
netty-master-master.zip (30个子文件)
netty-master-master
src
test
java
com
xidian
netty
TimeServerTest.java 670B
main
resources
images
cause.png 80KB
netty_structure.png 265KB
reactor_ms_model.png 70KB
netty_nioeventloop.png 28KB
future_status.png 70KB
netty_character.png 82KB
netty_t_model.png 98KB
reactor_st_model.png 37KB
reactor_mt_model.png 42KB
netty_server_seq.png 130KB
log4j.properties 756B
java
com
xidian
netty
decoder
fixed
server
EchoServer.java 3KB
EchoServerHandler.java 649B
delimiter
client
EchoClient.java 2KB
EchoClientHandler.java 1KB
server
EchoServer.java 3KB
EchoServerHandler.java 934B
app
time
client
TimeClient.java 2KB
TimeClientHandler.java 1KB
server
TimeServerHandler.java 1KB
ChildChannelHandler.java 716B
TimeServer.java 2KB
websocket
client
websocket.html 2KB
server
WebSocketServer.java 3KB
WebSocketServerHandler.java 4KB
LICENSE 1KB
README.md 28KB
pom.xml 1KB
.gitignore 923B
共 30 条
- 1
资源评论
weixin_38558246
- 粉丝: 5
- 资源: 956
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功