Сегодня я расскажу об основах VLAN, основных концепциях и принципах VLAN, а также о процессе передачи данных VLAN в сети уровня 2.
Предыстория VLAN
На раннем этапе сеть Ethernet реализует передачу данных через совместно используемую среду на основе множественного доступа с функцией обнаружения столкновений (CSMA/CD). Когда сеть Ethernet имеет большое количество хостов, как столкновения, так и широковещательные штормы становятся серьезной проблемой, влияющей на производительность сети, а в некоторых случаях приводящей к полному отказу сети из строя. Хотя использование коммутаторов для подключения локальных сетей может предотвратить конфликты, они не могут изолировать широковещательные пакеты или улучшить качество сети.
Рисунок 1 Фон VLAN
Виртуальные локальные сети (VLAN) используются для разделения физической LAN на несколько широковещательных доменов для изоляции служб с целью повышения безопасности и управления сетью. Хосты внутри VLAN могут напрямую связываться только с другими хостами в той же VLAN и должны использовать маршрутизатор для связи с хостами в других VLAN.
Из приведенного выше рисунка видно, что путем разделения разных VLAN хосты в VLAN могут связываться напрямую, но они не могут связываться напрямую между VLAN, тем самым ограничивая широковещательные сообщения одной VLAN. Видно, что технология VLAN может дать следующие преимущества:
· Ограничение области широковещательных доменов: область широковещательных доменов ограничена для экономии полосы пропускания и повышения эффективности сети.
· Повышение безопасности LAN: пакеты из разных VLAN передаются отдельно, что не позволяет хостам в VLAN напрямую связываться с хостами в другой VLAN.
· Повышение надежности сети: отказ в одной VLAN не влияет на хосты в других VLAN.
· Возможность создания гибких групп: используя виртуальные локальные сети, можно группировать узлы в разных географических точках, что упрощает построение и обслуживание сети.
Основные концепции и принципы VLAN
Формат кадра VLAN
В традиционном кадре данных Ethernet за MAC-адресом назначения и MAC-адресом источника следует поле типа протокола верхнего уровня. Как показано на рисунке, DA указывает MAC-адрес назначения, SA указывает MAC-адрес источника, а Type указывает тип протокола пакета.
Рисунок 2 Формат кадра Ethernet
Протокол IEEE 802.1Q предусматривает, что 4-байтовый тег VLAN инкапсулируется после MAC-адреса назначения и MAC-адреса источника для идентификации соответствующей информации о VLAN.
Рисунок 3 Поля в теге VLAN
Тег VLAN содержит четыре поля, а именно TPID (идентификатор протокола тега), приоритет, CFI (индикатор канонического формата, индикатор стандартного формата) и идентификатор VLAN.
1. TPID используется для определения, имеет ли фрейм данных тег VLAN, длина составляет 16 бит, а значение по умолчанию - 0x8100.
2. Приоритет представляет собой приоритет сообщения 802.1P, его длина составляет 3 бита.
3. Поле CFI определяет, инкапсулирован ли MAC-адрес в стандартном формате в различных средах передачи, длина составляет 1 бит, значение 0 означает, что MAC-адрес инкапсулирован в стандартном формате, а значение 1 означает, что он инкапсулирован в нестандартном формате. Значение по умолчанию - 0.
4. Идентификатор VLAN определяет номер VLAN, к которой принадлежит сообщение. Длина составляет 12 бит, а диапазон значений - от 0 до 4095. Поскольку 0 и 4095 являются зарезервированными значениями для протокола, диапазон значений идентификатора VLAN составляет от 1 до 4094.
Сетевое устройство использует идентификатор VLAN для идентификации VLAN, к которой принадлежит сообщение, и обрабатывает сообщение в зависимости от того, содержит ли сообщение тег VLAN и значение переносимого тега VLAN.
Тип ссылки
Ссылки VLAN можно разделить на следующие типы:
Ссылка доступа: ссылка, соединяющая хост и коммутатор. Обычно ПК не знает, к какой VLAN он принадлежит, а оборудование ПК не может различать кадры с тегами VLAN. Таким образом, ПК отправляют и принимают только немаркированные кадры. На рисунке 4 ссылки между ПК и коммутаторами являются ссылками доступа.
Магистральное соединение: соединение, соединяющее переключатели. Данные разных VLAN передаются вместе с магистральным каналом. Два конца магистрального канала должны иметь возможность различать кадры с тегами VLAN. Следовательно, вместе с магистральными линиями передаются только помеченные кадры. На рисунке 4 ссылки между коммутаторами являются магистральными. Кадры, передаваемые по магистральным каналам, содержат теги VLAN.
Рисунок 4 Типы ссылок
Типы портов
Некоторые порты устройства могут идентифицировать кадры VLAN, определенные стандартом IEEE 802.1Q, тогда как другие не могут. Порты можно разделить на четыре типа в зависимости от того, могут ли они идентифицировать кадры VLAN:
Порт доступа
Порт доступа соединяет коммутатор с хостом через порт доступа, как показано на рисунке 2. Порт доступа имеет следующие особенности:
Позволяет проходить только кадры, помеченным идентификатором VLAN по умолчанию для порта (PVID).
Добавляет PVID в полученный кадр без тегов.
Удаляет тег из кадра перед отправкой кадра.
Магистральный порт
Магистральный порт соединяет коммутатор с другим коммутатором по магистральному каналу. Магистральный порт имеет следующие особенности:
Позволяет передавать тегированные кадры из нескольких VLAN.
Напрямую отправляет кадр, если порт разрешает передачу идентификатора VLAN в кадре.
Отбрасывает кадр, если порт отклоняет идентификатор VLAN, указанный в кадре.
Гибридный порт
Гибридный порт соединяет коммутатор либо с хостом по каналу доступа, либо с другим коммутатором по магистральному каналу. Гибридный порт позволяет передавать кадры из нескольких VLAN и может удалять теги VLAN из некоторых исходящих кадров VLAN.
Рисунок 5 Типы портов
Способ разделения VLAN
Разделение VLAN на основе интерфейса: назначьте идентификатор VLAN на основе интерфейса коммутатора. Конфигурация проста и может использоваться в различных сценариях.
Разделение VLAN на основе MAC: назначьте идентификатор VLAN на основе исходного MAC-адреса сообщения. Он часто используется в сценариях, когда местоположение пользователя изменяется и нет необходимости перенастраивать VLAN.
Разделение VLAN на основе подсети: назначьте VLAN ID на основе исходного IP-адреса сообщения. Обычно он используется в сценариях, когда пользователи в одном и том же сегменте сети управляются одинаково.
Разделение VLAN на основе протокола: назначьте идентификатор VLAN в соответствии с типом протокола сообщения. Он подходит для сценария единого управления пользователями с помощью одного и того же приложения или сервиса.
Разделение виртуальных локальных сетей на основе стратегий сопоставления: назначьте идентификаторы VLAN на основе указанных стратегий (таких как MAC-адрес источника, IP-адрес источника и порт совпадающих пакетов). Он подходит для сценариев с высокими требованиями к безопасности.
Процесс пересылки VLAN уровня 2
1. Выполните обработку тега VLAN.
Кадр данных, полученный коммутатором, не имеет тега VLAN. Коммутатор автоматически добавляет заголовок тега VLAN по умолчанию к пакету данных в соответствии с идентификатором VLAN по умолчанию для порта. Если у него есть тег VLAN, он определит, находится ли этот тег в разрешенном диапазоне VLAN. Если нет, откажитесь от него, в противном случае перейдите к следующему шагу;
2. Определите, равны ли MAC-адрес назначения и MAC-адрес источника, отмените, если они равны, в противном случае перейти к следующему шагу;
3. Выполните изучение MAC-адреса источника.
Коммутатор проверяет таблицу MAC-адресов, чтобы узнать, изучен ли MAC-адрес источника; если он не существует, он узнает MAC-адрес, в противном случае он обновит только время устаревания записи;
4. Найдите номер порта пересылки.
В соответствии с MAC-адресом назначения и идентификатором VLAN кадра данных выполняется поиск в таблице MAC-адресов, если найден переадресуемый порт, кадр данных пересылается, а если не найден, дейтаграмма транслируется на все порты, через которые проходит VLAN. ;
5. Пересылка сообщений
В зависимости от типа порта определите, следует ли удалить метку VLAN, а затем переслать сообщение.