Ptp протокол синхронизации. Введение в PTP

Много статей написано про всем известный Network Time Protocol (NTP), в некоторых из них упоминается про Precision Time Protocol, который якобы позволяет добиться точности синхронизации времени порядка наносекунд (например, и ). Давайте разберемся, что этот протокол собой представляет и как достигается такая точность. А также посмотрим результаты моей работы с данным протоколом.

Введение
«Протокол точного времени» описан стандартом IEEE 1588 . Существует 2 версии стандарта. Первая версия вышла в 2002 году, затем стандарт был пересмотрен в 2008 и на свет вышел протокол PTPv2. Обратная совместимость не была сохранена.
Я работаю со второй версией протокола, в ней множество улучшений по сравнению с первой (точность, стабильность, как нам сообщает wiki). Не буду приводить сравнения с NTP, одно только упоминание о точности синхронизации, а точность PTP достигает действительно десятков наносекунд при «железной» поддержке, говорит о преимуществе перед NTP.
«Железная» поддержка протокола в разных устройствах может быть реализована по-разному. На самом деле минимум, требующийся для реализации PTP – умение «железки» проставлять таймштамп момента получения сообщения на порт. Проставленное время будет использовано для вычисления ошибки.
Почему часы расстраиваются?
Ошибки могут появиться отовсюду. Начнем с того, что генераторы частоты в устройствах разные и очень мала вероятность того, что два разных устройства будут работать идеально такт в такт. Тут же можно приписать постоянно меняющиеся условия окружающей среды, влияющие на генерируемую частоту.
Чего мы добиваемся?
Допустим, у нас есть устройство, работающее в идеальных условиях, какие-нибудь атомные часы, которые вообще не разойдутся до конца света (конечно же, до реального, а не предначертанного календарём Майя) и дана задача заполучить хотя бы примерно (с точностью до 10 -9 сек) такие же часы. Нам нужно эти часы синхронизировать. Для этого можно реализовать протокол PTP.
Разница чисто программной реализации и реализации с «железной поддержкой»
Чисто программная реализация не позволит добиться обещаемой точности. Время, прошедшее с момента получения сообщения (точнее получения сигнала на прием сообщения в устройстве) до перехода на точку входа в прерывание или на callback не может быть строго определенным. «Умные железки» с поддержкой PTP умеют проставлять эти таймштампы самостоятельно (например, чипы от Micrel , как раз для KSZ8463MLI я пишу драйвер).
Помимо таймштампов к «железной» поддержке также можно отнести умение настраивать кварцевый генератор (чтобы выровнять частоту с мастером), либо возможность подстройки часов (каждый такт увеличивать значение часов на X нс). Об этом ниже.
Перейдём к стандарту IEEE 1588
Стандарт описан аж на 289 страницах. Рассмотрим минимум, необходимый для реализации протокола. PTP является клиент-серверным протоколом синхронизации, т.е. для реализации протокола требуется как минимум 2 устройства. Итак, Master-устройство - атомные часы, а Slave устройство – часы, которые необходимо заставить работать точно.
Язык обмена
Announce message – сообщение анонса, содержит информацию, отправляемую мастером всем Slave устройствам. Slave устройство с помощью этого сообщения может выбрать лучшего мастера (для этого существует BMC (Best Master Clock)) алгоритм. BMC не так интересен. Этот алгоритм можно легко найти в стандарте. Выбор идет по таким полям сообщения как точность, дисперсия, класс, приоритет и т.п. Перейдём к другим сообщениям.

Sync/Follow Up, DelayResp, PDelayResp/PDelayFollowUp – отправляются мастером, ниже рассмотрим их поподробнее.

DelayReq, PDelayReq – запросы Slave устройств.

Как видим, Slave устройство не многословно, Master предоставляет всю практически всю информацию сам. Отправка осуществляется на Multicast (при желании можно использовать Unicast режим) адреса, строго определенные в стандарте. Для PDelay сообщений имеется отдельный адрес (01-80-C2-00-00-0E для Ethernet и 224.0.0.107 для UDP). Остальные сообщения отсылаются на 01-1B-19-00-00-00 или 224.0.1.129. Пакеты отличаются полями ClockIdentity (идентификатор часов) и SequenceId (идентификатор пакета).

Сеанс работы
Допустим, мастер был выбран с помощью алгоритма BMC, либо мастер в сети единственный. На картинке показана процедура общения главного устройства и синхронизируемого.

  1. Всё начинается с того, что Master отправляет сообщение Sync и одновременно записывает время отправки t1. Существует одно- и двухэтапные режимы работы. Отличить их очень легко: если присутствует сообщение FollowUp – то мы имеем дело с двухэтапной реализацией, пунктирной стрелкой показаны необязательные сообщения
  2. FollowUp сообщение отправляется вслед за Sync и содержит время t1. Если осуществляется передача в один этап, то Sync содержит t1 в теле сообщения. В любом случае t1 будет получено нашим устройством. В момент получения сообщения Sync на Slave генерируется таймпштамп t2. Таким образом мы получаем t1, t2
  3. Slave генерирует сообщение DelayReq одновременно с генерацией t3
  4. Master получает DelayReq сообщение, одновременно генерируя t4
  5. t4 отправляется Salve устройству в DelayResp сообщении


Сообщения в сети

