首页 > 试题广场 >

简述浏览器访问一个网页的过程?

[问答题]
简述浏览器访问一个网页的过程?
  1. dns解析域名
  •     dns解析域名的过程是这样的:
    • DNS
    • 作用:将url解析为ip地址
    • 第一步:检查DNS缓存,如果之前登陆过这个网站,那么DNS缓存中就会存有该链接对应的IP地址。
    • 第二步:dns缓存中没有找到的话,借给本地dns发送一个查询请求
    • 第三步:本地dns服务器向根dns服务器发送查询请求(根dns服务器是域名解析的起点)
    • 第四步:根dns服务器告诉本地dns服务器,一级dns服务器是谁。
    • 第五步:本地dns向一级dns服务器发送查询请求
    • 第六步:一级dns返回权威dns服务器的地址
    • 第七步:权威dns服务器告诉本地dns服务器最终的ip地址
    • 查询方式
    • 递归查询(传递和回归):浏览器与本地dns服务器直接按大的查询
    • 迭代查询(类似for):本地dns向其他dns之间的通信就是迭代查询

  • 在本地dns服务器与其他dns服务器之间的通信用到的是udp协议,过程如下
    • dns报文发送给运输层udp协议单元
    • udp协议单元将数据封装成udp数据报(udp面向报文),传送给网络层的ip协议单元
    • 网络层ip协议单元将数据封装成ip数据包,通过arp协议找到目的ip对应的mac地址
    • arp协议过程如下:
    • ARP协议(网络层)
    • 地址解析协议 ARP 作用
    • 从网络层使用的 IP 地址,解析出在数据链路层使用的硬件地址
      • ARP 过程
    • 当主机 A 欲向本局域网上的某个主机 B 发送 IP 数据包时,就先在其 ARP 高速缓存中查看有无主机B 的 IP 地址。如有,就可查出其对应的硬件地址,再将此硬件地址写入 MAC 帧,然后通过局域网将该 MAC 帧发往此硬件地址。如没有, ARP 进程在本局域网上广播发送一个 ARP 请求分组。主机 B 单播发送一个 ARP 响应分组给主机 A,其他主机不会理睬这个请求分组,主机 A 将得到的 IP 地址和路由的下一跳硬件地址写入 ARP 高速缓存
      • ARP 高速缓存的作用
    • 存放最近获得的 IP 地址到 MAC 地址的绑定,以减少 ARP 广播的数量

    • dns请求到达数据链路层协议单元,数据链路层协议单元解析数据帧,将ip数据包传递给网络层ip协议单元
    • ip协议单元解析数据包,将内部的udp数据报传给运输层协议单元
    • udp协议单元解析数据报,将内部的dns报文传给dns服务单元dns解析域名
  • 2.三次握手建立tcp连接
    •        发送和接收数据(http)
    •         浏览器像域名发出http请求报文
    •         服务器接收并返回返回http响
  • 3.四次挥手断开tcp连接
    • 总结:dns:udp http:tcp ip层到数据链路层(arp)
发表于 2020-03-30 11:09:11 回复(0)
浏览器访问一个网页主要分为三个步骤。
  1. DNS解析域名,查找网页所对应的IP地址
  2. 客户端和服务器通过三次握手建立TCP连接
  3. 发出HTTP请求
  4. 服务器处理请求并返回HTTP响应报文
  5. 浏览器解析渲染界面
  6. 四次握手释放TCP连接
编辑于 2020-04-29 13:50:29 回复(1)
  1. DNS解析,浏览器查找域名所对应的IP地址
  2. TCP连接,三次握手
  3. 发送HTTP请求,客户端发送请求报文
  4. 服务器处理请求并返回HTTP响应报文
  5. 浏览器解析渲染页面,客户端处理数据
  6. 连接释放,四次挥手
发表于 2020-04-02 21:20:05 回复(0)