通过华为eNSP验证SW转发机制

1. 前置知识

  • STP(Spanning Tree Protocol)
    是一种网络协议,它可以避免在具有冗余链路的网络拓扑中发生环路,从而避免广播风暴和数据包的重复发送,保证网络拓扑的正确性和稳定性。

    当网络中有多条路径到达同一个目的地时,就可能会出现环路,如果不采取措施,数据包就会在环路中不断地循环转发,形成广播风暴,导致网络拥塞和性能下降,甚至会导致网络瘫痪。为了避免这种情况,STP协议通过选择一条主路径(Root Port)并关闭其他路径(Blocked Port),形成一颗不带环路的树状拓扑结构,从而保证数据包在网络中的正确传输。

    STP协议的工作过程主要包括以下步骤:

    选举根节点:网络中选举一个节点作为根节点,并确定所有节点到根节点的最短路径。

    选举根端口:每个节点选举一个根端口,即到根节点的最短路径所连通的端口,其他端口将被关闭。

    选举设计端口:在非根节点中,选举一个到根节点路径最短的端口作为设计端口,其他端口将被关闭。

    建立端口状态:根据选举结果,将端口设置为根端口、设计端口或者阻塞端口,从而形成一个不带环路的树状拓扑结构。

    通过STP协议的运作,可以实现在具有冗余链路的网络拓扑中避免环路,确保数据包的正确传输,提高网络的可靠性和稳定性。

  • undo info-center enable"用于在华为网络设备上禁用信息中心功能。

  • dis mac-address 交换机系统识图使用,功能显示mac地址表

    实验原理

    场景:

  • 三台PC机分别连接到一台交换机上

  • PC1 IP地址为172.168.1.1, PC2 IP地址为172.168.1.2, PC3 IP地址为172.168.1.3

  • 子网掩码均为24位,分别连接1/2/3号交换机端口
    操作过程:

  1. 通过PC1 ping PC2,PC1不知道PC2的MAC地址,因此不能发ICMP包,而是发起ARP request包。
  2. 交换机接收到ARP request协议包,因为目的MAC地址是全F是广播,会采用BUM(Broadcast Unknown Multicast)泛洪除1号端口以外的所有端口(即2/3号端口)发送该ARP包。
  3. PC2收到该ARP包,回应ARP replay包附上自己的MAC地址,交换机帮助转发该包到PC1。(PC1第一次发送ARP request到SW时,SW已经学习了PC1的MAC地址,且本次ARP replay包中目的MAC是PC1的MAC 所以是单播)
  4. PC1得到了PC2的MAC地址,发起ICMP协议包,交换机学习存储PC1和PC2的MAC地址和端口。(存储源MAC地址和对应端口)
  5. 此时通过MAC表查到PC2的MAC地址对应2号端口,交换机直接单播该包到2号端口。
    总结:
  • 交换机会在接收到ARP包时进行广播,将该包发送到所有端口(除了发送方所在的端口)。
  • PC2收到ARP请求包后会回应ARP replay包附上自己的MAC地址,这样PC1就能获得PC2的MAC地址了。
  • 交换机在学习到MAC地址和端口的映射关系后,可以直接单播到目标主机所在的端口,避免了不必要的广播。
  • PC3对于非自己的ARP request包不会回,但会处理。

实验截图


SW的MAC表

SW端口1抓包

SW端口2抓包

SW端口3抓包

发表回复

您的电子邮箱地址不会被公开。 必填项已用*标注