スイッチのCAMテーブルは、MACアドレスを保持しているにもかかわらず、MACテーブルではなく、CAMテーブルと呼ばれるのはなぜですか?


15

スイッチのCAMテーブルには、MACアドレスと、それぞれのMACアドレスに関連付けられているポートが保持されています。私の知る限り、CAMアドレスなどはありません。なぜMACテーブルではなく、CAMテーブルと呼ばれるのですか?


ウィキペディアで「CAMテーブル」を検索する場合、これは最初の段落で説明されています。
スティグヘマー

...その答えを受け入れてください

1
CAMテーブルは、データを効率的に保存および検索するために使用される一種のメモリ/テーブルデバイスです。「CAM」という名前は、「MACアドレス」を保存しているデータの名前とは関係ありません。これは、同じ3文字だが逆になっているという偶然の一致です。
jwbensley

回答:


27

CAM(Content Addressable Memory)は、数値のメモリアドレスではなく、コンテンツによってアドレス指定できるメモリです。メモリにMACアドレスを提示することにより、インターフェイスを検索できます。これは、1つのCPUサイクルで実行されますが、テーブルを検索する従来のプログラミングでは、多くのCPUサイクルがかかります。

マスクを使用できるTCAM(Ternary Content Addressable Memory)もあります。これは特にIPアドレッシングに役立ち、特にACLまたはルーティングテーブルで使用されます。

CAMとTCAMのコストは標準のDRAMよりもはるかに高くなりますが、特定のアプリケーション向けに与えられるパフォーマンスの向上は、コスト、電力、サイズの妥協に見合う価値があります。

ほとんどの標準PCにはこのようなものが含まれていないため、ルーターやスイッチなどの専用ハードウェアが、ルーティングやスイッチングの目的で標準PCよりもパフォーマンスが優れていることがわかります。


TLBはCAMです
ジョシュア

3
(非常に)大雑把に言えば、CAMは、位置/インデックスではなくによる迅速なアクセスを可能にするC#辞書C ++マップ、またはJavaマップに相当するハードウェアです。
TripeHound

14

CAM-Content AddressableMemory。MACアドレステーブルに使用されるメモリを指します。

RAMとは逆の働きをし、コンテンツを提供することでアドレスを指定し、コンテンツが保存されているアドレスを返します。このアドレスは、このアドレスの出力ポートを見つけるために使用されます。


このメモリは特別な種類の電子集積回路ですか?
yoyo_fun

2
私は内部に精通していませんが、ここにいくつかの記事があります:pagiamtzis.com/cam/camintro
sergeyrar

1
@yoyo_fun基本的にははい
user253751

@yoyo_funすべての(現代の揮発性)コンピューターメモリは、ある種の電子集積回路(またはそのようなコンポーネント)です。
JAB

4

実際には、ほとんどの場合、MACテーブルと呼ばれます。ほとんどすべてのスイッチ/デバイスで検索するコマンドは、show mac-address table(またはこの形式)です。CAMとTCAMを区別する必要がある場合、または誰かが主題を教えている場合を除き、CAMテーブルとして指定されることはほとんどありません。


2
または、Cisco CatOSを実行しているスイッチです...
psmears

@psmears、訂正...それはシスコのスイッチです。CatOSは10
マイクペニントン

@マイク:EOLedされている唯一の製品は、それがフィールドにもはや存在しなかったことを意味場合はため息 ...
psmears

1
スイッチがCatOSを実行するかIOSを実行するかは関係ありません。すべてのCiscoスイッチは、実行するオペレーティングシステムに関係なく、CAMを使用します。
マイクペニントン

2

CAMテーブルは、ホストルート、MPLSラベルなどのマスクを必要としない他の形式の完全一致エントリをL2 / L3スイッチに格納するためにも使用できます。たとえば、24ビットエントリでテーブルをパーティション分割する、および/ 24ルートで埋めます。

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.