CAM

内容可寻址存储器(CAM)是一种特殊的计算机存储器,用于高速搜索应用。CAM 由传统的半导体存储器(通常为 SRAM(静态 RAM))和连接的逻辑比较电路组成,可在一个时钟周期内执行搜索操作。它可以存储和查询二进制输入,即 0 和 1。

CAM 的功能与 RAM(随机存取存储器)的功能相反。在 RAM 的情况下,操作系统(OS)通过给出代表存储数据位置的内存地址来检索存储在 RAM 中的数据。但对于 CAM,则是通过查找数据本身来检索存储在 CAM 上的数据。存储器检索的是可以检测到数据的地址。

CAM 的并行特性使其在执行搜索任务时比 RAM 快得多。它可执行基于精确匹配的搜索,由于其长度固定,因此对存储 MAC(媒体访问控制)地址非常有用。

TCAM

三元内容可寻址存储器(Ternary Content Addressable Memory)是一种特殊类型的 CAM(内容可寻址存储器),允许存储数据的一个或多个比特处于第三种状态,即 “不关心”。它还能在一个时钟周期内完成整个搜索任务。

所谓 “三元”,是指存储器可以存储和查询的输入,即 0、1 和 “无所谓”。不管 “状态引入了搜索的灵活性,使 TCAM 能够执行基于模式的搜索。由于其灵活性,TCAM 被用于存储 IP 地址,可以一次性搜索整个 IP 地址范围。

它还可用于提高路由表查找、转发、数据包分类和 ACL(访问控制列表)命令的速度。

CAM 与 TCAM 的区别

编号 CAM(内容可寻址存储器) TCAM(三元内容可寻址存储器)
1 CAM 代表内容可寻址存储器。 TCAM 代表三元内容可寻址存储器。
2 CAM是一种基于搜索引擎的计算机内存,用于各种搜索应用。 TCAM是 CAM 的专门版本,用于快速查找表格。
3 CAM在一个时钟周期内执行整个搜索操作。 TCAM也在一个时钟周期内执行整个搜索操作。
4 CAM的工作方式与 RAM(随机存取存储器)相反,因此在搜索操作时比 RAM 快得多。 TCAM为 RAM(随机存取存储器)增加了第三种状态,为通配符提供了灵活的功能,因此比 RAM 更快。
5 与 RAM 不同,CAM 上加载的数据可通过执行数据本身的查询来检索。操作系统利用数据,而 CAM 则检索代表存储数据位置的地址。 与 RAM 相比,CAM 允许高速路由表查询。
6 CAM 存储和查询二进制输入(即 0 和 1) TCAM 存储和查询三元输入(即 0、1 和 “无所谓”)。
7 它最适用于执行基于精确匹配搜索的表。例如 MAC 地址表。 对于执行最长匹配搜索的表来说,它最有用。例如,IP 路由表。