小白问一下TCP/IP发送,接收机制的问题

烟袅许伊 2016-10-27 11:04:15
客户端,调用send,长度假如说是1MB。
服务器,调用while(true)recv,那recv会返回多次,还是只返回一次1MB的数据?

为什么?

还是说,TCP协议也是需要数据自行分片的?
...全文
254 2 打赏 收藏 转发到动态 举报
写回复
用AI写文章
2 条回复
切换为时间正序
请发表友善的回复…
发表回复
wfcdream 2016-11-11
  • 打赏
  • 举报
回复
首先,tcp发送的数据不可能一下子是1M的,tcp也会将数据分包,一个包一个包发送,只是tcp协议比udp的好处是自己维护包顺序,也就是你不用关心这一个个包到了接收端怎么再还原成那1M数据,知道发送的细节那你就应该明白recv返回为什么要用while了,就是不一定能够一次就将数据返回,可能会多次,跟网络状况和硬件都有关系。
烟袅许伊 2016-11-08
  • 打赏
  • 举报
回复
没人回答么?求解答啊。。。

1,738

社区成员

发帖
与我相关
我的任务
社区描述
网络协议与配置相关内容讨论专区
网络协议网络安全tcp/ip 技术论坛(原bbs)
社区管理员
  • 网络协议与配置社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