宏观视角下的浏览器
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保障了数据残缺地传输,它的连贯分为三个阶段:建设连贯、传输数据和断开连接。