Коммутаторы и мосты сетей Ethernet. Часть 1. Основные принципы функционирования: Учебное пособие, страница 6

Рис 6.1 Таблица адресов и портов моста B1

6.1.  Самообучение мостов

Все порты моста работают в так называемом "неразборчивом" (promisquous) режиме захвата пакетов, то есть все поступающие на порт пакеты запоминаются в буферной памяти (буферизируются). Далее мост анализирует адрес источника, т.е. MAC адреc сетевого устройства, с которого была произведена отправка кадра.  С помощью такого режима мост следит за всем трафиком, передаваемым в присоединенных к нему сегментах.  МАС адреса каждого пакета, появившегося на каком-либо из портов моста, записываются во внутреннюю память. Такой режим называется самообучением (Learning). После буферизации мост сравнивает адрес источника с элементами базы данных адресов. Если адрес отсутствует в базе, то адрес добавляется в базу. Если рассматриваемый  адрес уже имеется в базе, то возможны два варианта - либо адрес пришел с того же порта, который указан в таблице, либо он пришел с другого порта. В последнем случае строка таблицы, соответствующая обрабатываемому адресу, обновляется - номер порта заменяется новым значением (очевидно, станцию с данным адресом переместили в другой сегмент сети). Таким способом мост "изучает" адреса устройств сети и их принадлежность портам и соответствующим сегментам сети. Из-за способности моста к "обучению" к сети могут добавляться новые устройства без необходимости реконфигурирования моста. Администратор может объявить часть адресов статическими и не участвующими в процессе обучения (при этом он их должен задать сам). В случае статического адреса приход пакета с данным адресом и значением порта, не совпадающим с хранящимся в базе, будет проигнорирован и база не обновится.

6.2.  Режим фильтрации кадров

Кроме адреса источника мост просматривает и адрес назначения кадра, чтобы принять решение о его дальнейшем продвижении. Мост сравнивает адрес назначения кадра с адресами, хранящимися в его базе. Если адрес назначения принадлежит тому же сегменту, что и адрес источника, то мост "фильтрует" (filtering) пакет, то есть удаляет его из своего буфера и никуда не передает. Эта операция помогает предохранить сеть от засорения соседствующих сегментов ненужным трафиком.

Обратимся за иллюстрацией описанного процесса к рисунку 6.1. Предположим, что мост  в процессе обучения сформировал таблицу (базу данных MAC адресов), показанную на рисунке 6.1.  При этом,  в первую очередь, при посылке кадра от станции  10 к станции 15 в базе данных сформировалась запись о соответствии 10 станции 1 порту моста B1, а далее, когда станция 15 переслала ответный пакет станции 10, – сформировалась запись о соответствии 15 станции 1 порту моста B1.  При  последующих попытках  обмена пакетами между станциями с MAC адресами 10 и 15 каждый из передаваемых пакетов будет записываться во внутренний буфер, но передаваться на какой-либо из портов не будет, поскольку трафик между станциями  с MAC адресами 10 и 15 носит локальный характер. Этот вывод мост сделает на основании анализа внутренней базы данных МАС адресов. Анализ базы данных показывает, что станции с MAC адресами  10 и 15 принадлежат  сегменту сети, подключенному к 1 порту, поэтому каких либо перемещений пакетов не требуется.

6.3.  Режим продвижения  кадров

Если адрес назначения присутствует в базе данных и принадлежит другому сегменту по сравнению с сегментом адреса источника, то мост определяет, какой из его портов связан с этим адресом и "продвигает" (forwarding) кадр на соответствующий порт. Затем порт должен получить доступ к среде подключенного к нему сегмента и передать кадр узлам данного сегмента.

Если же адрес назначения отсутствует в базе или же это широковещательный адрес, то мост передает кадр на все порты, за исключением того порта, с которого он пришел. Такой процесс называется "затоплением" (flooding) сети. Затопление гарантирует, что пакет будет помещен на все сегменты сети и, следовательно, доставлен адресату или адресатам. Точно также мост поступает по отношению к кадрам с неизвестным адресом назначения, затопляя им сегменты сети. Очевидно, что некоторое время после инициализации мост выполняет только операцию затопления, так как он ничего не знает о принадлежности адресов сегментам сети.