HTTP

作者: 辉夜乀 | 来源:发表于2017-07-23 18:56 被阅读25次

    HTTP是什么

    超文本传输协议

    1. http客户端发起请求,创建端口
    2. http服务器在端口监听客户端请求
    3. http服务器向客户端返回状态和内容

    url 到页面展现的过程

    1. chrome 搜索自身的 DNS 缓存 (chrome://net-internals/#dns

    2. 搜索操作系统的 DNS 缓存

    3. 读取本地的 host 文件

    4. 浏览器发起一个 DNS 的一个系统调用,一般是向网络运营商发

    5. 网络运营商查看自身的缓存

    6. 网络运营商发起一个迭代的 DNS 解析请求,向 根域 发

    7. 根域 从 .com 顶级域开始查找,找到 IP 地址。(url 从后往前查找)

    8. IP地址返回到操作系统内核

    9. 操作系统内核把结果返回给浏览器

    10. 最终浏览器拿到 域名 对应的 IP 地址

    11. 浏览器获得域名对应的 IP 地址后,发起 HTTP “三次握手”,TCP连接请求

    12. 第一次握手:主机A发送位码为syn=1,随机产生seq number=1234567的数据包到服务器,主机B由SYN=1知道,A要求建立联机;

    13. 第二次握手:主机B收到请求后要确认联机信息,向A发送ack number=(主机A的seq+1),syn=1,ack=1,随机产生seq=7654321的包

    14. 第三次握手:主机A收到后检查ack number是否正确,即第一次发送的seq number+1,以及位码ack是否为1,若正确,主机A会再发送ack number=(主机B的seq+1),ack=1,主机B收到后确认seq值与ack=1则连接建立成功。

    15. TCP/IP 连接建立起来后,浏览器就可以向服务器发送 http 请求了。

    16. 服务器端接收到了这个请求,根据路径参数,经过后端处理,把处理后的数据返回给浏览器

    17. 浏览器拿到页面的 HTML 代码后,开始解析,解析到 JS、css、img 等静态资源的时候,同样是一个个 http 请求,都需要经过上面的 7 个步骤。

    18. 浏览器渲染页面,展现给用户

    相关文章

      网友评论

          本文标题:HTTP

          本文链接:https://www.haomeiwen.com/subject/ihfkkxtx.html