Vp lan что это

Обновлено: 07.07.2024

Привет, дружище! Дома на телевизоре, игровой приставке, ноутбуке, или в офисе, на IP - телефоне или рабочем ПК мы видим этот порт с названием LAN. А если взять в руки роутер, то на нем и вовсе будет не только LAN, но и WAN . Вообще этих " АНов " очень много: LAN, WAN, MAN, CAN, WLAN, BAN, NAN, SAN . В общем, чтобы не превратиться в Эминема, в статье мы расскажем только о двух из них: LAN и WAN дамы и господа, давайте разбираться.

ВИДЕО: РАЗНИЦА МЕЖДУ LAN И WAN?

LAN - LOCAL AREA NETWORK

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

Начнем с LAN - Local Area Network или просто ЛВС локальная вычислительная сеть - локалка. Она бывает домашняя на 5-6 человек, а бывает офисная на 50 человек. LAN покрывает небольшую зону: квартиру, помещение, пару этажей или здание.

В контексте домашнего использования, в LAN порты роутера подключаются пользовательские устройства: компьютеры, ноутбуки, телевизоры, игровые консоли нового поколения чтобы, играть в Red Dead Redemption 2, отличная игра кстати, и прочие домашние радости, которым нравится для стабильной работы подключаться к сети через кабель.

А с точки зрения корпоративного использования, в LAN находятся рабочие станции сотрудников, принтеры, сканеры и сервера. Кстати, в офисной сети существует множество локальный сетей , которые, как правило, делят по назначению: отдельный LAN для бухгалтерии, свой LAN для продаж, операционного департамента, отдельную сеть делают для принтеров и серверов.

Согласитесь, получается много локалок. Для простоты в корпоративных сетях, бородатые сисадмины создают VLAN Virtual Local Area Network, или так называемые виртуальные локальные сети, которые позволяют на на одном физическом порту роутера создать несколько виртуальных локальных сетей сразу. Э - экономия .

LAN это все наше воздействие внутри сети, пока мы не вышли в эти ваши интернеты - то есть не перешли границу того самого физического порта с тремя буквами LAN и не ушли в WAN .

WAN - WIDE AREA NETWORK

WAN (Wide Area Network) - это глобальная вычислительная сеть, которая не ограничена географической локацией - квартира, этаж или здание. Чувствуете разницу с LAN? Там локальная , а здесь глобальная сеть - вот он ключ - масштаб.

В контексте домашнего использования - WAN разъем вашего роутера в квартире, это порт, из которого идет провод к оборудованию провайдера на чердак. Именно этот провод в поте лица протягивал к вам в квартиру монтажник, когда приходил подключать вас к интернету. Именно за этим портом начинается глобальная сеть.

В корпоративном использовании, WAN подключение, это подключение к глобальной сети провайдера. Это может быть сеть, которая связывает офисы компании в Москве и Владивостоке, а может быть подключение к интернету на большом корпоративном маршрутизаторе.

В отличие от LAN, который может быть только частным, то есть его владельцем является хозяин квартиры или компания, WAN может быть публичным. Отличный пример публичной WAN сети - интернет, через который вы сейчас читаете эту статью. Кстати, скорость передачи данных внутри LAN локалки выше, чем скорость передачи в глобальной сети WAN.

С точки зрения модели OSI, ключевые отличия LAN от WAN кроются на физическом и канальном уровне. В LAN царит стандарт Ethernet, а в WAN, например, живут такие стандарты как Frame Relay, HDLC или PPP (Point-to-Point-Protocol).

Начало

Проблема локальных сетей и нескольких подсетей в том, что появляется угроза утечки информации. Давайте посмотрим на пример трех сетей: дирекция, бухгалтерия и отдел кадров. Конечно, в крупных компаниях сети куда больше, но мы рассмотрим более ужатый пример.

Что такое VLAN – для абсолютных чайников на примере настройки коммутатора Cisco

  1. Пакет дойдет до Switch2, и он отправит его на PC2 и на центральный Switch
  2. Далее пакет дойдет до центрального Switch-а. Но Switch1 отправит пакеты на два других коммутатора: 3 и 4.
  3. Те в свою очередь отправят пакеты на все остальные PC: 3, 4, 5 и 6.

