M-LAG як альтернатива STP і стека

    
  
Одними з основних проблем в мережі є «петлі» і «єдина точка відмови».
 
Традиційним способом перемогти «петлі» є використання протоколу STP. Але в той же час цей протокол приносить проблему неефективного використання пропускної здатності портів і лінків комутатора. За наявності декількох можливих лінків, активним буде один, все-одно, що купити додому крутий і дорогий комп'ютер для гри в пасьянс «Косинку» — не використовується весь потенціал пристрою. Низька збіжність, особливо в складних топологиях. А якщо в мережі бігає голос або потокове відео? Шлях між двома сусідніми комутаторами може йти через кореневий — не оптимальне.
 
Традиційним способом піти від «єдиної точки відмови» і зробити мережу відмовостійкій є використання стека. Не посперечаєшся, варіант хороший, але все-одно виникає ряд питань: яке буде час збіжності при виході з ладу master-node? Чи вистачить пропускної здатності стека між комутаторами (хочемо більше швидкість — платимо більше)? Як себе буде вести стек при "split-brain"? Про це під катом.
 
Ці проблеми і питання з успіхом може вирішити технологія Extreme Networks — M-LAG.
 
Справедливості заради варто згадати про те, що подібні технології є і інших виробників, але з деякими відмінностями. Також, часто використовують комбінації, наприклад: стек + M-LAG.
  
 
 
У даній статті ми розглянемо саме M-LAG від Extreme Networks як окрему технологію.
 
M-LAG — Multi-Chassis Link Aggregation, модифікація звичайної аггрегации. Відмінність і перевага в тому, що в даному випадку лінки починаються на одному пристрої, а закінчуються на двох, тобто резервування не тільки линка як в LAG, але і резервування пристрою.
 
 
З боку Device1 налаштовується звичайний LAG, з боку Device2 і Device3 все трохи складніше.
 
Давайте розглянемо принцип роботи M-LAG.
 
Між Device2 і Device3 повинен бути лінк на якому налаштовується ISC (Inter-Switch Connection).
ISC покриває кілька завдань:
 
1. Оскільки з боку Device1 налаштований LAG, то залежно від алгоритму балансування, пакети можуть передаватися різним комутаторів. Оскільки це 2 різних комутатора, data plane кожного працює самостійно — забезпечується завантаження обох лінків. Але нам потрібна синхронна і спільна робота control plane обох пристроїв (синхронізація таблиць комутації), для цього і потрібен ISC (Inter-Switch Connection).
 
2. З малюнка видно, що у нас організувалася «петля». ISC блокує клієнтський трафік при нормальній роботі, якщо немає падінь линка або відмови комутаторів.
 
Також, варто згадати особливість M-LAG: комутатори між якими налаштовується ISC повинні бути одного виробника, мало того, строго рекомендується щоб ці комутатори були одного типу і серії, з однаковою версією ExtremeXOS. До того ж бажано використовувати комутатори з однаковою кількістю портів, наприклад: Summit X460-24t & Summit X460-24x; BlackDiamond 8900-G48X-xl & BlackDiamond 8900-G48T-x. Водночас, нижчестоящі або вищестоящі пристрої, на яких налаштовується LAG можуть бути різних виробників.
 
Справедливості заради потрібно вказати, що на даний момент можна налаштувати 1 бенкет M-LAG, але в той же час кількість M-LAG-ів для кожної пари комутаторів може досягати 768.
M-LAG підтримується всіма комутаторами Extreme Networks за винятком L2 комутаторів.
 
Це все відноситься до звичайної роботи M-LAG. Але що ж відбувається при появі fault?
 
Розглянемо кілька варіантів відмов:
 
1. Вихід з ладу одного з пари комутаторів:
 
 
  
У цьому випадку все просто — весь трафік плавно витече на лінк між Device1 і Device3.
 
2. Вихід з ладу линка між Device2 і Device1
  
 
 
Тут відкривається ISC і трафік перенаправляється через нього. Для виключення даного відмови використовується схема, коли на таких лінках, наприклад: між Device2 і Device1 налаштовується LAG
 
 
 
3. Вихід з ладу ISC (так званий split-brain)
 
 
  
У даному випадку Device1 не знатиме про відмову ISC, Device2 і Device3 збережуть свої System Identifier, трафік від Device1 відправлятиметься згідно алгоритму балансування, а Device2 і Device3 будуть направляти трафік згідно своїх правил комутації.
Водночас для виключення проблеми пропажі линка ISC на ньому налаштовується LAG:
  
 
 
Зібравши стенд, ми можемо подивитися час збіжності при імітації відмов.
 
 
 
При експериментуванні:
1. Відключають лінки між Summit X440-48t і X460-24x, X460-24t
2. Відключають лінки між Summit X460-24p і X460-24x, X460-24t
3. Відключають лінк ISC між X460-24x і X460-24t
 
Extreme Networks стверджує, що час збіжності:
  
 
 
Спробуємо запустити PING від одного ПК до іншого, при виставленні інтервалу ICMP Echo 50мс:
  
 
 
Видно, що час збіжності становить не більше 50 мс.
 
 
 
 
 
Причому, дані показані при виході з ладу линка LAG, а при пропажі линка ISC — втрат пакетів взагалі не спостерігалося.
 
Але ми не здаємося і подивимося при інтервалі ICMP Echo = 10мс:
 
 
 
 
 
 
 
При пропажі линка LAG час збіжності одно 40-70 мс, а при пропажі ISC втрат пакетів знову не спостерігається.
 
На мій погляд, результати тестування показали чудові значення збіжності при відмовах, та й трохи краще STP.
З чого робимо висновок: M-LAG відмінна альтернатива усталеними технологіями STP і стекирования, легкий у конфігуруванні, та й не вимагає додаткового капіталовкладення, не ліцензується, доступний в базовій ліцензії ExtremeXOS.
 
 Висновок:
Хотілося б відзначити, що M-LAG відмінна технологія, яка має величезний спектр застосувань, але вона не є «пігулкою від усіх хвороб», тому застосовувати можна в сукупності з тим же STP і стеком. Все залежить від топології мережі та завдань які ставляться перед нею. Також, є перспективні, більш цікаві, на мій погляд, рішення, такі як TRILL (Transparent Interconnection of Lots of Links) або набирає шаленою популярністю SDN (Software-Defined Networking), але це вже окрема тема для статті. Та й комутатори Extreme Networks мають підтримку даних технологій.
    
Джерело: Хабрахабр

0 коментарів

Тільки зареєстровані та авторизовані користувачі можуть залишати коментарі.