摘要: 什么是shadow DOM? 将一组隐藏的、独立的DOM结构附加到某个元素上。比如在video元素的shadow DOM上,就隐藏了许多对视频控制的按钮和控制器等。 shadow host:一个常规的DOM节点,shadow DOM 会被附加到这个节点上 shadow tree:shadow DOM 阅读全文
posted @ 2020-04-20 20:55 ashen1999 阅读(334) 评论(0) 推荐(0) 编辑
摘要: 当浏览器请求返回一个文档后,需要对其进行多个步骤的处理,才能正确渲染到页面上 HTML解析 解码:首先将二进制数据根据文件指定编码方式转换为字符串,也就是html代码 词法解析:将字符串分割成为一个个标签 语法解析:根据html代码规则,将标签进行解析,理解每个标签的含义 构建dom树:将之前生成的 阅读全文
posted @ 2020-04-20 20:06 ashen1999 阅读(140) 评论(0) 推荐(0) 编辑
摘要: 浏览器基础结构主要包含七个部分: 用户界面:用户所看到的内容和与之交互的功能组件,比如按钮、表单等等 浏览器引擎:负责控制和管理下一级的渲染引擎 渲染引擎:解析用户请求的内容并返回 网络:负责处理网关相关事宜,比如http服务 UI后端:负责绘制一些提示框等UI组件,底层使用的是操作系统的用户接口 阅读全文
posted @ 2020-04-20 19:57 ashen1999 阅读(577) 评论(0) 推荐(0) 编辑
摘要: 什么是粘包和拆包? 当发送包同时发送两个数据包时,接收包只收到了一个数据包,其中包含了两个数据包的信息,这种现象为粘包。这种情况下,接收方无法分清两个数据包的界限,很难处理 当发送包同时发送两个数据包时,接收方也收到了两个数据包。但是这两个数据包,一个是不完整的,一个是多出来一块,这种现象为拆包。 阅读全文
posted @ 2020-04-20 17:24 ashen1999 阅读(154) 评论(0) 推荐(0) 编辑
摘要: 客户端建立连接和关闭连接的状态流程 CLOSED --> SYN_SEND --> ESTABLISHED --> FIN_WAIT_1 --> FIN_WAIT_2 --> TIME_WAIT --> CLOSED 服务端建立连接和关闭连接的状态流程 CLOSED --> LISTEN --> S 阅读全文
posted @ 2020-04-20 16:39 ashen1999 阅读(202) 评论(0) 推荐(0) 编辑
摘要: 慢开始与拥塞避免算法(TCP Tahoe版本) 在分析慢开始和拥塞避免进行拥塞控制之前,需要先了解几个变量 慢开始门限值、拥塞窗口、发送窗口。发送窗口的值等于拥塞窗口的值,当拥塞窗口值小于慢开始门限值时,采用慢开始算法;当拥塞窗口值等于慢开始门限值时,可以采用慢开始算法或者拥塞避免算法;当拥塞窗口值 阅读全文
posted @ 2020-04-20 15:21 ashen1999 阅读(319) 评论(0) 推荐(0) 编辑
摘要: 当建立了TCP连接后,接收方会根据自己的窗口大小对发送方进行流量控制。以实现对发送方发送速率的控制,使接收方可以接收到。 下面假设A方为发送方,B方为接收方。A方有1-900子节的数据,每100位放到一个子节段 首先B方向A方发送一个rwnd包,其中包含其窗口大小300 此后A方可以在收到确认之前, 阅读全文
posted @ 2020-04-20 10:35 ashen1999 阅读(472) 评论(0) 推荐(0) 编辑
摘要: 以第一个数值进行分类 1xx 返回信息,服务端收到请求,需要客户端继续执行操作 100 客户端应继续其请求 101 切换协议,服务端根据客户端的请求切换协议,只能切换到更高级的协议 2xx 成功,请求被成功接收并处理 200 请求成功,一般用于get或post请求 201 已创建,成功请求并创建了新 阅读全文
posted @ 2020-04-20 09:51 ashen1999 阅读(140) 评论(0) 推荐(0) 编辑