А почему же так происходит? А происходит все из-за того, что PC1 пока не знает MAC-адрес второго компа и отправляем специальный пакет по протоколу ARP, для так называемого «прозвона». Также отправляющий комп не знает адрес канального уровня – вспоминаем сетевую модель OSI.

И тут возникает две проблемы:

  • Безопасность – трафик могут просто перехватить злоумышленники. В целом это можно сделать стандартными программами перехватчиками.
  • Ненужный трафик – когда сеть небольшая, это не так заметно. Но представьте, что у вас сеть состоит из тысячи компьютеров. Все может привести к забитости канала и потери пакетов.

Как ни странно, но пример, который я привел был работоспособным почти в самом начале создания сетей, когда ещё интернет был слабым и юным. О проблеме знали все, и её постаралась решить компания Cisco, которая в своих лабораториях изобрела совершенно новый протокол ISL. После этого протокол Inter-Switch Link был прикручен к IEEE под кодовым названием 802.1q – именно это название вы и можете встречать в интернете или на коробке от коммутаторов.

Для начала взглянем на обычный «Ethernet-кадр», находящийся в своей привычной среде обитания:

Что такое VLAN – для абсолютных чайников на примере настройки коммутатора Cisco

А теперь взглянем на новый кадр 802.1q:

Что такое VLAN – для абсолютных чайников на примере настройки коммутатора Cisco

Что у нас в итоге получается – добавляется ещё один тег с нужной для нас информацией:

Теперь мы подошли к одному очень интересному понятию. Как вы уже поняли, данный кадр 802.1q помогает правильно отправлять пакеты данных. Но вопрос в том, зачем добавлять кадр к пакету, который уже идёт на конечное устройство пользователя? Правильно – незачем.

Именно поэтому в маршрутизаторах и коммутаторах есть два понятия:

  • Trunk port (магистральный порт) – порт, который идет на другое сетевое устройство: коммутатор, маршрутизатор и т.д. Из этого порта обычно отправляются тегированные пакеты, то есть пакеты с этим самым тегом.
  • Access port (порт доступа) – открытый или последний порт, из которого информация льется прямиком на компьютер пользователя. Сюда бессмысленно добавлять тег, забивая размер пакета.

Нетегированный трафик – это пакеты данных, которые идут без кадра 802.1q. Тегирование VLAN как раз и происходит по двум портам: Trunk и Access. Если вам пока ничего не понятно, то не переживайте, дальше я все покажу на примере.

Настройка VLAN на коммутаторе

Приведу пример настройки VLAN на коммутаторе от компании CISCO. По сути у них все настройки делаются примерно одинаково, поэтому вы можете использовать данную инструкцию и в своих целях. Поддержка VLAN должна быть на всех коммутаторах с канальным уровнем.

Для начала давайте посмотрим всю таблицу коммутации VLAN стандартной консольной командной:

Что такое VLAN – для абсолютных чайников на примере настройки коммутатора Cisco

Смотрим по столбцам:

Что такое VLAN – для абсолютных чайников на примере настройки коммутатора Cisco

Для примера я буду использовать модель Cisco 2960 24tt, но принцип настройки, который буду показывать далее – одинаковый для всех их аппаратов. Плюс вы поймете принцип VLAN сразу и на примере.

Далее назовём как-то нашего зверя:

Покажу настройку на примере нашей любимой картинки, которую я показывал в самом начале. Тут у нас есть:

  • Коммутаторы: SenterSW, SW1, SW2, SW3.
  • Компы: PC1, PC2, PC3, PC4, PC5, PC

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

Что такое VLAN – для абсолютных чайников на примере настройки коммутатора Cisco

ПРИМЕЧАНИЕ! Просто запомните, что команда с надписью «interface» вводит вас в настройку данного объекта.

Так как наш порт будет направлен именно на комп, то тегирование не нужно, и мы переводим его в нужное состояние:

2-ой ВЛАН мы создали, осталось теперь привязать 1-ое устройство к нему:

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

На будущее – чтобы не прописывать каждый порт таким образом, вы можете прописать диапазон портов вот так:

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

