Топология сетей
![Портрет](https://onti.polyus-nt.ru/pluginfile.php/97/mod_page/content/55/ava-chekan-256px.png)
Чекан Михаил Андреевич
программист-разработчик по профилю Олимпиады КД НТИ "Интеллектуальные энергетические системы", магистрант ИРНИТУ
Если смотреть на энергетические сети с точки зрения их соединения между собой, возникает ощущение схожести с Интернетом. Но даже в текущем положении совместить эти два понятия далеко не просто, а дело, казалось бы, в обыкновенном большом графе...
#АрхитектураИнтернетаЭнергии #Энергетика #Интернет
Наверное, сейчас вы можете подумать, что рассказ пойдёт про классификацию топологий, как они сочетаются и работают, но нет. Топология по своей сути сводится к обычному графу. Это порядок соединения узлов в одной большой сети. И соединяться они могут разным образом, будь то кольцо, шина, звезда, как учат этому в учебниках по информатике. Но важно понимать, что скрывается за топологией и каким образом она работает в реальной жизни.
Для этого мы обратимся к составляющим Интернета энергии — непосредственно Интернету и энергетике. Допустим, как вы подключаетесь к Интернету? Приходите домой, а дома у вас стоит роутер, к которому проводком подключен стационарный компьютер, телевизор… Вы достаёте телефон, он автоматически подключается по Wi-Fi к этому роутер, по этому же Wi-Fi устанавливается соединение с ноутбуком и прочими беспроводными устройствами… Это называется plug’n’play, подключил — и работает.
Да, на уровне конечного потребителя у нас всё работает предельно просто. Такая топология называется «звездой»: у нас есть центральный узел в виде роутера, к которому подключаются дочерние узлы в виде других устройств. В корпоративных сетях, где
представлено больше отделов и сеть гораздо более обширная, используются специальные сетевые устройства типа коммутаторов, маршрутизаторов, и у нас образуется дерево. И пока мы об этом говорим, мы понимаем, что у нас более-менее простой граф.
Да, где надо, мы можем протянуть ещё одну линию между двумя маршрутизаторами, они окажутся подключенными двумя проводами, и у нас фактически образуется цикл или даже петля. Такие топологии тоже есть, и мы получаем более полноценный граф.
Это всё достаточно просто и охватываемо нашим умом. Но что, если мы копнём чуть глубже и перейдём на уровень выше от конечного потребителя к, допустим, городскому провайдеру? Городской провайдер должен подключить гораздо больше, чем несколько устройств, здесь уже десятки и сотни тысяч пользователей, расположенных по большой площади. Городскому провайдеру нужно протянуть провода-кабели, и это уже будет не простая витая пара, а оптоволокно, оно дороже. При этом нужно учесть погоду, проложить так, чтобы случайно свалившийся столб не оставил без интернета половину города, и сверх того следить за тем, чтобы по отдельным линиям не шло слишком много трафика, чтобы он расходился равномерно.
Также с энергетикой: мы имеем уровень конечного потребителя, розетки, тройники, сетевые фильтры, всё это сходится на один счётчик, а от счётчика канал идёт к сбытовой компании, которая также работает с десятками и сотнями тысяч потребителей на большой площади, также прокладывает сеть, также заботится о том, чтобы не было больших нагрузок и, как следствие, потерь, чтобы провода не перегревались, чтобы линия от завода не шла вместе с линией от микрорайона, то есть стараться их разводить, опять же, ради пропускной способности и минимизации потерь.
Это уровень городской, проблем здесь прибавилось, но уровень ответственности не такой высокий, как у магистральных провайдеров. Конечный уровень всей земной топологии (будь то Интернет или энергетика) — это магистрали.
Магистральных провайдеров мало, потому что прокладка магистралей требует большого уровня ответственности, технического развития и денег. Прокладка магистралей — это очень дорогое занятие. Вы видели телекоммуникационный кабель, который прокладывается
по дну океана между континентами? Внушительный диаметр, сотни пар каналов, армирование, несколько степеней защиты, и всё ради того, чтобы между континентами шли десятки-сотни терабит данных. И при этом даже такие кабели могут выходить из строя.
Магистраль — это
очень важная часть топологии, но мы её не замечаем, находясь на вершине айсберга, на уровне конечного потребителя.
![](https://upload.wikimedia.org/wikipedia/commons/thumb/1/11/Submarine_cable_cross-section_3D_plain.svg/1002px-Submarine_cable_cross-section_3D_plain.svg.png)
Разрез подводного телекоммуникационного кабеля
(автор Oona Räisänen, общественное достояние)
Таким образом, если мы будем рассматривать топологию в глобальном плане, от потребителя до магистрали, мы можем заметить, что топология — это действительно граф с разными весами, разными вариантами соединения и подтопологиями. Но нам нужно также понимать, что в данном случае от топологии зависит три с половиной момента.
Первый момент — это надежность полученной сети. Если у нас откажет один из узлов или одна из линий, мы должны убедиться, что сеть не деградирует в той степени, что, допустим, у городского провайдера отрубился кабель, и интернет пропал у половины города. Провайдер должен позаботиться о той или иной возможности зарезервировать этот канал в меру своих экономических возможностей. В случае с магистралью обрыв кабеля — это довольно трагичная ситуация. Недавно как раз был случай, у одного из российских провайдеров действительно произошел обрыв магистрали, и в Сибири и Дальнем Востоке на определённое время пропал доступ в Интернет. Конечно, обрыв починили, перед конечными потребителями извинились. Для одного потребителя это, возможно, не так критично. Но для большего числа потребителей это уже как минимум неприятно, а иногда и опасно.
Второй пункт в данном списке — это устойчивость. Как я уже упоминал, планирование топологии должно осуществляться таким образом, чтобы ресурс (будь то данные или энергия) распределялся равномерно, чтобы не было перегрузок и так называемых «бутылочных горлышек».
Третий пункт — это скорость (она перекликается с предыдущим пунктом) и гибкость. В случае с Интернетом, например, вы с Владивостока отправляете пакет данных, допустим, в Японию. Если раньше прямого канала между ними не было, и трафик шёл обходными путями (иногда даже через Европу и Америку). Сейчас же эти данные в Японию и ту же Америку идут напрямую через подводные каналы, проложенные в том числе по Тихому океану. Сеть должна строиться таким образом, чтобы вовремя адаптироваться под ситуацию и обеспечивать наилучшее качество услуг, быструю доставку энергетических и информационных ресурсов.
Но при этом тот самый «четвёртый» пункт, который касается ресурсных сетей (энергетика, газопровод, водопровод…), — это банальный запас ресурсов, потому что энергия не бесконечна в отличие от информации, которую можно размножать. Нужно получать
энергию от генераторов и передавать её потребителям. И эта забота также ложится и на магистральных провайдеров, и на энергосбытовые компании.
Но всё же, давайте попробуем поговорить о топологиях более оптимистично, но при этом отбросить в сторону те или иные аспекты, связанные с топологиями, которые ещё предстоит решить. Это алгоритмы, технологии связи… Да, Интернет энергии невозможен
без быстрой связи и, уверен, уже не будет возражений, что 5G нужен. И алгоритмы тоже нужны, замечу, ведь если они будут работать некорректно, может произойти ситуация наподобие той, что имела место в Америке в 2003 году, когда из-за ошибки
в программе не сработало оповещение о перегрузке линии, и значительную часть Америки оставило без электричества. Несомненно, топологии важны, но то, на чём они работают, что они соединяют, не менее важно.
Обратимся ещё раз к уровню конечного потребителя, квартире. У нас есть «звезда», счётчик, к которому подключаются устройства, причём они могут подключаться по принципу дерева. Эта топология хоть и называется «звездой», но по факту мы имеем что-то более похожее на «кольцо» или даже «шину» (это зависит от природы подключения устройств, в Интернете — кольцо, в энергетике — шина). Одна большая разветвлённая электрическая цепь, в которую просто врезается то или иное устройство. Либо у нас проводник, по которому электричество идёт дальше, либо врезка с розеткой, и в эту розетку подсоединяется очередное устройство-потребитель. В этом отношении топологии, о которых мы говорим, сводятся к одной большой электрической цепи. Допустим, есть пример с кольцом, Олимпийская деревня в Адлере как раз была построена по принципу двойного кольца: две трансформаторных подстанции, работающих на кольцевой линии, и если одна из подстанций отказывает, вторая продолжает работать. Это и есть обеспечение надёжности путём резервирования.
Если говорить о типичном городском провайдере, мы также можем наблюдать «дерево», но на стенде «Интеллектуальные энергетические системы» есть пример построения городской сети, которую нельзя привести к обычному дереву, это уже самый что ни на есть направленный граф.
Но перед тем, как мы к нему обратимся, закончу пояснение о магистральных провайдерах. Какая топология у них? По своей сути, магистрали уже образуют сеть, которую нельзя называть кольцом, и не менее сложно называть одной большой электрической
цепью. Но даже в Интернет-телекоммуникациях есть протоколы, которые обеспечивают отключение тех или иных линий, которые не сейчас задействованы, таким образом, что данные или электроэнергия идут по замкнутой цепи (а балансировка практически
и есть динамическое переключение этих линий).
А теперь мы перейдём непосредственно к стенду ИЭС, в котором моделируется микрорайон с довольно упрощённой моделью городского провайдера.
Прежде всего, у нас есть точка входа, главная подстанция, выступающая в роли большого «счётчика» с внешней линией электропередачи, с которыми энергосбытовая компания взаимодействует путём управляющего скрипта. От главной подстанции тянется три линии, ведущие к объектам энергосети этого микрорайона, будь то генераторы (ветряные и солнечные электростанции) или потребители (жилые районы, заводы, больницы). Такая сеть в простейшем случае будет являться деревом, но есть одно маленькое «но».
По легенде (и фактически в реальной жизни) больница должна резервировать линию на случай обрыва коммуникации или блэкаута. У больницы должно быть резервное питание, потому что это критический объект, и при отключении одной из линий больница должна продолжать работать по запасному каналу. И при проектировании сети (как здесь, так и в реальной жизни) мы должны обеспечивать положение, когда две линии больниц находятся на разных линиях главной подстанции. Потому что иначе образуется точка отказа, и если эта единственная линия оборвётся, больница останется без энергии и мы можем даже потерпеть человеческие жертвы, а это неправильно.
С заводами ситуация чуть благоприятнее, конечно же, линии тоже резервируются, но здесь превалирует другая роль. Заводы потребляют много электроэнергии, и они создают большую нагрузку на сеть. С помощью подключения к разным линиям мы можем разделять нагрузку и избегать перегрузок на тех или иных участках сети.
Именно на этих двух моментах дерево, которое мы можем так или иначе охватить сознанием и посчитать, превращается в граф, с которым работать становится сложнее.
Ещё один из моментов, почему мы разбираем пример топологии именно на энергостенде, — это наглядная демонстрация особенностей построения, столь важных в топологии и энергетике в целом. Особенно прекрасно здесь отражён тот факт, что узлы позволяют
локализовать неприятные эффекты, которые могут отрицательно сказаться на работоспособности сети. Одним из примеров является миниподстанция, позволяющая собрать подключенные к ней генерацию и потребление, сбалансировать их на месте и
отправить на главную подстанцию сбалансированный объём энергии, гораздо меньший, чем если бы объекты балансировались на самой главной подстанции, и тем самым снижая нагрузку на сеть и потери, что очень важно в энергетике. А при использовании
модулей для, допустим, дополнительной генерации или накопления мы можем ещё сильнее оптимизировать работу сети и в определённых случаях даже обеспечить отказоустойчивость. Но это уже одна из конечных целей Интернета энергии, когда изолированные
участки сети могут работать без общей топологии, но это другая история.
Напоследок стоит рассказать о том, каким образом эти топологии планировать. Вообще, практика показала, что незначительные изменения топологии, даже в реальности, привносят колоссальные изменения в общую работу всей системы. И нельзя с полной уверенностью предсказать, как сыграет то или иное изменение в топологии. Что будет, если я поставлю накопитель или генератор? Что будет, если я на одну линию подключу генерацию, на другую — потребление; или соединю эти две линии через одну миниподстанцию, и только потом проведу к главной? И вариантов топологии достаточно много, если даже (преувеличивая) не бесчисленное количество. Потому что у нас есть разные варианты соединения объектов, миниподстанции, которыми мы можем собирать дерево. И ладно, если бы это было простое дерево, которое можно просто посчитать. Но у нас сложный граф, потому что есть также больницы и заводы, и один объект может подключаться к разным линиям, образуя петли. И это ещё мы не дошли до той максимы Интернета энергии, когда у нас децентрализованная сеть, в которой могут образовываться острова.
Выходов из такой ситуаций, если мы добавим контекст реальности, только два. Либо построить и посмотреть, как оно работает, методом проб и ошибок, либо попытаться заранее рассчитать примерное поведение сети, даже с использованием генетических алгоритмов. Так сказать, оптимизированный автоматизированный перебор вариантов. Например, в случае с магистральными провайдерами, у них много денег, поэтому они могут спокойно арендовать вычислительные ресурсы и просчитать сеть заранее ради экономии в будущем.
Но стоит понимать, что модель будет приближенной, потому что вы никогда не сможете с точностью предположить, как будет работать та или иная сеть. Слишком много переменных значений, тем более в реальности. Но получить приближение вы уже сможете.
Особенно полезным будет наработка опыта. Чем хорош перебор, в тот числе пробами и ошибками, — рано или поздно вы научитесь на ходу (например, на этапе аукциона и распределения объектов в самом начале игры), ещё только набирая объекты, строить
топологию в уме и примерно предполагать, какой вариант построения сети с данными объектами будет работать лучше всего. Но это уже другая история.
И таким образом, подводя итог этого рассказа, Интернет энергии пока что несбыточная мечта, потому что мы работаем с критическими инфраструктурами, и частью этой критической инфраструктуры является топология, которая не так проста, как могло показаться изначально, когда мы смотрели на неё с позиции простого графа.
Для размышления
Из-за прямой связи с графами, рассматривать сетевую топологию можно во многих явлениях жизни, в том числе социальных. Начнём с простого: нарисуйте схему домашней локальной сети и электрической сети (розетки и удлинители считать отдельными узлами). При желании можно с помощью толщины ребра показывать объём проходящего между узлами трафика/мощности.
Затем можно рассмотреть получившиеся схемы и ответить себе на вопросы:
– какой вид имеет получившийся граф? (скорей всего, это будет дерево)
– по каким рёбрам проходит наибольшая мощность или трафик? есть ли возможность перенести её часть на другие рёбра?
– при удалении каких рёбер или узлов отключится бóльшая часть сети? можно ли уменьшить число отключаемых узлов в подобном случае?
Кстати, последние два пункта рассматриваются в первую очередь, когда стоит вопрос улучшения и оптимизации топологии.
А теперь усложним задачу. Скорей всего, устройство сети провайдера вы не знаете, но своё окружение точно вспомните. Попробуйте выполнить аналогичную задачу, построив социальный граф для своего окружения (друзья, класс/группа, родственники), при желании также включить в него «друзей друзей» и других лиц, с которыми вы взаимодействуете (преподавателей, руководителей). Вопросы те же, но вместо трафика мы рассматриваем общение (от близкого до «шапочного»). Попробуйте выделить топологии и уровни аналогично рассказанному в лекции. Например, одноклассников рассмотреть как один целый класс при взаимодействии с преподавателями или другим классом. Не бойтесь фантазировать и додумывать связи на этом этапе.
Материалы
- Авария в энергосистеме в США и Канаде (2003)
(к вопросу о важности технической составляющей сети и алгоритмов) - Мировая карта подводных кабелей