RU192031U1 - Устройство для синхронизации времени между сетями по протоколу ntp на аппаратном уровне - Google Patents

Устройство для синхронизации времени между сетями по протоколу ntp на аппаратном уровне Download PDF

Info

Publication number
RU192031U1
RU192031U1 RU2019110420U RU2019110420U RU192031U1 RU 192031 U1 RU192031 U1 RU 192031U1 RU 2019110420 U RU2019110420 U RU 2019110420U RU 2019110420 U RU2019110420 U RU 2019110420U RU 192031 U1 RU192031 U1 RU 192031U1
Authority
RU
Russia
Prior art keywords
network
time
networks
server
clients
Prior art date
Application number
RU2019110420U
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 RU2019110420U priority Critical patent/RU192031U1/ru
Application granted granted Critical
Publication of RU192031U1 publication Critical patent/RU192031U1/ru

Links

Images

Classifications

    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03LAUTOMATIC CONTROL, STARTING, SYNCHRONISATION OR STABILISATION OF GENERATORS OF ELECTRONIC OSCILLATIONS OR PULSES
    • H03L7/00Automatic control of frequency or phase; Synchronisation

Landscapes

  • Computer And Data Communications (AREA)

Abstract

Полезная модель относится к области автоматизации, применяется на производственных объектах при эксплуатации оборудования АСУТП в сфере коммутации локальных сетей для ретрансляции дейтаграмм точного времени (протокол NTP) из одной сети в другую в случае невозможности объединения сетей в одну (например передача метки времени из локальной сети предприятия в сеть системы безопасности предприятия).Задача устройства - оптимизация процесса синхронизации времени между сетями при невозможности объединения сетей в одну.Технический результат - осуществление синхронизации времени клиентов одной сети с сервером времени другой сети, блокируя обмен между сетями.Задача решается, а результат достигается созданием устройства, позволяющего синхронизировать свое внутреннее время с сервером времени одной сети, а клиенты другой сети могут использовать это время для своей синхронизации, при этом обработка сетевых пакетов проходит на аппаратном уровне - уровне, образованном микропрограммой управления и архитектурой набора команд микроконтроллера, что предотвращает обмен между сетями и доступ к самому устройству посредством сети.

Description

