RU2653231C1 - Способ и система объединения компонентов для управления объектами автоматизации - Google Patents

Способ и система объединения компонентов для управления объектами автоматизации Download PDF

Info

Publication number
RU2653231C1
RU2653231C1 RU2016102066A RU2016102066A RU2653231C1 RU 2653231 C1 RU2653231 C1 RU 2653231C1 RU 2016102066 A RU2016102066 A RU 2016102066A RU 2016102066 A RU2016102066 A RU 2016102066A RU 2653231 C1 RU2653231 C1 RU 2653231C1
Authority
RU
Russia
Prior art keywords
network
server
user device
control
mode
Prior art date
Application number
RU2016102066A
Other languages
English (en)
Inventor
Марат Мирзагитович Гилязетдинов
Сергей Иванович Королев
Original Assignee
Общество с ограниченной ответственностью "Иридиум"
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Общество с ограниченной ответственностью "Иридиум" filed Critical Общество с ограниченной ответственностью "Иридиум"
Priority to RU2016102066A priority Critical patent/RU2653231C1/ru
Priority to PCT/RU2016/000952 priority patent/WO2018111139A1/ru
Application granted granted Critical
Publication of RU2653231C1 publication Critical patent/RU2653231C1/ru

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F15/00Digital computers in general; Data processing equipment in general
    • G06F15/16Combinations of two or more digital computers each having at least an arithmetic unit, a program unit and a register, e.g. for a simultaneous processing of several programs

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer And Data Communications (AREA)

Abstract

Изобретение относится к области информационных технологий, а именно к области передачи данных в цифровых сетях передачи данных. Предназначено для создания коммуникаций между устройствами автоматизации, облачными шлюзами и программными средствами для настройки и передачи информации между участниками сети, объединенных общим протоколом. Технический результат заключается в расширении средств указанного назначения. Данный технический результат достигается за счет того, что при использовании предлагаемого способа создается вычислительная сеть для передачи данных между множеством различных устройств сети с возможностью работы одновременно в трех режимах: централизованном, децентрализованном и комбинированном. 2 н. и 14 з.п. ф-лы, 5 ил.

Description

