Выбрать главу

Распространение сбоев

Если на одном участке сети произошел сбой, проблема может распространиться и на другие звенья и узлы — в особенности если сеть имеет высокую плотность соединений. Засор в канализации может привести к переливу в раковине или унитазе, а легкая авария на шоссе часто становится причиной разрастающейся пробки на соседних дорогах. Ситуация усугубляется при отсутствии механизмов снятия нагрузки — таких как сливной клапан или съезд с основной магистрали: вот почему ньюйоркцы так боятся застрять в тоннеле под Гудзоном.

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

В крупных высокоскоростных сетях, таких как современная система электроснабжения или интернет, механизмы распространения перегрузок и последовательных сбоев зачастую чрезвычайно сложны, их невероятно трудно предугадать и практически невозможно контролировать. Даже начавшись как вполне локальная неприятность, сбой всегда может вызвать цепную реакцию и крупномасштабные, долгосрочные повреждения. К примеру, в 1998 году в электросети новозеландского Окленда произошел каскад аварий, которые серьезно повредили четыре основных силовых кабеля центрального делового района. До перехода на резервное питание закрылась новозеландская биржа, офисные башни стояли без света несколько недель, не работали кондиционеры и холодильники (в Южном полушарии как раз был разгар лета), и в пабах наливали теплое пиво — из‑за чего местные жители переживали больше всего.

Помимо оборудования к катастрофическому распространению ошибок склонно и программное обеспечение. В январе 1990 года небольшая техническая проблема на телефонной подстанции в Нижнем Манхэттене привела к тому, что коммутатор ненадолго отключился и запустил перезагрузку своего программного обеспечения. Включившись снова, он известил другие коммутаторы по всей стране, что они могут начинать направлять ему вызовы. К сожалению, из‑за ошибки в программе эти извещения вызывали перезагрузку получавших их коммутаторов. Включившись снова, они становились новым звеном этой цепной реакции и так далее. Прежде чем ошибка была найдена и исправлена, нарушилась работа 114 подстанций, а телефонная сеть была практически выведена из строя на девять часов. Не состоялось 70 из 138 миллионов запрошенных в этот день междугородных разговоров и звонков на номера 800, что привело к ущербу в сотни миллионов долларов7.

Ситуация может усугубляться тем обстоятельством, что разные типы сетей часто функционально зависят друг от друга — и сбой в одной сети может спровоцировать неполадки в другой. Особенно тесно переплетены сети телекоммуникаций и электроснабжения: аппаратура первых нуждается в электроэнергии, инфраструктура вторых управляется при помощи сложных телекоммуникационных систем. Похожим образом при отключении электричества выходят из строя светофоры, и на дорогах начинается неразбериха. А там, где работа водоснабжения и воздуховодов обеспечивается электронасосами, из‑за перебоев с электричеством здание может стать непригодным для обитания. Даже при отсутствии прямой взаимозависимости близкое расположение сетевых соединений может способствовать распространению сбоев. К примеру, в тоннелях под Гудзоном и Ист–Ривер в Нью–Йорке проложены как транспортные, так и телекоммуникационные магистрали, поэтому затопление тоннеля приведет к обрыву обеих сетей8. Разрушение башен–бпизнецов одновременно уничтожило и важный пересадочный узел подземки в цокольном этаже, и множество телекоммуникационных передатчиков на крыше.

Зрелищный и потому часто упоминаемый случай цепной реакции сбоев произошел в Вустере, штат Массачусетс. Подросток взломал программное обеспечение телефонной подстанции и стер настройки коммутатора, в результате чего телефонная связь отключилась по всему округуЭ. Диспетчеры местного аэропорта использовали телефонный сигнал для включения огней на взлетно–посадочной полосе. Когда заходивший на посадку самолет запросил включить огни, диспетчеры не смогли ничего сделать, и аэропорт пришлось закрыть.

Структура и уязвимость

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

Еще на заре эры интернета передовые исследователи начали понимать, что способность системы поддерживать функционирование после сбоя во многом зависит от ее структуры. Пол Баран начал свою основополагающую статью о рассредоточенных сетях с диаграммы, показывающей три типа сетевых структур: централизованную, децентрализованную и распределенную! 0. Централизованная сеть состоит из соединений, расходящихся от центрального узла, совсем как радиальные улицы Пальмановы. Такая сеть, по словам Барана, «очевидно уязвима, поскольку вывод из строя одного лишь центрального узла прерывает связь между всеми остальными пунктами».

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

Децентрализованная сеть получается из «нескольких звезд, соединенных между собой в большую звезду», примерно как расходящиеся от площадей главные улицы в созданном Кристофером Реном плане Лондона, в Париже Оссманна или Вашингтоне Л’Анфана. Центры звезд остаются уязвимыми местами сети, но разрушение одного такого подцентра не приводит к тотальному обрушению: отключаются лишь узлы, подсоединенные непосредственно к нему, а остальная система продолжает функционировать. Децентрализация дает возможность поступенчато наращивать размер сети и позволяет блокировать последствия аварии.

Распределенная сеть является неиерархической — она похожа на решетку улиц Манхэттена или Чикаго, хотя ей не обязательно быть такой регулярной. Эксплуатационная надежность обеспечивается наличием резервных маршрутов: при повреждении узлов или соединений движение просто огибает аварийный участок. Однако за это приходится расплачиваться снижением эффективности: по пути от одного узла к другому сигнал, как правило, проходит через множество промежуточных узлов, являющихся точками потенциальных перегрузок и пониженной пропускной способности. При движении по решетке улиц у вас куча возможных маршрутов, и вы, скорее всего, доберетесь до места, даже если какие‑то из улиц перекрыты, но по пути вам встретится много знаков «Уступи дорогу» и немало светофоров. То же и с высотными башнями: будь они соединены между собой воздушными мостами, появились бы новые резервные маршруты и повысилась бы пространственная рассредоточенность путей эвакуации, но их стало бы сложнее контролировать с помощью охраны у входа.