网络编程
文章平均质量分 88
miaoqinian
这个作者很懒,什么都没留下…
展开
-
(python)解决TCP下的粘包问题
只有TCP有粘包问题,而UDP永远不会粘包。我们先掌握一个socket收发消息的原理: 服务端可以1kb,1kb地发向客户端送数据,客户端的应用程序可以在缓存当中2kb,2kb地取走数据,当然也可以更多,或都更少。也就是说,应用程序看到的数据是来个整体。或者说是一个流。一条消息有多少字节对应用程序是不可见的,TCP协议是面向流的协议,这就是它容易粘包的问题原因。 所谓粘包问题主要还是因...原创 2018-04-23 17:07:59 · 5239 阅读 · 4 评论 -
(python)基于UDP协议通信的套接字
UDP,用户数据报协议。它是无连接的,面向消息的,提供高效率服务,但该服务并不保证数据传输的可靠性,数据有可能在传输的过程中丢失或出现数据重复,且无法保证数据顺序的接收。它不会使用合并优化算法,由于UDP支持的一对多的模式,所以接收端的套接字缓冲区(skbuff)采用了链式结构记录每一个到达的UDP包,在每个UDP包中就有了消息头(消息来源地址,端口等信息),这样,对于接收来说,容易进行分区处理。...原创 2018-04-23 18:40:00 · 419 阅读 · 0 评论