打开一个网站会发生什么
- url 解析
判断一下你的输入是否是合理的,并根据你的操作完成一些字符编码的操作 - DNS
判断一下浏览器是否有缓存,看一下操作是否有对应的缓存,可能看一下路由器是否缓存 - TCP连接
- 应用层 发送http请求
- 传输层 传输报文 三次握手操作
- 网络层 将数据进行打包,并寻找传输路线
- 链路层 用于发送数据,向本网络的所有机器发送
- 服务器处理请求
- 浏览器接受响应
- 页面渲染
参考链接
android投屏工具下载地址
https://github.com/Genymobile/scrcpy
charles模拟弱网
bandwidth —— 带宽,即上行、下行数据传输速度
utilisation —— 带宽可用率,大部分modern是100%
round-trip latency —— 第一个请求的时延,单位是ms。
MTU —— 最大传输单元,即TCP包的最大size,可以更真实模拟TCP层,每次传输的分包情况。
Releability —— 指连接的可靠性。这里指的是10kb的可靠率。用于模拟网络不稳定。
Stability —— 连接稳定性,也会影响带宽可用性。用于模拟移动网络,移动网络连接一般不可靠。
遗留问题
- 模拟器配置证书以后,还是会提示网站不可信,是否前往
经过对数据的抓包,发现模拟器在访问baidu时,其中的某个jpeg图片内容返回的host是bdy,但charles证书里边的host是baidu,导致证书和网站不匹配。造成此现象的原因可能是手机自带的浏览器版本过低,建议大家下载一个三方的浏览器,比如chrome浏览器,然后在chrome浏览器去安装证书。按此步骤完成后,页面访问是畅通无阻的,不会再出现网站不可信的提示 - 内网如何测试跨地域/时域操作