默认
发表评论 9
想开发IM:买成品怕坑?租第3方怕贵?找开源自已撸?尽量别走弯路了... 找站长给点建议
求教使用tcp传输10G大文件的分包疑问
阅读(22597) | 评论(9 收藏 淘帖
求助大家:使用tcp传输大文件,比如有10G这样的文件,那底层系统自动把文件分包每个包编号是一次性全部分好吗,比如一次性把10G的文件分成一万个包,然后每个包的SEQ马上分配好,之后再陆续发送到服务端,是这样的吗?

即时通讯网 - 即时通讯开发者社区! 来源: - 即时通讯开发者社区!

标签:求助 IM开发
上一篇:求教一个问题,用户在直播间送礼物下一篇:IM群消息投递可靠性的技术方案探讨(欢迎讨论)
推荐方案
评论 9
引用:JackJiang 发表于 2023-06-08 21:16
要传输这种大文件,如果有分包的话,那也是你自已定义的分包逻辑,底层哪管你怎么分包啊

如果我不做分包,直接往传输层发送,系统是否会自动分(不考虑应用层自己定义数据大小和边界的情况)
引用:JackJiang 发表于 2023-06-09 11:21
tcp对于应用层来说,它就像一条自来水管,它只有起点和终点,没有中间过程,你让它开始它就开始,让它停 ...

感谢大佬回复,我指的分包是tcp一个包有1400字节的限制,无论上层多大数据,它每次发送都有大小限制,所以tcp会自动给我们分包,我指的是这个分包哈,对这个有疑虑
引用:JackJiang 发表于 2023-06-13 22:44
这就不是你要考虑的,这是协议栈底层的算法

大佬,我还有个疑惑,如果我们一次性应用层send() 10g大小的文件,那么传输层tcp会自动帮我们拆包,然后一次性给所有包的seq序号都分配好吗?我主要纠结这个序号是一个tcp连接当中会不断递增还是说一个回环之后会有序号重复?
引用:黄小贱 发表于 2023-06-14 16:47
看了下评论和题目,我感觉楼主可以把问题拆开看。
角度1:tcp的拆包,这个其实不是tcp特有的,我的个人理解 ...

嗯,我可能不知道怎么描述清楚我要问的问题
打赏楼主 ×
使用微信打赏! 使用支付宝打赏!

返回顶部