Skip to content

Latest commit

 

History

History
86 lines (35 loc) · 4.1 KB

OSI7层模型.md

File metadata and controls

86 lines (35 loc) · 4.1 KB

OSI七层模型(TCP4层)

1.各层的协议和功能

img

2.ARP协议作用过程

假设主机A和B在同一个网段,主机A要向主机B发送信息。

(1) 主机A首先查看自己的ARP表,确定其中是否包含有主机B对应的ARP表项。如果找到了对应的MAC地址,则主机A直接利用ARP表中的MAC地址,对IP数据包进行帧封装,并将数据包发送给主机B。

(2) 如果主机A在ARP表中找不到对应的MAC地址,则将缓存该数据报文,然后以广播方式发送一个ARP请求报文。ARP请求报文中的发送端IP地址和发送端MAC地址为主机A的IP地址和MAC地址,目标IP地址和目标MAC地址为主机B的IP地址和全0的MAC地址。由于ARP请求报文以广播方式发送,该网段上的所有主机都可以接收到该请求,但只有被请求的主机(即主机B)会对该请求进行处理。

(3) 主机B比较自己的IP地址和ARP请求报文中的目标IP地址,当两者相同时进行如下处理:将ARP请求报文中的发送端(即主机A)的IP地址和MAC地址存入自己的ARP表中。之后以单播方式发送ARP响应报文给主机A,其中包含了自己的MAC地址。

(4) 主机A收到ARP响应报文后,将主机B的MAC地址加入到自己的ARP表中以用于后续报文的转发,同时将IP数据包进行封装后发送出去。

当主机A和主机B不在同一网段时,主机A就会先向网关发出ARP请求,ARP请求报文中的目标IP地址为网关的IP地址。当主机A从收到的响应报文中获得网关的MAC地址后,将报文封装并发给网关。如果网关没有主机B的ARP表项,网关会广播ARP请求,目标IP地址为主机B的IP地址,当网关从收到的响应报文中获得主机B的MAC地址后,就可以将报文发给主机B;如果网关已经有主机B的ARP表项,网关直接把报文发给主机B。

3.URL到返回页面全过程

  1.  我们输入一个域名:[www.baidu.com](http://www.baidu.com/)  
    
  2.  浏览器查找浏览器缓存,如果有域名的IP地址则返回,如果没有继续查找;
    
  3.  系统查找系统缓存,如果有域名的IP地址则返回,如果没有继续查找;
    
  4.  路由器查找路由器缓存,如果有域名的IP地址则返回,如果没有继续查找;
    
  5.  本地域名服务器采用迭代查询,它先向一个根域名服务器查询;
    
  6.  根域名服务器告诉本地域名服务器,下一次应查询的顶级域名服务器dns.com的IP地址;
    
  7.  本地域名服务器向顶级域名服务器dns.com进行查询;
    
  8.  顶级域名服务器dns.com告诉本地域名服务器,下一次应查询的权限域名服务器dns.baidu.com的IP地址;
    
  9.  本地域名服务器向权限域名服务器dns.baidu.com进行查询;
    
  10. 权限域名服务器dns.baidu.com告诉本地域名服务器,所查询的主机www.baidu.com的IP地址;

  11. 本地域名服务器最后把查询结果告诉主机;

  12. 主机浏览器获取到Web服务器的IP地址后,与服务器建立TCP连接;

  13. 浏览器所在的客户机向服务器发出连接请求报文;

  14. 服务器接收报文后,同意建立连接,向客户机发出确认报文;

  15. 客户机接收到确认报文后,再次向服务器发出报文,确认已接收到确认报文;

  16. 此处客户机与服务器之间的TCP连接建立完成,开始通信;

  17. 浏览器发出取文件命令:GET;

  18. 服务器给出响应,将指定文件发送给浏览器;

  19. 浏览器释放TCP连接;

  20. 浏览器所在主机向服务器发出连接释放报文,然后停止发送数据;

  21. 服务器接收到释放报文后发出确认报文,然后将服务器上未传送完的数据发送完;

  22. 服务器数据传输完毕后,向客户机发送连接释放报文;

  23. 客户机接收到报文后,发出确认,然后等待一段时间后,释放TCP连接;

  24. 浏览器显示页面中所有文本。