— Вчера Сельдяные Воины транслировали изучение портала: за порталом обрывалась связь. Эрик, Олаф и Балеог ушли туда, когда на место подошли другие, портала уже не было. Симптомы в Мейси-Тала и в Исланбанде те же, что у Принца. Мы успели предупредить, чтобы не отключали.
Бэйзил выругался, Дракода это не возмутило.
— Я же их по матчам в Скорче знаю, они семейные, но рисковые парни. А что они видели?
— Железные коридоры. В Исланбанде их не узнали, в Проксити тоже.
— Одна знакомая говорила, что днём видела портал в ночной город. Может другое полушарие?
Дракод пристально посмотрела на Бэйзила и он рассказал подробнее.
— Допустим, это заокеанский сегмент Мейси-Тала, — подытожила девушка, — Почему он перестраивался и почему туда можно было зайти? Не телепорт, а именно зайти, как в соседнее пространство, работающее на других узлах. Вообще в сети другой корпорации.
— Перестроение говорит о наличии алгоритма перестроения или незавершённом процессе генерации. Предусматривать алгоритмы для мнимого — сомнительное дело. Незавершённое не может быть доступно.
— Невозможно, маловероятно, не может — у нас отличный набор ограничений! — Она убрала лишние шарики в карманы и стала ходить по кругу, бросая в пол и ловя последний мячик. — Допустим, объект стал доступен до завершения генерации?
— Возможные условия: узел уже перенагружен, получает задачу определения непредусмотренного объекта, это обнуляет ресурсы, еггог, шедшая в это время чья-то загрузка пространства не сдаётся в текущем состоянии, а зависает.
— Пошла отсечка по таймауту, — отметила Дракод.
— Система обязана дать пользователю ответ об объекте, поэтому она даёт любой ответ, подходящий под вопрос. Причём дефицит ресурсов ограничивает поиск первым попавшимся вариантом. Пользователь проходит через объект. Но у системы там ничего, только возобновляемая генерация пространства, копия которого пристраивается за объектом.
— Такое возможно только в сериале про Хакермена. Это ж независимые процессы, они связаны только узлом. Во сказала-то!
— Так, я перемудрил.
— Ещё какой! — согласилась Дракод, Бэйзил не заметил подкола.
— Исходная: появление портала — это паразитирование на обязанности системы давать ответы. Она внушила себе, что дыра — это нора. Но она же знает, что нора — это кролик, генерирует кролика. Возможно, из случайных данных, возможно из остатков данных в памяти. В любом случае, за сломанным объектом, подразумевающим возможность прохода, система делает пространство. Пользователь заходит, дестуктор не обнуляет мусор из-за активного пользователя.
— Твою мать перепаять! — Дракод остановилась и не поймала мячик, он упрыгал в сторону. — Принц и Сельдяные попали в ловушку, когда отпустили объект-портал! Система грохнула сбойный объект, когда он перестал использоваться.
— Возможно, не сразу. Как думаешь, пространство вне координат аллодировалось в памяти узла или осталось склеенным с тем, откуда вошел пользователь?
— Образования тебе не хватает. Мнимое пространство наследует общие свойства класса, на него должно распространяться гравитационное правило Доможировой для обеспечения бесшовных соединений пространств.
— Слава Ольге Юрьевне! Но тогда для спасения нужен портал из того же места.
— Либо так, либо весь мусор стыкуется между собой, образуя мнимое Мейси-Тала.
— Не годится, — возразил Бэйзил. — Склейки границ с пространствами разных узлов порвут мнимое.
— Годится, — возразила Дракод. — Если объекты и пространства описаны не полностью и неопределённости позволяют растягиваться, компенсируя разницу в координатах. Кстати, объяснение причины изменения сцен.
— Допустим. Больше порталов — больше нестабильности сцены. Кстати, изменения пространства — это знак появления портала.
— Или закрытия. Если всё так, то мы можем открыть портал и вернуть наших в Мейси-Тала, тогда они смогут корректно отключиться!
— Если всё так... — согласился Бэйзил.
Он отошёл туда, где уже почти погас мячик и вернул беглеца девушке. — Его выдаёт свечение. Что выдаст человека? Как думаешь, сигнатурный поиск сработает на той стороне?
— М-м-м, слишком много допущений и вряд ли нам дадут их сигнатуры. Но мы точно знаем, что вход туда не нарушает соединение — твоя подружка смогла вернуться в ту же комнату.
— Значит, временный идентификатор соединения сохраняется, можем работать с ним. Пойдём, набросаем пару инструментов.
— Кого возьмём?
— Другим слишком долго объяснять, обсуждать, спорить. Проверим гипотезу — получим факты, тогда и обсудим с командой. Сейчас важно не терять время: Сельдяным капельницы поставят, а моему клиенту нужно срочное всплытие.
Глава 07. По ту сторону Мрачного портала
Бэйзил и Дракод вернулись в коридор, прошли два «перекрёстка» и открыли дверь в маленькую комнатушку. Окна в ней заменяли большой экран на стене, лампы и труба вентиляции под потолком. Вместо мебели стояли блоки серверов, над которыми висели два глубоких гамака с комплектами масок с маркировкой 9Dfx. Заблокировав дверь, они потратили добрых полтора часа на придумывание задач для генератора кода. Пока шла сборка программ, Бэйзил сходил за едой и эстрадастовым энергетиком. Они лежали в гамаках и строили план.
— Нужно притопить какой-нибудь узел. Думаю, вирус через обновление умного дома.
Дракод посмотрела файл с графиком технических работ.
— Тургеневский еле мычит из-за профилактики оборудования, сейчас взломаем там пару машин, соединимся через них и добавим общительности бытовой техники. Думаю, заметят быстро, но сначала будут проверять свои действия.
— Отлично! — Бэйзил поставил на пол банку энергетика и надел маску с перчатками. — Я подброшу суеты, получим повышенный исходящий трафик.
— Не переборщи.
— Я только размер скидок магазинах поправлю, а там они сами. В том месяце успел хорошую базу паролей купить, если магазины, как обычно, не поменяли, то хайлайтерам будет чем взбаламутить своих слушателей.
— Хорошо, сейчас сделаю коридор.
Дракод с лёгкостью запутала следы их подключения, взломала защиту умного дома и пустила резвиться простенький вирус. Пока он самокопировался на все приборы дома и пробовал перекинуться на когда-либо подключавшиеся к ним устройства, Дракод и Бэйзил подключились из дома к Мейси-Тала. Рядом с Оганером стоял антропоморфный красный дракон с маленькими крыльями и хвостом. На планшете в её лапах ежесекундно обновлялись графики. Когда у вируса сработал таймер, и на узел связи посыпались множественные запросы, графики покраснели. Система начала облегчать положение, выбрасывая из памяти невостребованные объекты. Тогда Дракод и Оганер перешли в безлюдную часть виртуального пространства и поискали незаполненные элементы. Дракод нашла подозрительно скучную поверхность под лестницей подъезда.
— Свет мой, Козге, это кроличья нора или медвежья берлога?
Оганер успел подойти раньше, чем закончился анализ.
— Берлога медведя.
Они посмотрели друг на друга. Дракод спросила:
— Девушки вперёд?
— А мальчики — в берлогу. Вдруг медведь создался? — ответил Оганер и полез в нарисованный тоннель.