免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
123
最近访问板块 发新帖
楼主: lz_fine
打印 上一主题 下一主题

TCP分包问题(粘包) [复制链接]

论坛徽章:
0
21 [报告]
发表于 2009-07-28 10:40 |只看该作者
如果你的包是固定大小的,那你就可以让接受方设定自己的窗口大小为包的大小来防止发送方合并包,你也可以设置发送方的缓存大小为包的大小。
如果包的大小不固定,当你从包头读到该包的大小后,然后判断接收到的数据包的大小是否满足,如果不满足,你就发送一个重复的ACK过去或等待超时,让发送方再次发送。如果满足,当接受到的数据包大小刚好为你期望的大小,则什么都不做,如果大于的话,你就可以让接受方发ACK只确认到你期望包的大小位置。
方法还有一些,你完全可以通过设置接受方来控制发送方来发送数据。

论坛徽章:
1
天秤座
日期:2014-04-27 07:42:20
22 [报告]
发表于 2009-07-28 10:50 |只看该作者
设定mtu不久能自动分片了么
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP