• 一个url到页面显示发生了什么


    1 解析地址

    1:浏览器先从自己DNS表中查找看有没有.www.baidu.com(对应的IP地址)

    2:从操作系统中的DNS表中查找(维护域名和ip地址对应关系的一张表)

    3:从操作系统host文件夹中查找

    4:操作系统将域名发送到LDNS(本地区域域名系统),比如我在工大,那么LDNS服务器就在 我们学校, 查找DNS缓存,继续失败的话发送一个迭代的DNS解析请求.4.1:LDNS向Root name server(根域名服务器,存储每个域名的域),Root name Server返回com域的顶级域名服务器地址4.2:LDNS向com顶级域名服务器发送请求,返回www.bai.com域名服务器的地址4.3:LDNS向www.baidu.com域名服务器发送请求,得到www.baidu.com的ip地址

    5:LDNS得到Ip地址返给操作系统,并把这个iP地址缓存到DNS表中

    6:操作系统将地址返给浏览器.同时也将IP地址缓存起来

    7:现在浏览器已经得到了Ip地址

    2 连接(三次握手)(采用TCP协议)

    知道了百度的Ip地址,接下来是三次握手的实现连接

    1:客户机向服务器发送建立连接请求(你好,很高兴认识你)

    2:服务器接到请求后发送同意连接请求(好的,很高兴认识你)

    3:客户机接收到服务器同意请求后,再次向服务器发送确认信号(我也很高兴认识你),自此主机和服务器两个建立连接

    3.3:网页请求和显示

    建立连接之后,那么服务器和客户机之间就会进行通讯

    3.1:客户机浏览器根据IP地址生成Http请求,请求包含文件的位置,请求的方式

    3.2:服务器接收到http请求内容决定如何获取相应的HTML文件

    3.3:服务器将相应的HTML文件发送给浏览器

    3.4: 浏览器还没完全接收HTML文件的时候,开始渲染,显示网页

    3.5:根据html代码,继续请求图片,

    3 断开过程(四次挥手过程)

    1:客户机向服务器发送一个断开的请求(不早了,我该走了)

    2:服务器接受到请求发送确认请求的信号(知道了)

    3:服务器向客户端发送断开通知(我也该走了)

    4:客户机接受到断开通知,反馈一个信号(好的),服务器接收到反馈信号断开链接

    我对任何唾手而得,快速,出自本能,即兴,含混的事物没有信心。我相信缓慢,平和,细水长流的力量,踏实,冷静。我不相信缺乏自律精神和不自我建设,不努力,可以得到个人或集体的解放。
  • 相关阅读:
    servlet中如何实现通过Spring实现对象的注入
    异步Socket
    JAVA NIO实现
    【Java并发】
    JAVA实现阻塞队列
    lock与synchronized比较
    线程执行顺序
    ConcurrentHashMap 1.8
    LeetCode 416 分割等和子集
    linux常用指令
  • 原文地址:https://www.cnblogs.com/hellosiyu/p/13652418.html
Copyright © 2020-2023  润新知