جدول CAM چیست؟

جدول CAM (مخفف Content Addressable Memory) یا همان جدول آدرسهای MAC، جدولی است که سوئیچ از آن برای ذخیره کردن آدرسهای MACی که یاد میگیرد استفاده می‌کند. هنگامی که یک سوئیچ روشن می‌شود و شروع به کار می‌کند این جدول خالی می‌باشد. سوئیچ با دریافت ترافیک بر روی پورتهای مختلف خود آدرس MAC سیستم یا سیستمهای متصل به آن پورتها را به دست می آورد.

نحوده پر شدن جدول CAM

به عنوان مثال در توپولوژی نشان داده شده در شکل زیر فرض کنید که کامپیوتر A قصد ارسال بسته ای به کامپیوتر B را داشته باشد.

1- ابتدا جدول CAM مانند مرحله 0 خالی می‌باشد.

2- سوئیچ با دریافت فریم ارسالی توسط کامپیوتر A و نگاه به فیلد Source MAC Address آن متوجه میشود که سیستمی با آدرس aaaa:aaaa:aaaa به پورت شماره 1 آن متصل است و این آدرس را در جدول CAM وارد میکند. در این مرحله جدول CAM به صورت نشان داده شده در مرحله 1 خواهد بود.

3- سوئیچ به فیلد Destination MAC Address فریم دریافتی از کامپیوتر A نگاه می‌کند اما این آدرس MAC را در جدول CAM ندارد. به همین دلیل نمی‌داند که فریم را بر روی کدام پورت خود ارسال کند تا به مقصد برسد. سوئیچ فریم را بر روی تمامی پورتهای خود به غیر از پورت 1 که فریم را از روی آن دریافت کرد ارسال می‌کند.

4- در صورتی که کامپیوتر B به فریم دریافتی از کامپیوتر A پاسخ دهد، سوئیچ فریم ارسال شده توسط کامپیوتر B را بر روی پورت شماره 2 دریافت می‌کند و با نگاه به فیلد Source MAC Address آن متوجه می‌شود که سیستمی با آدرس bbbb:bbbb:bbbb به پورت شماره 2 آن متصل است و این آدرس را در جدول CAM وارد می‌کند. در این مرحله جدول CAM به صورت نشان داده شده در مرحله 3 خواهد بود.

5- سوئیچ به فیلد Destination MAC Address فریم دریافتی از کامپیوتر B نگاه می‌کند. مقدار این فیلد aaaa:aaaa:aaaa خواهد بود و سوئیچ آن را در جدول CAM خود دارد. پس این بار با مراجعه به جدول CAM سوئیچ فریم را تتها بر روی پورت شماره 1 خود ارسال می‌کند.

CAM4

 

مشاهده جدول CAM

برای مشاهده جدول MAC یا همان جدول CAM در سوئیچهای سیسکو از فرمان زیر استفاده کنید.

3750-1#show mac address-table
          Mac Address Table
-------------------------------------------

Vlan    Mac Address       Type        Ports
----    -----------       --------    -----
 All    0100.0ccc.cccc    STATIC      CPU
 All    0100.0ccc.cccd    STATIC      CPU
 All    0180.c200.0000    STATIC      CPU
 All    0180.c200.0001    STATIC      CPU
 All    0180.c200.0002    STATIC      CPU
 ...
 126    0019.308a.7a8a    DYNAMIC     Fa6/0/48
 126    001d.452c.b683    DYNAMIC     Fa6/0/26
 126    001f.caea.6f3c    DYNAMIC     Fa6/0/5
 126    0022.9003.15cf    DYNAMIC     Fa6/0/28
 126    64ae.0cf6.b9b6    DYNAMIC     Fa6/0/33
 126    64d9.89c3.3112    DYNAMIC     Fa6/0/22
 126    64d9.89c3.9d4b    DYNAMIC     Fa6/0/15
 126    74d4.35d9.751b    DYNAMIC     Fa6/0/29
 126    9c8e.9986.9868    DYNAMIC     Fa6/0/40
 126    c056.27ba.ff43    DYNAMIC     Fa6/0/16
 126    d4ca.6d43.c416    DYNAMIC     Fa6/0/48
 126    d4d7.4841.e519    DYNAMIC     Fa6/0/29
 131    0019.308a.7a8a    DYNAMIC     Fa6/0/48
 131    001d.452c.b683    DYNAMIC     Fa6/0/26
 ...
 Total Mac Addresses for this criterion: 56

در خروجی این فرمان علاوه بر پورتی که MAC بر روی آن دیده شده اطلاعات دیگری نیز نمایش داده می‌شود:

دقت کنید که فرمان را با دو فرمت متفاوت show mac-address-table و یا show mac address-table می‌توان وارد کرد.

برای مشاهده MACهایی که روی یک پورت خاص دیده شده اند می‌توان از فرمان زیر استفاده کرد

3750-1#sh mac address-table interface fastEthernet 6/0/48
          Mac Address Table
-------------------------------------------

Vlan    Mac Address       Type        Ports
----    -----------       --------    -----
 126    0019.308a.7a8a    DYNAMIC     Fa6/0/48
 126    d4ca.6d43.c416    DYNAMIC     Fa6/0/48
 131    0019.308a.7a8a    DYNAMIC     Fa6/0/48
 131    001e.7a26.bd1b    DYNAMIC     Fa6/0/48
 131    0024.9747.9380    DYNAMIC     Fa6/0/48
Total Mac Addresses for this criterion: 5

3 پاسخ

    1. با توجه به نوع وسیله متفاوت هست.
      سوئیچ وسیله‌ای هست که کار اصلی اون بر اساس همین جدول MAC هست. اما مثلا در یک کامپیوتر اگر نیاز به دانستن آدرس MAC سیستمی باشد از پروتکل ARP استفاده می‌شود.
      در یک PC با فرمان arp -a می‌تونید تناظر بین آدرس IP و آدرس MAC رو ببینید

دیدگاهتان را بنویسید

نشانی ایمیل شما منتشر نخواهد شد.