Коммутаторы используют МАС-адреса для направления сетевой передачи данных через коммутатор к соответствующему порту до места назначения. Коммутатор состоит из объединённых микросхем и соответствующего программного обеспечения, с помощью которого данные проходят через коммутатор. Чтобы коммутатор знал, какой порт использовать для передачи кадра, он должен сначала узнать, какие устройства существуют на каждом порте. По мере того, как коммутатор узнаёт отношение портов к устройствам, он создаёт таблицу МАС-адресов или таблицу ассоциативной памяти (CAM). CAM (ассоциативная память, англ. Content Addressable Memory) — это особый тип памяти, используемый в приложениях быстрого поиска.
Коммутаторы LAN определяют способ обработки входящих кадров путём ведения таблицы МАС-адресов. Коммутатор создаёт свою таблицу МАС-адресов, записывая МАС-адрес каждого устройства, подключённого к каждому из своих портов. Коммутатор использует данные из таблицы МАС-адресов для отправления кадров, предназначенных для конкретного устройства из порта, который был назначен этому устройству.
Коммутатор заполняет таблицу МАС-адресов на основе МАС-адресов источника. Когда коммутатор принимает входящий кадр с МАС-адресом назначения, который не содержится в таблице МАС-адресов, коммутатор пересылает кадр из всех портов (лавинная рассылка), за исключением входного порта этого кадра. Когда устройство назначения отвечает, коммутатор добавляет MAC-адрес источника кадра и порта, на котором был получен кадр, в таблицу МАС-адресов. В сетях с несколькими соединёнными коммутаторами таблица МАС-адресов содержит несколько МАС-адресов для одного порта, подключённого к другим коммутаторам.
Следующие шаги описывают процесс построения таблицы МАС-адресов:
1. Коммутатор получает кадр от компьютера PC 1 на порте Port 1 (рис. 1).
2. Коммутатор проверяет MAC-адрес источника и сравнивает его с таблицей MAC-адресов.
- Если адрес не содержится в таблице МАС-адресов, он сопоставляет MAC-адрес источника компьютера PC 1 с входным портом (Port 1) в таблице МАС-адресов (рис. 2).
- Если таблица МАС-адресов уже содержит запись для этого адреса источника, она сбрасывает таймер. Обычно запись МАС-адреса хранится в течение пяти минут.
3. После записи информации об адресе источника коммутатор проверяет MAC-адрес назначения.
- Если адрес назначения не содержится в таблице МАС-адресов или представляет собой широковещательный MAC-адрес, на что указывают все F, коммутатор рассылает кадр на все порты, за исключением входного (рис. 3).
4. Устройство назначения (PC 3) отвечает кадру индивидуальным кадром, адресованным PC 1 (рис. 4).
5. Коммутатор вводит МАС-адрес источника компьютера PC 3 и номер порта входного порта в таблицу адресов. Адрес назначения кадра и его соответствующий выходной порт находятся в таблице МАС-адресов (рис. 5).
6. Теперь коммутатор может пересылать кадры между устройствами источника и назначения без лавинной рассылки, потому что в таблице МАС-адресов есть записи, которые идентифицируют соответствующие порты (рис. 6).