CCNA-数据包在网络设备直接的通信流程

CCNA-数据包在网络设备直接的通信流程

工作以来,感触最深的就是很多人学完了网络,甚至做了几年项目,还没有搞明白数据包的走向问题以及设备的转发原理。导致工作过程中出现问题,在拍错的时候一头雾水,抓耳挠腮,今天我用这个图简单说说PC1 访问 PC2 的一个HTTPS的WEB网站的数据包走向问题(最后附带了TCP包头和IP包头的格式,基础不好的可以先看最后两个图得内容):

先看拓扑图:
在这里插入图片描述

大家可以瞅瞅我下面总结的流程,感觉不错的话可以记下来PC1 地址192.168.1.100/24,网关地址192.168.1.1----也就是路由器f0/0口的地址;

PC2地址172.16.1.100/24,网关地址172.16.1.1----也就是路由器f1/0口的地址。

下面从OSI七层模型对数据包进行封装,封装完毕通过物理线路发送出去,结合路由器交换机工作原理进行描述:

1、PC1在应用层发起个目标IP为172.16.1.100的Https请求。

2、传输层(TCP层)接到上层请求的数据,将数据分段并加上传输层报头(也就是TCP包头,目的端口号为443)。下传到网络层。

3、网络层接收来处上层的数据后,根据IP协议(三层)进行封装,添加PC1的IP为源IP为和PC2的IP为目标IP后封装成数据包,同时协议号位6(TCP的协议号,标识包头里面是TCP的内容)。下传到数据链路层(二层),因PC1 IP与PC2 IP不在同一网段,所以数据包将发往网关路由条目的下一跳,也就是路由器F0/0口。

4、数据链路层接收网络层封装好的数据包后,继续进行封装帧头,添加源MAC地址为PC1的MAC地址,目标MAC地址则查询自己的ARP缓存表以获取网关MAC地址(路由器F0/0口的MAC)。如果PC1 ARP缓存表中没有网关对应的MAC地址,则PC1发出一个ARP广播报文。ARP报文中源MAC地址为PC1 MAC地址,所要请求的是网关IP对应的MAC地址.

5、交换机SW1从F0/0接收到ARP广播帧后,检查自己ARP缓存表中是否有与F0/0口相对应PC1的MAC地址。没有,则将PC1MAC地址与F0/0接口对应起来,存储到交换机SW1的ARP缓存表中。然后将该ARP请求报文进行除F0/0口以外的其他所有端口进行泛洪。

6、Router收到ARP广播后,进行解封装,发现所要请求的MAC地址是自己的。则Router将PC1的MAC地址写入ARP缓存表中。然后向 PC1发送一个ARP单播回应。该单播消息包括目标IP为PC1 IP,目标MAC为PC1 MAC地址,源IP为Router的F0/0口IP,源MAC为 Router的F0/0的MAC。

7、交换机通过F0/1口收到ARP单播帧,交换机同样检查MAC表,然后将F0/1口与Router的F0/0(ARP单播包里面的源MAC)的MAC地址对应起来,存入MAC缓存表中,然后转发该帧。

8、PC1接收到Router的ARP应答帧后,将Router的F0/0的MAC地址存入ARP缓存中(缓存默认4个小时超时),并将Router的F0/0的MAC地址作为目标地址封装到数据帧中。发给下层(物理层)进行网络传输。

9、Router的F0/0接收这个帧后,看目标mac地址是否指向自己。是,PC2则将帧头去掉,然后检查目标IP地址,发现这个目标IP不是自己,刚不再进行解封装。

10、Router在自己的路由表中检查自己的是否有去往目标地址的路由,没有则丢弃该帧。有,路由器经检查发现是去往与F1/0口直连的网段。则路由器对数据包进行二层封装成帧,源IP为PC1的IP,源mac地址为Router F1/0口的MAC地址,目标IP为PC2的IP,目标MAC地址则检查自己的ARP缓存表获取。如果没有,则发送ARP请求报文(这里就不再描述ARP请求过程了)。

11.Router把二层帧封装完毕,完后把数据帧发给SW2,SW2查看MAC地址表,根据之前ARP的映射缓存表项通过F0/1口转发数据帧。

12.PC2收到数据帧拆开最外面的帧头,一看目的MAC是自己,他继续拆IP包头

15、PC2拆开IP包头,发现目标IP和自己匹配,则继续拆封装,发现IP里面协议号是6,代表是TCP的数据,将数据向上层传输。

16、传输层(TCP)接收来自下层的Https请求TCP报文,则去掉TCP报头,向应用层传送。

17、应用层收到Https请求后,发送一个Https回应报文给PC1

回包过程同理。

下面附IP包头,TCP包头格式图。
在这里插入图片描述
在这里插入图片描述
好的本次到这里就结束了,欢迎观看我的文章。我是CCIE-Yasuo,喜欢就关注我吧,下一期见。
欢迎新盟教育的同学一起来交流,我是41期的疾风剑豪
同时我也是一名18岁来自大专的学生在学校写的,如有写的不对或侵权请及时联系删除。

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

CCIE-Yasuo

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值