粗略地说,为什么在机器和交换机上有两个ARP表?交换机上的那个不够吗?
#1 楼
这是一个非常普遍的误解,或更具体地说,是一个术语问题。在第二层交换机中,没有ARP表,只有转发表。交换机将在转发表中记录入站的每个src MAC地址,并将其归因于端口,因此具有dst MAC的帧将仅发送至该MAC已知的端口。许多人都将其称为“ arp表”或“ arp缓存”,即使它们都不存在。在第二层管理型交换机中,有一个转发表和一个ARP表,但是仅使用后者用于管理界面与感兴趣的主机(即您用来配置交换机的PC)进行对话。在管理型第3层交换机中,将有一个转发表和一个ARP表,因为它需要管理表和路由器功能存在以在子网之间执行转发。
评论
据我了解,您可以将交换机建模为一组(交换机)端口。端口是编号的数据包队列。交换机以任意顺序排空端口,并维护从mac到端口的映射。当数据包从端口耗尽时,src mac(地址)将映射到端口(编号)。当必须发送耗尽的数据包时,如果已知,则将其发送到dest mac的端口,如果未知,则将其广播。这意味着端口必须获取eth数据包才能进行映射。
–Rob
15年5月4日在18:43
@Rob,您的评论中有许多不清楚的陈述,即使不是完全不正确的陈述也是如此。端口不是队列。在某些平台上可能存在一对一的映射,但是它们并不相同。当接收到帧而不发送帧时,将学习MAC地址。帧按接收顺序传递到输出队列,可能与某种QoS结合使用,这不是任意的。目的地地址未知的帧将被泛洪,而不是广播。
– YLearn♦
2015年5月5日14:23
然后:模型切换为编号对(以太网数据包)队列(输入,输出)。读取输入队列时,请确保该数据包的src mac映射到输入队列的端口号。该数据包必须放置在与dst mac相对应的出队列中。如果未映射端口,则数据包将排入所有队列,而不是其自身的队列。 (不确定广播/洪泛区的区别是什么,因为我假设它实际上在硬件级别在所有线路上发送了相同的信号;或者它是通过端口循环的?)
–Rob
2015年5月5日14:50
啊...我想我反对将交换机建模为数据包队列。与整个数据包相比,交换机可能在较小的数据块上运行。即:一旦我们知道哪个端口应该获取要为其获取字节的数据包,就可以发送这些字节。例如:排队足够的字节来处理以太网头;不要容纳整个包。
–Rob
2015年5月5日15:03
@Rob,泛洪帧是具有未知目的地的单播帧,该泛洪帧从接收端口以外的每个端口泛洪。广播是从接收端口以外的所有端口发出的所有目标帧,但是所有在L2广播域中接收到它的交换机将继续以这种方式对待广播。尽管对单个交换机的影响相似,但对整个网络的影响却截然不同。
– YLearn♦
2015年5月5日23:38
#2 楼
每个使用IP协议的设备都有一个ARP表。由于IP是L3协议,并且需要底层的L2协议,因此设备必须能够将L3 IP地址转换为其相应的L2地址。您的设备是否正在与是否在本地网络上使用IP地址,它必须将L2流量(为简单起见,在本次讨论中不包括广播和多播)发送到本地L2域上的特定设备。如果IP地址在本地网络上,则它将直接指向目标设备。如果不是,则该设备将充当本地网络的网关或路由器,该设备可以将L3流量转发到其目的地。
如果交换机根本不使用IP协议(即它甚至不提供基于IP的任何管理,没有L3功能等),因此它不需要ARP表。
但是,我不知道有一个企业交换平台不使用IP协议。 Telnet,SSH,HTTP,HTTPS和SNMP只是需要访问IP的企业交换机普遍支持的服务的一些示例。
#3 楼
您可能已经知道,ARP表的目的是将网络层地址转换为链路层地址。从IP地址到MAC地址。您所参考的表格并不完整。第2层交换机还具有两种表:
ARP表,用于与作为“计算机”的交换机进行通信以与其控件进行接口。好吧,如果它是一台管理型交换机,它将具有此功能。
将交换机端口与MAC地址相关联的表
示例1:如果PC启动数据包,则如果IP发送IP,它将使用MAC地址地址是本地的(来自ARP表)。当该数据包到达交换机时,交换机将根据MAC地址(从交换机端口/ MAC表)将数据包移动到适当的端口。
示例2:如果交换机从其交换机启动数据包管理界面,则其功能与PC使用其ARP表的功能相同。但是,如果交换机从其交换功能启动数据包,那么它只是根据其端口/ MAC表将该数据包从一个端口移至另一个端口。
评论
亲爱的,谢谢。不错的示例。请不要混淆包和帧。
– Mohamad-Jaafar NEHME
15年5月6日在8:45
#4 楼
交换机具有mac地址表。例如PC的端点具有arp表。
评论
因此,只有交换机具有mac地址表?而且只有端点具有ARP表吗?
– YLearn♦
2015年5月31日下午4:22
@YLearn对于实际的L2开关,是的。
– Navin
16年4月19日在23:39
评论
我认为此页面上的答案是正确的。我在其他页面上发现了其他评论员,说L2交换机包含ARP表。这是没有道理的。仅L3设备包含ARP表。