МЕДУЗА, МЕДУЗА, МЕДУЗА, МЫ ДРУЗЬЯ
ЧАСТЬ II
А сегодня пели?
Вчера вспоминали fat-tree и разбирали идею топологии Jellyfish. Сегодня разберём ее преимущества и недостатки.
Почему медуза лучше, чем дерево?
⬛Устойчивость. Отвалился один узел? Не страшно, есть другие пути. В дереве так не работает.
⬛Короткие пути. Вспоминаем эпидемии. Случайный граф — это достаточно тесный мир, теория о рукопожатиях тут вообще не теория, а данность.
⬛Экономичность. Нам надо меньше рёбер. Так же в статье доказали, что Jellyfish тянет до 25% больше серверов, чем fat-tree на том же железе при той же пропускной способности (и на масштабе в тысячи узлов выигрыш только растёт).
⬛Простая масштабируемость. Захотим добавить 2 сервера? Значит добавим ТОЛЬКО 2. Добавить новый коммутатор, перекинуть пару проводов — и всё!
Почему все не побежали переделывать свои fat-tree на Jellyfish, раз это такая классная штука?
Есть минусы:
◾Сложность маршрутизации. В дереве всё понятно, мы знаем, куда слать пакет. В случайном клубке простые схемы (типа «иди вверх-вниз по дереву») не работают — приходится использовать хитрые методы.
◾Физический ад по прокладыванию кабелей и поддержке этого бесформенного клубка. У перфекционистов глаз дёргался ещё на теории о случайных графах.
◾Пути разной длины. Это значит, что скорость доставки пакетов будет разной. Как следствие: пакеты приходят в разном порядке.
◾Ещё проблема путей разной длины — некоторые алгоритмы контроля перегрузки считают путь «загруженным», если пакет идёт дольше, чем по другим. Перегруз = надо сбавить темп и слать туда поменьше. В медузе этот принцип ломается. Но и настоящие перегрузки никто не отменял. Как теперь вам понимать — долгая отправка это просто физика конкретного пути или там реально кому-то плохо?
◾Непредсказуемость. В дереве упал коммутатор — вы сразу знаете где и какие последствия. В Jellyfish сложнее: поломку мониторингами вы, наверное, поймаете, а вот предсказать, как она повлияет на сеть, — тяжко.
◾И можно продолжать.
Топологию можно брать, но нужно понимать, что это НЕ серебряная пуля.
P.S. картинка из исходной статьи про Jellyfish.
На следующей неделе поговорим о том, как можно модифицировать идею Jellyfish для строительства реальных ДЦ.
#бабанюра_программирует
Post #849
81

- 🔥 1
- 👨💻 1