Дом, который построил Клоз или Leaf-Spine архитектура: меняем L2 на L3
Долгое время все большие проекты, связанные с сетью, будь то web-проект или ДЦ крупного предприятия представляли собой одну и ту же структуру. Это была характерная древовидная архитектура, различающаяся лишь размером дерева и плотностью «ветвей», обусловленных разными требованиями к надежности и производительности. Но цифровой мир не стоит на месте, а стремительно растет и развивается, при чем не только в увеличиваясь объемах и скоростях, но и меняя свою структуру. Всевозможные Big Data, облака и распределенные вычисления привели к тому, что по сети стало необходимым передавать огромные объемы данных между большим количеством конечных узлов, причем, желательно, с минимальной задержкой.
- от сотен до нескольких тысяч узлов;
- статическая маршрутизация;
- структура VLAN’ов без виртуализации серверов;
- вертикально ориентированная (north-south) архитектура
- 1G-интерконнекты с 10G аплинками.
- от тысяч до миллионов узлов;
- динамическая маршрутизация;
- облачная структура с виртуальными серверами;
- преимущественно горизонтальная (west-east) архитектура;
- быстрое (часы, а не недели) разворачивание сетей и добавление стоек;
- в основном 10G соединения с 40G аплинками.

Потребности нового мира
- хорошая масштабируемость производительности;
- устойчивость к сбоям на всех уровнях;
- высокая взаимозаменяемость для снижения издержек;
- предсказуемая латентность;
- высокая доступность оборудования;
- удобство обслуживания.

Традиционная сетевая инфраструктура
- Резкое снижение производительности при отказе на уровне агрегации;
- Недостаточная масштабируемость, вызываемая уровнем агрегации:
- MAC / ARP
- VLAN’ы
- перегруженность точек обмена горизонтальным трафиком;
Решение? Как только мы начинаем говорить о масштабах, когда стоимость обслуживания начинает превосходить стоимость оборудования (да-да, столь любимые бухгалтерами и маркетологами, и нелюбимые остальными CAPEX и OPEX), как на сцену выходит давно известное решение в виде сетей Клоза (Clos fabric), известное также как архитектура Leaf-Spine.

Важное примечание для невнимательных: уровень Spine вовсе не идентичен уровню агрегации. На этом уровне нет и не предполагается горизонтальных связей между коммутаторами и уж тем более не предполагается, что весь трафик через этот уровень собирается и уходит в сторону ядра или, допустим, интернета.
Сама по себе это архитектура известна уже полвека и успешно применяется в телефонных сетях, но сейчас сложились все предпосылки для ее активного внедрения в с сети ЦОД. С одной стороны, оборудование стало одновременно достаточно производительным и недорогим, при этом обеспечивая крайне малые задержки (сотни наносекунд — это уже не фантастика, а вполне реальность). Ну а с другой сами задачи стали такими, когда централизованная архитектура становится неоптимальной.
- Возможность опереться на ECMP (_который с марта 2014 однозначно определен и признан в качестве стандарта IEEE 802.1Qbp_) в условиях сплошной IP-фабрики;
- Облегчение устранения отказов оборудования за счет его однородности;
- Предсказуемая латентность;
- Отличая масштабируемость;
- Простота автоматизации управления;
- Меньшее падение пропускной способности сети при отказе оборудования;
- TOR (Top of Rack) вместо EOR (End of Row). О специфике TOR и EOR можно почитать вот в этой довольно старой, но по-прежнему актуальной статье)
- Схема по умолчанию защищена от появления петель и не требует для этого STP;
- Если порт не отвечает — протокол маршрутизации считает его выпавшим и не рассматривает возможность его участия в маршрутах, в отличие от STP.
До каких масштабов можно увеличивать подобные сети? Двухуровневая сеть на распространенных и недорогих коммутаторах с сорока восемью 10G портами и шестью 40G аплинками (Overprovisioning Ratio 1,6 при размещении сорока серверов на стойку) позволяет подключать до 1920 серверов. Ввод третьего уровня увеличивает эту цифру до 180 тысяч. Если вам мало и этого — уровни можно наращивать и дальше.
Можно ли и стоит использовать эту архитектуру на сетях сильно меньших размеров? Почему бы и нет, если, конечно, у вашего проекта нет каких-то специфичных требований именно по L2 маршрутизации. Посчитайте стоимость классического решения и Leaf-Spine на BMS-коммутаторах. И если последнее оказывается для вас явно выигрышным — это же весомый повод задуматься, правда? 🙂
Конечно, помимо этого должно выполняться и еще одно условие, которое было основоположным, когда мы говорили о необходимости смены концепции сети: трафик в ней должен быть преимущественно горизонтальным, узлы сравнительно равноправны с точки зрения потребления трафика, нет явно выделенного направления, в котором движется подавляющая часть объема данных. Это вовсе не обозначает, что у такой сети не должно быть внешних подключений, но трафик в их сторону должен быть соразмерим с потоками между узлами, а не быть основной составляющей.Мы же, в свою очередь, готовы предложить вам для этого все необходимое.