С помощью такого сеанса обмена, который показан выше, можно добиться успеха только в случае, если кварц генерирует идеально одинаковые частоты для синхронизируемых устройств. На деле же получается что частота часов разная, т.е. на одном устройстве за 1 секунду значение часов увеличится на 1 секунду, а на другом, например, на 1.000001 секунду. Отсюда появляется расхождение часов.
В стандарте описан пример вычисления отношения времени, прошедшего на Master и на Slave за определенный интервал. Это отношение будет являться коэффициентом для частоты Slave устройства. Но при этом есть указание, что подстройка может осуществляться различными способами. Рассмотрим два из них:

  1. Изменить тактовую частоту Slave устройства (пример в стандарте)
  2. Не менять тактовую частоту, но за каждый такт длительностью T значение часов будет увеличиваться не на T, а на T+∆t (используется в моей реализации)
В обоих способах потребуется вычислить разницу в значениях времени на Master устройстве за определенный интервал, а также разницу во времени, за этот же интервал на Slave устройстве. Коэффициент в первом способе:


Для второго способа требуется вычисление ∆t. ∆t – величина, которая будет складываться со значением времени каждый определенный интервал. На рисунке можно заметить, что в то время как на мастере прошло 22 – 15 = 7 секунд, на Slave прошло 75+(87-75)/2 –(30+ (37-30)/2) = 47.5

Частота – частота процессора, например, 25МГц - цикл процессора длится 1/(25*10 6) = 40нс.
В зависимости от возможностей устройства выбирается наиболее подходящий способ.
Чтобы перейти к следующему разделу, выразим смещение немного по-другому:

Режимы работы PTP
Заглянув в стандарт, можно обнаружить не единственный способ вычисления времени доставки. Существуют 2 режима работы PTPv2. Это E2E (End-to-End) , он был рассмотрен выше, также описан режим P2P (Peer-to-Peer) . Давайте разберемся, где какой способ применять и в чем их различие.
В принципе можно использовать любой из режимов по желанию, но их нельзя совмещать в одной сети.
  • В режиме E2E время доставки вычисляется по сообщениям, пришедшим через множество устройств, каждый из которых проставляет в поле коррекции сообщения Sync либо FollowUP (если двухэтапная передача) время, на которое пакет задержался на этом устройстве (если устройства подключены напрямую, коррекция не проставляется, поэтому их детально рассматривать не будем). Используются сообщения: Sync/FollowUp, DelayReq/DelayResp
  • В режиме P2P в поле коррекции заносится не только время, на которое задержался пакет, к нему прибавляется (t2-t1) (можно почитать в стандарте). Используются сообщения Sync/FollowUp, PDelayReq/PDelayResp/PDelayRespFollowUp
Согласно стандарту, часы, сквозь которые PTP сообщения проходят с изменением поля коррекции, называются Transparent Clock (TC) . Посмотрим на рисунках, как передаются сообщения в этих двух режимах. Синими стрелочками указаны сообщения Sync и FollowUp .


Режим End-to-End


Режим Peer-to-Peer
Видим, что в P2P режиме появились какие-то красные стрелочки. Это оставшиеся сообщения, которые мы не рассмотрели, а именно PDelayReq , PDelayResp и PDelayFollowUp . Вот сеанс обмена этими сообщениями:

Ошибка времени доставки
Стандарт описывает реализацию протокола в различных типах сетей. Я использовал Ethernet сеть, и получал сообщения на Ethernet уровне. В таких сетях время доставки пакета постоянно меняется (особенно заметно, когда работаешь с наносекундной точностью). Для того чтобы отфильтровать эти значения применяются различные фильтры.

Что требуется фильтровать:

  1. Время доставки
  2. Смещение
В моем драйвере используется примерно такая же система фильтрации, как и в Linux демоне PTPd , исходники которого можно найти еще есть немного информации . Приведу лишь схему:


LP IIR (Infinite Impulse Response low-pass) фильтр (Фильтр с бесконечной импульсной характеристикой), описываемый формулой:

, где s – коэффициент, позволяющий регулировать срез фильтра.
Вычисление подстройки
Перейдём к подстройке, к той дельте, которая должна будет добавляться к значению секунды. Схема вычисления, используемая в моей системе:


Я использовал фильтр Калмана, чтобы отфильтровать сильное дрожание подстройки из-за помех в сети, уж больно понравилась мне . А вообще, можно использовать любой фильтр, который нравится, главное чтобы сглаживал график. В PTPd , например, фильтрация попроще - вычисляется среднее от текущего и предыдущего значения. На графике можно посмотреть результаты работы фильтра Калмана в моем драйвере (показана ошибка подстройки, выражена в субнаносекундах на 25МГц чипе):


Переходим к регулированию подстройки, подстройка должна стремиться к константе, используется ПИ-регулятор. В PTPd регулируется смещения часов (настройка идёт по смещению), но я использую его для регулирования подстройки (особенность KSZ8463MLI). Видим, что контроллер настроен не идеально, но в моем случае такая регулировка достаточна:

Результат работы


Результат показан на графике. Смещение часов в пределах -50нс до 50нс. Следовательно, я добился той точности, о которой говорится в многочисленных статьях. Конечно, множество мелких особенностей реализации осталось за кадром, но необходимый минимум был продемонстрирован.

Network Time Protocol — сетевой протокол для синхронизации внутренних часов компьютера с использованием сетей с переменной латентностью, основанных на коммутации пакетов.

Хотя традиционно NTP использует для своей работы протокол UDP, он также способен работать и поверх TCP. Система NTP чрезвычайно устойчива к изменениям латентности среды передачи.

Время, представляется в системе NTP 64-битным числом, состоящим из 32-битного счетчика секунд и 32-битного счетчика долей секунды, позволяя передавать время в диапазоне 2 32 секунд, с теоретической точностью 2 -32 секунды. Поскольку шкала времени в NTP повторяется каждые 2 32 секунды (136 лет), получатель должен хотя бы примерно знать текущее время (с точностью 68 лет). Также следует учитывать, что время отсчитывается с полуночи 1 января 1900 года, а не с 1970, поэтому из времени NTP нужно вычитать почти 70 лет (с учетом високосных лет), чтобы корректно совместить время с Windows или Unix-системами.

