Коммутация MINT

03

Использование VLAN

Понятие VLAN

Одним из инструментов по разделению сети Ethernet на логические сегменты является технология виртуальных сетей VLAN. Использование VLAN позволяет объединять устройства в группы на канальном уровне. При этом взаимодействие между устройствами возможно только в рамках группы, что позволяет снизить широковещательный трафик в сети, а также разграничить трафик устройств друг от друга. Следует учитывать, что группировка устройств выполняется на канальном уровне, т.е. устройства будут сохранять связность на более высоких уровнях, например сетевом.

Поддержка VLAN в сети подразумевает использование другого формата Ethernet-кадра. На рисунке ниже представлен формат кадра Ethernet без использования VLAN и с использованием. Во втором случае в Ethernet-кадр добавляется 4-байтовое поле "VLAN-id", включающее следующие поля:

  • Идентификатор протокола тэгирования (Tag Protocol Identifier) - идентификатор протокола, используемого для VLAN. Стандартным значением является "0x8100". Для поля используется 16 бит.
  • Код приоритета (Priority code point) - параметр, используемый для указания QoS передаваемых кадров. Для поля используется 3 бита.
  • Индикатор совместимости (Drop eligible indicator) - параметр, указывающий на используемый формат MAC-адреса. Для поля используется 1 бит.
  • Идентификатор VLAN (VLAN Identifier) - идентификатор виртуальной сети VLAN. Для поля используется 12 бит, т.е. диапазон значений идентификатора от 0 до 4095. Как правило, в зависимости от производителя сетевого оборудования, часть идентификаторов являются зарезервированными и они не используются администратором локальной сети при конфигурации. Как правило, зарезервирован VLAN-id 0 для служебных нужд и VLAN-id 1, как native VLAN. В общем случае, администратор может организовать 4094 виртуальных локальных сети поверх одной физической инфраструктуры.

Большинство пользовательских устройств не поддерживает обработку кадров с VLAN, поэтому в сегментах сети с таким оборудованием используются Ethernet-кадры без VLAN. Для этого, при распространении кадра в сети, метка VLAN может быть помещена в кадр и удалена из него. Такие операции называются тэгированием и растэгированием соответственно.

Для демонстрации операций с кадрами рассмотрим пример (см. рисунок): ПК1 передаёт Ethernet-кадр в сторону ПК2.

  1. ПК1 формирует Ethernet-кадр и перадаёт его Коммутатор 1. Поскольку ПК1 не поддерживает функционал VLAN, то кадр передаётся без соответствующей метки.
     
  2. Коммутатор 1, получив от ПК1 Ethernet-кадр, выполняет операцию тэгирования и добавляет к полученному кадру метку VLAN.
  3. Коммутатор 1 передаёт тэгированный кадр в сторону Коммутатор 2.
  4. Коммутатор 2, получив тэгированный кадр от Коммутатор 1, принимает решение о перенаправлении кадра ПК2.
  5. ПК2 не поддерживает функционал VLAN, поэтому Коммутатор 2 удаляет метку VLAN из полученного кадра и передаёт его в сторону ПК2.
     

В рассмотренном примере порты коммутаторов, к которым подключены ПК1 и ПК2, занимаются тэгированием/растэгированием передаваемых кадров. Такие порты называются access-портами. Access-порт может быть ассоциирован только с одним идентификатором VLAN: в полученный портом кадр будет добавлено поле VLAN с этим идентификатором, а для кадров, отправляемых портом, метка VLAN будет удалена.

Порты, которыми соединены коммутаторы между собой не выполняют манипуляций с полем VLAN в кадрах. Такие порты называются trunk-портами. Trunk-порт может быть ассоциирован с набором VLAN. При этом полученные на порт кадры, идентификаторы VLAN которых не указаны в конфигурации trunk-порта, будут отброшены. Аналогично, с порта могут быть отправлены только кадры с идентификаторами VLAN, указанными в конфигурации порта.

Некоторые производители оборудования позволяют выполнять конфигурацию гибридных портов. Это trunk-порт, для которого выделяется один VLAN, по отношению к которому порт будет функционировать, как access. В этом случае с порта могут быть отправлены и получены кадры с метками VLAN, указанными в конфигурации, как trunk, но все кадры, полученные портом без метки, будут тэгироваться access-VLAN. Соответственно, обрабатываемые кадры с идентификатором access-VLAN, будут отправлены через гибридный порт без метки VLAN.