ОБЛАСТЬ ТЕХНИКИ
Техническое решение относится к области информационных технологий, а именно - к области передачи данных в цифровых сетях передачи данных. Предназначено для создания коммуникаций между программами и устройствами автоматизации, облачными шлюзами и программами для настройки и передачи информации между участниками сети, объединенных общим протоколом.
УРОВЕНЬ ТЕХНИКИ
В настоящий момент существуют разнообразные устройства, работа которых зависит от передачи данных, различных брендов. Но у многих устройств есть недостаток - несовместимость с оборудованием других брендов. Вследствие этого пользователю приходится выбирать один бренд и использовать всю линейку оборудования только этого бренда, закрывая глаза на минусы устройств. Таким образом, можно выявить следующие проблемы в существующих протоколах передачи данных:
Figure 00000001
Отсутствие единого стандарта у производителей оборудования, постоянная борьба производителей между собой на уровне экосистем, борьба с проникновением конкурирующего протокола в собственную экосистему.
Figure 00000001
Отсутствие на рынке протокола объединяющего в себе работу с инженерными и мультимедийными системами.
Figure 00000001
Большинство крупнейших производителей оборудования и программного обеспечения для информационных систем делают протоколы не «снизу вверх», а «сверху вниз», тем самым создают протокол для производителей без производителей оборудования.
Для взаимодействия между вышеописанными объектами в среде передачи данных должен использоваться протокол передачи данных, способный:
Figure 00000001
работать в сетях с низкой пропускной способностью;
Figure 00000001
быть защищенным на уровне передачи данных;
Figure 00000001
уметь работать как с инженерными, так и мультимедийными системами;
Figure 00000001
иметь возможность работать в физических шинах ТСР/IP, UDP, RS-232, RS-485 и иметь гибкую структуру при последующих модификациях для работы в новых шинах;
Figure 00000001
осуществлять разделение участников сети на категории;
Figure 00000001
позволять передавать данные баз данных;
Figure 00000001
взаимодействовать с «облачными» технологиями;
Известным из уровня техники близким аналогом частной реализации предлагаемого технического решения является патент US 6574234 B1 «Method and apparatus for controlling network devices», патентообладатель: AMX CORP, опубликовано: 03.06.2003. В этом документе раскрывается информация о системе и способе, которые позволяют осуществлять автоматизированное управление домашними приборами.
Также из уровня техники известно техническое решение US 20130211546 A1, «SMART DEVICE FOR INDUSTRIAL AUTOMATION", заявитель: Rockwell Automation Technologies Inc., опубликовано: 15.08.2013.
Предлагается умное устройство, которое облегчает автоматизированную конфигурацию и интеграцию устройств в системе автоматизации. После установки в системе автоматизации, умный прибор определяет его географическое местоположение, определяет другие устройства в системе, и определяет его роль и место в системе. Умное устройство затем устанавливает связь с облачной платформой, на которой установлено одно или несколько облачных приложений или служб и отправляет профиль устройства, содержащий собранную информацию облачной платформы.
Недостатками вышеуказанных решений является то, что они не позволяют решать все основные проблемы при построении объекта автоматизации, а именно: необходимо проводить поиск устройств управления, создавать соглашения об установлении соединения, передача настроек, осуществлять передачу управляющих сигналов, передачу потоков, контроль за ошибками, автоматическое конфигурировании устройств, защищенную передачу сигналов между участниками сети.
СУЩНОСТЬ ТЕХНИЧЕСКОГО РЕШЕНИЯ
Данное техническое решение направлено на устранение недостатков, присущих существующим аналогам. Задачей данного технического решения является обеспечение построения вычислительной сети для связи между различными устройствами с последующим обменом данных.
Технический результат от использования данного технического решения заключается в улучшении гибкости подключения различных устройств в сети и в расширении функциональных возможностей, требуемых от среды передачи данных при построении и дальнейшем использовании систем автоматизации различного вида, а именно: проводить поиск устройств управления, создавать соглашения об установлении соединения, передача настроек, осуществлять передачу управляющих сигналов, передачу потоков, контроль за ошибками, автоматическое конфигурировании устройств, защищенную передачу сигналов между участниками сети.
Данный технический результат достигается за счет того, что, при использовании предлагаемого способа создается вычислительная сеть для передачи данных между множеством различных устройств сети с возможностью работы одновременно в трех режимах: централизованном, децентрализованном и комбинированном.
Figure 00000002
Режим централизованной сети: в сети присутствует сервер, к которому подсоединены все участники сети. Сервер, в свою очередь, принимает решения по управлению тем или иным устройством сети, отправляя и получая управляющие сигналы. Данный подход хорош тем, что сервер, имеет всю информацию и контроль над участниками сети, недостаток же сети в том, что в случае отказа сервера, объект автоматизации перестает работать.
Figure 00000002
Режим децентрализованной сети: все участники сети не имеют единого центра управления, участников сети можно разделить на две категории генераторов событий и обработчиков событий. Например, в сети присутствует два участника, это кнопка и лампа. При нажатии на кнопку, генерируется событие о том, что кнопка изменила свое состояние, лампа, в свою очередь, реагирует на событие нажатия кнопки и включает или выключает лампу в зависимости от значения события.
Figure 00000002
Режим комбинированной сети: позволяет серверу контролировать устройства, работающие как в централизованном, так и децентрализованном режиме. За счет этого можно существенно повысить надежность системы, а так же разгрузить сервер. К примеру, освещение работает по децентрализованной сети, а мультимедиа устройства работают в централизованной сети. В случае если сервер выйдет из строя, освещение продолжит работу.
Способ построения вычислительной сети для связи между множеством устройств, содержащий этапы, на которых:
- определяют режим функционирования сети как централизованный либо децентрализованный;
- в случае определения режима функционирования сети как централизованного:
Figure 00000002
генерируют на устройстве клиента запрос серверу на возможность соединения и направляют его на сервер;
Figure 00000003
получают в ответ на упомянутый запрос условия подключения устройства пользователя к серверу;
Figure 00000004
отправляют данные для подключения к серверу от устройства пользователя;
Figure 00000005
инициируют на устройстве пользователя формирование запроса подписки на каналы управления и направляют его на сервер;
Figure 00000006
сервер в ответ на полученный запрос инициирует подписку устройства пользователя на упомянутые каналы управления и направляет уведомление со списком упомянутых каналов на устройство пользователя;
Figure 00000007
выполняют соединение устройства пользователя с сервером по соответствующим каналам управления;
- в случае определения режима функционирования сети как децентрализованного:
Figure 00000008
выполняют поиск участников сети;
Figure 00000009
устанавливают локальный идентификатор для каждого участника сети;
Figure 00000010
производят получение информации о каждом участнике сети;
Figure 00000011
выполняют опрос каналов управления по каждому участнику сети, каналов обратной связи и связанных с каналами глобальных переменных, на основе полученной информации осуществляют создание списка глобальных переменных, каналов управления и обратной связи;
Figure 00000012
выполняют связывание каналов управления таким образом, что при изменении значения канала управления все связанные с каналом управления глобальные переменные принимают значения канала управления;
Figure 00000013
осуществляют связывание глобальной переменной и канала обратной связи для настройки канала обратной связи так, что упомянутый канал обратной связи принимает значение связанной с ним глобальной переменной, причем в случае изменения значения упомянутой глобальной переменной, участники децентрализованной сети получают значение изменения глобальной переменной;
Figure 00000014
переводят устройства участников сети в рабочий режим, при котором каждое из устройств ожидает изменения глобальных переменных или изменения собственных каналов, с последующей отправкой в сеть изменившихся значений глобальной переменной связанной с каналом управления.
Подключение устройств в сети осуществляется с помощью проводной и/или беспроводной связи.
Условия подключения к сети от сервера в централизованном режиме функционирования сети включают в себя необходимость шифрования и\или авторизации.
Данные для подключения к серверу в централизованном режиме функционирования сети включают в себя хеш авторизации, и\или тип устройства, и\или информация об устройстве.
При централизованном режиме функционирования сети клиент запрашивает у сервера список каналов управления, список каналов обратной связи, после чего происходит подписка на интересующие каналы управления и обратной связи, причем, в случае если клиент меняет значение канала управления, сервер принимает изменившееся значение, в случае если значение обратной связи, на которое подписался клиент, меняется на сервере, клиент получает изменившееся значение.
Определение режима функционирования сети устанавливается заранее в зависимости от используемого сетевого оборудования на физическом уровне.
Сеть может быть поделена на участки с централизованным режимом функционирования сети и децентрализованным режимом функционирования сети и взаимодействие между упомянутыми участками происходит с помощью списка глобальных переменных.
При построении вычислительной сети для связи между множеством устройств используется алгоритм шифрования, при котором:
Figure 00000002
клиент посылает запрос на открытие соединения и посылает свой открытый ключ, который подписан секретным сертификатом (этот сертификат является общим для клиента и сервера)
Figure 00000002
сервер, получив открытый ключ, проверяет его подлинность секретным сертификатом, убедившись, что полученный ключ подлинный, сервер передает свой открытый ключ клиенту.
Figure 00000002
клиент, получив открытый ключ от сервера, так же проверяет подлинность секретным сертификатом.
Figure 00000002
клиент зашифровывает с помощью открытого ключа сервера, вектор инициализации блочного шифра, который будет использоваться для канала "клиент-сервер" и отправляет серверу.
Figure 00000002
сервер, получив зашифрованные данные вектора инициализации, расшифровывает данные вектора инициализации блочного шифра и зашифровывает открытым ключом клиента собственный вектор инициализации для канала "сервер-клиент" и отправляет его клиенту.
Figure 00000002
получив вектор инициализации, клиент переходит в режим обмена, и пытается выполнить открытие сессии.
Данное техническое решение может быть выполнено в виде системы построения вычислительной сети для связи между множеством устройств, которая включает в себя:
Figure 00000002
сервер, имеющий в составе: по крайней мере, одно устройство хранения данных, одно устройство обработки команд, и выполненный с возможностью: в централизованном режиме функционирования сети - принимать запросы на возможность соединения, данные для подключения, запросы на подписку каналов управления и обратной связи; посылать условия подключения к нему, подтверждения подключения к нему, список каналов управления и обратной связи, команды для устройств клиента; в децентрализованном режиме функционирования сети - участвовать в поиске участников сети, принимать локальный идентификатор, передавать информацию о себе как об участнике сети, участвовать в опросе, в ходе которого формируется список глобальных переменных, каналов управления и обратной связи, принимать значения глобальных переменных;
Figure 00000002
устройство клиента, имеющее в составе: по крайней мере, одно устройство хранения данных, одно устройство обработки команд, и выполненное с возможностью: в централизованном режиме функционирования сети - посылать запросы серверу на возможность соединения, данные для подключения к серверу, запросы по подписке на каналы управления и обратной связи; подключаться к серверу; принимать условия подключения к серверу, подтверждения подключения к серверу, список каналов управления и обратной связи, команды от сервера и пользователя; в децентрализованном режиме функционирования сети - участвовать в поиске участников сети, принимать локальный идентификатор, передавать информацию о себе как об участнике сети, участвовать в опросе, в ходе которого формируется список глобальных переменных, каналов управления и обратной связи, принимать значения глобальных переменных.
Подключение устройств в сети осуществляется с помощью проводной и/или беспроводной связи.
Условия подключения к сети от сервера в централизованном режиме функционирования сети включают в себя необходимость шифрования и\или авторизации.
Данные для подключения к серверу в централизованном режиме функционирования сети включают в себя хеш авторизации, и\или тип устройства, и\или информация об устройстве.
При централизованном режиме функционирования сети клиент запрашивает у сервера список каналов управления, список каналов обратной связи, после чего происходит подписка на интересующие каналы управления и обратной связи, причем, в случае если клиент меняет значение канала управления, сервер принимает изменившееся значение, в случае если значение обратной связи, на которое подписался клиент, меняется на сервере, клиент получает изменившееся значение.
Определение режима функционирования сети устанавливается заранее в зависимости от используемого сетевого оборудования на физическом уровне.
Сеть может быть поделена на участки с централизованным режимом функционирования сети и децентрализованным режимом функционирования сети и взаимодействие между упомянутыми участками происходит с помощью списка глобальных переменных.
При построении вычислительной сети для связи между множеством устройств используется алгоритм шифрования, при котором:
Figure 00000002
клиент посылает запрос на открытие соединения и посылает свой открытый ключ, который подписан секретным сертификатом (этот сертификат является общим для клиента и сервера)
Figure 00000002
сервер, получив открытый ключ, проверяет его подлинность секретным сертификатом, убедившись, что полученный ключ подлинный, сервер передает свой открытый ключ клиенту.
Figure 00000002
клиент, получив открытый ключ от сервера, так же проверяет подлинность секретным сертификатом.
Figure 00000002
клиент зашифровывает с помощью открытого ключа сервера, вектор инициализации блочного шифра, который будет использоваться для канала "клиент-сервер" и отправляет серверу.
Figure 00000002
сервер, получив зашифрованные данные вектора инициализации, расшифровывает данные вектора инициализации блочного шифра и зашифровывает открытым ключом клиента собственный вектор инициализации для канала "сервер-клиент" и отправляет его клиенту.
Figure 00000002
получив вектор инициализации, клиент переходит в режим обмена, и пытается выполнить открытие сессии.
КРАТКОЕ ОПИСАНИЕ ЧЕРТЕЖЕЙ
Фиг. 1 - схема передачи сигналов сеанса связи от клиента к серверу;
Фиг. 2 - примерная структура протокола;
Фиг. 3 - формат универсального значения пакета в протоколе;
Фиг. 4 - формат заголовка сообщения;
Фиг. 5 - схема устройства клиента и\или сервера для реализации технического решения.
ПОДРОБНОЕ ОПИСАНИЕ ТЕХНИЧЕСКОГО РЕШЕНИЯ
Данное техническое решение в различных своих вариантах осуществления может быть выполнено в виде способа, в виде системы или машиночитаемого носителя, содержащего инструкции для выполнения вышеупомянутого способа.
В некоторых вариантах реализации техническое решение может быть реализовано в виде распределенной компьютерной системы.
В данном техническом решении под системой подразумевается компьютерная система, ЭВМ (электронно-вычислительная машина), ЧПУ (числовое программное управление), ПЛК (программируемый логический контроллер), компьютеризированные системы управления и любые другие устройства, способные выполнять заданную, четко определенную последовательность операций (действий, инструкций).
Под устройством обработки команд подразумевается электронный блок либо интегральная схема (микропроцессор, процессор, микроконтроллер), исполняющая машинные (машиночитаемые) инструкции (программы).
Устройство обработки команд считывает и выполняет машинные инструкции (программы) с одного или более устройства хранения данных. В роли устройства хранения данных могут выступать, но, не ограничиваясь, жесткие диски (HDD), флеш-память, ПЗУ (постоянное запоминающее устройство), ОЗУ, твердотельные накопители (SSD), оптические носители данных (CD-R, DVD-R, BlueRay Disk и т.п.).
Программа - последовательность инструкций, предназначенных для исполнения устройством управления вычислительной машины или устройством обработки команд.
Ниже будут рассмотрены некоторые термины, которые в дальнейшем будут использоваться при описании технического решения.
Протокол передачи данных - набор соглашений интерфейса логического уровня, которые определяют обмен данными между различными программами. Эти соглашения задают единообразный способ передачи сообщений и обработки ошибок при взаимодействии программного обеспечения разнесенной в пространстве аппаратуры, соединенной тем или иным интерфейсом.
Клиент-сервер (англ. Client-server) - вычислительная или сетевая архитектура, в которой задания или сетевая нагрузка распределены между поставщиками услуг, называемыми серверами, и заказчиками услуг, называемыми клиентами. Фактически клиент и сервер - это программное обеспечение. Обычно эти программы расположены на разных вычислительных машинах и взаимодействуют между собой через компьютерную сеть посредством сетевых протоколов, но их можно расположить также и на одной машине.
Программы-сервера, ожидают от клиентских программ запросы и предоставляют им свои ресурсы в виде данных (например, загрузка файлов посредством HTTP, FTP, BitTorrent, потоковое мультимедиа или работа с базами данных) или сервисных функций (например, работа с электронной почтой, общение посредством систем мгновенного обмена сообщениями, просмотр web-страниц во всемирной паутине). Поскольку одна программа-сервер может выполнять запросы от множества программ-клиентов, ей может потребоваться высокопроизводительная вычислительная машина. Из-за особой роли этой машины в сети, специфики ее оборудования и программного обеспечения ее так же называют сервером.
Сетевой протокол - набор правил и действий (очередности действий), позволяющий осуществлять соединение и обмен данными между двумя и более включенными в сеть устройствами.
Разные протоколы зачастую описывают лишь разные стороны одного типа связи. Названия «протокол» и «стек протоколов» также указывают на программное обеспечение, которым реализуется протокол.
Канал управления - каналом управления называется сущность, которая позволяет принимать значение, из внешнее среды. Устройство, получившее значение на канал управления, выполняет действия в соответствии с программой. Также, канал управления может проецировать собственное значение на, связанную с каналом управления, глобальную переменную. Максимально, каждый канал управления, может проецировать значение на 16 глобальных переменных одновременно.
Канал обратной связи - каналом обратной связи называется сущность, которая позволяет передавать внутреннее значение устройства, во внешнею среду. Так же, канал обратной связи может проецировать на себя значение из, связанной с каналом обратной связи, глобальной переменной. Канал обратной связи, может являться, владельцем одной глобальной переменной. Таким образом, в случае если какой либо участник сети захочет получить текущее значение глобальной переменной, владелец глобальной переменной должен сообщить текущее значение переменной. В случае если в сети существует несколько владельцев одной переменно, значение переменной считается неопределенным.
Глобальная переменная - абстрактное значение, которое может быть связано с каналами управления и обратной связи. Основное предназначение, связывание разных устройств для работы, как в централизованных, так и децентрализованных сегментах сети. Любое изменение значения глобальной переменной становится известным всем участникам сети, в случае если участник сети работает с глобальными переменными.
Данное техническое решение обеспечивает улучшение гибкости подключения различных устройств в сети и расширение функциональных возможностей, требуемых от среды передачи данных при построении и дальнейшем использовании систем автоматизации различного вида, а именно: проводить поиск устройств управления, создавать соглашения об установлении соединения, передача настроек, осуществлять передачу управляющих сигналов, передачу потоков, контроль за ошибками, автоматическое конфигурировании устройств, защищенную передачу сигналов между участниками сети.
Согласно предлагаемому техническому решению, способ построения вычислительной сети для связи между множеством устройств, содержит этапы, на которых:
Определяют режим функционирования сети как централизованный либо децентрализованный.
В случае определения режима функционирования сети как централизованного:
Figure 00000002
генерируют на устройстве клиента запрос серверу на возможность соединения и направляют его на сервер;
Figure 00000002
получают в ответ на упомянутый запрос условия подключения устройства пользователя к серверу;
Figure 00000002
отправляют данные для подключения к серверу от устройства пользователя;
Figure 00000002
инициируют на устройстве пользователя формирование запроса подписки на каналы управления и направляют его на сервер;
Figure 00000002
сервер в ответ на полученный запрос инициирует подписку устройства пользователя на упомянутые каналы управления и направляет уведомление со списком упомянутых каналов на устройство пользователя;
Figure 00000002
выполняют соединение устройства пользователя с сервером по соответствующим каналам управления;
В случае определения режима функционирования сети как децентрализованного:
Figure 00000002
выполняют поиск участников сети;
Figure 00000002
устанавливают локальный идентификатор для каждого участника сети;
Figure 00000002
производят получение информации о каждом участнике сети;
Figure 00000002
выполняют опрос каналов управления по каждому участнику сети, каналов обратной связи и связанных с каналами глобальных переменных, на основе полученной информации осуществляют создание списка глобальных переменных, каналов управления и обратной связи;
Figure 00000002
выполняют связывание каналов управления таким образом, что при изменении значения канала управления все связанные с каналом управления глобальные переменные принимают значения канала управления;
Figure 00000002
осуществляют связывание глобальной переменной и канала обратной связи для настройки канала обратной связи так, что упомянутый канал обратной связи принимает значение связанной с ним глобальной переменной, причем в случае изменения значения упомянутой глобальной переменной, участники децентрализованной сети получают значение изменения глобальной переменной;
Figure 00000002
переводят устройства участников сети в рабочий режим, при котором каждое из устройств ожидает изменения глобальных переменных или изменения собственных каналов, с последующей отправкой в сеть изменившихся значений глобальной переменной связанной с каналом управления.
В одном из возможных вариантов реализации техническое решение представляет собой сетевой протокол, предназначенный для создания коммуникаций между программами и устройствами автоматизации, облачными шлюзами и программами для настройки и передачи информации между участниками сети, объединенных данным протоколом. Протокол использует гибридную сетевую архитектуру, в которой участники сети распределены на группы:
Figure 00000002
Инструменты разработчика
Figure 00000002
Сервер-контроллер
Figure 00000002
Панель управления
Figure 00000002
Исполнительное устройство
Figure 00000002
Облачный шлюз
Взаимодействие между устройствами, в зависимости от способа соединения устройств, может осуществляться двумя способами:
Figure 00000002
В режиме прямого соединения. Связывание каналов управления и каналов обратной связи через прямую передачу данных. Данный способ предполагает отправку значения на канал управления и получение значения от канала обратной связи, в случае изменения значения канала обратной связи. В режиме прямого соединения используется авторизация и шифрация трафика. Тем самым данный тип соединения лучше всего использовать в общественных сетях. Данный подход требует наличия центрального сервера-контроллера.
Figure 00000002
В режиме широковещательного соединения. Связывание каналов управления и каналов обратной связи осуществляется через глобальные переменные. Данный способ позволяет проецировать поступившее значение на канал управления в глобальную переменную. А так же проецировать значение глобальной переменной на канал обратной связи. Данный тип соединения лучше всего использовать в закрытых сетях и шинах, кроме того подобный способ передачи данных позволяет создавать одноранговые участки сети в которых нет центрального управления.
Гибридная архитектура протокола позволяет объединить централизованные и децентрализованные участки сети и передавать между ними сигналы, в виде глобальных переменных.
Инструменты разработчика - это программы, использующие протокол, с помощью которых производится настройка, отладка и обслуживание участников сети, объединенных протоколом. Инструмент разработчика, в рамках протокола может:
Figure 00000015
Подключатся следующим группам участников сети:
Figure 00000016
Сервера-контроллеры.
Figure 00000016
Панели управления.
Figure 00000016
Исполнительные устройства.
Figure 00000016
Облачные шлюзы.
Figure 00000015
Отправлять запросы поиска участников сети.
Figure 00000015
Запрашивать список каналов управления и обратной связи.
Figure 00000015
Подписываться на каналы управления и обратной связи.
Figure 00000015
Получать, отправлять и изменять текущее состояние связей между глобальными переменными и каналами управления и обратной связи.
Figure 00000015
Отправлять значения на каналы управления.
Figure 00000015
Получать и отправлять значения каналов обратной связи.
Figure 00000015
Получать и отправлять значения системных настроек.
Figure 00000015
Получать и передавать данные проектов.
Сервер-контроллер - это программа или устройство использующее протокол. Сервер-контроллер предназначен для выполнения программ пользователя, сбором и хранением информации от других устройств автоматизации и приемом управляющих сигналов от панелей управления. Сервер-контроллер, в рамках протокола может:
Figure 00000015
Подключатся следующим группам участников сети:
Figure 00000016
Сервера-контроллеры.
Figure 00000016
Исполнительные устройства.
Figure 00000016
Облачные шлюзы.
Figure 00000015
Ожидать подключения от следующих групп участников сети:
Figure 00000016
Инструменты разработчика.
Figure 00000016
Сервера-контроллеры.
Figure 00000016
Панели управления.
Figure 00000015
Отправлять запросы поиска участников сети.
Figure 00000015
Отвечать на запросы поиска участников сети.
Figure 00000015
Запрашивать список каналов управления и обратной связи.
Figure 00000015
Отправлять собственный список каналов управления и обратной связи.
Figure 00000015
Подписываться на каналы управления и обратной связи.
Figure 00000015
Отправлять значения на каналы управления.
Figure 00000015
Получать значения на собственные каналы управления.
Figure 00000015
Получать и отправлять значения каналов обратной связи.
Figure 00000015
Получать, отправлять и изменять, собственные значения, системных настроек.
Figure 00000015
Получать, отправлять и изменять, собственные проектные данные.
Figure 00000017
Получать, отправлять и изменять текущее состояние связей между глобальными переменными и каналами управления и обратной связи.
Панель управления - это программа или устройство использующее протокол. Панель управления, предназначена для отображения текущего состояния и управления объектом автоматизации. Панель управления, в рамках протокола может:
Figure 00000018
Подключатся следующим группам участников сети:
Figure 00000016
Сервера-контроллеры.
Figure 00000016
Исполнительные устройства.
Figure 00000016
Облачные шлюзы.
Figure 00000018
Ожидать подключения от следующих групп участников сети:
Figure 00000016
Инструменты разработчика.
Figure 00000018
Отправлять запросы поиска участников сети.
Figure 00000018
Отвечать на запросы поиска участников сети.
Figure 00000018
Запрашивать список каналов управления и обратной связи.
Figure 00000018
Отправлять собственный список каналов управления и обратной связи.
Figure 00000018
Подписываться на каналы управления и обратной связи.
Figure 00000018
Отправлять значения на каналы управления.
Figure 00000018
Получать значения на собственные каналы управления.
Figure 00000018
Получать и отправлять значения каналов обратной связи.
Figure 00000018
Получать, отправлять и изменять, собственные значения, системных настроек.
Figure 00000018
Получать, отправлять и изменять, собственные проектные данные.
Figure 00000018
Получать, отправлять и изменять текущее состояние связей между глобальными переменными и каналами управления и обратной связи.
Исполнительное устройство - это программа или устройство использующее протокол. Исполнительное устройство является законченным конечным автоматом, который выполняет команды от других участников сети, объединенных протоколом, в соответствии с собственной жестко прописанной программой. Исполнительные устройства работают как в централизованном, так и децентрализованном режиме. В децентрализованном режиме используется передача сигналов с помощью глобальных переменных. Исполнительное устройство, в рамках протокола может:
Figure 00000018
В централизованном режиме, ожидать подключения от следующих групп участников сети:
Figure 00000016
Инструменты разработчика.
Figure 00000016
Сервера-контроллеры.
Figure 00000016
Панели управления.
Figure 00000018
Отвечать на запросы поиска участников сети.
Figure 00000018
Отправлять список каналов управления и обратной связи.
Figure 00000018
Отправлять значения каналов обратной связи.
Figure 00000018
Получать значения на собственные каналы управления.
Figure 00000018
Получать, отправлять и изменять, собственные значения, системных настроек.
Figure 00000018
Получать, отправлять и изменять текущее состояние связей между глобальными переменными и каналами управления и обратной связи.
Облачный шлюз - это программа использующее протокол. Облачный шлюз предназначен для связывания панелей управления и сервер-клиентов, сбора и обработки информации с сервер-контроллера. Облачный шлюз, в рамках протокола может:
Figure 00000018
Ожидать подключения от следующих групп участников сети:
Figure 00000016
Инструменты разработчика.
Figure 00000016
Сервера-контроллеры.
Figure 00000016
Панели управления.
Figure 00000018
Запрашивать список каналов управления и обратной связи.
Figure 00000018
Подписываться на каналы управления и обратной связи.
Figure 00000018
Отправлять значения на каналы управления.
Figure 00000018
Получать значения на собственные каналы управления.
Figure 00000018
Получать и отправлять значения каналов обратной связи.
Figure 00000018
Получать, отправлять и изменять, собственные значения, системных настроек.
Figure 00000018
Получать, отправлять и изменять, собственные проектные данные.
Figure 00000018
Получать, отправлять и изменять текущее состояние связей между глобальными переменными и каналами управления и обратной связи.
Протокол создан для решения основных проблем объектов автоматизации таких как:
Figure 00000002
Поиск участников сети.
Figure 00000002
Установка соединения и согласование параметров соединения между участниками сети.
Figure 00000002
Установка и получение настроечной информации об участниках сети.
Figure 00000002
Передача управляющих сигналов и потоков между участниками сети.
Figure 00000002
Контроль целостности передаваемых данных.
Figure 00000002
Шифрование передаваемых данных.
На Фиг. 1 приведена схема передачи сигналов сеанса связи от клиента к серверу.
Протокол может работать в двух режимах: централизованном и децентрализованном. Рассмотрим подробнее работу протокола в указанных режимах.
Централизованный режим. Данный режим позволяет управлять устройствами как в локальных сетях так и в глобальных. В этом режиме клиент должен выполнить следующие шаги:
1. Поиск участников сети. Данный шаг является опциональным.
2. Запрос возможности соединения.
3. Запрос на открытие сессии.
4. Запрос информации о сервере. Данный шаг является опциональным и предназначен для получения информации о сервере к которому подключен клиент.
5. Запрос количества каналов управления на сервере. Данный шаг является опциональным и предназначен для получения информации о количестве каналов управления на сервере к которому подключен клиент.
6. Запрос количества каналов обратной связи на сервере. Данный шаг является опциональным и предназначен для получения информации о количестве каналов обратной связи на сервере к которому подключен клиент.
7. Подписка на интересующие каналы обратной связи.
8. Отправка значения на канал управления.
9. Получение изменения значения канала обратной связи.
Децентрализованный режим. В этом режиме клиент должен выполнить следующие шаги:
1. Поиск участников сети. Данный шаг является опциональным.
2. Запрос информации о сервере. Данный шаг является опциональным и предназначен для получения информации о сервере к которому подключен клиент.
3. Установка локального идентификатора. Данный шаг является опциональным и предназначен для указания участнику сети его локальный идентификатор.
4. Связывание списка глобальных переменных и канала управления. Данный шаг является опциональным и предназначен для настройки канала управления таким образом, что при изменении значения канала все связанные с каналом управления глобальные переменные принимали бы значения канала управления.
5. Связывание глобальной переменной и канала обратной связи. Данный шаг является опциональным и предназначен для настройки канала обратной связи таким образом, что канал обратной связи принимал бы значение связанной с ним глобальной переменной.
6. Запрос количества каналов управления на сервере. Данный шаг является опциональным и предназначен для получения информации о количестве каналов управления на сервере к которому подключен клиент.
7. Запрос количества каналов обратной связи на сервере. Данный шаг является опциональным и предназначен для получения информации о количестве каналов обратной связи на сервере к которому подключен клиент.
8. Изменение значения глобальной переменной.
9. Получение значение изменения глобальной переменной.
Поиск участников сети. Данный тип запроса предназначен для поиска всех участников сети объединенных протоколом. В самом запросе указывается список флагов указывающих на то, какой группе участников сети следует откликнуться, например, искать только исполнительные устройства. Каждый участник сети должен ответить на запрос поиска, в случае получения, при этом участник сети состоит в запрашиваемой группе. Ответ содержит группу клиента, уникальный идентификатор устройства и локальный идентификатор устройства. Полученная информация используется для получения дополнительной информации и настройки участника сети.
Запрос возможности соединения. С помощью данного запроса клиент проверяет возможность подключения к серверу. В случае если клиент не находится в черном списке и на сервере есть свободное место. Сервер присылает параметры подключения к сервере, такие как нужна ли авторизация, параметры шифрования.
Запрос открытия сессии. После того как клиент получит от сервера подтверждение возможности соединения, отправляется запрос на открытие сессии. Передаются параметры доступа к серверу - хеш имени и пароля. В случае если параметры доступа соответствуют данными сервера, присылается подтверждение открытия сессии. Теперь клиент может посылать и принимать информацию с сервера.
Протокол представляет собой последовательность пакетов (П), каждый пакет в свою очередь состоит из заголовка (ЗП) и данных пакета (ДП). Данные пакета, в соответствии с заголовком пакета, могут быть зашифрованы и содержать контрольную сумму (КС). Данные пакета содержит сообщение, который в свою очередь состоит из заголовка (ЗС) и данных сообщения (ДС). На Фиг. 2 изображена примерная структура протокола.
Формат универсального значения пакета приведен на Фиг. 3.
На Фиг. 4 приведен формат заголовка сообщения.
В Таблицах 1-4 приведены идентификаторы, использующиеся в протоколе и необходимые для установления типа соединения (Таблица 1), типа протокола (Таблица 2), способа шифрования (Таблица 3), типа сообщения (Таблица 4).
Figure 00000019
Figure 00000020
Figure 00000021
Создание пакетов должно соответствовать следующим правилам:
Figure 00000002
Шифрование данных пакета производится до вычисления контрольной суммы.
Figure 00000002
Контрольная сумма вычисляется с помощью алгоритма CRC-16-IBM.
Получение пакетов. Получение пакетов должно соответствовать следующим правилам:
Figure 00000002
Начало пакета определяется маркером начала пакета.
Figure 00000002
Любой поврежденный пакет приводит к закрытию соединения.
Figure 00000002
Если заголовок пакета указывает на наличие контрольной суммы, производится вычисление контрольной суммы полученного пакета, в случае если вычисленная контрольная сумма не равна содержащийся в пакете, пакет считается поврежденным.
Figure 00000002
Если не удалось расшифровать пакет, такой пакет должен быть пропущен.
Figure 00000022
Figure 00000023
Создание и обработка сообщений: данные сообщения, их длинна, содержание и структура зависит от идентификатора сообщения, которые определяются заголовком сообщения. При создании сообщения соблюдаются следующие правила:
Figure 00000002
При создании сообщения с типом запрос, флаг ошибки должен быть всегда сброшен в 0.
Figure 00000002
В случае возникновения ошибки при выполнении запроса, всегда создается сообщение с типом ответ, который содержит код ошибки.
Figure 00000002
При создании сообщения с типом ответ, в пакет должен быть включен идентификатор транзакции запроса на который производится ответ.
При обработке сообщений соблюдаются следующие правила:
Figure 00000002
Любое сообщение считающееся поврежденным, не обрабатывается.
Figure 00000002
В случае если идентификатор сообщения не известен, сообщение считается поврежденным.
Figure 00000002
При получении сообщения с типом запрос и значением флага ошибки равным 1, сообщение считается поврежденным.
Figure 00000002
На каждое сообщение с типом запрос, нужно создавать сообщение с типом ответ, сообщение должно содержать идентификатор сообщения и транзакции запроса.
Рассмотрим основные типы сообщений:
Возможность соединения (0×00). Сообщение предназначено для определения возможности соединения клиента с сервером. В случае если такая возможность присутствует, клиент получает подтверждение возможности соединения, в противном случает присылается код ошибки.
Открытие сессии (0×01). Сообщение предназначено для открытия сессии клиентом, на сервере. Во время запроса клиент реквизиты подключения. В случае если сервер принимает реквизиты подключения и на сервере есть свободное место для клиента, клиент получает подтверждение соединения. В противном случае, клиент получает код ошибки.
Проверка соединения (0×02). Сообщение предназначено для проверки наличия соединения между сервером и клиентом. Сообщение проверки соединения отправляется каждые 15 секунд. В случае если сервер не получит ответ, от клиента, на запрос, сервер отключает клиента.
Сообщение: поиск устройств (0×03). Сообщение предназначено для поиска устройств, внутри локальной сети.
Сообщение: получение списка каналов обратной связи (0×20). Сообщение предназначено для получения списка всех каналов обратной связи на устройстве с их идентификаторами, именами и текущими значениями.
Сообщение: подписка на каналы обратной связи (0×21). Сообщение предназначено для подписки на каналы обратной связи, значения которых нужно получать при изменении.
Сообщение: отписка от каналов обратной связи (0×22). Сообщении предназначено для отписки от каналов обратной связи, значения которых не нужно получать по мере изменения.
Сообщение: изменение значения канала обратной связи (0×23). Данное сообщение генерируется в случае если клиент подписался на канал сервера.
Сообщение: связывание канала обратной связи глобальной переменной. (0×24). Сообщение предназначено для сообщения серверу, что нужно установить логическую связь между каналом обратной связи и глобальной переменной.
Сообщение: получение списка каналов управления (0×30). Сообщение предназначено для получения списка всех каналов управления на устройстве с их идентификаторами и именами.
Сообщение: подписка на каналы управления (0×31). Сообщение предназначено для сообщения серверу информации о всех каналах, которые клиент собирается использовать.
Сообщение: отписка от каналов управления (0×32). Сообщении предназначено для отписки от каналов управления.
Сообщение: изменение значения канала управления (0×33). Сообщение предназначено для сообщения серверу об изменении значения канала управления.
Сообщение: связывание канала управления и списка глобальных переменных. (0×34). Сообщение предназначено для сообщения серверу, что нужно установить логическую связь между каналом управления и списком глобальных переменных.
Сообщение: получение списка каналов обратной связи, имеющих архивные данные. (0×40). Сообщение предназначено для получения списка всех каналов обратной связи, которые имеют архивные данные.
Сообщение: подписка на архивные данные канала обратной связи (0×41). Сообщение предназначено для сообщения серверу, запроса на получение архивных данных, указанного канала обратной связи, в указанном временном диапазоне.
Сообщение: отписка от архивных данных канала обратной связи (0×42). Сообщение предназначено для информирования сервера, о том что больше не нужно получать архивные данные канала обратной связи.
Сообщение: архивные данные канала обратной связи (0×43). Сообщение предназначено для передачи архивных данных канала обратной связи.
Сообщение: установка значения списка глобальных переменных (0×60). Сообщение предназначено изменения значения списка глобальных переменных.
Сообщение: получение значения списка глобальных переменных (0×61). Сообщение предназначено для получения текущего значения глобальной переменной, значение может быть получено, только если в сети присутствует владелец переменной. Ниже (в качестве примера) представлена структура данного сообщения.
Тип сообщения запрос:
Figure 00000024
Тип сообщения ответ:
Figure 00000025
Figure 00000026
В таблицах 5-6 представлены кодировки и описание ошибок (Таблица 5) и типы массивов данных (Таблица 6).
Figure 00000027
Figure 00000028
В практическом смысле - использование данного протокола, позволяет, например, объединять устройства различных брендов в единое умное пространство. При изменении состояния одного из устройств, шина данных посылает оповещение об изменении состояния устройства на управляющую панель и возникает необходимость среагировать на это оповещение, воздействием на другое устройство. Если устройства относятся к разным брендам, то они не совместимы и подобная логика работы будет недоступна. Например, при включении света в ночное время суток, система должна автоматически закрывать шторы на окнах. За управление светом отвечает один модуль, а за управления моторизированными шторами отвечает другой модуль. Суть межмодульного взаимодействия состоит в том, что модуль, получая от пользователя определенную команду, должен оповещать систему и остальные модули о своем состоянии и всех изменениях в работе устройства. При приеме сообщения от другого модуля, модуль управления светом должен принимать решение об изменении состоянии своего устройства, если это заложено в концепцию работы объекта автоматизации.
Система построения вычислительной сети для связи между множеством устройств должна иметь в своем составе:
Figure 00000002
сервер, имеющий в составе: по крайней мере, одно устройство хранения данных, одно устройство обработки команд, и выполненный с возможностью: в централизованном режиме функционирования сети - принимать запросы на возможность соединения, данные для подключения, запросы на подписку каналов управления и обратной связи; посылать условия подключения к нему, подтверждения подключения к нему, список каналов управления и обратной связи, команды для устройств клиента; в децентрализованном режиме функционирования сети - участвовать в поиске участников сети, принимать локальный идентификатор, передавать информацию о себе как об участнике сети, участвовать в опросе, в ходе которого формируется список глобальных переменных, каналов управления и обратной связи, принимать значения глобальных переменных;
Figure 00000002
устройство клиента, имеющее в составе: по крайней мере, одно устройство хранения данных, одно устройство обработки команд, и выполненное с возможностью: в централизованном режиме функционирования сети - посылать запросы серверу на возможность соединения, данные для подключения к серверу, запросы по подписке на каналы управления и обратной связи; подключаться к серверу; принимать условия подключения к серверу, подтверждения подключения к серверу, список каналов управления и обратной связи, команды от сервера и пользователя; в децентрализованном режиме функционирования сети - участвовать в поиске участников сети, принимать локальный идентификатор, передавать информацию о себе как об участнике сети, участвовать в опросе, в ходе которого формируется список глобальных переменных, каналов управления и обратной связи, принимать значения глобальных переменных.
На Фиг. 5 изображена примерная конфигурация сервера\или устройства клиента для реализации описываемого технического решения. Устройство обработки данных 100 может быть сконфигурировано как клиент, сервер, мобильное устройство или любое другое вычислительное устройство, которое взаимодействует с данными в системе совместной работы, основанной на сети. В самой базовой конфигурации устройство обработки данных 100, как правило, включает в себя, по меньшей мере, один процессор 101 и устройство хранения данных 102. В зависимости от точной конфигурации и типа вычислительного устройства системная память 102 может быть энергозависимой (например, оперативное запоминающее устройство (ОЗУ, RAM)), энергонезависимой (например, постоянное запоминающее устройство (ПЗУ, ROM)) или некоторой их комбинацией. Устройство хранения данных 102, как правило, включает в себя одну или более прикладных программ 103 и может включать в себя данные 104 программ. Настоящее техническое решение как способ, описанное в деталях выше, реализовано в прикладных программах 103.
Устройство обработки данных 100 может иметь дополнительные особенности или функциональные возможности. Например, устройство обработки данных 100 может также включать в себя дополнительные устройства хранения данных (съемные и несъемные), такие как, например, магнитные диски, оптические диски или лента. Такие дополнительные хранилища проиллюстрированы на Фиг. 5 посредством несъемного хранилища 107 и съемного хранилища 108. Компьютерные носители данных могут включать в себя энергозависимые и энергонезависимые, съемные и несъемные носители, реализованные любым способом или при помощи любой технологии для хранения информации. Устройство хранения данных 102, несъемное хранилище 107 и съемное хранилище 108 являются примерами компьютерных носителей данных. Компьютерные носители данных включают в себя, но не в ограничительном смысле, оперативное запоминающее устройство (ОЗУ), постоянное запоминающее устройство (ПЗУ), электрически стираемое программируемое ПЗУ (EEPROM), флэш-память или память, выполненную по другой технологии, ПЗУ на компакт-диске (CD-ROM), универсальные цифровые диски (DVD) или другие оптические запоминающие устройства, магнитные кассеты, магнитные ленты, хранилища на магнитных дисках или другие магнитные запоминающие устройства, или любую другую среду, которая может быть использована для хранения желаемой информации и к которой может получить доступ устройство обработки данных 100. Любой такой компьютерный носитель данных может быть частью устройства 100. Устройство обработки данных 100 может также включать в себя устройство(а) 105 ввода, такие как клавиатура, мышь, перо, устройство с речевым вводом, устройство сенсорного ввода, и так далее. Устройство(а) 106 вывода, такие как дисплей, динамики, принтер и тому подобное, также могут быть включены в состав устройства.
Устройство обработки данных 100 содержит коммуникационные соединения, которые позволяют устройству связываться с другими вычислительными устройствами, например по сети. Сети включают в себя локальные сети и глобальные сети наряду с другими большими масштабируемыми сетями, включая, но не в ограничительном смысле, корпоративные сети и экстрасети. Коммуникационное соединение является примером коммуникационной среды. Как правило, коммуникационная среда может быть реализована при помощи машиночитаемых инструкций, структур данных, программных модулей или других данных в модулированном информационном сигнале, таком как несущая волна, или в другом транспортном механизме, и включает в себя любую среду доставки информации. Термин «модулированный информационный сигнал» означает сигнал, одна или более из его характеристик изменены или установлены таким образом, чтобы закодировать информацию в этом сигнале. Для примера, но без ограничения, коммуникационные среды включают в себя проводные среды, такие как проводная сеть или прямое проводное соединение, и беспроводные среды, такие как акустические, радиочастотные, инфракрасные и другие беспроводные среды. Термин «машиночитаемый носитель», как употребляется в этом документе, включает в себя как носители данных, так и коммуникационные среды.
Специалисту в данной области очевидно, что конкретные варианты осуществления способа и системы построения вычислительной сети для связи между множеством устройств были описаны здесь в целях иллюстрации, допустимы различные модификации, не выходящие за рамки и сущности объема технического решения.

