学习记录:二层网络环路相关

学习记录

  • 上周实习过程中由于对此相关内容不熟悉,造成了事故。由此对相关内容加强学习,特此记录。

一、交换机相关

  总的来说,交换机是一种基于MAC地址识别,能完成封装转发数据包功能的网络设备。
  在实习中,我接触到的应该都是第二层交换机(数据链路层)。其内部存在着一个映射表,记录着设备MAC地址与交换机端口之间的关系。
  当交换机从某端口收到一个数据包,它首先读取包头中的源MAC地址,这样它就知道源MAC地址的机器是连在哪个端口上的。随后它再去读取包头中的目的MAC地址,并在地址表中查找相应的端口,如果表中有与这目的MAC地址对应的端口,则把数据包通过该端口进行传输;如果在表中找不到相应的端口则把数据包广播到所有端口上,当目的机器对源机器回应时,交换机又可以记录目的MAC地址与哪个端口对应,在下次传送数据时就不再需要对所有端口进行广播了。

  • 总结
      交换机内维护了一张表,其中记录了MAC地址与端口的对应关系。当交换机收到包时,会首先更新包源MAC地址与端口的关系。随后读取包的目标MAC地址,接着在映射表内进行查询,此时有两种结果:
      1.如果目标MAC地址已经被记录,则直接通过对应的端口进行转发。
      2.如果目标MAC地址未被记录,则所有的端口都进行发包操作即广播(即泛洪),来确保包能被交换机转发出去。
      而当目标MAC地址的设备收到包进行回应时,则回到流程第一步的“当交换机收到包时”,此时会更新映射表,添加该MAC地址与端口的对应关系。今后这两台设备进行通信时,交换机则不会再进行广播操作而是直接找到相应端口进行转发。

二、网络环路的产生

  环路大概就是:A交换机网络从B交换机网络收到了要发给X的消息,随后再次转发给B交换机网络(其中A和B网络所属可能是同一台交换机),这样该消息就会在A和B网络中不断被转发,造成环路问题。
  原因大多是因为线路连接问题或是硬件设备自身的问题。

三、网络环路的影响

  首先的影响就是MAC地址表震荡。因为交换机收到包时会进行表的更新,即交换机在收到包时会更新该包源端口与设备MAC之间的映射关系。但是如果构成环路的话,则代表该路由器会在不同的端口收到同一个包,该包源MAC地址是相同的,则MAC地址表中的映射关系会一直发生“跳跃”,即表内同一个MAC地址在不同的端口上进行“跳跃”,这便是MAC地址表的震荡。
  随后最大的影响便是广播风暴。因为造成了环路,且在二层交换机中是没有TTL机制来约束包的转发的,所以数据包会在环路内被无限次的转发,由此造成广播风暴。更严重的是可能数据包在环路内不是单播而是广播(比如说该包的源和目的相同,则由于MAC地址表震荡造成泛洪),由此对相关资源的消耗更为巨大。
  同时网络环路也可能造成重复数据帧。当拓扑关系出现问题时,可能会出现多端口可致目的MAC地址,则数据可能会在广播中被复制转发,目的地则会收到相同的两份数据。当出现环路时,这两份数据会转发给初始交换机,重复上述操作,造成数据不断的被复制,从而占用越来越多的资源。

四、如何避免网络环路

  最简单的方法就是设定生存时间值TTL,来避免无限次的转发从而避免环路带来的广播风暴等影响。但是二层交换机不支持该内容,且这样是治标不治本,环路并没有被解决。
  随后我们可以引入一些算法和破坏协议来避免网络环路,使可以及时发现并切断网络环路。
  当然在日常接线中,也要注意,从根本上避免网络环路的产生。例如:

  1. 例如A与B已连接交换机C,则A与B之间不可再连线。
  2. 不可用网线连接同一交换机的两个端口。
  3. 假如A连接了B,B连接了C,则A不可连接C。
  4. 等等…

五、二层环路的直观异常情况

在这里插入图片描述

  • 5
    点赞
  • 27
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值