Как бы вроде мы все сделали, но есть одна проблема: в коммутаторе нет правила, которое бы ограничивало поступление пакетов с других ВЛАН – то есть проблема с безопасностью остается. Нам нужно теперь прописать такое правило, которое бы разрешало поступление на наш 24 порт только пакеты для VLAN2:

На всякий случай проверяем таблицу маршрутизации:

Что такое VLAN – для абсолютных чайников на примере настройки коммутатора Cisco

Как видите наш второй VLAN теперь имеет только два доступных порта. Единственный минус данного вывода информации в том, что вы не можете посмотреть статус тегирования портов. Для этого есть отдельная команда:

show interfaces trunk

Вот тут мы видим наш 24 порт, который нам нужен для связи с центральным коммутатором. Ещё раз повторюсь, что статус тегирования (Trunk или Access) – обязательно нужно настраивать для внешних портов. В противном случае не будет смысла вообще в настройке VLAN.

Первый коммутатор мы настроили, теперь давайте настроим третий. В первую очередь нужно создать три ВЛАН для каждой из структур: дирекция, бухгалтерия и отдел кадров. VLAN 2 уже закрепился за дирекцией. Создаем VLAN для бухгалтерии:

Теперь создаем внутреннюю сеть для отдела кадров:

Ну так как данный коммутатор будет иметь связь только с сетевыми устройствами, то мы будем использовать тегирования в статусе trunk. А использовать мы будем первые 3 порта.

Вам не кажется, что мы что-то упустили? Наш центральный коммутатор по идее будет связующим звеном – ведь так?! Но мы забыли создать VLAN 2 для первого сегмента:

ПРИМЕЧАНИЕ! Дабы не запутаться обязательно называем ВЛАН как на первом коммутаторе.

И тут мы подходим к следующей проблеме. VLAN мы создали и даже разделили на разные по портам. Вроде разделение есть, но давайте взглянем на IP адреса наших компов:

  1. 192.168.1.2
  2. 192.168.1.3
  3. 192.168.1.4
  4. 192.168.1.5
  5. 192.168.1.6
  6. 192.168.1.7

ПРИМЕЧАНИЕ! Если вы ещё путаетесь в этих понятиях, то советую прочесть статью про OSI – ссылку я оставил в самом начале статьи.

Все я это сделал в учебных целях и вообще нужно разделять сети и на канальном, и на сетевом уровне. Это можно сделать вручную на компьютерах. Но статья немного не об этом.

Теперь что будет происходить с отправлением данных? Если мы отправим пакет на PC2, то он дойдет до первого коммутатора. Далее коммутатор отправит его одновременно на PC2 и на центральный Switch. После этого центральный коммутатор отправит пакеты на другие SW (2 и 3). Там коммутаторы, у которых прописаны правила только для VLAN: 3 и 4 – просто отправят пакет в утиль. То есть данный пакет не дойдет до компов: 3, 4, 5 и 6.

Что такое VLAN – для абсолютных чайников на примере настройки коммутатора Cisco

Ситуация с переездом сотрудника

Давайте рассмотрим ситуацию, что в отдел бухгалтерии нужно будет посадить сотрудника из совершенно другого отдела (на время). Допустим Елена Павловна не может сидеть в отделе Дирекции летом, так как у нее сильно повышается давление, а там не кондиционера. Начальство решает переселить её на летнее время в бухгалтерию.

Что такое VLAN – для абсолютных чайников на примере настройки коммутатора Cisco

Итак, что мы будем делать?! В первую очередь мы подключим её компьютер к следующему третьему порту второго свича. Теперь возникла проблема в том, что на втором коммутаторе и слухом не слыхивали про 2-ой ВЛАН и его надо создать:

Теперь нужно 3-порт настроить и добавить его в VLAN2. И также не забываем прописать ему модель тегирования:

Теперь нам нужно разрешить пропускать VLAN2 пакеты именно на внешнем порту. У второго свича (как и у всех) – это 24-ый порт. Внимательно пропишите команду:

Теперь переходим к центральному коммутатору:

Общение между собой