Как это работает

NTP-серверы работают в иерархической сети, каждый уровень иерархии называется ярусом (stratum). Ярус 0 представлен эталонными часами. За эталон берется сигнал GPS (Global Positioning System) или службы ACTS (Automated Computer Time Service). На нулевом ярусе NTP-серверы не работают.

NTP-серверы яруса 1 получают данные о времени от эталонных часов. NTP-серверы яруса 2 синхронизируются с серверами яруса 1. Всего может быть до 15 ярусов.

NTP-серверы и NTP-клиенты получают данные о времени от серверов яруса 1, хотя на практике NTP-клиентам лучше не делать этого, поскольку тысячи индивидуальных клиентских запросов окажутся слишком большой нагрузкой для серверов яруса 1. Лучше настроить локальный NTP-сервер, который ваши клиенты будут использовать для получения информации о времени.

Иерархическая структура протокола NTP является отказоустойчивой и избыточной. Рассмотрим пример его работы. Два NTP-сервера яруса 2 синхронизируются с шестью различными серверами яруса 1, каждый — по независимому каналу. Внутренние узлы синхронизируются с внутренними NTP-серверами. Два NTP-сервера яруса 2 координируют время друг с другом. В случае отказа линии связи с сервером яруса 1 или с одним из серверов уровня 2 избыточный сервер уровня 2 берет на себя процесс синхронизации.

Аналогично узлы и устройства яруса 3 могут использовать любой из серверов яруса 2. Что еще более важно, так это то, что наличие избыточной сети серверов NTP гарантирует постоянную доступность серверов времени. Синхронизируясь с несколькими серверами точного времени, NTP использует данные всех источников, чтобы высчитать наиболее точное временя.

Стоит отметить, что протокол NTP не устанавливает время в чистом виде. Он корректирует локальные часы с использованием временного смещения, разницы между временем на NTP-сервере и локальных часах. Серверы и клиенты NTP настраивают свои часы, синхронизируясь с текущим временем постепенно либо единовременно.

т е х н о л о г и и

С.Телегин

Протокол PTP для синхронизации сетей NGN

вопросы применения

В статье рассматривается задача синхронизации сетей передачи данных следующего поколения (NGN). В

качестве альтернативного метода передачи синхронизации автор предлагает использовать протокол PTP. Приведены характеристики систем синхронизации на основе протокола PTP (IEEE 1588) в сравнении с системами, использующими шину PXI, а также протокол NTP.

Проблема синхронизации в сетях NGN

Развитие телекоммуникационных технологий и сетей передачи данных постепенно приводит к построению операторами связи конвергентных сетей следующего поколения (NGN – Next Generation Networks). Основное отличие таких сетей от традиционных сетей с синхронной цифровой иерархией (SDH) – в них для магистральной передачи данных наряду с обычными синхронными каналами используются такие асинхронные технологии, как Ethernet (Gigabit Ethernet, 10Gigabit Ethernet). Главным требованием операторов связи к сетям следующего поколения является одновременная передача голоса, видео и данных по единой сети.

При переходе от традиционных сетей передачи данных, основанных на временном мультиплексировании, к сетям NGN особое внимание уделяется передаче сигналов синхронизации. Синхронизация оборудования необходима в первую очередь для безошибочной передачи данных реального времени – голоса и видеоизображений. Поскольку в сетях Ethernet используется коммутация пакетов, которая в силу статистических свойств распространения пакетов данных по асинхронным каналам передачи разрушает изначально синхронизированный поток данных, передача синхронизации в сетях NGN выделяется в отдельную задачу. Для передачи синхронных данных по сетям с коммутацией пакетов, как правило, используется эмуляция каналов с временным мультиплексированием, заключающаяся в инкапсуляции синхронных данных в UDP-датаграм- мы и последующем их восстановлении на узле назначения .

ПЕРВАЯ МИЛЯ 5–6/2009

Для безошибочного восстановления переданных данных на стыке асинхронного и синхронного каналов оборудование также должно получать синхросигнал. Требования к стабильности синхросигнала варьируются в зависимости от конкретного назначения сети передачи данных. Так, в операторских сетях по предоставлению услуг телефонии и доступа в Интернет требования к синхронизации являются достаточно мягкими – 50 ppm (единиц на миллион), а в сотовых сетях для бесшовного перехода мобильных абонентов от одной базовой станции к другой необходима стабильность 50 ppb (единиц на миллиард).

Способы синхронизации сетей NGN

В рекомендации ITU-T G.8261 рассмотрены три основных способа восстановления синхронизации на границах транспортной среды с коммутацией пакетов при передаче в ней группового сигнала с временным мультиплексированием в виде услуги эмуляции каналов. Для этого в оконечном станционном оборудовании должны быть предусмотрены функции межсетевого взаимодействия. Все абоненты транспортной среды с коммутацией пакетов могут получать тактовую частоту от сети синхронизации посредством обычного централизованного распределения (рис.1). Если абонентское оборудование работает на собственной тактовой частоте (рис.2), то на границе сети с коммутацией пакетов ее восстанавливают различными относительными способами, например, с помощью алгоритма согласования скоростей SRTS. В обоих случаях в узле межсетевого взаимодействия должен быть доступ к стыку с генератором первичной синхрони-

т е х н о л о г и и

зации (PRC). Для этого оператор сети NGN должен либо строить отдельную сеть синхронизации, либо арендовать ее у существующих операторов транспортной сети SDH.