Полезная модель относится к области автоматизации, применяется на производственных объектах при эксплуатации оборудования АСУТП в сфере коммутации локальных сетей для ретрансляции дейтаграмм точного времени (протокол NTP) из одной сети в другую в случае невозможности объединения сетей в одну (например, передача метки времени из локальной сети предприятия в сеть системы безопасности предприятия).
Известны устройства коммутаторов [1], которые позволяют синхронизировать время между сетями. Недостатками таких устройств является:
- устройства работают на базе операционных систем (обычно Unix-подобных) и фильтрация трафика (выборка пакетов по их типу, сетевому протоколу, порту, адресу назначения и т.д.) проводится программно самой системой, что, при наличии уязвимости (ошибки программного кода), может привести к получению доступа из одной сети в другую;
- по причине большого количества выполняемых устройствами функций (создание и ведение таблиц маршрутизации, определение маршрутов, фильтрация пакетов, ведение очередей, преобразование сетевых адресов в локальные, распределение данных по портам и т.д.) они громоздки и требуют значительного внутришкафного пространства для размещения;
- по причине высокого функционала данные устройства имеют аппаратное обеспечение, удовлетворяющее повышенным требованиям (большое количество операций в секунду процессора, увеличенная оперативная память), что приводит к повышенному потреблению электроэнергии;
- для настройки данного оборудования требуются знания сетевого взаимодействия, сетевых протоколов, их структуры и тонкостей работы;
- конфигурирование данных устройств производят, используя специализированное ПО, что является длительным и достаточно сложным процессом.
Задача устройства - оптимизация процесса синхронизации времени между сетями при невозможности объединения сетей в одну.
Технический результат - осуществление синхронизации времени клиентов одной сети с сервером времени другой сети, блокируя обмен между сетями.
Задача решается, а результат достигается созданием устройства, позволяющего синхронизировать свое внутреннее время с сервером времени одной сети, а клиенты другой сети могут использовать это время для своей синхронизации, при этом обработка сетевых пакетов проходит на аппаратном уровне - уровне, образованном микропрограммой управления и архитектурой набора команд микроконтроллера, что предотвращает обмен между сетями и доступ к самому устройству посредством сети.
Структурная схема устройства для синхронизации времени показана на фигуре 1. Внешний вид устройства представлен на фигуре 2. На фигуре 3 представлен алгоритм работы устройства. В качестве основы устройства лежит программируемый микроконтроллер Arduino Uno (1) к которому посредством интерфейса SPI присоединены две платы модуля-драйвера сети Ethernet на основе ENC28J60 (2), которые имеют сетевые выходы формата RJ45 для соединения с сетью. SPI - последовательный периферийный интерфейс передачи данных в режиме полного дуплекса, предназначенный для обеспечения высокоскоростного сопряжения микроконтроллеров и периферии. Линия MOSI протокола SPI служит для передачи данных от контроллера к сетевым модулям. Линия MISO - служит для передачи данных от сетевых модулей в контроллер. Линия SCLK - последовательный тактовый сигнал, нужен для передачи тактового сигнала для ведомых устройств, по этому сигналу происходит чтение/запись отдельных бит данных по линиям MOSI/MISO. Одновременно по протоколу SPI ведущее устройство (микроконтроллер) может общаться только с одним ведомым (сетевой модуль). Для выбора текущего сетевого устройства предназначена линия PB0-SS1 - для выбора первого сетевого модуля и PB1-SS2 для выбора второго, при этом устройства выбираются по низкому уровню сигнала. PB0 и PB1 - дискретные порты Arduino Uno сконфигурированные на выдачу сигнала. Так же в устройстве используется внешнее прерывание со второго сетевого модуля при получении им пакета данных (линия INT-INT0); модуль выдает на выход INT высокий уровень, который отслеживает контроллер на своем входе внешнего прерывания INT0 и приступает к обработке. Все элементы помещены устройства в корпус (4), который может крепиться на DIN рейку. На корпусе располагаются два индикатора (светодиоды): индикатор работы NTP клиента (7)
- показывает статус последней синхронизации времени устройства и индикатор работы NTP сервера устройства (8) - показывает удачные синхронизации клиентов. Данные индикаторы (диоды) подключаются к выводам PC0 и PC1 контроллера. Питание подается на микроконтроллер с сетевого адаптера (3), преобразующего сетевое напряжение 220В в напряжение 7В. Конфигурация устройства производится через USB порт (6) посредством любой терминальной программы. Все конфигурационные данные сохраняются в энергонезависимой памяти контроллера.
При запуске устройства происходит считывание параметров из энергонезависимой памяти (IP адреса, время задержек и т.д.) и инициализация внутреннего таймера, используемого для хранения реального времени. После этого инициализируются сетевые интерфейсы внешних модулей (используя ранее считанные параметры, им назначаются IP адреса, маски сети и т.д.). На этапе запуска NTP клиента происходит настройка прерывания от таймера (как часто будет вызываться прерывание, параметр ранее считывается из памяти, может быть от 16 секунд до 32 часов согласно протоколу, NTP), а также устанавливается глобальное разрешение внутренних прерываний таймера. Затем устройство входит в основной цикл, в котором оно ожидает поступление команд с терминала по UART. При поступлении команды она проверяется на корректность (существует ли такая команда) и в зависимости от команды запускается соответствующая функция, которая производит нужное действие (вывод данных на терминал, запись в память, ручная корректировка, перезагрузка устройства и т.д.) после чего устройство ожидает следующей команды.
При возникновении прерывания от таймера устройство посылает запрос к серверу времени через интерфейс Eth1 (IP адрес сервера считывается из памяти при запуске устройства). При удачном ответе (ответ есть и он не содержит кодов ошибки) проверяется статус внутреннего NTP сервера (по флагу), если сервер не запущен то он запускается ( модуль-драйвер сети Eth2 настраивается на выдачу сигнала прерывания при получении пакета запроса на синхронизацию времени от клиентов, разрешаются внешние прерывания от драйвера) и ставится флаг запуска сервера (для того чтобы уже запущенный сервер не пытался запуститься вновь при следующем прерывании от таймера), включается индикатор работы клиента, после этого корректируется время следующего прерывания (согласно протоколу NTP при каждом последующем удачном получении метки времени частоту запросов следует снижать). Если же ответа нет или он содержит код ошибки, то время следующего прерывания ставится минимально возможным (16 сек) и индикатор работы клиента погасает. Таким образом, при неудачном запросе следующая попытка будет произведена через 16 секунд, при удачном же время следующего запроса каждый раз будет увеличиваться (но не может составлять более чем 32 часа). Статус последнего запроса всегда можно посмотреть по индикатору работы клиента.
При возникновении внешнего прерывания (при получении запроса из сети Eth2) устройство считывает запрос из драйвера-модуля сети Eth2, производит чтение значения метки времени своих внутренних часов, формирует ответ, посылает его клиенту в сеть Eth2 и устанавливает индикатор работы сервера. Индикатор работы сервера гасится из основного цикла при условии, что последние 10 секунд никто из клиентов сети Eth2 не запрашивал время.
Устройство в составе платы Arduino Uno имеет преобразователь USB/UART, поэтому для управления или конфигурирования требуется подключить устройство через USB к любому ПЭВМ (компьютеру) имеющему терминальную программу (имеется в большинстве операционных систем).
Список источников:
1. Сетевой коммутатор // Википедия. [2018-2018]. Дата обновления: 08.12.2018. URL: https://ru.wikipedia.org/?oldid=96725570 (дата обращения: 08.12.2018).