Теперь мы подошли к вопросу использования VLAN – как видите это полезная вещь, которая строго разделяет трафик на канальном уровне и позволяет отправлять пакеты только в нужную сторону. Таким образом организовывается работа больших организаций, где есть большое количество отделов, которые не должны видеть друг друга. Но одна из проблем у нас все же остается, а именно – проблема одной сети. Все наши компьютеры находятся в первой подсети, что неправильно, и нам надо их разбить.

Но для этих целей нам также понадобится маршрутизатор, чтобы объединить сеть также и на сетевом уровне. Для этого мы подключим маршрутизатор Cisco 2811.

Что такое VLAN – для абсолютных чайников на примере настройки коммутатора Cisco

В настройках нам также надо будет указать шлюзы, но они будут стандартные:

  1. 192.168.1.1 – для дирекции
  2. 192.168.2.1 – для бухгалтерии
  3. 192.168.3.1 – для отдела кадров

Маска будет везде одинаковая: 255.255.255.0 (/24).

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

Настройка маршрутизатора

Заходим в настройки и обзываем его исходя из картинки:

Теперь создаем виртуальный шлюз для второй подсети. Обратите внимание, что для порта мы прописываем команду: «0/0.3». Хотя в прошлых коммутаторах мы явно указывали порт. Все это из-за того, что за шлюз будет отвечать, как раз вот этот маршрутизатор, который не подключен напрямую к устройствам.

Осталось создать шлюз для последней подсети:

Чуть не забыл сказать – маршрутизатор мы подключим к 24 порту центрального коммутатора. Теперь нам нужно разрешить отправлять пакеты всех вланов на маршрутизатор через 24 порт, к которому мы и подключились:

Не забываем указать «транковое» тегирование, ведь пакеты будут идти на сетевое устройство, а не на компьютер:

Все VLAN можно прописать просто через запятую:

Именно так заполняется таблица маршрутизации. Такой долгий путь обычно начинается в самом начале. Впоследствии маршрутизатор помогает общаться всем компьютерам именно через канальный уровень.

Видео

Более детально про VLAN рассказывается в данном видео, оно достаточно долгое, но максимально информативное.

Lab and fun!

пятница, 8 июля 2016 г.

MPLS L2VPN VPLS

Кратко про первый вид сервиса в MPLS L2VPN я уже писал в посте про VLL. Конечно же понятно, что абоненту не всегда нужна труба точка-точка, зачастую абонент хочет развитую сеть точка-многоточка или скорее многоточка-многоточка. В таком случае, на сцену выходит Virtual Private LAN Service (VPLS)

Концепция VPLS умещается в пару строк и в состоянии предоставить клиенту виртуальную Ethernet сеть. В таком случае, сеть провайдера для абонента выглядит как один большой коммутатор. Этот коммутатор, как и любой другой, может понимать теги VLAN, обычно такой коммутатор знает что делать с двумя тегами VLAN (QinQ) или, скажем, умеет VLAN трансляцию. Более того, "большой коммутатор" может даже участвовать в клиентском STP или быть членом Link Aggregation Group. Об этом я напишу в посте про обеспечение отказоустойчивости в MPLS.

Все посты про MPLS VPN можно посмотреть по тегу MPLS или в обобщающем посте.


Рассмотрим базовую архитектуру подробнее. В ней все так же присутствует PSN (созданный LDP, RSPV-TE или GRE). Поверх PSN строятся pseudowire туннели (T-LDP) для каждого сервиса VPLS. В базовом варианте, в ядре провайдера pseudowire туннели должны строиться от каждого PE роутера до каждого, образовывая так называемый full-mesh (соединение по принципу "каждый с каждым"). К каждому PE подключен абонентский роутер (CE). VPLS сервис обеспечивает связность всех CE стройств.

VSI - это то, что делает VPLS випиэлэсом. Эта виртуальная сущность выполняет роль коммутатора на каждом PE роутере. Для каждого сервиса на роутере создается отдельный VSI. Тут можно проследить некую аналогию с VRF в L3VPN. Можно представить VSI как коммутатор внутри устройства в порты которого воткнуты провода идущие к точками подключения и pseudowire. На картинке выше я попытался это изобразить.

