粘包现象

Posted kxuan

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了粘包现象相关的知识,希望对你有一定的参考价值。

socket的粘包为在数据量小与时间间隔短的情况下 优化算法使数据减少IO以达到提高效率,减少网络IO的一种方式

socket下的send与recv并不是一对一的  可以一对多 多对一即可  

粘包主要是接收端不知所接收的大小(即不知数据的开头与结尾)  只要明确数据的大小 即可解决粘包导致的缺点 

一般可以使用struck来达到效果

 

send  : 只需要copy data     send不是直接操作网卡的   本质上是数据由用户程序copy到操作系统缓存    操作系统来调用网卡传输     

recv: 1. wait data 2. copy data  时间较长   

 

以上是关于粘包现象的主要内容,如果未能解决你的问题,请参考以下文章

什么是粘包? socket 中造成粘包的原因是什么? 哪些情况会发生粘包现象?

python3全栈开发-什么是粘包粘包现象如何解决粘包

粘包现象

粘包现象

粘包现象

网络编程-之------粘包现象