浏览器从输入网址开始

浏览器从输入网址开始

  1. 输入网址:www.baidu.com;
  2. 浏览器查找对应的IP地址:61.135.169.121,查找过程:???不一样
    1. 浏览器缓存:检查本地是否有缓存
    2. 系统缓存;
    3. 路由器缓存;
    4. ISP 的DNS缓存;
    5. 递归搜索DNS服务器;
  3. 向web服务器发送 http请求(建立连接3握手);
    1. 请求的URL协议/版本;GET;
    1. 请求头:设置,是否缓存,是否发送cookie等;
    2. 请求文本:参数

        GET/sample.jspHTTP/1.1
 
        Accept:image/gif.image/jpeg,*/*
        Accept-Language:zh-cn
        Connection:Keep-Alive
        Host:localhost
        User-Agent:Mozila/4.0(compatible;MSIE5.01;Window NT5.0)
        Accept-Encoding:gzip,deflate
         
        username=jinqiao&password=1234

  1. 传输层通过TCP协议传输报文;

Tcp协议:一个包1400字节,那么一次性发送大量数据,就必须分成多个包,保证数据通信的完整性和可靠性,防止丢包的协议;

是一种面向连接的、可靠的、基于字节流的传输层通信协议

  1. 网络层IP协议查询Mac地址;

以太网协议:规定了电子信号如何组成数据包,解决了子网内部的点对点通信。但是,以太网协议不能解决多个局域网如何互通,这由 IP 协议解决。

IP协议:一个地址协议,定义了一套自己的地址规则,称为 IP 地址。把Tcp分分割好的各种数据包传送给接收方,决多个局域网如何互通;

ARP协议:将IP地址解析成对应的MAC地址;

  1. 数据链路层传输;

找到服务器IP对应的MAC物理地址

    1. 服务端接收数据
    2. 服务端处理请求;
    3. 服务端返回一个HTTP响应请求;客户端关闭页面(四挥手关闭连接)
    4. 浏览器开始渲染拿到的文本;
      1. 发送并获取js和css文件嵌套到
      2. 浏览器处理异步请求,获取页面动态数据

url后还涉及到url转非AScII的Unicode码转码;

预加载HSTS(HTTP严格传输安全)列表等;

  HTTPS

  /      

HTTP    TLS/SSL

        /     

   通信内容    确认身份

   对称加密    SSL证书 —— X.509 格式,非对称加密

URI = Universal Resource Identifier 统一资源标志符

URL = Universal Resource Locator 统一资源定位符

URN = Universal Resource Name 统一资源名称

 

 

总结

 

第一部分:网路通信,建立连接,发送接收请求数据;

 

第二部分:页面渲染,浏览器解析渲染;

 

原文地址:https://www.cnblogs.com/yancongyang/p/11170128.html