VPLS не уступает VLL в гибкости точек подключения клиентов. Как и в Epipe, attachment circuit может быть настроен на прием тегированных Ethernet кадров от заказчика (в том числе и несколькими метками), ATM кадров, Frame Relay и, скорее всего, чего-нибудь ещё.


Трафик в MPLS сети проходит ряд довольно очевидных этапов. Рассмотрим простой пример, когда в только что сконфигурированной VPLS сети побежал первый пакет.


Hierarchical VPLS

Везде где есть топология каждый с каждым есть проблема с огромным количеством "линков", посчитать которые можно формулой n(n-1)/2. В итоге была придумана концепция H-VPLS, которая немного сокращала число линков частично избавляя от full mesh топологии.

По сути, H-VPLS чисто технически отличается от обычного VPLS только введением нового типа pseudowire, который называется "spoke pseudowire". Этот тип отличается от обычного pseudowire туннеля в VPLS лишь отсутствием split horizon правила.

В обычном VPLS, трафик из pseudowire ("mesh pseudowire") не может быть отправлен в другую "mesh pseudowire". В H-VPLS, таковых ограничений нет, трафик из spoke pseudowire может быть отправлен в другую spoke pseudowire, в точку подключения абонента или в mesh pseudowire. В общем, если придерживаться визуализации с коммутатором и проводами, то mesh-pseudowire подключена к этому виртуальному коммутатору обычным проводом в порт, который действует как порт на обычном коммутаторе. А вот порт в который подключен mesh pseudowire туннель имеет на себе ряд ограничений в виде split horizon.


Наверное, на примерах будет понятнее. Рассмотрим сеть, в которой введен иерархический дизайн. Все PE маршрутизаторы теперь не обязаны иметь pseudowire до каждого другого PE.
Теперь среди PE выбрано три hub-PE, которые агрегируют spoke pseudowire туннели с spoke PE. Все hub-PE по прежнему имеют pseudowire-подключения по принципу каждый с каждым. Все pseudowire в ядре настроены как mesh pseudowire, что инструктирует VSI придерживаться правила split horizon в отношении таких туннелей. Трафик пришедший из такого туннеля не может быть отправлен в другой такой же. Это обеспечивает более ровное распределение трафика в ядре, неплохую отказоустойчивость и защиту от колец/петель.

Все spoke-PE теперь подключены всего одним spoke pseudowire к ближайшему hub-PE. Это существенно уменьшает количество туннелей, упрощает настройку, в случае добавления нового spoke-PE, ну и отказоустойчивость, конечно, чуть страдает (об этом как-нибудь в другой раз). Hub-PE имеет spoke pseudowire в сторону абонентов и mesh pseudowire в сторону ядра. Spoke pseudowire направлены в сторону абонентов и VSI не применяет правило split horizon на них. Т.е. трафик пришедший к hub-PE из одной spoke pseudowire вполне может быть отправлен в другую spoke pseudowire. Это штатный случай.

Ясно, что защита от петель тут достигается нормальным дизайном и правильной конфигурацией. Наряду со страдающей отказоустойчивостью, выбор между H-VPLS и обычным VPLS всегда вопрос баланса.

Определение spoke или mesh pseudowire носит локальный характер, по сути это всего лишь соответствуюшая настройка VSI, который выключает split horizon на spoke туннелях. Однако его можно включить назад, объединив несколько spoke pseudowire в группу. Таким образом получится некий аналог Private VLAN. Трафик из одной spoke pseudowire не будет передан в другую spoke pseudowire. Может быть клиент захотел такую топология, в которой его офисы не должны общаться напрямую, а весь трафик должен проходить через его центральный офис, в котором стоит файервол.


Вообще, имея сеть с MPLS для каждого клиента можно и, в некоторых случаях, даже нужно выбирать подходящую топологию под каждого абонента. Для кого-то будет лучше строить обычный VPLS (если мало точек подключения и критично "качественное" прохождение трафика), для кого-то нужно строить H-VPLS (точек много, но оптимальность прохождения трафика не так важна).

Пока все.
Хотя нет, не все.

