04 2022 档案
摘要:线程池 线程池的执行顺序是无序的,即从任务队列中取出来任务,但是这个的执行顺序是无法保证这些线程是顺序的; 整个线程池就是基于线程的封装,并抽象两个接口,一个是任务队列,一个是工作线程队列;用到线程池的向任务队列添加任务,并调用一个接口(任务结构中定义),参数的话通过一个void指针进行传递;然后工
阅读全文
摘要:vmware和ssh连接 不同局域网下的IP地址不一样 在使用vmware的时候,如果说不使用ssh连接控制的话,那一般直接选择桥接模式即可,但是如果使用了ssh连接,那么在进行ssh连接的时候就会出现一个问题:由于使用DHCP协议自动分配IP地址导致主机连接到不同局域网下会有不同的IP地址,这样的
阅读全文
摘要:netmap 作用 netmap是个IO框架(并不是一个驱动),可以高效的收发报文;官方数据是10 GigE(千兆网,传输速度高达120 MB/s)测试,发包数据可以达到14.88 Mpps(million packet per second – 百万数据包转发); 一旦netmap开起来,对应网卡
阅读全文
摘要:数据的可靠性传输 ACK机制 -- 保证对端接收数据 重传机制 -- 对端未接收到就重传 序号机制 -- 由于网络本身包会前后到达对端 重排机制 -- 根据需要保证数据的顺序 窗口机制 -- 等待对端可以进行数据接收,针对对端缓冲区可用空间,用于控制发送端发送速度,避免接受方的缓冲不够大导致溢出,同
阅读全文
摘要:errno errno不应该理解为错误原因,应该理解为调用函数失败的原因。 连接: 1.accept返回-1 accept返回-1表示获取tcp全连接队列中的连接的时候失败,会对errno进行设置: errno == EWOULDBLOCK 表示全连接队列为空,这个在阻塞IO中见不到,在非阻塞IO中
阅读全文
摘要:关于HTTP http的模型就是C/S模型,对数据的处理就是客户端发送申请,服务器接收申请进行响应的过程。因此本质上他是个半双工的、且通信只能由客户端发起的一种通信方式; 关于tcp粘包 一般有两种方式:一种是定义分隔符;一种是定义包头,通过包头的长度来进行边界确认。包头的话,一般包头的数据格式直接
阅读全文