matabuba (matabuba) wrote,
matabuba
matabuba

Бездна - 5. Синхронизация данных в сети с равноправными узлами

Разберём интересный вопрос: как же зайчики узнаЮт всё то, что увидел один из них?
Запомним для начала, что нормальная связь возможна только между соседними зайчиками!
Между ними расстояние двадцать или десять метров, а то и меньше!
Соблазн думать, что есть какая-то общая "шина", что есть какая-то абсолютная система координат, необходимо безжалостно подавить! Потому, что так оно и есть (то есть нет) в жестокой реальности!

Два зайчика на разных углах структуры разделены мутной водой, между ними плавают недисциплинированные рыбы, в процессе утопления надводных кораблей, обломки могут закрыть значительную часть прямой видимости, слои воды разной температуры создают непредсказуемые искажения при прохождении сигналов... 
Возможен только один простой низкочастотный сигнал, способный без значительного затухания охватить всю сеть: Зов Ктулху.. Но он говорит только о главном.. но как же они, морские ёжики, на самом деле размножаются?

Пусть наши зайчики уже собрались в ортогональную двумерную Матрицу Ктулху (пренебрегаем объёмом для простоты).
Обычно при наличии множества вычислительных устройств, за вычетом резервирования, глупыми и жадныит человеками ставится задача разделить вычислительную нагрузку.
Уже давно-предавно вычислительные ресурсы пересталистали быть узким местом мобильных устройств, а с ними всё носятся и носятся, и носятся.. как с писаной торбой..
Мы откажемся от этого, попытавшись обменять переизбыток ресурсов и трудности синхронизации данных в сети с равноправными узлами на "противоударность", на физическую и пространственную стабильность Сети.

Итак, имеем сеть из равноправных Вычислителей Ктулху.
Так назвали их не зря: в информационном (и теологическом) аспектах каждый Вычислитель Ктулху, будучи физически частью зайчика, несёт внезайчиковую идею. Каждый Вычислитель - медиум Ктулху. Именно вычислители соединены в сеть. Именно им важно синхронизировать данные.

На первом рисунке с одним из зайчиков происходит какое-то событие, обозначенное красным цветом. Это может быть срабатывание одного из датчиков зайчика (увидел боевого пловца, или препятствие), произошло критичное для поддерживаемой топологии смещение зайчика, или просто код ошибки, говорящий о том, что данный зайчик чем-то болен...









По причине больших размеров и квадратнообразной топологии Матрицы Ктулху, непосредственно эту информацию могут получить только соседи, самые близкие партайгеноссе.. 4, 8,12,14..
ну и так далее (для гексагональной структуры это количество было бы более оптимальным).

Волна дискретных передач информации расходится по всей сети, достигая самых дальних её уголков..
Итак, мы предположительно обеспечили неким, могущим быть достаточно объёмным пакетом все узлы сети..

Естественно, мы предпринимаем все меры шифрования пакетов и контроля целостности данных. В нашем случае, дайджест, результат действия хэш-функции над передаваемым пакетом, вполне может служить заголовком и уникальным идентификатором пакета общего добровольно-принудительного применения.

ОЧЕНЬ ВАЖНОЕ:
После того, как пакет получен всеми Вычислителями Ктулху сети, они должны КАЖДЫЙ убедиться, что это воистину фхтагн!
Для этого, параллельно основному пакету, в сеть запускается некий подписной лист основного пакета.
Каждый честный Вычислитель Ктулху, когда к нему пришли с пакетом, посмотрев через плечо в помещение:
а)сообразит, есть ли у него уже такой пакет в хозяйстве? Если уже есть, то он просто ставит галочку против своей текущей строки в списке. (Если нет, то получает пакет)
б)Далее, одев халат и шаркая по полу тапками, разносит это письмо счастья другим соседям. При этом, если подпись какого-то из соседей уже стоит, то идти к нему вроде нужды уже нет ? Нет, есть! И об этом далее!

Подписной лист представляет собой очень небольшой пакетик, поэтому может нарезать круги по сети практически не загружая её. Условная площадь распространения сигнала растёт в геометрической прогрессии, поэтому, как только по сети явно начнёт циркулировать это, уже полностью подписанное, письмо счастья, ответственный Вычислитель Ктулху (из тех, что временно оказался на геометрической оси матрицы) может осуществить Зов Ктулху

По этой команде все Вычислители Ктулху одновременно присаживаются к столу и раскрывают пакеты. 
Они синхронно принимают содержимое к сведению и делают идентичные выводы..


Сколько времени может пройти с возникновения новой для Ктулху информации до её полного усвоения и начала реакции на неё?
Очевидно, что для каждого вида топологии, размера сети, количества зайчиков, пропускной способности каналов и внешних условий оно может быть разным.
Это достаточно просто спрогнозировать методом моделирования даже в реальном времени, поскольку возможно применить аппарат исследования нейронных сетей и клеточных автоматов.
Я пока что оцениваю эту Постоянную Времени Ктулху в единицы секунд.

Я уже сказал, но повторю: команды никуда передавать не нужно! Каждый вычислитель подумает одинаковое!

Замечание 1. Передача информации между отдельными Вычислителями Ктулху может быть и вовсе асинхронной. Это естественно согласуется с возможной неравномерностью скорости передачи в разных частях Боевой Сети. Нехай! Всё равно Зов Ктулху подведёт черту...

Замечание 2. На картинках явственно видно, что зайчики не находятся точно на осях сети. Зайчики вихляются и выписывают кренделя в зависимости от своих каких-то приземлённых зайчиковых проблем. 
Простим им это. Ибо в каждом зайчике есть частица Ктулху..

Tags: Бездна, Дизайнерское
Subscribe
  • Post a new comment

    Error

    default userpic

    Your IP address will be recorded 

    When you submit the form an invisible reCAPTCHA check will be performed.
    You must follow the Privacy Policy and Google Terms of use.
  • 0 comments