Хорошо

Резервирование соединений второго уровня Популярное

Последний ответ янв 25, 2021 23:42:43 1052 3 6 0 3

Рассмотрим простую сеть.

01

 

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

02

 

Если просто добавим ещё одно соединение между двумя не очень умными коммутаторами, то они начнут рассказывать друг другу сплетни из-за образовавшейся сетевой петли. Сеть после этого перестанет работать. Почему так происходит? Это связано с принципом работы коммутатора. Когда он получает пакет, адрес назначения которого им не изучен, он отправляет его на все свои порты, кроме того, с которого он получил этот пакет. Из-за того, что два коммутатора имеют два соединения между собой, они начнёт этот пакет слать друг другу бесконечно, забирая на его пересылку все свои ресурсы. Хочу обратить внимание на то, что «петля» может возникнуть не только между двумя коммутаторами (как показано на рисунке), коммутаторов, образовавших петлю (или кольцо) может быть и больше. Чем их будет больше, тем сложнее найти причину проблем.

К счастью, есть замечательное семейство протоколов Spanning Tree Protocol (STP). Они используются более продвинутыми моделями коммутаторов для того, чтобы определить, как коммутаторы друг с другом соединены. И отключают излишние соединения до тех пор, пока работают основные.

03

 

Когда на коммутаторе, на котором включён STP, появляется новое соединение, он сначала пытается «поговорить» с тем устройством, с которым его соединили. Если второе устройство тоже поддерживает STP, то они определяют между собой статус этого соединения. Если это единственное до корневого коммутатора, или оно находится на кратчайшем пути к нему, то оно активируется. В противном случае коммутаторы не отправляют по нему траффик пользователей до тех пор, пока есть более короткое соединение с корневым коммутатором.

Обратите внимание на то, что мы соединили два коммутатора двумя соединениями, но используем только одно. Не очень эффективно, не так ли? На уровне протоколов STP мы можем немного поправить эту ситуацию. Классический STP и его более быстрая редакция Rapid Spanning Tree Protocol (RSTP) рассматривают все соединения между коммутаторами с точки зрения физических соединений. Если путь оказывается не оптимальным, то интерфейс полностью не используется, как будто из него вытащили кабель. Но есть замечательный протокол Multiple Spanning Tree Protocol (MSTP). Он способен сделать сеть без «петель» для каждого VLAN в отдельности. При этом, разные VLAN могут использовать разные соединения как активные и отключённые. То есть в нашем примере, мы могли бы настроить коммутаторы таким образом, чтобы часть пользователей использовала верхнее соединение как основное, а часть – нижнее. А после обрыва одного из них – они бы совмещались в одном соединении.

Для похожих целей можно использовать другую технологию – Link Aggregation Control Protocol (LACP). Она позволяет не разделять соединения для разных VLAN, а обеспечивает автоматический выбор одного из доступных соединений между коммутаторами для каждого пришедшего пакета.

04

 

При достаточно большом количестве пользователей, LACP способен более-менее равномерно загрузить все имеющиеся соединения между коммутаторами (их может быть до 8 штук). Для выбора интерфейса, по которому будет отправляться траффик, коммутатор вычисляет значение хеш-функции, которая показывает номер физического интерфейса внутри виртуального агрегированного интерфейса. Хеш-функция может вычисляться на основе MAC и IP источника и получателя и некоторых других данных. Конкретный вариант выбирается при конфигурации.

Этот протокол не только позволяет использовать одновременно несколько физических соединений между двумя коммутаторами, но и автоматически адаптируется при изменении количества этих соединений, то есть, если у вас отключится одно из соединений, связь между коммутаторами не пропадёт.

Но что делать, если мы хотим сделать резервирование не только линий связи, но и коммутаторов?

05


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

Если вы хотите LACP между несколькими коммутаторами, то и это возможно. Встречайте: Multichassis Link Aggregation Group (M-LAG)!

06


Если мы воспользуемся M-LAG, то сможем объединить два правых коммутатора в один виртуальный коммутатор, но не полностью, а только для левого коммутатора. То есть коммутатор 1 будет думать, что у него есть два соединения с одним коммутатором 2, а на самом деле это будут соединения с двумя разными физическими коммутаторами.

Используя специальное соединение между собой, два правых коммутатора договариваются о том, что они работают как один виртуальный коммутатор. Они настраивают один общий агрегированный интерфейс, который соединяется с агрегированным интерфейсом на левом коммутаторе по протоколу LACP. Левому коммутатору теперь не важно, что справа два коммутатора, для него он один. А вот у правых коммутаторов добавляется дополнительная работа. Ведь может так получиться, что траффик, который пришёл на верхний коммутатор, дальше нужно отправлять через нижний (или наоборот). В этом случае, они используют специальное соединение между собой для передачи таких «промазавших» пакетов.

