Способ управления связностью одноранговой межмашинной сети передачи данных
METHOD OF CONTROLLING COMMUNICATION OF SINGLE-RANGE INTERCOMPUTER DATA NETWORK

Изобретение относится к технике связи и может использоваться при построении одноранговых межмашинных (machine-to-machine, M2M) сетей передачи данных с возможностью поддержания постоянной связности узлов сети.
Известен способ централизованного управления одноранговой сетью передачи данных, который включает в себя следующие этапы: сервер управления топологией получает информацию об активных узлах одноранговой сети передачи данных; при передаче сетевых пакетов сервер управления топологией посылает запрос к каждому узлу сети для получения информации о мощности сетевого соединения и после получения данной информации от узла сервер управления топологией посылает следующий запрос к узлу сети, соседнему по отношению к первоначальному узлу, и получает информацию о мощности сетевого соединения от него. Сбор информации о мощности сетевого соединения с самого узла и с его соседнего узла позволяет серверу управления топологией выбрать маршрут передачи данных между узлами, в котором узлы поддерживают наибольшую мощность сетевого соединения на всем маршруте (CN101621450, H04L12/56). Недостатком данного способа является то, что в нем не осуществляется контроль и управление связностью всей сети в целом при маршрутизации сетевых пакетов, в результате чего узлы сети, которые осуществляют некорректную или вредоносную активность (узлы-нарушители) могут, получив пакеты, не пересылать их далее. Сбор информации в данном способе ведется только по парам узлов на протяжении существующего маршрута передачи пакетов, что не позволяет: контролировать все возможные маршруты сетевых пакетов во всей сети в целом с учетом всевозможных связей между узлами одноранговой сети, отключать узлы-нарушителей и устанавливать новые маршруты передачи сетевых пакетов в обход таких узлов, что приводит к снижению устойчивости сети и безопасности маршрутизации в сети.
Известен способ управления сетевым трафиком в одноранговых компьютерных сетях передачи данных, включающий определение пороговых значений времени и сбор параметров узлов сети, заключающиеся в мониторинге и контроле параметров передачи сетевых пакетов на узлах сети путем отсылки на них двух контрольных сетевых пакетов и усреднения зафиксированных временных задержек, вызванных передачей этих контрольных сетевых пакетов (GB2517844, H04L29/06; H04W84/18) (прототип). Получаемая статистика о параметрах передачи контрольных сетевых пакетов используется для формирования профиля активности узлов сети и установления узлов концентрации трафика, через которые с целью уменьшения сетевых задержек перенаправляются вновь поступающие сетевые пакеты.  Недостатками этого способа является использование усредненных значений полученных данных о времени прохождения контрольных пакетов и необходимость составления профиля активности сетевых узлов, что не позволяет выявлять и устранять нарушения в маршрутизации, приводящие к разладке – нарушениям связности – одноранговой межмашинной сети передачи данных.
Технической проблемой является создание способа управления связностью одноранговой межмашинной сети передачи данных с повышенной устойчивостью и безопасностью одноранговой межмашинной сети передачи данных при динамической маршрутизации сетевых пакетов за счет обеспечения обнаружения нарушений динамической маршрутизации сетевых пакетов, вызывающих разладку сети, а именно: несимметричность связей между узлами в сети; наличие узлов сети, целенаправленно вносящих временную задержку и блокировку сетевого трафика, направляемого через них; наличие узлов сети с ошибками маршрутизации, при которых сетевые пакеты поступают на узел, но не передаются через него далее.
Решение поставленной технической проблемы обеспечивается тем, что в способе управления связностью одноранговой межмашинной сети передачи данных, включающем определение пороговых значений времени, сбор параметров узлов сети, в сети дополнительно вводят узел управления связностью сети, который собирает параметры связности по каждому узлу сети, при этом для каждого узла сети выполняется сбор параметров связности по каждому соединению, которое поддерживается контролируемым узлом;
на каждом узле сети формируют набор данных о каждом соединении j в виде набора , где j – условный идентификатор соединения данного узла с ближайшим узлом, k – тип соединения (имеет значение 1, если соединение установлено с узлом сети, осуществляющим маршрутизацию сетевых пакетов, 0 – если данное соединение установлено с узлом-конечным клиентом, не осуществляющим маршрутизацию сетевых пакетов), i – идентификатор соседнего узла сети, представленный сетевым MAC-адресом этого узла;
затем фиксируют общие параметры узла сети, которые относятся ко всей собранной информации о соединениях узла в целом: идентификатор узла – показатель, по которому можно однозначно идентифицировать узел в одноранговой межмашинной сети передачи данных; и временную метку – точное время, когда был произведен сбор информации; и;
при этом все наборы  собирают для всех N соединений узла сети и затем дополняют их общими параметрами узла сети, таким образом формируя общий набор параметров связности узла , где x – идентификатор узла, t – временная метка,  – собранные наборы данных о соединениях узла с его соседними узлами;
затем общий набор параметров связности каждого узла сети пересылают и сохраняют на узле управления связностью сети;
узел управления связностью сети периодически производит сбор и получение общих наборов параметров связности узлов от всех узлов одноранговой межмашинной сети передачи данных; при этом определяют момент времени , когда должна быть зафиксирована каждая новая группа наборов параметров связности от всех узлов контролируемой сети, причем на ожидание информации отводится промежуток времени  и в случае, если  становится больше критически важного предела времени, фиксируется нарушение связности, и информация о параметрах узлов собирается заново;
после того, как получены все наборов параметров связности от всех узлов сети, на узле управления связностью сети проверяется, что они присланы с одинаковой временной меткой ; и, если это не так, то узлам, у которых не выполняется это правило, посылают команду синхронизации времени;
затем для проверки связности сети узел управления связностью сети формирует пустую матрицу смежности сети  размером n+m на n+m вида
,
для чего по каждому узлу из набора параметров связности извлекают уникальный идентификатор узла x и формируют заголовки строк и столбцов матрицы, обозначая уникальные идентификаторы х для узлов-маршрутизаторов как  и уникальные идентификаторы обычных узлов как , таким образом что строки и столбцы матрицы смежности являются полным перечислением узлов, от которых получены наборы параметров связности узлов;
затем для того, чтобы заполнить ячейки матрицы смежности, для каждого узла извлекают информацию о его соединении с соседними узлами, то есть получают информацию , где значение 1 означает наличие соединения с другим узлом; и далее в каждой x-й строке матрицы смежности находят все узлы, с которыми соединен x-й узел сети, и в соответствующие столбцы устанавливают 1, во все остальные столбцы устанавливают 0, обозначая заполненную матрицу смежности как , где x – целочисленный индекс узла сети (предельное значение индекса узла – N);
если полученная матрица смежности  симметрична, это показывает, что сеть связна и маршрутизация корректно функционирует; при несимметричной матрице смежности один узел имеет связь с другим узлом, а тот его не видит, что означает, что в некотором узле сети трафик уничтожается, то есть он входит в узел, но из узла не выходит; в этом случае динамическая маршрутизация не выполняется, и в случае несимметричности матрицы  фиксируют нарушение «В сети нарушена связность»;
для устранения нарушений связности узел управления связностью сети приводят матрицу  к симметричному виду, устанавливая в матрице связности 0 в ячейках, где нарушается симметрия матрицы, и исключая данные соединения из динамической маршрутизации, отправляя команды узлам-маршрутизаторам запрета пересылки сетевых пакетов по маршруту от узлов, связанных с узлом-нарушителем;
в результате чего получают связную одноранговую межмашинную сеть, в которой все узлы поддерживают установленные маршруты и сетевые пакеты передаются по заданным маршрутам передачи данных.
Повышение устойчивости и безопасности при маршрутизации сетевых пактов в одноранговой межмашинной сети передачи данных обеспечивается тем, что в состав сети дополнительно вводится узел управления связностью сети, который динамически определяет наилучший маршрут до узлов концентрации трафика по метрикам соединений для всей сети в целом, обнаруживает в составе сети соединенные узлы, не пропускающие через себя трафик, и единовременно за счет проверки симметричности соединений определяет отсутствие соединений между узлами, и за счет проверки связности сети определяет, не распалась ли сеть, которая должна быть цельной.
Изобретение поясняется фиг.1-3, на которых показано:
фиг. 1 – схема способа управления связностью одноранговой межмашинной сети передачи данных;
фиг. 2 – размещение узла управления связностью сети,
фиг. 3 – пример построенной сети с двумя точками концентрации трафика
Поскольку одноранговые межмашинные (machine-to-machine, M2M) сети передачи данных – разновидность компьютерных сетей с динамически изменяемой топологией, то связность такой сети является основной характеристикой, которая определяет существование хотя бы одного маршрута, по которому возможна передача сетевых пакетов от узла-источника к узлу-приемнику информации. Нарушение связности сети – разновидность сетевых атак на сети такого типа, которая направлена на нарушение ее безопасности и функциональной устойчивости, вызываемых разладкой сети. Это связано с тем, что среда передачи информации является открытой, а сетевые протоколы маршрутизации обеспечивают динамическую маршрутизацию сетевых пакетов, при которой маршруты пакетов могут постоянно меняться в зависимости от топологии сети и активных связей между узлами. Динамические маршруты в такой сети передачи данных строятся на основе выбора лучших метрик маршрутов, которые в свою очередь рассчитывают на основе совокупности параметров передачи данных между узлами в сети: пропускной способности каналов связи; мощности сигнала; загруженности каналов; значений параметров качества обслуживания; числа потерянных пакетов. Предоставляя ложные сведения о параметрах передачи данных, узлы-нарушители могут непреднамеренно или преднамеренно вызывать нарушения маршрутизации, когда сетевые пакеты направляются по предпочтительному, определенному по метрикам, но небезопасному маршруту и не доходят до узла-адресата. Такие нарушения вызывают разладку сети в виде  несимметричности связей между узлами в сети; наличия узлов сети, целенаправленно вносящих временную задержку и блокировку сетевого трафика, направляемого через них; наличия узлов сети с ошибками маршрутизации, при которых сетевые пакеты поступают на узел, но не передаются через него далее.
В способе безопасной маршрутизации в одноранговых самоорганизующихся сетях (фиг.1): 1 - выполняют определение пороговых значений времени, 2 - выполняют сбор параметров узлов сети  и 3 - управляют связностью сети. Для этого в одноранговую межмашинную сеть передачи данных дополнительно вводят узел, который контролирует связность сети – узел управления связностью сети. Данный узел размещают так, чтобы он был доступен из разных сегментов сети (фиг. 2). Узел управления связностью сети собирает параметры связности по каждому узлу сети. Для передачи этих данных используется  сетевой канал управления узлами сети, если он присутствует в сети, или данные передаются по открытым каналам передачи данных самой сети. В случае передачи данных по открытым каналам, информация кодируется. При этом для каждого узла сети выполняется сбор параметров связности по каждому соединению, которое поддерживается контролируемым узлом;
На контролируемом узле формируется набор данных о каждом соединении j в виде набора , где j – условный идентификатор соединения данного узла с ближайшим узлом, k – тип соединения (имеет значение 1, если соединение установлено с узлом сети, осуществляющим маршрутизацию сетевых пакетов, 0 – если данное соединение установлено с узлом-конечным клиентом, не осуществляющим маршрутизацию сетевых пакетов), i – идентификатор соседнего узла сети, представленный сетевым MAC-адресом этого узла.
Затем фиксируют общие параметры узла сети, которые относятся ко всей собранной информации о соединениях узла в целом: идентификатор узла – показатель, по которому можно однозначно идентифицировать узел в одноранговой межмашинной сети передачи данных; и временную метку – точное время, когда был произведен сбор информации; и;
Все наборы параметров  собирают для всех N соединений узла сети и затем дополняют их общими параметрами узла сети, формируя общий набор параметров связности узла , где x – идентификатор узла, t – временная метка,  – собранные наборы данных о соединениях узла с его соседними узлами.
Общий набор параметров связности каждого узла сети пересылают и сохраняют на узле управления связностью сети.
Узел управления связностью сети периодически производит сбор и получение общих наборов параметров связности узлов от всех узлов одноранговой межмашинной сети передачи данных. При этом определяют момент времени , когда должна быть зафиксирована каждая новая группа наборов параметров связности от всех узлов контролируемой сети, причем на ожидание информации отводится промежуток времени  и в случае, если  становится больше критически важного предела времени, фиксируется нарушение связности, и информация о параметрах узлов собирается заново.
Затем для проверки связности сети узел управления связностью сети формирует пустую матрицу смежности сети  размером n+m на n+m вида
,
для чего по каждому узлу из набора параметров связности извлекают уникальный идентификатор узла x и формируют заголовки строк и столбцов матрицы, обозначая уникальные идентификаторы х для узлов-маршрутизаторов как  и уникальные идентификаторы обычных узлов как , таким образом что строки и столбцы матрицы смежности являются полным перечислением узлов, от которых получены наборы параметров связности узлов.
Затем для того, чтобы заполнить ячейки матрицы смежности, для каждого узла извлекают информацию о его соединении с соседними узлами, то есть получают информацию , где значение 1 означает наличие соединения с другим узлом; и далее в каждой x-й строке матрицы смежности находят все узлы, с которыми соединен x-й узел сети, и в соответствующие столбцы устанавливают 1, во все остальные столбцы устанавливают 0, обозначая заполненную матрицу смежности как , где x – целочисленный индекс узла сети (предельное значение индекса узла – N).
Если полученная матрица смежности  симметрична, это показывает, что сеть связна и маршрутизация корректно функционирует. При несимметричной матрице смежности один узел имеет связь с другим узлом, а тот его не видит, что означает, что в некотором узле сети трафик уничтожается, то есть он входит в узел, но из узла не выходит; в этом случае динамическая маршрутизация не выполняется, и в случае несимметричности матрицы  фиксируют нарушение «В сети нарушена связность».
Для устранения выявленных нарушений связности узел управления связностью сети приводят матрицу  к симметричному виду, устанавливая в матрице связности 0 в ячейках, где нарушается симметрия матрицы, и исключая данные соединения из динамической маршрутизации. Затем он отправляет команду запрета пересылки сетевых пакетов по маршруту от узлов, связанных с узлом-нарушителем. В результате получают связную одноранговую межмашинную сеть, в которой все узлы поддерживают установленные маршруты и сетевые пакеты передаются по заданным маршрутам передачи данных.
В качестве примера используется одноранговая межмашинная сеть, представленная на фиг. 3. Каждый узел сети собирает и отправляет актуальную информацию о своих соединениях. В сети существует широковещательная рассылка, и каждый узел за секунду может получить 20 пакетов. Узлы могут отправить данные, но они могут быть не учтены в статистике получателя, число таких пакетов также не превышает 20. Все узлы сети присылают наборы параметров о соединениях. Наборы параметров собирают с узлов в одно и то же время. Если узел (например, A8) не прислал параметры, то администратору сети направляется сообщение о нарушении маршрутизации «Узел A8 не прислал статистику». На узле управления связностью сети проверяют связность сети. Для этого строится матрица смежности. В нормальных условиях матрица смежности для данной сети имеет вид:
На этом этапе приводят матрицу к симметричному виду. В местах, где необходимо для симметрии поставить 0, необходимо его поставить. Это необходимо сделать, чтобы было возможно обеспечить связность сети.
Например, если узел A8 имеет соединение с узлом A5, а A5 не имеет соединения с узлом A8, тогда фиксируем нарушение маршрутизации «Узел A5 не соединен с узлом A8». Матрица в этом случае выглядит следующим образом (выделены узлы, нарушающие симметрию матрицы смежности):
Узел A8 должен быть отключен от сети, так как он нарушает маршрутизацию в сети и тем самым вносит разладку в связность сети.
Разработанный способ позволяет выявлять и предотвращать специфические нарушения безопасности, связанные с динамической маршрутизацией в одноранговых межмашинных сетях передачи данных: несимметричные связи в сети; нарушение связности узлов сети; внесение задержки узлами сети; ошибки маршрутизации; а также блокировку трафика узлами сети.