• 浏览器从输入网址开始


    浏览器从输入网址开始

    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.2 查找同一组或分区中行之间的差
    8.7 确定当前记录和下一条记录之间相差的天数
    8.6 计算一年中周内各日期的次数
    8.5 确定两个日期之间的秒、分、小时数
    8.4 确定两个日期之间的月份数或年数
    8.2 计算两个日期之间的天数
    8.3 确定两个日期之间的工作日数目
    8.1 加减日、月、年
    7.13 计算不包含最大值和最小值的均值
    第3章 Python的数据类型 第3.1节 功能强大的 Python序列概述
  • 原文地址:https://www.cnblogs.com/yancongyang/p/11170128.html
Copyright © 2020-2023  润新知