Например, весьма привлекательные с точки зрения стоимости коммутаторы без
предустановленной ОС (Bare Metal Switch) на матрицах Trident II, цена 10G порта на которых составляет менее 100 долларов: ETegro Eos 420 (48 10G + 6 40G) для уровня Leaf и Eos 520 (32 40G) для Spine уровня.
Ну и при необходимости обеспечить их сетевой ОС Cumulus Linux, о возможностях которой мы писали чуть раньше.
Bare Metal Switch
Почему мы выступаем именно за BMS-версии сетевого оборудования? Да просто потому, что на наш взгляд, только оно способно обеспечить одновременно и необходимую современным проектам гибкость за счет выбора ОС с необходимым набором функций, и малую стоимость владения за счет отказа от оплачивания порой крайне дорогих, но абсолютно ненужных vendor-specific особенностей. Вряд ли кто-то будет оспаривать удобность того, что можно купить сервер одного производителя, поставить на него ОС другого, и дополнить ее программным обеспечением третьего. На наш взгляд, настало время принести эту идеологию открытых систем и в мир сетевого оборудования.
Если есть желание «потрогать» такие коммутаторы и посмотреть, на что способны открытые сетевые ОС — пишите, у нас есть возможность организовать тестирование.
Клоз (клоуз, клознулся)
Клоз — жаргонное сокращение, означающее цену акции на момент завершения (закрытия) торгового дня.
«Вчера Сережа снова клознулся на 7.99 рублях» — «Вчера Сегежа на закрытии снова стоила 7.99 рублей»
Больше терминов — проверьте свои знания:
Бай
Выйти в кэш
Дивитикер
Дядя Коля
Зарезать лося
Избушка
Кукловод
Кухня
Отскок дохлой кошки
Поймать падающий нож
Популярные дивидендные акции: Сбербанк МТС Газпром Сургутнефтегаз ВТБНашли ошибку или есть идея по улучшению сайта? Пожалуйста, свяжитесь через форму обратной связи.
Следите за публикацией свежих прогнозов в официальном Телеграме или Твиттере сайта
KogdaPridut.ru
Полезные посты
Последние посты
Информация, размещенная на этой странице, не может рассматриваться как публичная оферта, предложение или приглашение приобрести, или продать какие-либо ценные бумаги, иные финансовые инструменты, совершить с ними сделки. Информация не может рассматриваться в качестве гарантий или обещаний в будущем доходности вложений, уровня риска, размера издержек, безубыточности инвестиций. Результат инвестирования в прошлом не определяет дохода в будущем. Не является рекламой ценных бумаг. Перед принятием инвестиционного решения Инвестору необходимо самостоятельно оценить экономические риски и выгоды, налоговые, юридические, бухгалтерские последствия заключения сделки, свою готовность и возможность принять такие риски. VFPS
Что такое клоз
2.1. Логика высказываний
2.1.1. Булева алгебра
Простейшей логической моделью представления знаний является логика высказываний (ЛВ).
Высказывание – это утверждение, значение которого может быть истинным или ложным. Данное значение называется истинностью высказывания.
В логике высказываний определено два истинностных значения:
1 – истина (true);
0 – ложь (false).
Атом – элементарное высказывание, обозначается строчной латинской буквой, например: p, q, f и т.д.
При построении более сложных высказываний (формул) используются логические операции (связки).
Дизъюнкцией (логическим «или», логическим сложением) называется логическая операция, которая любым двум высказываниям x, y сопоставляет единственное высказывание, истинностное значение которого определяется следующей таблицей истинности:Конъюнкцией (логическим «и», логическим умножением) называется логическая операция, которая любым двум высказываниям x, y сопоставляет единственное высказывание, истинностное значение которого определяется следующей таблицей истинности:
Отрицанием называется логическая операция, которая произвольному высказыванию x сопоставляет высказывание не x, истинностное значение которого определяется таблицей истинности:
Импликацией называется логическая операция, которая любым двум высказываниям x, y сопоставляет единственное высказывание, истинностное значение которого определяется следующей таблицей истинности:
Эквивалентностью (эквиваленцией) называется логическая операция, которая любым двум высказываниям x, y сопоставляет единственное высказывание, истинностное значение которого определяется следующей таблицей истинности:
- Атом – это формула
- Если F – формула, то ùF – формула
- Если F1, F2 — формулы, то F1ÚF2, F1ÙF2, F1®F2, F1«F2 – формулы.
- Коммутативность
- Ассоциативность
- Дистрибутивность
- Законы единицы
- Законы нуля
- Закон исключённого третьего
- Законы поглощения
- Законы де Моргана
- Правила замены
- ù ùFºF.
- Формула G является логическим следствием формул F1,…,Fn тогда и только тогда, когда формула (F1Ù…ÙFn)®G общезначима, т.е. F1,…,FnÞG Û (F1Ù…ÙFn)®Gº1.
- Формула G является логическим следствием формул F1,…,Fn тогда и только тогда, когда формула (F1Ù…ÙFn)®G противоречива, т.е. F1,…,FnÞG Û (F1Ù… ÙFnÙùGº0).
ùpÚq
ùpÚf
f
ùqÚf
p
ùf
p
ùf
ùf
Имеет место теорема о полноте резолютивного вывода. Множество клозов противоречиво тогда и только тогда, когда из него методом резолюции можно вывести пустой клоз.
Приведем формальный алгоритм, который проверяет, является ли формула G логическим следствием некоторых других формул.
ВХОД: S – входное множество клозов.
ВЫХОД: OK – удается получить пустой клоз, NO – не удается.
M:=S; // — M-текущее множество клозов.
while ÏM do
if not Choose (M, C1, C2, p1, p2) then return(NO);
C:=R(M, C1, C2, p1, p2); // — вычисление резольвенты.
M:=M È; // — пополнение текущего множества.
end
return (OK); //получен пустой клоз
Примечание.
1: Функция R вычисляет резольвенту двух клозов С1 и С2, содержащих контрарные литеры р1 и р2. Результатом работы функции является резольвента.
2. Процедура Choose выбирает в текущем множестве клозов М два резольвируемых клоза, то есть два клоза, которые содержат унифицируемые контрарные литеры. Если таковые есть, то процедура их возвращает, в противном случае возвращается пустое множество. Конкретные реализации процедуры Choose называются стратегиями метода резолюции.
Очевидно, что данный алгоритм может «зависнуть». Например, такое произойдет, если для резолюции постоянно выбирается одна и та же пара клозов. Поэтому стратегия резолюции должна гарантировать конечность алгоритма.
Стратегия, как будет показана ниже, может либо гарантировать получение пустого клоза (полная стратегия) или не гарантировать (неполная стратегия). В соответствии с теоремой о полноте резолютивного вывода полный перебор всевозможных вариантов является полной стратегией.