M-LAG – замечательная технология, но не все коммутаторы её поддерживают, а только CloudEngine для центров обработки данных. Если у вас более простые коммутаторы, то вы всё равно можете сделать из них один виртуальный. Для этого используется стекирование. Когда вы объединяете коммутаторы в стек, то для всех остальных устройств они становятся единым целым – одним виртуальным коммутатором. Когда мы используем M-LAG, мы виртуализируем лишь часть интерфейсов коммутаторов, а в стеке мы виртуализируем их полностью. Коммутатор, попавший в стек, полностью становится его частью. Его программное обеспечение и файл конфигурации синхронизируется с главным коммутатором стека, и он перестаёт работать как независимое устройство. При этом, между коммутаторами, так же, как и в случае с M-LAG, необходимо обеспечить быстрое соединение. Это может быть специальный кабель для стека, либо просто соединение через быстрые интерфейсы.

Хотите больше? Давайте сделаем слева тоже два параллельных коммутатора.

07


На них тоже можно настроить M-LAG или стек. В этом случае, левые коммутаторы будут думать, что они обманули один правый коммутатор, представившись ему одним виртуальным коммутатором, а два правых коммутатора будут думать, что обманули левый коммутатор.


Пост синхронизирован: Huawei ICT Club - лучшее

  • x

GIAP2020
Опубликовано 2021-1-25 21:11:13
Здравствуйте. Можно ли по технологии LACP объединить 2 порта коммутатора, настроенных как:[Huawei-GigabitEthernet0/0/1] port link-type trunk;
[Huawei-GigabitEthernet0/0/1] port trunk allow-pass vlan all;
[Huawei-GigabitEthernet0/0/2] port link-type trunk;
[Huawei-GigabitEthernet0/0/2] port trunk allow-pass vlan all.

Это на одном коммутаторе и на втором:
[Huawei2-GigabitEthernet0/0/1] port link-type trunk;
[Huawei2-GigabitEthernet0/0/1] port trunk allow-pass vlan all
[Huawei2-GigabitEthernet0/0/2] port link-type trunk;
[Huawei2-GigabitEthernet0/0/2] port trunk allow-pass vlan all.

Развернуть
  • x

GIAP2020
Опубликовано 2021-1-25 21:21:36
"[SwitchA] vlan batch 10 20
[SwitchA] interface gigabitethernet 1/0/4
[SwitchA-GigabitEthernet1/0/4] port link-type trunk //Настройте интерфейс как магистральный интерфейс. Тип связи по умолчанию интерфейса не является trunk.
[SwitchA-GigabitEthernet1/0/4] port trunk allow-pass vlan 10
[SwitchA-GigabitEthernet1/0/4] quit
[SwitchA] interface gigabitethernet 1/0/5
[SwitchA-GigabitEthernet1/0/5] port link-type trunk //Настройте интерфейс как магистральный интерфейс. Тип связи по умолчанию интерфейса не является trunk.
[SwitchA-GigabitEthernet1/0/5] port trunk allow-pass vlan 20
[SwitchA-GigabitEthernet1/0/5] quit" - это настройка из документации. Но при такой настройке мне необходимо указать все vlan( port trunk allow-pass vlan all) и у меня не поднимается соединение между коммутаторами(траффик между портами 0 пакетов, хотя идикация светится зелёным и мигает). Может я что-то упускаю?
Развернуть
  • x

Peterhof
MVE Опубликовано 2021-1-25 23:42:43
Опубликовано пользователем GIAP2020 в 2021-01-25 16:21 "[SwitchA] vlan batch 10 20[SwitchA] interface gigabitethernet 1/0/4[SwitchA-GigabitEthernet1/0/4] p ...
Если два коммутатора соединены двумя линками на 4 и 5 интерфейсах, и их коллекции одинаковые, то смотрим дальше:
1. Проверяем создание vlan на обоих коммутаторах. Не только добавление из к интерфейсам, но и создание.
2. Проверяем правильность линков, чтобы VLAN'ы на соединённых интерфейсах имели одинаковые номера (чтобы 10 не пытался соединиться с 20).
3. Если всё нормально, но один из линков горит зелёным, но именно по нему нет трафика, то, вероятно, он отключён STP. Для проверки выполняем display stp brief. Подробнее: https://info.support.huawei.com/network/ptmngsys/Web/tsrev_ce/ru/content/ce/28_edesk_dc_stp_failure/edesk_dc_stp_failure_edesk003.html
Развернуть
  • x

Комментарий

Выполните вход в систему, чтобы ответить на пост. Вход | Регистрация
Отправить

Внимание! В целях защиты правовых интересов Вас, сообщества и третьих лиц, не публикуйте любой материал, содержащий политические высказывания, порнографию, упоминание азартных игр, употребление наркотиков, а также материал, нарушающий коммерческую тайну или содержащий персональные данные пользователей. Также не предоставляйте данные от вашей учетной записи. Вы будете нести ответственность за все действия, выполняемые под вашим аккаунтом. Подробная информация: “Пользовательское соглашение.”

My Followers

Авторизуйтесь и пользуйтесь всеми преимуществами участника!

Вход

Заблокировать
Вы уверены, что хотите заблокировать этого пользователя?
Пользователи из вашего черного списка не могут комментировать ваши посты, не могут упоминать вас, не могут отправлять личные сообщения.
Напоминание
Пожалуйста, привяжите свой мобильный номер чтобы получить бонус за приглашение.