Существует множество примеров локальной синхронизации оборудования. Так, например, в станционном помещении размещают недорогой источник первичной синхронизации (PRS) на основе GPS и распределяют от него тактовую частоту с помощью беспроводных технологий или по обычным выделенным кабелям, в физической среде Ethernet, а также c помощью других оригинальных схем . Если построение сети синхронизации (или использование стыков синхронизации) невозможно или нежелательно, то применяют самый простой, но проблематичный из соображений стабильности адаптивный способ согласования скоростей приема и передачи (рис.3).

Результаты проведенных исследований показывают, что адаптивный способ можно применять, если абонент не предъявляет строгих требований к стабильности своей тактовой частоты, в противном случае необходимо дополнительное аппаратное сглаживание восстановленного синхросигнала. Альтернативой адаптивному методу является использование протокола RTP при инкапсуляции данных с временным мультиплексированием в пакеты асинхронных данных (рис.4). Как показали эксперименты, в данном случае при высокой стабильности восстановленного синхросигнала оборудование оказывается слабочувствительным к изменению частоты на источнике синхронизации, что является необходимым, например, в сотовых сетях при переходе на резервный синхросигнал.

Протокол PTP

Следующей ступенью развития, по-видимому, станет отдельная передача сигналов синхронизации сети с коммутацией пакетов с

помощью специально разработанных протоколов (рис.5). На данный момент таковыми являются протоколы NTP и PTP . Эти протоколы изначально создавались для синхронизации времени в различных устройствах сети, но в случае успешной синхронизации часов также становится возможным реализация алгоритмов синхронизации тактовых частот для восстановления данных реального времени. Протокол NTP (Network Time Protocol) широко используется для синхронизации текущего времени на прикладном уровне. В отличие от него, протокол "точного времени" PTP (Precision Time Protocol) действует на втором уровне модели взаимодействия открытых систем (OSI). Протокол РТР описан в стандарте IEEE 1588. Ожидается, что в дальнейшем РТР может быть использован как для высокоточной синхронизации текущего времени, так и для тактовой синхронизации оборудования. Рассмотрим данный протокол более подробно.

Стандарт IEEE 1588 предполагает, что протокол РТР предоставляет стандартный метод синхронизации устройств в сети с точностью выше 1 мкс (до 10 нс). Данный протокол обеспечивает синхронизацию ведомых устройств от ведущего, удостоверяясь, что события и временные метки на всех устройствах используют одну и ту же временную базу. В протоколе предусмотрены две ступени для синхронизации устройств: определе-

Рис. 3 Адаптивная синхронизация

Рис.4

Передача синхронизации с помощью RTP

Рис.5

Передача синхронизации с помощью PTP

ПЕРВАЯ МИЛЯ 5–6/2009

Рис. 6 Алгоритм работы PTP

ние ведущего устройства (1) и коррекция разбега во времени, вызванного смещением отсчета часов в каждом устройстве и задержками в передаче данных по сети (2). При инициализации системы протокол PTP использует алгоритм "наилучших ведущих часов" для определения самого точного источника синхронизации в сети. Такое устройство становится ведущим, а все остальные устройства в сети – ведомые и подстраивают свои часы по ведущему устройству.

Разница во времени между ведущим и ведомым устройствами является комбинацией смещения отсчета часов и задержки передачи синхронизирующего сообщения. Поэтому коррекция временного сдвига должна выполняться в два этапа: вычисление задержек передачи и сдвига, а затем их коррекция. Рассмотрим последовательность синхронизации часов двух устройств (рис.6).

Ведущее устройство начинает коррекцию сдвига часов, используя сообщения Sync и Follow-up. В сообщении Follow-up указывается время отправления сообщения Sync (ТМ1 ), измеренное наиболее близко к среде передачи для минимизации ошибки во времени опорного источника. После того, как ведомое устройство получает первые сообщения Sync и Follow-up, оно использует свои часы для отметки времени прибытия сообщения Sync (TS1 ) и сравнивает данную отметку с той, что пришла от ведущего устройства в сообщении Follow-up. Разница между этими двумя метками отражает сдвиг часов T0 плюс задержку передачи сообщения от ведущего устройства к ведомому ∆TMS : TS1  – TM1  = T0  + ∆TMS .

Для вычисления времени задержки передачи сообщения и сдвига отсчета часов ведомое устройство отправляет сообщение Delay_request со своим временем TS2 . Ведущее устройство отмечает прибытие данного сообщения и отправляет в ответ сообщение Delay_response меткой TM2 . Разница между двумя метками – это задержка передачи от ведомого устройства к ведущему ∆TSM минус сдвиг в отсчете ведомого устройства: TM2  – TS2  =∆TSM  – T0 .

При вычислении задержки передачи сообщения принимается, что средняя задержка передачи данных в канале рав-

на среднему арифметическому задержек распространения в разные стороны канала:

T MS + T SM

Зная времена TS1 , TM1 , TM2 и TS2 , ведомое устройство вычисляет усредненную задержку распространения в канале передачи данных:

T = (TS1 − TM1 ) + (TM2 − TS2 ) . 2

Финальная синхронизация часов выполняется после отправки ведущим устройством второго набора сообщений Sync (TS3 ) и Follow-up (TM3 ). Ведомое устройство вычисляет сдвиг своих часов по формуле T0  = TS3  – TM3  – ∆T.

После этого ведомое устройство подстраивает свои часы в соответствии с вычисленными значениями. Поскольку опорные источники синхронизации в каждом устройстве нестабильны, а задержки в канале могут меняться со временем, необходимо периодически повторять коррекцию часов ведомого устройства.

Особенности реализации протокола PTP

