宏观视角下的浏览器
Chrome 架构
- 过程与线程
- 多线程
单过程浏览器
- 问题1:不稳固
- 问题2:不晦涩
- 问题3:不平安
多过程浏览器
最新chrome版本架构
- 浏览器过程
- 渲染过程(n+)
- GPU过程
- 网络过程
- 插件过程(n+)
问题:
- 更高的资源占用
- 更简单的体系架构
- 将来面向服务的架构(SOA)
TCP协定:如何保障页面文件能被残缺送达浏览器?
- FP(First Paint):是指从页面加载到首次开始绘制的时长。网络加载速度间接影响FP指标。
IP:计算机的地址,拜访任何网站实际上只是你的计算机向另外一台计算机申请信息。
传输过程:
- 下层将含有“极客工夫”的数据包交给网络层;
- 网络层再将IP头附加到数据包上,组成新的IP数据包,并交给底层;
- 底层通过物理网络将数据包传输给主机B;
- 数据包被传输到主机B的网络层,在这里主机B拆开数据包的IP头信息,并将拆开来的数据局部交给下层;
UDP:用户数据包协定(User Datagram Protocol),把数据包送达应用程序
传输过程:
- 下层将含有“极客工夫”的数据包交给传输层;
- 传输层会在数据包前边附加上UDP头,组成新的UDP数据包,再将新的UDP数据包交给网络层;
- 网络层再将IP头附加到数据包上,组成新的IP数据包,并交给底层;
- 数据包被传输到主机B的网络层,在这里主机B拆开IP头信息,并将拆开来的数据局部交给传输层;
- 在传输层,数据包中的UDP头会被拆开,并依据UDP中所提供的端口号,把数据局部交给下层应用程序;
- UDP传输不能保证数据的可靠性,对于谬误的数据包,UDP并不提供重发机制,只是抛弃以后包;然而传输速度却十分快。
- IP通过IP地址信息把数据包发送给制订的电脑,而UDP通过端口号把数据包分发给正确的程序。
TCP:传输控制协议(Transmission Control Protocol),把数据残缺的送达应用程序
- TCP是一种面向连贯的、牢靠的、基于字节流的传输层通信协议。
特点:
- 对于数据包失落的状况,TCP提供重传机制;
- TCP引入了数据包排序机制,用来保障把乱序的数据包组合成一个残缺的文件。
传输过程:
- 首先,建设连贯阶段。这个阶段是通过“三次握手”来建设客户端和服务器之间的连贯。TCP提供面向连贯的通信传输。面向连贯是指在数据通讯之前先做好两端之间的筹备工作。所谓三次握手,是指建设一个TCP连贯时,客户端和服务器总共要发送三个三个数据包以确认连贯的建设。
- 其次,传输数据阶段。在该阶段,接管方须要对每个数据包进行确认操作。也就是接收端在接管到数据包之后,须要发送确认数据包给发送端。所以当发送端发送一个数据包之后,在规定的工夫内没有收到接收端反馈的确认音讯,则判断为数据失落,并触发发送端的重发机制。同样,一个大的文件在传输过程中会被拆分为很多小的数据包,这些数据包送达到接收端后,接收端会依照TCP头中的序号为其排序,从而保障组成残缺饿数据。
- 最初,断开连接阶段。数据传输结束后,就要停止连贯了,波及到最初一个阶段“四次挥手”来保障单方都能断开连接。
总结
- 互联网中的数据是通过数据包来传输的,数据包在传输过程中容易失落和出错。
- IP负责把数据包送达目标主机。
- UDP负责把数据包送达具体利用。
- 而TCP保障了数据残缺地传输,它的连贯分为三个阶段:建设连贯、传输数据和断开连接。