zoukankan      html  css  js  c++  java
  • 浏览器从输入网址开始

    浏览器从输入网址开始

    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 统一资源名称

     

     

    总结

     

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

     

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

     

  • 相关阅读:
    10分钟学会Python
    Python接口自动化(二)接口开发
    Python接口自动化(一)接口基础
    去掉webstorm内容区域右侧的一条竖线
    webstorm识别element-ui的标签
    vue中点击复制粘贴功能 clipboard 移动端
    vue pc element-ui class
    禁止浏览器记住密码
    js 将网络图片格式转为base64 canvas 跨域
    移动端网页在本地服务器调试
  • 原文地址:https://www.cnblogs.com/yancongyang/p/11170128.html
Copyright © 2011-2022 走看看