Возможно, читая все эти многобуквы, у вас возникло чувство некоего дискомфорта в душе. И это абсолютно правильно, ведь все приходится настраивать руками. Фу. Сначала нужно настроить PSN туннели (GRE, LDP, RSVP-TE), потом поверх них нужно настроить pseudowire туннели, сконфигурировать на каждой ноде VSI сущность. Все это можно автоматизировать с помощь.

BGP-Auto Discovery (BGP AD)

Принцип использования MG-BGP в L2VPN VPLS примерно такой же как и в L3VPN VPRN. Настроив на каждом PE роутере BGP-AD, мы получаем возможность динамически добавлять в определенный VPLS определенные ноды, поднимать транспортные (PSN) туннели согласно определенным шаблонам и затем сигнализировать по другим шаблонам pseudowire до нужных PE через них. Короче, все круто. Обычно, есть ряд ограничений связанных с использование с BGP-AD. Тот же Алкатель, к примеру, не может сигнализировать PSN использую RSVP-TE, поэтому их главная рекомендация - настраивать необходимые PSN руками, а BGP-AD уже будет создать psewdowire по шаблонам. BGP AD оперирует двумя сущностями Route Target(RT) и Route Distiguisher(RD). С помощью настроенного импорта/экспорта этих значений в VPLS, мы можем строить различные VPLS топологии.

Если вы хоть раз сталкивались с RT и RD, то вы точно знаете, что тема их различия у многих вызывает конфуз. На столько у многих, что даже в некоторых учебных материалах просто игнорируют эту тему. Было у меня как-то собеседование, на котором я начал хвалится своими рыгалиями, на что интервьювер отреагировал примерно так:"Это все понятно. А вот в чем отличие RT от RD, вы знаете?".

  • Route Distinguisher (RD) - значение, которое использует BGP для того чтобы сделать все маршруты (NLRI) в сети уникальными. Получая NLRI, BGP добавляет к нему RD для того чтобы получить уникальный NLRI. Пример из L3VPN, есть у BGP префикс 192.168.0.0/24, который пришел от клиента. Есть такой же префикс, который пришел от другого клиента. BGP добивает к ним RD в соответствии с тем, из какого VPN пришли префиксы, и получаем две уникальных сущности 65000:1:192.168.0.0/24 и 6500:2:192.168.0.0/24. RD - имеет локальный характер.
  • Route Target (RT) - даже из названия понятно, что у RT совсем не локальный характер. Это некая метка для удаленного устройства, с помощью которой он решит в какой VPN засунуть маршрут. Манипулирую с импортом/экспортом различных значений RT, мы можем строить причудливые топологии в L2 и L3 VPN.
Допустим, у нас есть сеть из четырех маршрутизаторов, на каждом настроен BGP-AD c VPLS100. Мы хотим построить типичную hub-and-spoke топологию. R1 должен иметь связность с R2, R3 и R4, которые должны общаться только через центральную ноду R1. Сделать мы это можем с помощью манипулирования с RT, импорта и экспорта его в VPLS инстанс.
Нода R1 экспортирует из VPLS RT 65000:1 и импортирует в него RT 65000:2, 65000:3, 65000:4 Нода R2 экспортирует из VPLS RT 65000:2 и импортирует в него RT 65000:1 Нода R3 экспортирует из VPLS RT 65000:3 и импортирует в него RT 65000:1 Нода R4 экспортирует из VPLS RT 65000:4 и импортирует в него RT 65000:1


Добавляя определенные RT в импорт или экспорт, мы получаем возможность строить различные топологии. Например, добавим ещё один роутер R5. Путь этот роутер должен построить pseudowire до R1 и R2. Ок. Пусть он экспортит RT 65000:5 и импортит RT 65000:1 и 65000:2. На нодах R1 и R2 нужно добавить 65000:5 на импорт и соответсвубщие pseudowire сигнализируются.


Provider Backbone Bridge (PBB) 802.1ah