Большинство реализаций PTP имеют отклонение меньше 1 мкс, однако реальная точность работы зависит от приложения. Протокол PTP в устройствах реализуют тремя способами: программным, программно-аппаратным и аппаратным. Программные реализации РТР позволяют передавать сигналы синхронизации с точностью порядка 100 мкс. Чтобы достичь более высокой точности, необходимо использовать аппаратные средства. Каждый компонент, который обрабатывает пакет PTP после его получения из физической среды передачи, увеличивает ошибку синхронизации. Программная часть вносит наибольшую ошибку, поскольку загрузка процессора и задержка, связанная с обработкой прерывания, влияют на скорость обработки запроса синхронизации.

При программно-аппаратной реализации наиболее чувствительные функции протокола, такие как запись временной метки PTP-пакета, реализуются на физическом уровне Ethernet , например, в отдельной микросхеме программируемой логики. Такие методы сегодня наиболее оптимальны, так как требуют не слишком много ресурсов и времени на разработку устройства, позволяя добиться точности порядка 20 нс. В случае же полной аппаратной реализации протокола PTP достижима точность порядка 10 нс.

Кроме способа реализации на точность работы протокола РТР влияет ряд других факторов. Например, стандарт IEEE 1588 не специфицирует частоту синхронизации ведущего и ведомого устройств. В результате синхросигналы с более низкой частотой будут иметь менее точное временное разрешение, приводящее к менее точным временным меткам в синхронизирующих сообщениях. Стабильность частоты опорных генераторов также влияет на качество реализации протокола. Синхросигналы, полученные при использовании термостатированных и термокомпенсированных кварцевых генераторов, будут более стабильны (от-

ПЕРВАЯ МИЛЯ 5–6/2009

т е х н о л о г и и

клонение в миллиардные доли), нежели кварцевые генераторы

шую альтернативу для синхронизации распределенных сис-

без термостабилизации (отклонение в миллионные доли).

тем с субмикросекундной точностью.

На качество синхронизации устройств влияет также топо-

Таким образом, протокол PTP является альтернативным

логия сети и равномерность трафика. В сети с большим чис-

способом синхронизации сетей, который может получить рас-

лом устройств и высокой загрузкой каналов передачи данных

пространение в сетях NGN. По сравнению с используемыми в

точность трансляции синхронизации будет хуже. Поэтому для

настоящее время средствами синхронизации, данный метод

передачи сигналов синхронизации предпочтительно использо-

обладает рядом преимуществ:

вать отдельную сеть передачи данных.

Не требуется доступ оборудования напрямую к стыку синхро-

низации PRC, что позволит операторам оптимизировать за-

Сравнительные характеристики

траты на построение сети. При этом протокол РТР может обес-

систем синхронизации

печить передачу синхронизации с субмикросекундной точнос-

Рассмотрим характеристики систем синхронизации, использую-

тью, а значит, достижима стабильность лучше, чем 1 ppm;

щих протокол PTP, в сравнении с системами с синхронизацией

В отличие от адаптивного метода, для восстановления синх-

по шине PXI (физическая линия синхронизации) и по протоко-

ронизации необходим высокостабильный опорный генератор

лу NTP (см. таблицу). В отличие от систем с физической линией

только в ведущем устройстве;

синхронизации, где точность событий определяется точностью

Для задач синхронизации можно использовать асинхрон-

синхросигнала, в протоколе PTP определяющим факторов явля-

ный канал со сравнительно небольшой пропускной способ-

ется дрожание фазы (джиттер), связанное со случайным измене-

ностью, что значительно уменьшает стоимость реализации.

нием межпакетных интервалов. Большинство реализаций прото-

Предпочтительно, чтобы этот канал был выделенным.

кола PTP обеспечивает точность менее 1 мкс.

Принимая во внимание простоту развертывания сетей

Еще одна важная величина, отличающая разные способы

Ethernet, субмикросекундную точность и функционирование

синхронизации, – время ожидания синхронизирующего собы-

с минимальными затратами на обработку сообщений, прото-

тия. Это время между отправкой события ведущим устройс-

кол PTP все чаще используется во многих отраслях, особенно

твом и получением его ведомым. Поскольку протоколы PTP и

в промышленной автоматике, в метрологии и т.п. Ожидает-

NTP для передачи синхронизирующих сообщений использу-

ся, что в будущем возможности протокола PTP расширят его

ют пакеты данных, ожидание события определяется временем

применение и в телекоммуникациях для синхронизации уст-

ожидания пакета плюс время передачи и обработки заголовка

ройств по сетям с коммутацией пакетов.

пакета и, как правило, составляет несколько миллисекунд. В

отличие от них системы с физической линией синхронизации

Литература

ожидают синхронизирующего события в течение нескольких

1. Stein Y., Schwartz E. Circuit Extension over IP: The

наносекунд. Время ожидания синхронизирующего события оп-

Evolutionary Approach to Transporting Voice and Legacy

ределяет такую характеристику, как максимально возможная

Data over IP Networks. – RAD Data Communications, 2002.

частота подстройки синхросигнала.

2. ITU-T G.8261/Y.1361 Timing and synchronization

Системы синхронизации с единой шиной синхронизации,

aspects in packet networks. – ITU_T, April 2008.

такие как PXI, идеально подходят для высокоточного и скоро-

3. Rodrigues S. Technology options for sync delivery in

стного восстановления синхронизации и могут быть расши-

Next Generation Networks. – 3rd International Telecom

рены на расстояния до сотен метров с помощью специальных

модулей синхронизации, размещаемых в кассетах. Стандар-

4. Телегин С.А. Применение TDMoIP мультиплекси-

тная синхронизация по сети Ethernet с помощью NTP предо-

рования для передачи данных в транспортных сетях

