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 路由表。 |