Мы уже рассмотрели как в VPLS была решена проблема многочисленных pseudowire (H-VPLS) и необходимости ручной настройки (BGP-AD). Пришло время решить ещё одну проблему, которая связана с количеством MAC адресов в VPLS сети. Помним, что VSI на каждом роутере участвующим в VPLS изучает MAC-адреса клиентов. Количество их может быть довольно большим, если не сказать огромным, если провайдер предоставляет несколько сервисов VPLS большим клиентам. PBB придумывался как средство для уменьшения MAC-адресов в сети и позднее был добавлен в VPLS. В PBB есть два типа устройств:
  • Backbone Edge Brindge (BEB) - добавляет к клиентскому трафику ещё один заголовок, в котором содержится:
    • Instance TAG - позволяет идентифицировать клиента, по характеру похож на сервисную метку pseudowire в MPLS. В VPLS по I-TAG роутер понимает в какой VPLS инстанс засунуть трафик.
    • Backbone VLAN (B-VID) - VLAN тэг, который позволяет разделить PBB сеть на сегменты.
    • Backbone Source Address (B-SA) - MAC адрес источника в PBB сети
    • Backbone Destination Address (B-DA) - MAC адрес назначения в PBB сети

    PBB - это такая Ethernet сеть для Ethernet сетей. В чем-то есть схожесть с MPLS или TRILL. Сама суть проста - к абонентскому трафику (а это может быть и QinQ, к примеру) добавляем ещё VLAN и пару MAC адресов, дальнейшая обработка трафика будет происходить по ним.


    Процесс адаптации PBB для VPLS просто убивает своей терминологией. Весь VPLS домен разделяется на две части. Одна часть смотрит в сторону клиента и носит название Edge Domain или Interface Domain (I-domain), вторая часть ассоциируется с ядром сети и носит название Backbone Domain (B-domain). Граница между доменами обычно проходит по hub-PE устройствам, которые агрегируют pseudowire c spoke-PE, которые уже подключены к клиенту. Такие hub-PE носят название IB-PE. На них настраивается фактически два VPLS инстанса с двумя разными VSI. Один (I-VPLS) подключен к обычной VPLS сети, где ещё бегают клиентские MACи, другой (B-VPLS) подключен в ядро, в котором коммутация происходит по новому заголовку. Все роутеры в ядре изучают только MAC адреса в новом заголовке. Есть и другой принцип, когда I-VPLS и B-VPLS располагаются на разных устройствах, но мы умеренно проигнорируем этот факт.

    Трафик по такой сети ходит довольно причудливо.


    В итоге, обычный Ethernet-трафик клиента, допустим даже без тегов, проходя через MPLS ядро, претерпевает множество инкапсуляций. На него навешивается новый заголовок PBB, сервисная и транспортная метки, после чего трафик попадает в сеть, в которой на него могут быть навешены ещё метки в случае FRR, например.

    В ядре провайдера кадр будет выглядеть например так (часть полей не учитываем). Нарисуем HTML-табличку в стиле Web1.0.

    Что такое Virtual local area network (VLAN) это виртуальная локальная сеть, позволяющая делить 1 физическую сеть на некоторое количество других логических сетей, которые работают вне зависимости друг от друга. Надеюсь вы прочитали статью про модель открытых систем OSI, так как технология vlan реализуется коммутаторами и находится на канальном уровне модели.

    p, blockquote 1,0,0,0,0 -->


    p, blockquote 2,0,0,0,0 -->

    Для чего нужна vLan?

    Зачем делить 1 сеть на несколько изолированных частей? К примеру, когда строят сеть для большой компании, известно, что каждый отдел хочет иметь свою собственную сеть, которая разделена от других.

    p, blockquote 3,0,0,0,0 -->

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

    p, blockquote 4,0,0,0,0 -->

    Преимущества деления и изоляции vlan

    Во-первых, безопасность. Если ты арендуешь помещение в каком-либо здании, тебе необходимо, чтобы данные были недоступны для других арендаторам.

    p, blockquote 5,0,0,0,0 -->

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

    p, blockquote 6,0,0,0,0 -->

    В-третьих, ограничение широковещательного трафика. Если коммутатор не может найти в каком порту находится получатель, то он отправляет этот кадр на все порты. В сети с огромным множеством компьютеров такого широковещательного трафика много и он занимает высокий % нагрузки сети. А если вы изолируете сеть, то широковещательный трафик будет распространяться в рамках этой изолированной сети и объем трафика сокращается.

    p, blockquote 7,0,1,0,0 -->

    VLAN в коммутаторах

    p, blockquote 8,0,0,0,0 -->

    Связь vlan между компьютерами

    p, blockquote 9,0,0,0,0 -->

    Как это работает?

    В таблице коммутации, на рисунке ниже, есть поле в котором написано “идентификатор VLAN”, как правило для этих целей используют обычные числа.

    p, blockquote 10,0,0,0,0 -->

    По таблице смотрим, что порт 1 и 5 входят в vlan №2, а порты 2-4 в vlan №3. Если компьютеры подключенные к порту 1 и входящие в vlan 2 попытаются переслать данные к компьютеру подключенному к порту 4 входящий в вилан 3, то даже если компьютер отправителя знает MAC-адрес компьютера получателя, коммутатор не передаст этот кадр. Потому что порты находятся в разных виртуальных сетях и передача данных между ними невозможна.

    p, blockquote 11,0,0,0,0 -->

    Таблица для расчета vlan на одном коммутаторе

    p, blockquote 12,0,0,0,0 -->

    Хорошо, когда сеть построена на одном коммутаторе, тогда подойдет вариант с таблицей коммутации и номерами vlan. Что делать, если в сети используются 2 или более коммутаторов? При отправлении кадров от одного коммутатора к другому, нужна информация к какому вилэну принадлежит передаваемый кадр. Информацию о № vlan нужно включать в отправляемый кадр, альтернативного варианта получить эту информацию у принимающего коммутатора нет.

    p, blockquote 13,0,0,0,0 -->

    Пример коммутатора

    p, blockquote 14,1,0,0,0 -->

    С противоположной стороны, формат кадра Ethernet задан стандартом IEEE и в нем нет места для идентификатора VLAN. Чтобы включить № вилан в Ethernet кадр, нужно было изменить формат. Это изменение было предложено в стандарте IEEE 802.1Q. Но было нельзя просто добавить отдельное поле для номера вилан, потому что нужно обеспечить согласование со всем существующим оборудованием.

    p, blockquote 15,0,0,0,0 -->

    Стандарт IEEE 802.1Q

    p, blockquote 16,0,0,0,0 -->

    p, blockquote 17,0,0,0,0 -->

    Чтобы передавать данные размером 1500 байт в кадрах с идентификатором вилана, max длина кадра была увеличена на четыре байта.

    p, blockquote 18,0,0,0,0 -->

    Тип стандартного кадра vlan

    p, blockquote 19,0,0,0,0 -->

    Передача данных с использованием стандарта IEEE 802.1Q

    p, blockquote 20,0,0,0,0 -->

    Разбор примера vlan

    p, blockquote 21,0,0,1,0 -->

    Коммутатор получает этот кадр, и понимает, что он был получен с ноутбука входящего в желтый вилан. Например, номер желтого вилана 2. Коммутатор добавляет служебные поля, в поле “Тип” протокола следующего уровня, значение 0800 заменяется на 08100. Потом добавляется номер вилана 2 и записывается код протокола следующего уровня 0800, для того, чтобы его, в дальнейшем можно было восстановить.

    p, blockquote 22,0,0,0,0 -->

    Разбор примера vlan

    p, blockquote 23,0,0,0,0 -->

    Принимающий информацию коммутатор извлекает эту информацию о vlan, осознает, что кадр был отправлен вилэн с номеров 2, т.е. в желтый вилан. Затем этот коммутатор удаляет из кадра информацию о номере вилэн и восстанавливает старое значение протокола следующего уровня 0800, что соответствует IP.

    p, blockquote 24,0,0,0,0 -->

    Разбор примера vlan

    p, blockquote 25,0,0,0,0 -->

    И вот такой кадр отправляет принимающему ноутбуку. Сейчас почти все сетевые адаптеры поддерживают стандарт 802.1Q и уже сам ноутбук может вставить нужные поля с номером вилана в кадр.

    p, blockquote 26,0,0,0,0 -->

    p, blockquote 27,0,0,0,0 -->

    Заключение

    Читайте также: