Skip to content

HTTP协议

网络模型

  1. 客户端向服务器发送报文
  2. 传输层:报文加上端口号和目标端口号封装成段
  3. 网络层:段加上源IP和目标IP封装成包,目标IP和源IP不在同一个网络下,要发送到其他的网络需要经过默认网关,但是客户端不知道网关的mac地址
  4. 这时通过ARP协议进行广播,将客户端IP和网关IP封装成包,之后加上客户端MAC地址和广播MAC地址封装成帧,默认网关接收到后,将客户端MAC地址和自己的MAC地址封装成帧做出响应
  5. 之后客户端加上源MAC和目标MAC封装成帧发送数据,默认网关接收到后发现是自己的MAC地址,解封到包后,发现目标IP地址是在另一网络,就会进行路由转发
  6. 目标网关接受到后如果知道目标IP地址和MAC地址是哪台主机,封装成帧就可以直接发送
  7. 如果不知道需要通过ARC广播获取
  8. 目标主机接收到后解封查看段可以发现源和目标端口号,给到指定的应用程序

浏览器输入url回车后发生了什么#

  1. 将输入的url进行DNS解析获取IP地址
  2. TCP三次握手建立连接: 客户端发送SYN请求链接; 服务器响应SYN和ACK表示同意建立连接; 客户端发送ACK成功连接
  3. 发送HTTP协议,浏览器发送请求报文
  4. 服务器响应HTTP请求,发送响应报文
  5. 页面渲染