ставляет миллисекундную синхронизацию, подходящую для

GSM. – Нелинейный мир, 2007, т.5, №5, с. 270–271.

низкоскоростных приложений, не очень критичных к качеству

5. IEEE Std. 1588–2008 IEEE Standard for a Precision

синхронизации. Протокол же PTP представляет собой хоро-

Clock Synchronization Protocol for Networked

Сравнительные характеристики систем синхронизации

Measurement and Control Systems. – IEEE, July 2008.

6. IETF RFC1305 Network Time Protocol (Version 3).

Синхронизирующие

Протокол

Протокол

Specification, Implementation and Analysis. – IETF,

модули на шинах PXI

Временное

<1·107

7. Tan E. IEEE 1588 Precision Time Protocol Time

разрешение

событий, нс

Synchronization Performance. Application Note 1728. –

National Semiconductor, October 2007.

ожидания

8. Hamdi M. Neagoe T. A Hardware IEEE-1588

Implementation with Processor Frequency Control. –

подстройки

Arrow Electronics, August 2006.

ПЕРВАЯ МИЛЯ 5–6/2009

09.07.2012, Пн, 10:07, Мск

Основная проблема в транспортных сетях нового поколения - то, что технология Ethernet изначально проектировалась для локальных вычислительных сетей и никогда не была предназначена для передачи сигналов синхронизации. В сетях с коммутацией каналов в последние десятилетия как транспортная среда доминирует технология синхронной цифровой иерархии (SDH), в ее основу заложена передача синхросигналов. Но даже эта надежная и хорошо себя зарекомендовавшая технология не отвечает требованиям современных приложений.

страницы: предыдущая | | 2

Использование стандарта Sync Ethernet

Изначально технология Ethernet разрабатывалась исключительно для использования в локальных сетях. Методы линейного кодирования информации на физическом уровне выбирались в соответствии с задачами, которые не предполагали передавать синхросигнал. В сетях SDH изначально использовались линейные коды NRZ, которые приспособлены для передачи синхронизации на физическом уровне канала связи. При создании технологии Sync Ethernet физический уровень и методы кодирования были заимствованы у технологии SDH, а второго (канального) уровня изменения практически не коснулись. Структура кадров осталась неизменной, за исключением SSM-байта статуса синхронизации. Его значения также были заимствованы в технологии SDH.


Принцип передачи синхронизации по протоколу Sync Ethernet

К преимуществам технологии Sync Ethernet можно отнести использование SDH-структуры физического уровня, а вместе с этим - огромный и бесценный опыт проектирования и построения сетей тактовой сетевой синхронизации. Идентичность методов сохранила актуальность старых рекомендаций G.803, G.804, G.811, G.812 и G.813 в новой технологии. Дорогие устройства - первичные эталонные генераторы (ПЭГ), вторичные задающие генераторы (ВЗГ) - могут быть задействованы также и в новой транспортной сети, построенной на стандарте Sync Ethernet.


Типовая схема синхронизации с использованием технологии Sync Ethernet

К недостаткам можно отнести то, что во всей сети передачи каждое устройство должно поддерживать новый стандарт, и, если в линии остается устройство, которое не поддерживает Sync Ethernet, то все устройства, которые стоят за этим узлом, не могут работать в синхронном режиме. Следовательно, требуются большие материальные затраты на модернизацию всей сети. Так же к недостаткам следует отнести, что данный метод поддерживает передачу только частотной синхронизации.

Использование протокола PTP (IEEE1588v2)

И последний способ передачи синхронизации, который в последнее время становится все более популярным, - это протокол Precise Time Protocol (PTP). Он описан в рекомендации IEEE 1588. В 2008 году вышла вторая версия этого документа, которая описывает использование протокола в телекоммуникационных сетях. Precise Time Protocol достаточно молодой, но сама технология передачи времени была заимствована у протокола Network Time Portocol (NTP). Протокол NTP в своей последней версии не дает точность, которая необходима для современных приложений, и поэтому он остался хорошим средством для временной синхронизации, которое широко используется в синхронизации серверов, распределенных баз данных и т.д. Но в построении сети тактовой сетевой синхронизации подходит логическое продолжение протокола NTP - это протокол PTP. Сетевыми элементами, которые участвуют во взаимодействии по протоколу PTP, являются следующие устройства: PTP Grand Master и PTP Slave. Обычно Grand Master берет синхронизацию от GNSS приемника и, используя эту информацию, обменивается пакетами с Slave устройством и постоянно корректирует временные расхождения между Grand Master и Slave устройствами. Чем активнее будет этот обмен, тем точность корректировки будет выше. Минусом такого активного обмена является увеличение полосы пропускания, которая выделяется для протокола PTP. Самой главной проблемой в расчете расхождения временных интервалов является то, что между устройствами Grand Master и Slave могут стоять "классические" маршрутизаторы 3 уровня. Термин "классические" в данном случае употреблен для того, чтобы подчеркнуть, что данные устройства ничего не понимают в протоколе PTP 5 уровня.

Задержками в буферах таких маршрутизаторов управлять достаточно сложно, и они носят случайный характер. Для того чтобы осуществлять контроль над этими случайными ошибками, а также чтобы расчет расхождения времени между Grand Master и Slave был точнее, в протоколе PTP был введен специальный параметр - метка времени (Time Stamp). Эта метка указывает на время прохождения пакета через маршрутизатор. Если на всем пути от Grand Master до Slave маршрутизаторы будут обладать функциональностью PTP и выставлять метку времени, то случайную ошибку, связанную с прохождением пакетов PTP через IP сеть, можно будет свести к минимуму.


Пример построения сети синхронизации на протоколе PTP

