浏览器打开一个网址,整个过程是怎么样的?

DNS解析

  • 打开浏览器,输入请求的网址
  • 查找DNS服务器,通过DNS服务器解析域名后,返回对应的IP地址

应用层

  • 将浏览器发出的请求,遵循HTTP协议,打包成一个HTTP请求数据包

传输层

  • 传输层配合应用层的HTTP协议,使用了TCP协议建立可靠连接
  • TCP连接需要设置端口,发送方的端口随机选一个,接收方的端口一般默认的80端口
  • HTTP请求数据包进行封装,加上TCP头部信息,存放端口号信息

网络层

  • 通过IP协议,对TCP数据包进行封装,再加上一个IP头,包含本机和目标机器的IP地址

数据链路层

  1. 要保证确实能传到接收方,还需要接收方的MAC地址,也就是物理地址
  2. iP地址和MAC地址是对应的关系,一个网络设备的IP地址可以更换,但是MAC地址一般是固定不变
  3. 通过ARP协议可以将IP地址解析成对应的MAC地址
  4. 通过以太网协议,会把IP头和IP数据包封到以太网数据包里去,然后再加一个以太网数据包的头,头里放了本机网卡MAC地址,和网卡的MAC地址。

浏览器打开一个网址,整个过程是怎么样的?