Как работает коммутатор L2 OSI в сети

Коммутатор «перекидывает» пакеты опираясь на специальную MAC таблицу, в которой записаны такие значения данные: MAC адрес и физический порт.

Вот несколько типов адресов, с которыми работает коммутатор:

1. Известный Unicast (или иногда еще называют индивидуальный) адрес.
То есть, коммутатор получил фрейм, «смотрит» в заголовок, первое поле DA (Destination address), затем смотрит в свою таблицу mac адресов, и если такой адрес уже есть в таблице (а к адресу привязывается и порт), то направляет фрейм в нужный порт коммутатора.

2. Неизвестный unicast адрес. Если коммутатор получает фрейм, и такого адреса получателя в своей таблице не находит, то он отправляется на все порты, исключая тот порт, с которого этот фрейм пришел.

3. Широковещательный фрейм (все значения единицы, в двоичной системе или FF FF FF FF FF FF в 16-ой. ). Коммутатор делает все тоже самое, что и при неизвестном unicast адресе.

4. Мультикастовый тип адреса. Коммутатор работает так же как и в широковещательном случае, но здесь можно создать некие группы для рассылок.

Если мы вспомним, такие устройства как концентраторы (или hub), то там устройство не «смотрит» ни на какие заголовки второго уровня, а оперирует только электрическими сигналами.

Для того чтобы посмотреть MAC таблицу на устройстве, например на коммутаторе Cisco, необходимо ввести команду

# show mac-address-table

Вывод нам покажет примерно следующее:

Mac Address Table
-------------------------------------------
Vlan Mac Address Type Ports
---- ----------- -------- -----
50 000b.820c.fde7 DYNAMIC Fa0/2
50 0021.2900.f370 DYNAMIC Fa0/24
50 0021.2907.9f60 DYNAMIC Fa0/24
50 5478.1a13.c8fb DYNAMIC Fa0/4
110 5478.1a13.c8fb DYNAMIC Fa0/4
110 b07d.47c0.e80b DYNAMIC Fa0/24
110 dceb.94bc.7fdb DYNAMIC Fa0/24
110 dceb.94bc.b5cc DYNAMIC Fa0/24
35 0024.9803.dc95 DYNAMIC Fa0/24

Здесь нас сейчас интересует только поля Mac Address , Type и Port.
Что такой TYPE? Дело в том, что существует два типа записей MAC адресов в таблице, это динамический и статический.

Dynamic значит что, MAC адрес будет «привязываться» к порту автоматически (после получения и обработки фрейма), и через некоторый time out будет удаляться.

Static — это специальная настройка на порту коммутатора, в которой можно «привязать» конкретный MAC адрес к порту, другие MAC адреса здесь не пройдут, ну и соответственно нет никаких time out.

PORT, это собственно номер порта, через который «видно» устройство с таким MAC адресом.

Про VLAN подробнее в следующих статьях.

Коммутатор может работать в трех режимах.

1. Store-and-forward. Коммутатор получает фрейм целиком (все байты), пересчитывает FCS и сверяет с 4 байтовым полем в фрейме. Если сумма совпадает, то пакет форвардируется в зависимости от MAC таблицы. Если не совпадает, то такой пакет дропается (drop).
2. Cut-through. Этот режим работает следующим образом. Коммутатор получает фрейм и сразу начинает смотреть заголовок, а именно Destination Address (не дожидаясь пока фрейм полностью будет получен), и на основе этих данных форвардит туда, куда указывает MAC таблица. Это позволяет повысить скорость коммутации и уменьшить задержку. FCS не проверяется, в связи с этим даже если фрейм «битый» он будет скомутирован.
3. Fragment-free. Этот режим работает так же как и Cut-through, с одним отличием. Коммутатор принимает первые 64 байта фрейма, это позволяет отсеить большинство ошибочных фреймов Таким образом в этом режиме форвардинг происходит практически так же быстро как и при Cut-through и с наименьшими задержками.

Источник


Добавить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *

Этот сайт использует Akismet для борьбы со спамом. Узнайте как обрабатываются ваши данные комментариев.

Unlix © Все права защищены 2019

Копирование материалов с сайта Unlix.ru без указания полной ссылки на источник ЗАПРЕЩЕНО!