摘要: 一、struct 1、简述 我们可以借助一个模块,这个模块可以把要发送的数据长度转换成固定长度的字节。这样客户端每次接收消息之前只要先接受这个固定长度字节的内容看一看接下来要接收的信息大小,那么最终接受的数据只要达到这个值就停止,就能刚好不多不少的接收完整的数据了。 该模块可以把一个类型,如数字,转 阅读全文
posted @ 2018-10-24 21:30 qi.hu 阅读(314) 评论(0) 推荐(0) 编辑
摘要: 一、socketserver socketserver可以实现和多个客户端通信。它是在socket的基础上进行了一层封装,也就是说底层还是调用的socket,在py2.7里面叫做SocketServer也就是大写了两个S,在py3里面就小写了。 1 import socketserver #1、引入 阅读全文
posted @ 2018-10-24 21:27 qi.hu 阅读(183) 评论(0) 推荐(0) 编辑
摘要: 一、黏包成因 TCP(transport control protocol,传输控制协议)是面向连接的,面向流的,提供高可靠性服务。 收发两端(客户端和服务器端)都要有一一成对的socket,因此,发送端为了将多个发往接收端的包,更有效的发到对方,使用了优化方法(Nagle算法),将多次间隔较小且数 阅读全文
posted @ 2018-10-24 21:25 qi.hu 阅读(419) 评论(0) 推荐(0) 编辑
摘要: 一、传输层 1、定义 IP首部有一个协议字段,用来标识网络层(IP)的上一层所采用的是哪一种传输层协议。根据这个字段的协议号,就可以识别IP传输的数据部分究竟是TCP的内容还是UDP的内容。 同样,传输层的TCP( 6 )和UDP( 17 ),为了识别自己所传输的数据部分究竟应该发给哪个应用,也设定 阅读全文
posted @ 2018-10-24 21:19 qi.hu 阅读(194) 评论(0) 推荐(0) 编辑