tcp粘包

tcp里面的粘包和拆包一般发生在什么情况下,或者说什么场景会导致粘包拆包?如何避免?#笔试题目#
全部评论
tcp面向字节流的,本身并不知道哪里是一段消息的开头和结尾 同时发送端可能将多个过小的包合并到一起发送,TCP默认是开了nagle算法的,或者将过大的包拆分为多个进行发送。 所以接收端为了从一段连续的字节流中,得到一段完整的消息,需要通过一些标识符来进行划分。 比如通过换行符,通过固定的协议头,通过固定的偏移量,或者引入带这种功能的编解码协议等等。
点赞 回复 分享
发布于 2019-08-06 07:12
nodelay
点赞 回复 分享
发布于 2019-08-06 06:53
对socket缓冲期读写不同步会发生黏包吧,要设计应用层协议保证数据完整性。
点赞 回复 分享
发布于 2019-08-06 06:46

相关推荐

ldf李鑫:不说公司名祝你以后天天遇到这样的公司
点赞 评论 收藏
分享
评论
点赞
10
分享

创作者周榜

更多
牛客网
牛客企业服务