В начале урока было отмечено, что использование VLAN позволяет ограничить трафик устройств друг от друга. Рассмотрим это на примере (см. рисунок). Все пользовательские устройства находятся в одной ip-сети 192.168.10.0/24, однако в разных виртуальных сетях VLAN: для ПК1 и ПК4 выделен VLAN 20, для ПК2 и ПК3 - VLAN 10. Порты коммутаторов, в которые подключены пользовательские устройства, настроены в режиме access, порты, соединяющие коммутаторы, в режиме trunk для VLAN 10 и 20.

  1. ПК1 необходимо передать данные на ПК4, однако в его базе отсутствует MAC-адрес ПК4.
  2. Для того, чтобы узнать MAC-адрес ПК4, ПК1 формирует широковещательный ARP-запрос и передаёт его в сторону Коммутатор 1.
  3. Коммутатор 1, получив кадр от ПК1, выполняет его тэгирование VLAN 20.
  4. Поскольку кадр широковещательный, то Коммутатор 1 должен передать кадр на все порты, где разрешён VLAN 20, исключая порт, через который этот кадр получен. Коммутатор 1 передаёт кадр на Коммутатор 2.
    1. Несмотря на то, что ПК2 и ПК3 находятся в одной подсети с ПК1 - 192.168.10.0/24, им не будет передан ARP-запрос, т.к. эти устройства помещены в другой виртуальный сегмент локальной сети.
  5. Коммутатор 2 получает тэгированный кадр от Коммутатора 1, снимает метку и перенаправляет его к ПК4.

Ответ на ARP-запрос будет выполнен по следующей схеме (см. рисунок):

  1. ПК4 формирует ответ на запрос, помещает его в Ethernet-кадр с MAC-адресом ПК1 в роли получателя и отправляет в сторону Коммутатор 2.
  2. Коммутатор 2 тэгирует полученный кадр VLAN 20 и передаёт в сторону Коммутатор 1.
  3. Коммутатор 1 растэгирует полученный кадр и передаёт его ПК1.

Таким образом, несмотря на то, что пользовательские устройства находятся в одной подсети, их взаимодействие ограничено виртуальным сегментом.

Операции с метками

Использование групп коммутации позволяет гибко обрабатывать кадры с метками VLAN, позволяя настраивать порты access и trunk, а также принудительно изменять значение меток принятых кадров. Кадры с определённой меткой VLAN могут быть направлены в определённую коммутационную группу. При этом признаком хорошего тона является соответствие номера группы коммутации и используемой метки VLAN.

Рассмотрим схему, в которой к сектору БС1 подключено 2 абонентских устройства. При рассмотрении конфигурации не будут учитываться настройки групп коммутации для управления устройством, т.к. они были рассмотрены в предыдущем уроке.

На БС1 будет создана одна группа коммутации типа "Trunk", включающая в себя VLAN с идентификаторами 10, 20 и 30. Для этого необходимо выполнить следующие действия:

Для создания группы коммутации, перейдите в меню "Основные настройкиКоммутатор (MAC Switch)", нажмите кнопку "Создать группу коммутации".

  1. Укажите номер группы коммутации #1.
  2. Включите в созданную группу коммутации интерфейсы eth0 и rf*.
  3. Выберите режим группы коммутации "Trunk".
  4. Для созданной группы создайте правило "vlan 10,20,30".

Организация trunk-порта

При настройке АС1 в режиме trunk для VLAN с идентификатором 10, радиоустройство будет принимать только кадры MINT, содержащие Ethernet-кадры с меткой VLAN 10, декапсулировать их и передавать в неизменном виде. Кадры данных с другими идентификаторами VLAN или их отсутствием на АС1 переданы не будут. Таким образом, на коммутатор 2 будут поступать кадры с меткой VLAN 10.

Конфигурация trunk-порта на АС1 выполняется в следующей последовательности:

Этап 1: для создания группы коммутации, перейдите в меню "Основные настройкиКоммутатор (MAC Switch)", нажмите кнопку "Создать группу коммутации".

