随笔分类 - 网络编程
摘要:粘包 粘包是指两次输出结果粘到一起,它的发生主要是因为socket缓冲区导致的,粘包只在tcp中产生,不在UDP产生 粘包的解决方法: 使用struct模块,先报头长度进行打包发给客户端,客户端收到之后先解包报头长度,再接收真实的数据 例子: 服务端: #!/usr/bin/env python3 # -*- coding:utf-8 -*- import socket import ...
阅读全文
摘要:socket Socket是应用层与TCP/IP协议族通信的中间软件抽象层,它是一组接口。在设计模式中,Socket其实就是一个门面模式,它把复杂的TCP/IP协议族隐藏在Socket接口后面,对用户来说,一组简单的接口就是全部! Socket套接字的使用方法: socket 实例类(8-10分钟) socket.socket(family=AF_INET, type=SOCK_STR...
阅读全文
摘要:网络基础 什么是 C/S架构? C指的是client(客户端软件),S指的是Server(服务端软件) 客户端发送一条消息给服务端的流程: 1、客户端软件产生数据,存放于客户端软件的内存中,然后调用接口将自己内存中的数据发送/拷贝给操作系统内存 2、客户端操作系统收到数据后,按照客户端软件指定的规则
阅读全文