Заблуждения о распределенных вычислениях

25.10.2021


Заблуждения о распределённых вычислениях — это набор утверждений, сделанных Питером Дойчем (L Peter Deutsch) и другими из Sun Microsystems описывающих ложные предположения, которые неизменно делают программисты плохо знакомые с распределёнными приложениями.

Заблуждения

Заблуждения:

  • Сеть надёжна;
  • Задержка равна нулю;
  • Пропускная способность бесконечна;
  • Сеть защищена;
  • Топология не меняется;
  • Есть один администратор;
  • Транспортные расходы равны нулю;
  • Сеть однородна.
  • Последствия заблуждений

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

    История

    Список общих заблуждений появился на Sun Microsystems. Л. Питеру Дойчу, одному из первых «Fellow» Солнца, приписывают [кто?] написание первых семи заблуждений в 1994 году; однако Билл Джой и Том Лайон уже определили первые четыре как «Заблуждения сетевых вычислений» (в статье говорится, про «Дэйва Лиона», но это ошибка ). Примерно в 1997 году Джеймс Гослинг, другой сотрудник Sun и изобретатель Java, добавил восьмую ошибку.