交换机内部mac地址查找方法

2019-03-25 08:34发布

最近在研究交换机的内部运行机制,我想不明白的一个地方是从端口A接收到一帧数据之后,取出mac地址和交换机内部的mac地址表中的地址对比,这个过程是不是将表中的mac地址逐一取出和接收帧的地址对比呀?如果是这样的话,当这个存储mac地址的表比较大的时候,应该会在地址对比过程中很耗费时间的。大家有什么好说,说一下。 此帖出自小平头技术问答
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
4条回答
eeleader
1楼-- · 2019-03-25 14:13
< / 参考网络七层协议,参考数据链路协议。
wall_e
2楼-- · 2019-03-25 14:28
如何才能快速匹配mac地址?
wall_e
3楼-- · 2019-03-25 16:54
这两天看了好多篇交换机内部交换芯片的资料,上面几乎都说到一个单词-----hash。hash算法是把任意长的二进制序列压缩成固定长度的二进制序列。而在交换机中,压缩后的二进制序列就是原序列的存储地址。当一个交换机接收到一个以太网包后把包中的源mac地址通过固定的压缩方法(hash算法)压缩成固定长度的二进制序列,然后把源mac地址存入压缩后的二进制序列所映射的地址单元中。当又接收到一个以太网包时,是取出包中的目的mac地址,通过压缩目的mac地址,得到一个hash表的地址,根据该地址去hash表中取出数据。然后对比所取出的数据是否是所需要的数据。这样的话就不需要把存储mac地址的表中的数据逐一取出和目标地址对比,节省了很多时间。如果是地址匹配的话就可以快速进行以太网包的转发了。但是一个很严重的问题-------冲突。把长序列映射成较短的序列肯定会产生冲突的。这个问题不能避免,但是如何才能够减少冲突呢?
eeleader
4楼-- · 2019-03-25 22:40
以太网都有错误重传机制!

一周热门 更多>