当在浏览器输入url回车之后的奥秘

当在浏览器输入url回车之后的奥秘

针对这个问题,可能很少有人会去思考,在如今网络发达的社会,按照自己的多年在网上冲浪的经验,感觉输入一些访问路径之后,在有网的情况下就应当出来对应的页面,成为了一个理所应当的东西,这真的是那么容易的事情吗?

这个过程大致可以分几个阶段:

  1. dns解析

  2. 建立连接(TCP协议三次握手)

  3. 发送http请求

  4. 根据对应请求访问主机对应的服务器软件进行处理

  5. 将结果返回给你

  6. 浏览器根据响应渲染页面

  7. 断开连接(四次挥手断开连接)

    下面来谈谈具体他们是如何进行的:

    1. 根据输入的url,浏览器对其解析出对应的域名,浏览器会先检查该域名是否存在于缓存中,如果没有,DNS协议利用UDP传输层协议,向本地DNS服务器发送请求,获取该域名对应的IP地址,如果本地DNS服务器没有,则会选择网络上的DNS服务器,直到找到,如果找到根服务器还是无法找到,则报错。
    2. 根据获取到的ip地址为对应ip与其http默认的端口号80,本机发起TCP建立连接请求与目标主机建立连接
    3. 连接建立完成后,发起get请求,该请求根据输入的url携带的参数信息对其进行解析,封装成为http请求报文,主机接受到对应的报文信息,进行对应主机解析方法和请求路径与对应的web服务器软件上配置的路径进行匹配对应的servlet或者静态页面。
    4. 将返回数据通过建立的TCP连接进行返回,如果返回数据超过一次tcp携带的数据时,将分多次tcp传输,数据传输完成后,应用层封装成响应报文进行传输过来
    5. 浏览器进行解析响应报文,进行渲染页面,在进行渲染页面时,浏览器发现还有其他静态资源,如css、js、图片时会再次发起另外的http请求
    6. 如果本次连接还进行了其他的Http请求进行发起请求,但传输层不再进行建立连接,也就是所谓的长连接机制
    7. 当本次连接不在有请求和响应时,TCP通过四次挥手将连接断开,如果还有将继续进行交互。
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值