ARP 和 BUM 流量有什么区别?

网络工程 交换 ARP 多播 播送
2022-02-04 23:55:03

1.1.1.1假设具有 IP 地址和 MAC 地址的PC1想向具有 IP 地址和 MAC 地址A.A.A.A的 PC2 发送一个帧,中间还有一个开关。PC1 不知道 PC2 在哪里,所以它会发送一个 ARP REQUEST。2.2.2.2B.B.B.B

现在,当 ARP 到达交换机时,交换机决定泛洪除它来自的端口之外的所有端口,当它这样做时,请求将到达 PC2,PC2 将首先将 SRC 的 IP 和 MAC 地址添加到它的ARP 表,然后它会回复它的 IP 和 MAC 地址。之后发送数据包。

当然,交换机会将回复定向到 PC1,因为它知道其 MAC 地址和 IP 地址的 SRC 和 DES。


现在,BUM(Boradcast Unkown Unicast Multicast)

我所知道的是(假设具有相同的端点和交换机)交换机使用此流量来动态了解哪个端口属于哪个端点。假设 PC1 想要向 PC2 发送帧的情况相同。PC1 帧具有 SRC 和 DES IP 和 MAC 地址。帧被发送,当它到达交换机时,交换机查看它的 CAM 表以了解哪个端口属于哪个 MAC 地址,如果它没有找到 PC2,它将发送帧(MAC 和 IP 地址END POINTS) 到所有终端设备,PC2 将知道这个 IP 地址属于他 PC2 将回复以及何时回复。我认为它会发回相同的帧(我不确定,但它会发回一些帧或请求,告诉交换机使用其 IP 和 MAC 地址注册该端口)。

我得出了自己的结论,即 ARP 协议有助于将其他机器(在本例中为 PC2)的 IP 和 MAC 地址保存在自己的 ARP 表中。另一方面,交换机使用 BUM 流量来填充自己的 CAM 表。(如有错误请指正)

我在这里要问的是:

  1. 我的解释正确吗?

  2. 它们之间的主要区别是什么?

  3. 我们可以只使用其中之一吗?因为他们似乎在做同样的任务。如果不是为什么?

如果我有什么问题,请纠正我。我知道任何回答我的人都会比我有更多的知识,所以请尽可能多地与我分享,因为我对正在努力学习的东西充满热情!:)

1个回答

交换机在第 2 层运行,例如以太网,它们不涉及第 3 层,例如 IPv4、IPX、IPv6、AppleTalk 等。这允许交换机在第 2 层交换任何第 3 层协议的流量。

主机使用 ARP 将第 3 层地址转换为第 2 层 (MAC) 地址,因此交换机不使用 ARP,甚至不知道第 3 层寻址。

如果主机在其 ARP 表中没有特定第 3 层地址的第 2 层地址,它将使用 ARP(广播)来发现该第 3 层地址的第 2 层地址。

交换机有一个 MAC 地址表,而不是像主机一样的 ARP 表(除非它用于管理目的的主机,但这与交换功能无关)。虽然 ARP 表可以从第 3 层地址查找第 2 层地址,但交换机 MAC 地址表将从第 2 层地址查找交换机接口。很多人都搞错了。

如果交换机在其 MAC 地址表中没有第 2 层地址,那么它将将该帧泛洪到所有接口,除了它进入交换机的那个接口。

交换机会将具有广播第 2 层地址的任何帧广播到所有交换机接口,但帧进入交换机的接口除外。

多播,在交换机运行的第 2 层,是一种广播形式,多播帧被视为广播。许多新交换机中的 IGMP 侦听已经缓解了这种情况。这允许交换机监听主机对多播路由器的 IGMP 请求。启用了 IGMP 侦听的交换机将学习并构建一个表,其中列出了哪些接口已请求加入哪些 IGMP 组,并且它只会将流量发送到该多播组的那些接口。

任何交换机行为都与主机中的 ARP 或 ARP 表无关。