大家在使用SOCKET通信编程的时候,一般会采用UDP和TCP两种方式;TCP因为它没有包的概念,它只有流的概念,并且因为发送或接收缓冲区大小的设置问题,会产生粘包及半包的现象。场景:服务端向连续发送三个“HelloWorld”(三次消息无间隔),那么客户端接收到的情况会有以下三种:1)HelloW...
分类:
其他好文 时间:
2014-05-28 13:25:54
阅读次数:
259
使用TCP流式套接字,TCP粘包是指发送方发送的若干包数据到接收方接
收时粘成一包,从接收缓冲区看,后一包数据的头紧接着前一包数据的尾。
出现粘包现象的原因是多方面的,它既可能由发送方造成,也可能由接
收方造成。发送方引起的粘包是由TCP协议本身造成的,TCP为提高传输效率,
发送方往往要收集到足够多的数据后才发送一包数据。若连续几次发送的数
据都很少,通常TCP会根据优化算...
分类:
其他好文 时间:
2014-05-11 22:04:21
阅读次数:
339