Claims (46)

1. Способ построения вычислительной сети для связи между множеством устройств, содержащий этапы, на которых:
определяют режим функционирования сети как централизованный либо децентрализованный, причем в централизованном режиме функционирования сети участники сети подсоединены к серверу, который представляет собой единый центр управления участниками сети, а в децентрализованном режиме функционирования сети участники сети не имеют единого центра управления;
в случае определения режима функционирования сети как централизованного:
генерируют на устройстве пользователя запрос серверу на возможность соединения и направляют его на сервер;
получают в ответ на упомянутый запрос условия подключения устройства пользователя к серверу;
отправляют данные для подключения к серверу от устройства пользователя;
инициируют на устройстве пользователя формирование запроса подписки на каналы управления и направляют его на сервер;
сервер, в ответ на полученный запрос, инициирует подписку устройства пользователя на упомянутые каналы управления и направляет уведомление со списком упомянутых каналов управления на устройство пользователя;
выполняют соединение устройства пользователя с сервером по соответствующим каналам управления, причем каждый из каналов управления позволяет устройству пользователя получать значения канала управления, в соответствии с которыми устройство пользователя осуществляет действия;
в случае определения режима функционирования сети как децентрализованного:
выполняют поиск участников сети;
устанавливают локальный идентификатор для каждого участника сети;
производят получение информации о каждом участнике сети;
выполняют опрос каналов управления по каждому участнику сети, каналов обратной связи и связанных с каналами глобальных переменных, на основе полученной информации осуществляют создание списка глобальных переменных, каналов управления и обратной связи;
выполняют связывание каналов управления таким образом, что при изменении значения канала управления все связанные с каналом управления глобальные переменные принимают значения канала управления, причем глобальные переменные обеспечивают связь устройств пользователя для работы как в централизованных, так и децентрализованных режимах функционирования сети;
осуществляют связывание глобальной переменной и канала обратной связи для настройки канала обратной связи так, что упомянутый канал обратной связи принимает значение связанной с ним глобальной переменной, причем в случае изменения значения упомянутой глобальной переменной, участники децентрализованной сети получают значение изменения глобальной переменной;
переводят устройства участников сети в рабочий режим, при котором каждое из устройств ожидает изменения глобальных переменных или изменения собственных каналов, с последующей отправкой в сеть изменившихся значений глобальной переменной, связанной с каналом управления.
2. Способ по п. 1, характеризующийся тем, что подключение устройств в сети осуществляется с помощью проводной и/или беспроводной связи путем отправки сообщения открытия сессии с передачей реквизитов подключения от устройства пользователя к серверу.
3. Способ по п. 1, характеризующийся тем, что условия подключения к сети от сервера в централизованном режиме функционирования сети включают в себя необходимость шифрования и/или авторизации.
4. Способ по п. 1, характеризующийся тем, что данные для подключения к серверу в централизованном режиме функционирования сети включают в себя хеш-авторизацию и информацию об устройстве.
5. Способ по п. 1, характеризующийся тем, что при централизованном режиме функционирования сети устройство пользователя запрашивает у сервера список каналов управления, список каналов обратной связи, после чего происходит подписка на интересующие каналы управления и обратной связи, причем в случае если устройство пользователя меняет значение канала управления, сервер принимает изменившееся значение, в случае если значение обратной связи, на которое подписалось устройство пользователя, меняется на сервере, устройство пользователя получает изменившееся значение.
6. Способ по п. 1, характеризующийся тем, что определение режима функционирования сети устанавливается заранее в зависимости от используемого сетевого оборудования на физическом уровне.
7. Способ по п. 1, характеризующийся тем, что сеть поделена на участки с централизованным режимом функционирования сети и децентрализованным режимом функционирования сети, и взаимодействие между упомянутыми участками происходит с помощью списка глобальных переменных.
8. Способ по п. 1, характеризующийся тем, что при построении вычислительной сети для связи между множеством устройств используется алгоритм шифрования, при котором:
устройство пользователя посылает запрос на открытие соединения и посылает свой открытый ключ, который подписан секретным сертификатом (этот сертификат является общим для устройства пользователя и сервера),
сервер, получив открытый ключ, проверяет его подлинность секретным сертификатом, убедившись, что полученный ключ подлинный, сервер передает свой открытый ключ устройству пользователя,
устройство пользователя, получив открытый ключ от сервера, также проверяет подлинность секретным сертификатом,
устройство пользователя зашифровывает с помощью открытого ключа сервера вектор инициализации блочного шифра, который будет использоваться для канала "клиент-сервер", и отправляет серверу,
сервер, получив зашифрованные данные вектора инициализации, расшифровывает данные вектора инициализации блочного шифра и зашифровывает открытым ключом устройства пользователя собственный вектор инициализации для канала "сервер-клиент" и отправляет его устройству пользователя,
получив вектор инициализации, устройство пользователя переходит в режим обмена и пытается выполнить открытие сессии.
9. Система построения вычислительной сети для связи между множеством устройств пользователей, содержащая:
сервер, имеющий в составе по крайней мере одно устройство хранения данных, одно устройство обработки команд и выполненный с возможностью в централизованном режиме функционирования сети принимать запросы на возможность соединения, данные для подключения, запросы на подписку каналов управления и обратной связи; посылать условия подключения к нему, подтверждения подключения к нему, список каналов управления и обратной связи, команды для устройств пользователя; в децентрализованном режиме функционирования сети участвовать в поиске участников сети, принимать локальный идентификатор, передавать информацию о себе как об участнике сети, участвовать в опросе, в ходе которого формируется список глобальных переменных, каналов управления и обратной связи, принимать значения глобальных переменных, причем в централизованном режиме функционирования сети участники сети подсоединены к серверу, который представляет собой единый центр управления участниками сети, а в децентрализованном режиме функционирования сети участники сети не имеют единого центра управления, причем каждый из каналов управления позволяет устройству пользователя получать значения канала управления, в соответствии с которыми устройство пользователя осуществляет действия, и при этом глобальные переменные обеспечивают связь устройств пользователя для работы как в централизованных, так и децентрализованных режимах функционирования сети;
устройство пользователя, имеющее в составе по крайней мере,одно устройство хранения данных, одно устройство обработки команд и выполненное с возможностью в централизованном режиме функционирования сети посылать запросы серверу на возможность соединения, данные для подключения к серверу, запросы по подписке на каналы управления и обратной связи; подключаться к серверу; принимать условия подключения к серверу, подтверждения подключения к серверу, список каналов управления и обратной связи, команды от сервера и пользователя; в децентрализованном режиме функционирования сети участвовать в поиске участников сети, принимать локальный идентификатор, передавать информацию о себе как об участнике сети, участвовать в опросе, в ходе которого формируется список глобальных переменных, каналов управления и обратной связи, принимать значения глобальных переменных.
10. Система по п. 9, характеризующаяся тем, что подключение устройств в сети осуществляется с помощью проводной и/или беспроводной связи путем отправки сообщения открытия сессии с передачей реквизитов подключения от устройства пользователя к серверу.
11. Система по п. 9, характеризующаяся тем, что условия подключения к сети от сервера в централизованном режиме функционирования сети включают в себя необходимость шифрования и/или авторизации.
12. Система по п. 9, характеризующаяся тем, что данные для подключения к серверу в централизованном режиме функционирования сети включают в себя хеш-авторизацию и информацию об устройстве.
13. Система по п. 9, характеризующаяся тем, что при централизованном режиме функционирования сети устройство пользователя запрашивает у сервера список каналов управления, список каналов обратной связи, после чего происходит подписка на интересующие каналы управления и обратной связи, причем в случае если устройство пользователя меняет значение канала управления, сервер принимает изменившееся значение, в случае если значение обратной связи, на которое подписалось устройство пользователя, меняется на сервере, устройство пользователя получает изменившееся значение.
14. Система по п. 9, характеризующаяся тем, что определение режима функционирования сети устанавливается заранее в зависимости от используемого сетевого оборудования на физическом уровне.
15. Система по п. 9, характеризующаяся тем, что сеть поделена на участки с централизованным режимом функционирования сети и децентрализованным режимом функционирования сети, и взаимодействие между упомянутыми участками происходит с помощью списка глобальных переменных.
16. Система по п. 9, характеризующаяся тем, что при построении вычислительной сети для связи между множеством устройств используется алгоритм шифрования, при котором:
устройство пользователя посылает запрос на открытие соединения и посылает свой открытый ключ, который подписан секретным сертификатом, этот сертификат является общим для устройства пользователя и сервера,
сервер, получив открытый ключ, проверяет его подлинность секретным сертификатом, убедившись, что полученный ключ подлинный, сервер передает свой открытый ключ устройству пользователя,
устройство пользователя, получив открытый ключ от сервера, также проверяет подлинность секретным сертификатом,
устройство пользователя зашифровывает с помощью открытого ключа сервера вектор инициализации блочного шифра, который будет использоваться для канала "клиент-сервер", и отправляет серверу,
сервер, получив зашифрованные данные вектора инициализации, расшифровывает данные вектора инициализации блочного шифра и зашифровывает открытым ключом устройства пользователя собственный вектор инициализации для канала "сервер-клиент" и отправляет его устройству пользователя,
получив вектор инициализации, устройство пользователя переходит в режим обмена и пытается выполнить открытие сессии.
RU2016102066A 2016-12-16 2016-12-16 Способ и система объединения компонентов для управления объектами автоматизации RU2653231C1 (ru)

