IO 多路复用、网络协议与爬虫抓包介绍

文章目录

一、IO多路复用

二、网络数据包处理的细节

三、应用层协议

1.单元信息表示方式

1.1行文本

1.2html

1.3xml

1.4json

1.5protobuf

2.现成协议

2.1HTTP协议

四、代理

五、抓包

六、爬虫


一、IO多路复用

一个线程一时连接管理着多个socket 通过操作系统****全局地同时监听所有socket的IO状态同时等待多个连接 选出其一最早有数据绕阻非顺地一个个执行


二、网络数据包处理的细节

  1. 一个线程在 同一瞬间 只能在执行某一行
  2. 多个客户端发送 多个请求 可以同一时刻到达服务器
  3. 网卡一个个地接收
  4. 内核放进各自socket的接收缓冲区
  5. epoll一次告诉线程 各个socket的IO状况
  6. 线程 ****IO复用选择接收缓冲区有请求数据的socket ,一个个地处理写入它们socket的发送缓冲区
  7. 操作系统有一好就发它通过网卡返回响应

三、应用层协议

1.单元信息表示方式

1.1行文本

分隔符 + 值内容

|--------------------------------|
| 麦当劳, 商家图片3.jpg, 5.0, 10, 快餐\n |


1.2html

成对起始 固定键说明 + 成对<>分隔符 + 值内容

html 复制代码
<table border="1">
  <tr>
    <td>商家名称</td>
    <td>图片</td>
    <td>评分</td>
    <td>销量</td>
    <td>分类</td>
  </tr>
  <tr>
    <td>麦当劳</td>
    <td><img src="商家图片3.jpg" width="80"></td>
    <td>5.0</td>
    <td>10</td>
    <td>快餐</td>
  </tr>
</table>

1.3xml

成对起始 自定义键说明 + 成对<>分隔符 + 值内容

XML 复制代码
<merchant>
    <name>麦当劳</name>
    <image>商家图片3.jpg</image>
    <score>5.0</score>
    <sales>10</sales>
    <category>快餐</category>
</merchant>

1.4json

一个自定义键说明 + 分隔符 + 值内容

javascript 复制代码
{
  "name": "麦当劳",
  "image": "商家图片3.jpg",
  "score": 5.0,
  "sales": 10,
  "category": "快餐"
}

1.5protobuf

二进制值内容


2.现成协议

2.1HTTP协议

约定 在应用层 构成网页的 数据格式

  1. 请求和响应****一一对应
  2. 文本内容html单元信息

四、代理

中间 的代理 参与两者的发接工作


五、抓包

抓包工具可以抓取 网络数据包的各部分


六、爬虫

抓包抓住请求响应 自己仿造发送

相关推荐
2301_809051141 天前
Linux 网络编程 学习笔记
linux·网络·学习
星恒讯工业路由器1 天前
Wi‑Fi DCM 双载波调制解析
网络·信息与通信·wifi7·wifi6·wi‑fi dcm 双载波调制
IP搭子来一个1 天前
爬虫采集大量返回 403、429,到底卡在哪一环?
网络·爬虫·python
之歆1 天前
Day16_JavaScript 轮播图与事件工程实战(下篇)
服务器·开发语言·前端·javascript·网络·性能优化
IT大白鼠1 天前
ICMP协议详解:从基础原理到网络应用实践
网络
云登指纹浏览器1 天前
静态IP和动态IP哪个好:跨境电商代理选型指南
网络·网络协议·tcp/ip
不昀1 天前
VOOHU沃虎:音频变压器的频率响应范围是多少?如何影响音质?
网络
H Journey1 天前
防火墙基本原理、开发部署概述
网络·防火墙
liulilittle1 天前
BBR 状态机
网络·通信
l1t1 天前
DeepSeek总结的使用实体-组件-系统和基于存在性处理进行Python编程12-14
开发语言·网络·python