tcp三次握手四次挥手图解1、tcp三次握手第一次握手:建立连接时,客户端发送SYN到服务器,并进入SYN_SENT状态第二次握手:服务器收到请求后,回送SYN+ACK信令到客户端,此时服务器进入SYN_RECV状态;第三次握手:客户端收到SYN+ACK包,向服务器发送确认ACK包,客户端进入ESTABLISHED状态,服务器收到请求后也进入ESTABLISHED状态,完成三次握手,此时TCP连接
分类:
其他好文 时间:
2018-05-02 18:10:28
阅读次数:
202
1 fd_set rset; 2 FD_ZERO(&rset); 3 4 int nready; 5 int maxfd; 6 int fd_stdin = fileno(stdin); 7 if(fd_stdin > sock) 8 { 9 maxfd = fd_stdin; 10 } 11 el ...
分类:
其他好文 时间:
2018-04-30 22:07:18
阅读次数:
169
yield具有接受和返还值两种功能,在上面的程序中,yield可以接受来自g.send(input())的数据,并将接受得到的数据赋值给recv,同时yield也会返回yield后的数据,例如上程序中recv=yield 'Hi' 中返还Hi,类似return的功能。 程序执行过程中,遇到含有yie ...
分类:
其他好文 时间:
2018-04-30 13:31:20
阅读次数:
107
import socket def handle_request(client): data = client.recv(1024) client.send("HTTP/1.1 200 OK\r\n\r\n") client.send("Hello word") def main(): sockob... ...
分类:
Web程序 时间:
2018-04-28 10:43:32
阅读次数:
187
一、多进程 为什么用多进程? 由于GIL的存在,python中的多线程其实并不是真正的多线程,如果想要充分地使用多核CPU的资源,在python中大部分情况需要使用多进程。 多进程为什么消耗大? 之前说是因为切换,但这只是表面原因,根本原因是每开一个进程就要从父进程copy一份 multiproce ...
分类:
编程语言 时间:
2018-04-27 22:54:11
阅读次数:
210
1.TCP 客户端每次和服务器通信之前,必须建立链接,所以一个链接只能维持一次通信 2.让链接过程中可能产生阻塞的部分不要在一个线程/进程中 TCP 客户端实现流程: 创建 socket 连接服务器 connect() 向服务器发送数据 send() 接收服务器返回的数据 recv() 关闭连接 c... ...
分类:
其他好文 时间:
2018-04-27 02:12:19
阅读次数:
122
1 下面是在网上找到的资料,先非常的感谢。 用setsockopt()来控制recv()与send()的超时 在send(),recv()过程中有时由于网络状况等原因,收发不能预期进行,而设置收发超时控制: 在Linux下需要注意的是时间的控制结构是struct timeval而并不是某一整型数,i ...
分类:
系统相关 时间:
2018-04-24 15:32:15
阅读次数:
194
转自https://blog.csdn.net/rebelqsp/article/details/22109925 Python 提供了两个基本的 socket 模块。 第一个是 Socket,它提供了标准的 BSD Sockets API。 第二个是 SocketServer, 它提供了服务器中心 ...
分类:
编程语言 时间:
2018-04-22 14:46:24
阅读次数:
174
一、什么事串口? 大家常说串口,其实串口有很多种UART,SPI,IIC都是串口,一般大家口中的串口就是UART(Universal Asynchronous Receiver/Transmitter),STM32上集成了UART的控制器,所以我们通过简单的配置就可以实现UART通信的功能。当然光有 ...
分类:
其他好文 时间:
2018-04-21 19:50:30
阅读次数:
269