Priority Applications (2)

Application Number Priority Date Filing Date Title
RU2016102066A RU2653231C1 (ru) 2016-12-16 2016-12-16 Способ и система объединения компонентов для управления объектами автоматизации
PCT/RU2016/000952 WO2018111139A1 (ru) 2016-12-16 2016-12-29 Способ и система построения вычислительной сети для связи между множеством устройств

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
RU2016102066A RU2653231C1 (ru) 2016-12-16 2016-12-16 Способ и система объединения компонентов для управления объектами автоматизации

Publications (1)

Publication Number Publication Date
RU2653231C1 true RU2653231C1 (ru) 2018-05-07

Family

ID=62105631

Family Applications (1)

Application Number Title Priority Date Filing Date
RU2016102066A RU2653231C1 (ru) 2016-12-16 2016-12-16 Способ и система объединения компонентов для управления объектами автоматизации

Country Status (2)

Country Link
RU (1) RU2653231C1 (ru)
WO (1) WO2018111139A1 (ru)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115643557B (zh) * 2022-12-26 2023-04-18 深圳市鑫宇鹏电子科技有限公司 一种玩具设备组队通信方法及系统

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
RU2308080C2 (ru) * 2003-05-02 2007-10-10 Гиритек А/С Всеобъемлющая, ориентированная на пользователя сетевая безопасность, обеспечиваемая динамической коммутацией датаграмм и схемой аутентификации и шифрования по требованию через переносные интеллектуальные носители информации
RU2348066C2 (ru) * 2003-12-26 2009-02-27 Нтт Докомо, Инк. Терминал связи
US20090319613A1 (en) * 2007-02-19 2009-12-24 Telefonaktiebolaget L M Ericsson (Publ) Method and Apparatus for Enabling User Services in Communication Network
RU2459371C2 (ru) * 2006-09-15 2012-08-20 Майкрософт Корпорейшн Распределяемая, масштабируемая, подключаемая архитектура конференцсвязи

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101011834B1 (ko) * 2006-06-01 2011-01-31 엘지전자 주식회사 Sip 기반의 메시지 서비스에서의 그룹 공지 방법

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
RU2308080C2 (ru) * 2003-05-02 2007-10-10 Гиритек А/С Всеобъемлющая, ориентированная на пользователя сетевая безопасность, обеспечиваемая динамической коммутацией датаграмм и схемой аутентификации и шифрования по требованию через переносные интеллектуальные носители информации
RU2348066C2 (ru) * 2003-12-26 2009-02-27 Нтт Докомо, Инк. Терминал связи
RU2459371C2 (ru) * 2006-09-15 2012-08-20 Майкрософт Корпорейшн Распределяемая, масштабируемая, подключаемая архитектура конференцсвязи
US20090319613A1 (en) * 2007-02-19 2009-12-24 Telefonaktiebolaget L M Ericsson (Publ) Method and Apparatus for Enabling User Services in Communication Network