Claims (1)

  1. Устройство для синхронизации времени между сетями по протоколу NTP на аппаратном уровне, характеризующееся тем, что представляет собой микроконтроллер с двумя внешними сетевыми интерфейсами, на котором, независимо друг от друга, в разных сетях функционируют NTP-клиент и NTP-сервер, позволяющие на уровне, образованном микропрограммой управления и архитектурой набора команд, взаимодействуя только с внутренним временем самого устройства, синхронизировать время клиентов одной сети с сервером времени из другой сети.
RU2019110420U 2019-04-09 2019-04-09 Устройство для синхронизации времени между сетями по протоколу ntp на аппаратном уровне RU192031U1 (ru)

Priority Applications (1)

Application Number Priority Date Filing Date Title
RU2019110420U RU192031U1 (ru) 2019-04-09 2019-04-09 Устройство для синхронизации времени между сетями по протоколу ntp на аппаратном уровне

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
RU2019110420U RU192031U1 (ru) 2019-04-09 2019-04-09 Устройство для синхронизации времени между сетями по протоколу ntp на аппаратном уровне

Publications (1)

Publication Number Publication Date
RU192031U1 true RU192031U1 (ru) 2019-09-02

Family

ID=67852196

Family Applications (1)

Application Number Title Priority Date Filing Date
RU2019110420U RU192031U1 (ru) 2019-04-09 2019-04-09 Устройство для синхронизации времени между сетями по протоколу ntp на аппаратном уровне

Country Status (1)

Country Link
RU (1) RU192031U1 (ru)

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
RU2377728C2 (ru) * 2004-07-20 2009-12-27 Квэлкомм Инкорпорейтед Управление и руководство доступом к нескольким сетям
US20100211696A1 (en) * 2009-02-17 2010-08-19 International Business Machines Corporation Distributed server election with imperfect clock synchronization
CN103023596A (zh) * 2012-12-04 2013-04-03 上海斐讯数据通信技术有限公司 一种实现网络设备与时间服务器同步的方法
RU155966U1 (ru) * 2014-10-21 2015-10-20 Общество с ограниченной ответственностью Научно-производственная фирма "КРУГ" Сервер единого времени
RU172628U1 (ru) * 2016-11-15 2017-07-17 Александр Николаевич Беляев Сервер синхронизации времени

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
RU2377728C2 (ru) * 2004-07-20 2009-12-27 Квэлкомм Инкорпорейтед Управление и руководство доступом к нескольким сетям
US20100211696A1 (en) * 2009-02-17 2010-08-19 International Business Machines Corporation Distributed server election with imperfect clock synchronization
CN103023596A (zh) * 2012-12-04 2013-04-03 上海斐讯数据通信技术有限公司 一种实现网络设备与时间服务器同步的方法
RU155966U1 (ru) * 2014-10-21 2015-10-20 Общество с ограниченной ответственностью Научно-производственная фирма "КРУГ" Сервер единого времени
RU172628U1 (ru) * 2016-11-15 2017-07-17 Александр Николаевич Беляев Сервер синхронизации времени

Similar Documents

Publication Publication Date Title
CN107707447B (zh) 一种基于EtherCAT的从站***及控制方法
CN103634092B (zh) Cpu集群中的高精度定时器
JP5080448B2 (ja) 2つのバスシステムを同期する方法および装置、並びに2つのバスシステムから成る構成
US20060059491A1 (en) Controller and operating system
CN106685735B (zh) Epa片上***、epa通信***及通信方法
CN102739491B (zh) 一种以太网通信主站实现方法
JPH10313329A (ja) 故障許容通信方法およびシステム
US10649820B2 (en) Method of managing event generation for an industrial controller
US9019959B2 (en) Node, switch, and system
CN112929117B (zh) 一种兼容可定义确定性通信以太网
EP3547049B1 (en) Safety control system and safety control unit
CN104135410A (zh) 一种基于amba总线结构的epa通信ip核及片上***
KR101704751B1 (ko) 모듈 간의 타이밍 정보를 이용하는 멀티코어 시스템의 시뮬레이터, 및 그 시뮬레이션 방법
CN1960276B (zh) 远程控制***及方法
RU192031U1 (ru) Устройство для синхронизации времени между сетями по протоколу ntp на аппаратном уровне
AU2002340733B2 (en) Method and device for producing program interruptions in subscribers to a bus system, and corresponding bus system
CN110572234A (zh) 一种基于串口实现时钟同步的方法、智能终端及存储介质
CN101335610B (zh) 一种高端以太网交换机中的arp同步方法
WO2017145292A1 (ja) 時刻同期スレーブ装置及び通信制御方法
JP5043356B2 (ja) プログラマブルコントローラの起動方法およびプログラマブルコントローラ
CN214627000U (zh) 一种兼容可定义确定性通信以太网的网卡设备
CN214627023U (zh) 一种兼容可定义确定性通信以太网的交换设备
WO2014167703A1 (ja) ネットワークシステム、通信方法、及び、ネットワーク装置
CN110554731B (zh) 一种时钟同步控制方法、智能终端及存储介质
KR20080110216A (ko) 동시 분산제어 및 독립제어 시스템