从输入网址到看到界面的过程解析(HTTP请求的过程)

概述

对于从输入网址到看到相应的界面大致有以下的几个过程

  1. 域名解析–将输入的域名转换为对应的IP地址
  2. 通过IP地址建立连接
  3. 发送http请求
  4. 服务器收到请求并响应
  5. 客户端收到服务器的响应信息并进行各种操作

域名解析

域名解析就是将我们输入的各种字符串(域名)解析为对应的IP地址的过程。

以下是查询的过程 1

  1. 从缓存中查询。

这个从缓存中查询一般分为两种:1、从浏览器的缓存记录中查询。2、从操作系统的缓存中进行查询。

  1. 从操作系统的host文件中查询。

操作系统中的映射文件是不可以动态修改的,只要你不主动改,那这个永远就是这个样子,不像之前的缓存,可以修改,也可以清空。
以win10来说,在C:\Windows\System32\drivers\etc文件夹下可以看到一个名叫hosts的文件,这个就是win10的映射文件,以txt格式打开就能看到几个的映射,最常见的就是127.0.0.1。

  1. 找到TCP/IP设置的参数中的DNS服务器地址(本地DNS服务器),发送请求,查询这个域名对应的IP地址。
  2. 如果要查询的域名并不由本地的DNS服务器解析,但是在本地DNS服务器中已经有这个网址的映射关系,则调用这个IP地址映射,完成解析,此解析不具有权威性。

在这里插入图片描述

  1. 如果之前的几个流程都不能成功的解析,那么就根据本地的DNS服务器的设置(是否设置转发器)进行查询。如果未启用转发模式,本地DNS服务器就直接将请求发至13台根DNS服务器,然后就是一通操作,具体的看参考文章。如果启用了转发,那就交给其上一级的DNS服务器进行解析,以此类推。

数据传输

http协议在传输层使用的是TCP协议,因此在传输数据的时候要先建立连接。

然后再传输数据。

三次握手和四次挥手的详解直接进下面的这个传送门,个人感觉写的挺好的。
TCP的三次握手与四次挥手理解及面试题(很全面)

响应请求

服务器收到用户的请求,然后根据请求返回信息。

返回请求信息

服务器处理完请求之后就要把用户所需要的数据发送回去,这个过程和发送数据的过程类似。

当数据发送完毕之后这个请求就结束了,在最前面建立的连接就要进行关闭。

解析数据

当浏览器收到返回的数据之后就要进行解析操作,如果是一个网页就将其解析出来,展现给用户。

参考文章

DNS原理及其解析过程【精彩剖析】
HTTP协议—— 简单认识TCP/IP协议
HTTP协议分析


  1. 没有找到统一的标准,如有错误还请指点。 ↩︎

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值