Этап 2: укажите номер группы коммутации #10, номер группы коммутации должен совпадать с идентификатором VLAN.

Этап 3: включите в созданную группу коммутации интерфейсы eth0 и rf*.

Этап 4: выберите режим группы коммутации "In-Trunk" и укажите номер транковой группы 1 (в соответствии с номером группы коммутации на БС1).

Этап 5: для созданной группы коммутации создайте правило "vlan 10".

Настройка диапазона VLAN на абонентском устройстве
 

При настройке АС2 в режиме trunk для VLAN с идентификаторами 20 и 30, радиоустройство будет принимать только кадры MINT, содержащие Ethernet-кадры с метками VLAN 20 и 30, декапсулировать их и передавать в неизменном виде. Кадры данных с другими идентификаторами VLAN или их отсутствием на АС2 переданы не будут. Таким образом на коммутатор 3 будут поступать кадры с метками VLAN 20 и 30.

Для реализации такой схемы с помощью рассмотренных методов, на радиооборудовании необходимо создавать отдельную группу коммутации для каждого идентификатора VLAN. Если набор VLAN будет обширным, то конфигурация абонентской станции будет трудозатратной, однако, начиная с версии ПО 1.90.29, это можно реализовать через одну группу коммутации типа "Trunk". Логика работы группы коммутации будет аналогична режиму "In-Trunk", с той лишь разницей, что условия будут справедливы для кадров с метками VLAN 20 и 30.
 

Последовательность конфигурации АС2:

Этап 1: для создания группы коммутации, перейдите в меню "Основные настройкиКоммутатор (MAC Switch)", нажмите кнопку "Создать группу коммутации".

Этап 2: укажите номер группы коммутации #1, в соответствии с группой коммутации на БС1.

Этап 3: включите в созданную группу коммутации интерфейсы eth0 и rf*.

Этап 4: выберите режим группы коммутации "Trunk".

Этап 5: для сформированной группы коммутации создайте правило "vlan 20,30".

Организация access-порта

Рассмотрим схему связи БС1 и АС1, в которой Ethernet-порт АС1 должен быть настроен в режиме access (см. рисунок). Такая конфигурация может понадобиться в ситуациях, когда устройство, подключенное к АС1 (в примере - Коммутатор 2), не поддерживает функциональность VLAN. В случае подобной настройки АС1 будет отправлять Коммутатору 2 и получать от него кадры без метки VLAN.

Для того, чтобы настроить группу коммутации на БС1, как access-порт, необходимо создать логический интерфейс VLAN с родительским портом Ethernet, который будет снимать метку VLAN при попадании трафика в группу коммутации со стороны проводного сегмента сети, и назначать метку VLAN при передаче пакета Коммутатору 1. В радио-сегменте между БС1 и АС1 трафик передаётся нетегированным.

Настройка устройств производится в соответствии со следующим алгоритмом:

  • Этап 1: на БС1 и АС1, для создания группы коммутации, перейдите в меню "Основные настройкиКоммутатор (MAC Switch)", нажмите кнопку "Создать группу коммутации".
  • Этап 2: на БС1 и АС1 укажите номер группы коммутации 20, для удобства номер группы коммутации должен совпадать с идентификатором VLAN.
  • Этап 3а: на БС1 создайте интерфейс vlan20, укажите родителем интерфейс eth0 и "Vlan ID" 20. Добавьте в созданную группу коммутации интерфейсы vlan20 и rf*. Дополнительные правила не требуются.
  • Этап 3б: на АС1 в созданную группу коммутации добавьте интерфейсы eth0 и rf*.

В рассмотренной конфигурации БС1, кадр, пришедший через интерфейс eth0 с меткой VLAN 20, будет растегирован, инкасулирован в кадр MINT с меткой группы коммутации #20 и отправлен через радиоинтерфейс. MINT-кадр с меткой группы коммутации #20, полученный через радиоинтерфейс, будет отправлен через интерфейс eth0, как кадр Ethernet с меткой VLAN 20.

Замена метки

Возьмём за основу схему на рисунке 3.9, изменив цель. ПК1 в левой части схемы работает в VLAN 100, а ПК2 - в VLAN 200. Необходимо с помощью конфигурации оборудования "Инфинет" добиться связности между этими устройствами на уровне L2.

