• 从输入URL到页面展示这中间发生了什么?


    1.万维网和HTTP协议

    • 万维网WWW是一个大规模的、联机式的信息储藏所/资料空间(文字、视频、音频···),是无数个网络主站点和页面的集合。而这些资源需要统一资源定位符来进行标识。

    • 统一资源定位符URL -> 唯一标识 -> 资源(文字、视频、音频···)

    • URL一般形式:<协议>://<主机>:<端口>/<路径>

    • 用户通过点击超链接获取资源,这些资源通过超文本传输协议HTTP传送给使用者。

    • 万维网使用超文本标记语言HTML,使得万维网页面设计者可以很方便地从一个界面的链接转到另一个界面,并能够在自己的屏幕上显示出来。

    2. HTTP协议(无状态的)

    HTTP协议定义了浏览器(万维网客户进程)怎样向WWW服务器请求WWW文档,以及服务器怎样把文档传送给浏览器。

    用户浏览页面方法:

    • 输入URL
    • 点击超链接

    浏览器具体过程:

    • 浏览器分析URL

    • 浏览器向DNS请求解析IP地址

    • DNS解析出IP地址(详见DNS系统)

    • 浏览器与服务器建立TCP连接

    • 浏览器发出取文件命令

    • 服务器响应

    • 释放TCP连接

    • 浏览器显示(浏览器可以只下载文本部分)

    • HTTP采用TCP作为运输层协议,但HTTP协议本身是无连接的(通信双方在交换HTTP报文前不需要建立HTTP连接)

    3. DNS系统

    根:.
    顶级域名:

    • 国家顶级域名 cn,us,uk
    • 通用顶级域名 com,net,org,gov
    • 基础结构域名/反向域名 arpa
      二级域名:
    • 类别域名 ac,com,edu,gov,net,org
    • 行政区域名 用于我国各省、自治区、直辖市 bj,js
    • 自己注册的域名(全球唯一)
      三级域名:
      pku.mail
      四级域名…

    域名服务器:

    • 根域名服务器:(管理该根服务器注册的所有顶级域名):
    • 顶级域名服务器(管理该顶级域名服务器注册的所有二级域名):
    • 权限域名服务器(负责一个区的域名服务器):
    • 本地域名服务器:当一个主机发出DNS查询请求时,这个查询请求报文就发给本地域名服务器。

    域名解析过程:

    • 递归查询(交给别人查询)
      请求查询的主机先查本地域名服务器,本地域名服务器去查根域名服务器,根域名服务器去查顶级域名服务器,顶级域名服务器再找权限域名服务器, 找到后原路返回给请求查询的主机
    • 递归与迭代相结合(有来有回)(第一步是递归查询,递给本地域名服务器去查询)
      请求查询的主机先查本地域名服务器,本地域名服务器去查根域名服务器,根域名服务器告诉本地域名服务器下一步应该去查顶级域名服务器,顶级域名服务器告诉该本地域名服务器下一步应该去查权限域名服务器, 权限域名服务器把结果返回给本地域名服务器,本地域名服务器再把结果返回给请求查询的主机。
  • 相关阅读:
    Rust WASM 与 JS 计算素数性能对比
    通付盾Web3专题 | SharkTeam:2023年加密货币犯罪分析报告
    【Vue面试题二十三】、你了解vue的diff算法吗?说说看
    高级网络调试技巧:使用Charles Proxy捕获和修改HTTP/HTTPS请求
    区块链学姐:6月27日 以太坊久居1200大关下,多头量能已开始受阻?
    JVM之垃圾回收与内存分配
    Navicat连接报2059异常
    Win7开启触摸键盘方法
    2000-2021年全国30省市水土流失治理面积、水库数量、水库总容量、除涝面积数据
    如何阅读文献
  • 原文地址:https://blog.csdn.net/qq_44714543/article/details/125562476