Also Published As

Publication number Publication date
WO2018111139A1 (ru) 2018-06-21

Similar Documents

Publication Publication Date Title
US20180337892A1 (en) Scalable proxy clusters
KR102350430B1 (ko) 홈 오토메이션 시스템의 하드웨어 엘리먼트들의 무선 프로비저닝 및 구성
CN109587228A (zh) 一种公有协议物联网平台及设备接入方法
US9438628B2 (en) Apparatus and method for securing a distributed control system (DCS)
US11281476B2 (en) Plugin framework to support zero touch management of heterogeneous infrastructure elements across distributed data centers
US9173006B2 (en) Method for live broadcasting in a distributed network and apparatus for the same
US20060248181A1 (en) Formatted and/or tunable QOS data publication, subscription, and/or distribution servers and clients
JP2020087443A (ja) 企業環境のための動的コンテンツ配信プロトコル
US20180295016A1 (en) Distribution of updates in an iot network
EP3095229B1 (en) Method and nodes for configuring a communication path for a media service
TW201227335A (en) Third party initiation of communications between remote parties
CN111885026A (zh) 基于区块链的互联互通方法和装置、存储介质及电子装置
CN112532671A (zh) 获取方法、配置方法、边缘计算集群及装置
US20090154374A1 (en) Communication of configuration management notifications in a packet-switched network
RU2653231C1 (ru) Способ и система объединения компонентов для управления объектами автоматизации
CN115314571A (zh) 一种支持异构设备接入的云协议网关实现方法及系统
CA2595438C (en) Method for improving peer to peer network communication
CN116915827A (zh) 物联网边缘网关的数据传输方法、装置、电子设备及介质
KR102114374B1 (ko) 클라우드 기반의 데이터 처리 장치 및 사용자 단말
CN104683433A (zh) 网络系统、保持连接方法、通信方法、电子设备、保持连接服务器、应用服务器、程序
JP6096700B2 (ja) Api提供システム
CN116915669B (zh) 报文管理方法、装置、相关设备、芯片及存储介质
US10142190B2 (en) Management plane network aggregation
US20240036537A1 (en) Building management system with containerization for a generic gateway
Suciu et al. IoT platform for personal data protection