为什么交换机中的CAM表即使拥有MAC地址,也称为CAM表而不是MAC表?


15

我知道交换机中的CAM表包含MAC地址以及与各个MAC地址关联的端口。据我所知,没有CAM地址这样的东西,那为什么叫CAM表而不是MAC表呢?


如果您在Wikipedia上查找“ CAM Table”,这将在第一段中进行说明。
Stig Hemmer

请接受答案...

1
CAM表是一种用于高效存储和查找数据的内存/表设备。名称“ CAM”与它存储的“ MAC地址”的数据名称名称无关-恰好是三个字母相同但相反。
jwbensley

Answers:


27

CAM(内容可寻址内存)是可以通过内容寻址的存储器,而不是数字存储器地址。您可以通过为内存提供MAC地址来查找接口。与在表中进行搜索的传统编程相比,这是在单个CPU周期中完成的,这将花费很多CPU周期。

还有TCAM(三进制内容可寻址存储器)可以使用掩码。这对IP寻址特别有用,除其他外,它还被ACL或路由表使用。

CAM和TCAM的成本要比标准DRAM高得多,但是它们为特定应用提供的性能提升值得您付出一定的成本,功耗和尺寸折衷。

由于大多数标准PC不包含此类内容,因此您可以看到,为路由或交换目的,专用路由器(例如路由器或交换机)硬件在性能上要优于标准PC。


TLB是CAM
约书亚(Joshua)

3
(非常)粗略地说,CAM是C#字典C ++映射Java映射的硬件等效项,它们都允许通过而不是position / index快速访问。
TripeHound

14

CAM-内容可寻址内存,是指用于MAC地址表的内存。

它的工作方式与RAM相反,您可以通过为其提供内容来解决它,并返回给您存储内容的地址-然后,该地址将用于查找该地址的出口端口。


该存储器是某种特殊的电子集成电路吗?
yoyo_fun

2
我不熟悉内部原理
sergeyrar

1
@yoyo_fun基本上是
user253751 '17

@yoyo_fun所有(现代易失性)计算机存储器都是某种电子集成电路(或其组成部分)。
JAB

4

实际上,它最多被称为MAC表。在几乎所有交换机/设备中查找它的命令是show mac-address table(或某种形式)。除非需要在CAM和TCAM之间进行区分,或者有人正在教授该主题,否则很少将其指定为CAM表。


2
还是运行Cisco CatOS的交换机...
psmears

@psmears,更正...这是一台Cisco交换机。CatOS已经不存在十多年了
Mike Pennington

@迈克:如果只有一种产品被停产,那就意味着它不再在现场叹息 ……
psmears

1
让我清楚一点:交换机运行CatOS还是IOS无关紧要。所有cisco交换机都使用CAM,无论它们运行什么操作系统。
迈克·彭宁顿

2

CAM表也可以用于在L2 / L3交换机中存储不需要掩码的其他形式的精确匹配条目,例如主机路由,MPLS标签甚至是无掩码的精确匹配,例如用24位条目对表进行分区,并用/ 24条路线填充。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.