Сравнение методов передачи синхронизации в пакетных сетях нового поколения

Функциональность PTP на маршрутизаторах не является обязательной, но очень рекомендуется при использовании протокола PTP. Следует отметить, что большинство производителей маршрутизаторов включают эту функциональность в свои устройства. Пример построения схемы синхронизации для мобильного оператора представлен на рисунке ниже. Преимуществом PTP является то, что протокол ориентирован для передачи всех трех видов синхронизации: частотной, фазовой и временной. Основной недостаток протокола - это зависимость от нагрузки. При перегрузках на IP сети, которыми сложно управлять, очень сложно гарантировать строгое выполнение норм передачи синхронизации по сети.

Технология Преимущества Недостатки
GNSS Предоставление частотной, фазовой и временной синхронизации.
Не зависит от нагрузки сети.
Обязательная установка антенны. Невозможность использования в закрытых помещениях. Возможные помехи от других радиоустройств. Резервирование предоставляется только установкой второго приемника GNSS
Sync Ethernet Не зависит от нагрузки сети. Схожесть с сетью SDH Предоставляет только частотную синхронизацию. Необходима поддержка Sync Ethernet всеми элементами сети
PTP Предоставление частотной, фазовой и временной синхронизации. Зависит от загрузки сети.

Каждый из методов имеет свои преимущества и недостатки, которые приведены в таблице. Чтобы определить правильный подход, рекомендуется учитывать много критериев, которые специфичны для различных сетей.

Михаил Вексельман

страницы: предыдущая | | 2

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

В эпоху Великих географических открытий Британская Империя совершила резкий прорыв в мореходстве, и всё это благодаря нехитрому изобретению – морскому хронометру – устройству, способному точно измерять время даже в морских условиях. Путём настройки хронометра в соответствии со временем портового города Гринвича и сравниванием показателей устройства с положением солнца на небе, британские моряки определяли время своего плавания с высокой точностью. Хронометр для них был не чем иным, как уникальным открытием: большим шагом вперёд, который позволил британцам обойти всех своих современников. И пусть с тех пор прошло много времени, но и сегодня такой хронометр играет важную роль для всей планеты, ведь благодаря ему был установлен мировой стандарт времени по Гринвичу (GMT).

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

Мы рассмотрим процесс синхронизации промышленных сетей, необходимый для работы с современными системами, в основном, на энергетических подстанциях.
Также будет рассмотрена система работы с технологиями измерения времени, NTP, GPS и протокол IEEE 1588 v2 для получения сверхточных данных, при помощи которого можно собрать полную информацию о работе всей сети.

История технологий синхронизации по времени.

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

Организация Inter-range Instrumentation Group (IRIG) утвердила стандарт для работы в сетях с последовательной коммутацией устройств. Технологии кодировки времени, разработанные IRIG в 1956г, были основой для работы систем прошлого поколения. В настоящее время стандарт IRIGB 205-87 является новейшим вариантом обновления.

Сетевой Протокол Времени (NTP) : NTP – это протокол времени для данных сети, впервые появившийся в 1985г. Работа протокола NTP строится на иерархии уровней, при помощи которых поступает информация об общем для всей сети времени на данный момент. Иерархия NTP по своей сути представлена древом, что позволяет избежать повтора циклов в системе.

NTP делит сеть на разные уровни
(источник: B.D. Esham для Wikimedia Commons)

Система Глобального Позиционирования (GPS) : спутники GPS являются сверхточными атомными часовыми механизмами, расположенными на орбите нашей планеты. Их данные по времени способны передаваться со скоростью света на приёмники, расположенные на земле. Эти данные также корректируются по принципам относительности, что позволяет приёмнику получить сверхточные данные о текущем времени.

Возможные неполадки при синхронизации по времени
Множество ныне существующих систем синхронизации по времени или несовершенны, или слишком дороги.

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

Точность: Для безупречной работы промышленных сетей важна каждая наносекунда, но большинство используемых технологий попросту не могут обеспечить работу систем на таком уровне. Например, автоматизированная сеть подстанции должна работать на наносекундном уровне с данными, чтобы лучше поддерживать работу особо важных приложений (запись ошибок, удалённое наблюдение, удалённое управление). Стандарты IRIGB и NTP не позволяют работать системе на уровне наносекундной точности. Даже при стандартных условиях работы погрешность стандарта NTP составляет сотни микросекунд.

Стоимость: GPS сеть обеспечивает очень высокую точность работы с информацией благодаря атомным часам, но чтобы такая же точность соблюдалась в работе всей системы, каждый её уровень должен работать с данными отдельных GPS-приёмников. Это подразумевает очень большие денежные вложения, так что такое решение нельзя назвать рациональным. Работа с данными GPS была бы идеальным вариантом, если бы удалось сократить количество требуемых GPS-приёмников на каждый узел сети, или более эффективно использовать изначальное малое количество таких устройств, которые могли бы обеспечивать работу со сверхточными данными GPS всей системы.

Протокол времени для промышленных сетей.

Протокол IEEE 1588v2 был специально разработан для того, чтобы промышленные системы могли работать с высочайшей точностью и не требовать дополнительных денежных затрат.

Технологии NTP, GPS, и IRIGB не соответствуют требованиям, предъявляемым к полноценной работе на подстанциях. Протокол точного времени (РТР) IEEE 1588v2 был специально разработан для применения в области промышленных сетей и систем управления. В сети, работающей согласно стандарту IEEE 1588v2, главные часы устанавливают время для всей остальной системы подстанции. Ethernet-коммутатор работает как определяющее время устройство, а объединители, устройства защиты, и др., как стационарные часы. Все устройства работают по принципу «master-slave», где вверху схемы расположено устройство, выполняющее функцию главных часов. На рисунке ниже продемонстрирован обмен пакета данными РТР между master- и slave- устройствами, и настройка стационарных часов, при помощи которой синхронизируется вся сеть. Связь с GPS необходима только главным часам, таким образом, все данные будут точно разосланы по остальным устройствам сети.