Для выполнения задачи, необходимо получить конфигурацию, в которой кадры от ПК1 ,будут передаваться на АС1 нетегированными (исходная метка 100 будет снята), а АС1 при передаче их ПК2, назначит им метку 200. БС1 всем пакетам полученным от АС1 будет назначать метку 100 и передавать их ПК1.

Конфигурация устройств выполняется в следующей последовательности:

  • Этап 1: на БС1 и АС1, для создания группы коммутации, перейдите в меню "Основные настройкиКоммутатор (MAC Switch)", нажмите кнопку "Создать группу коммутации".
  • Этап 2: на БС1 и АС1 укажите одинаковый номер группы коммутации (в примере используется группа коммутации с номером 2), включите в неё интерфейс rf*
  • Этап 3: на БС1 создайте интерфейс vlan100 c родителем eth0 и "Vlan ID" 100.
    • на АС1  создайте интерфейс vlan200 c родителем eth0 и "Vlan ID" 200.
  • Этап 4: на БС1 добавьте интерфейс vlan100 в созданную группу коммутации. Дополнительных правил не требуется.
    • на АС1 добавьте интерфейс vlan200 в созданную группу коммутации. Дополнительных правил не требуется.

Использование QinQ

В начале урока было показано, что диапазон используемых идентификаторов VLAN ограничен 12 битами и находится в диапазоне 0-4095. При масштабировании сетей провайдеров и организации связи через арендованные L2-каналы, может возникнуть проблема нехватки выделенного количества идентификаторов VLAN. В этом случае, одним из путей решения проблемы является использование технологии QinQ.

Технология QinQ подразумевает использование двух полей VLAN в кадре Ethernet (см. рисунок). При этом, у внешнего заголовка поле EtherType выставляется равным "0x88a8" или "0x9100", а у внутреннего - "0x8100". Не все устройства поддерживают функциональность двойного тэгирования, поэтому при обработке кадра они руководствуются только внешней меткой VLAN. Использование двойного тэггирования позволяет использовать для идентификаторов VLAN 24 бита, т.е. диапазон возможных значений увеличится до 16777216.

Рассмотрим ситуацию, когда провайдер предоставляет L2-канал через VLAN 605. В случае необходимости передачи через этот канал нескольких пользовательских VLAN сделать это напрямую не получится, поэтому можно воспользоваться технологией QinQ. В этом случае, VLAN 605, выделенный провайдером, называют Service VLAN (стандарт 802.1ad), а набор пользовательских VLAN, в нашем примере VLAN 5 и 6, - Customer VLAN (стандарт 802.1q).


Настройка устройства Master
 

Этап 1: Перейдите в раздел "Основные настройки → Сетевые настройки" и нажмите кнопку "Создать VLAN":

Этап 2: Настройте созданный интерфейс vlan605, определив его родительский интерфейс, метку VLAN и тип инкапсуляции:

Этап 3: Перейдите в раздел "Основные настройки → Коммутатор (MAC switch)", создать группу коммутации #605 и добавьте в неё сетевые интерфейсы rf* и vlan605:

Настройка устройства Slave
 

Этап 1: Перейдите в раздел "Основные настройки → Коммутатор (MAC switch)" и создайте группу коммутации с номером 605, включив в неё сетевые интерфейсы rf* и eth:

Помимо настроек устройств "Инфинет", должны быть настроены используемые коммутаторы.

Передача данных в рассматриваемой схеме будет производиться следующим образом:

  • ПК3 формирует сообщение для ПК1 и, инкапсулируя его в Ethernet кадр с меткой VLAN 5, передаёт его в сторону коммутатора;
  • коммутатор, принимая сформированный кадр, добавляет к нему ещё одну метку S-VLAN 605;
  • далее коммутатор передаёт кадр в сторону провайдера и кадр приходит к устройству Master;
  • устройство Master снимает метку S-VLAN, инкапсулирует кадр в кадр MINT и передаёт через радиосеть;
  • устройство Slave декапсулирует Ethernet-кадр и передаёт его коммутатору;
  • коммутатор удаляет метку VLAN и передаёт Ethernet-кадр ПК1.
Назад Дальше