Чтобы работать с протоколом IEEE 1588v2, системе нужен лишь один приёмник GPS. Это обеспечит точную передачу данных всем устройствам в сети.

Ethernet коммутатор с поддержкой протокола IEEE 1588v2 обеспечивает точную передачу данных (до 1 микросекунды) и может быть использован в качестве главных часов. Чтобы передача данных получилась максимально точной, остальные устройства сети также должны поддерживать протокол IEEE 1588v2. В сети промышленной автоматизации компьютеры, поддерживающие протокол IEEE 1588v2, выполняют функцию стационарных часов, которые получают синхронизированные по времени данные от коммутатора Ethernet.

Для полной синхронизации все устройства сети должны поддерживать протокол IEEE 1588v2, включая встраиваемые компьютеры.

Когда все устройства сети поддерживают протокол IEEE 1588v2, система может передавать данные на наносекундном уровне, что обеспечивает точную синхронизацию. Возможность работы на таком уровне особенно подходит для использования оборудования на энергетических станциях, поэтому стандарт IEEE 1588v2 и является частью стандарта IEC 61850-2, отвечающего требованиям сетей промышленной энергетики. Международная Электротехническая Комиссия (IEC) включила протокол IEEE 1588v2 в стандарт, т.к. точная синхронизация по времени в сетях промышленной энергетики влияет качество исполнения следующих задач:

  • Предупреждение отключения подачи энергии - cистема позволяет определить ряд проблем на начальной стадии и места их возникновения в сети в режиме реального времени.
  • Детальный учёт неисправностей и регистрации - gозволяет производить точный анализ, благодаря регистрации событий на наносекундном уровне.
  • Более эффективная работа сети - отслеживание графика работы и состояния оборудования.
    «Вопрос-ответ». Работа с виртуальным графиком времени эксплуатации, генераторами и управлением питанием.

Стандарт IEEE 1588v2 не только помогает сэкономить средства на организации работы сети, но также обеспечивает высокую точность передачи данных на наносекундном уровне. Это позволяет подстанциям и другим системам энергетических сетей повысить планку конкурентоспособности и выглядеть на голову выше аналогичных организаций, не использующих в своей работе устройства, стандартизированные согласно IEEE 1588v2. Ведь система «умной сети» позволяет синхронизированным подстанциям быть намного производительнее, экономичнее, легче в управлении и надёжнее. Все эти преимущества позволяют организациям повысить рентабельность производства и максимально снизить вред, причиняемый окружающей среде.

Преимущества устройств МОХА в синхронизации работы подстанций.

Fast Ethernet коммутаторы МОХА модели PT-7728-PTP IEC 61850-3 поддерживают протокол PTP стандарта IEEE 1588v2, чем гарантируют точную синхронизацию по времени сети подстанции и её устройств.

Характеристика коммутатора :

  • до 14 портов 100BaseFX (Multi-mode, разъём ST) или 100BaseTX порты и 1 BNC коннектор. Поддержка IEEE1588 v1 и v2, маркировка времени на каждый порт и импульсные выходы (pps) на порт BNC.
  • 1- и 2-шаговые операции для главных часов с точностью до 1 микросекунды в режиме «End to End»
  • 2-шаговые операции для главных часов с точностью до 1 микросекунды в режиме «Peer to Peer»
  • Синхронизация часов по сети с наносекундной точностью
  • Синхронизация часов позволяет работать с основными и второстепенными сетями подстанции
  • Низкая стоимость сетей за счёт многоцелевого использования функций (Ethernet)
  • Быстрая синхронизация при возникновении изменений в сети
  • Простота установки и управления

Для полноценной работы в сети МОХА предлагает встраиваемые компьютеры серии / с поддержкой стандарта IEEE 1588v2.

Характеристика компьютеров:

  • Низкий уровень потребления энергии до 40 Ватт для удобства работы в промышленной среде
  • Промышленное исполнение «всё в одном»: в устройствах нет вентиляторов и внешних кабелей, что обеспечивает крайне надёжную производительность.
  • Сертификат IEC 61850-3 позволяет устройствам эксплуатироваться на энергетических станциях.
  • Модульное исполнение с двумя независимыми слотами для снижения затрат на будущую модернизацию системы (8-портовый модуль RS-232/422/485, 8-портовый модуль RS-422/485, 4-портовый модуль 10/100 Mbps LAN, 8-портовый модуль 10/100 Mbps или универсальный модуль PCI расширения)
  • Удобная для пользователя конфигурация протокола PTP IEEE 1588v2 на системе Linux для простой и лёгкой работы, что позволяет сэкономить деньги и время на установку и настройку

Настройте протокол PTP IEEE 1588v2 для работы с компьютером DA-683 всего за несколько минут при помощи помощника автоматической установки
_______________________________________________________________________
Вы можете легко найти устройство, которое соответствует требованиям синхронизации по времени для вашей сети и уточнить его стоимость на официальном сайте IPC2U

Отказ от ответственности Данный документ предназначен только для ознакомления с общей информацией, его содержание может меняться без уведомления. Не гарантируется, что вся информация, представленная в данном документе касательно устройств, условий эксплуатации, их характеристики, условий продажи или иных аспектов указана без ошибок. Мы снимаем с себя всякие обязательства и не несём никакой ответственности за любые действия, предпосылкой к которым послужила информация, указанная в данном документе.