Протокол точного времени

редактировать
Протокол синхронизации сетевого времени

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

Исходная версия PTP, IEEE 1588-2002, была опубликована в 2002 году. IEEE 1588-2008, также известный как PTP версии 2, не является обратная совместимость с исходной версией 2002 года. IEEE 1588-2019 был опубликован в ноябре 2019 г. и включает улучшения с обратной совместимостью по сравнению с публикацией 2008 г. IEEE 1588-2008 включает концепцию профиля, определяющую рабочие параметры и опции PTP. Несколько профилей были определены для приложений, включая телекоммуникации, распределение электроэнергии и аудиовизуальные. IEEE 802.1AS представляет собой адаптацию PTP для использования с Audio Video Bridging и Time-Sensitive Networking.

Содержание
  • 1 История
  • 2 Архитектура
  • 3 Сведения о протоколе
    • 3.1 Транспорт сообщений
    • 3.2 Домены
  • 4 Лучший алгоритм главных часов
  • 5 Синхронизация
  • 6 Дополнительные функции
  • 7 Связанные инициативы
  • 8 См. Также
  • 9 Примечания
  • 10 Ссылки
  • 11 Внешние ссылки
История

По словам Джона Эйдсона, возглавлявшего усилия по стандартизации IEEE 1588-2002, «IEEE 1588 разработан, чтобы заполнить нишу, которую плохо обслуживают любой из двух доминирующих протоколов, NTP и GPS. IEEE 1588 разработан для локальных систем, требующих точности, превышающей ту, которую можно получить с помощью NTP. Он также разработан для приложений, которые не могут нести затраты на GPS-приемник на каждом узле, или для которого сигналы GPS недоступны ».

PTP был первоначально определен в стандарте IEEE 1588-2002, официально названном« Стандарт для точного синхросигнала. Протокол onization для сетевых систем измерения и управления », опубликованный в 2002 году. В 2008 году был выпущен IEEE 1588-2008 в качестве пересмотренного стандарта; также известный как PTP версии 2 (PTPv2), он повышает точность, точность и надежность, но не обратно совместим с исходной версией 2002 года. Стандарт IEEE 1588-2019 был опубликован в ноябре 2019 года, неофициально известен как PTPv2.1 и включает обратно совместимый усовершенствования к публикации 2008 года.

Архитектура

IEEE 1588 стандарты описывают иерархическую архитектуру главный-подчиненный для распределения часов. Согласно этой архитектуре система распределения времени состоит из одной или нескольких коммуникационных сред (сегментов сети) и одного или нескольких часов. Обычные часы - это устройство с одним сетевым подключением, которое является либо источником (ведущее устройство), либо местом назначения (ведомое устройство) ссылки синхронизации. Граничные часы имеют несколько сетевых подключений и могут точно синхронизировать один сегмент сети с другим. Мастер синхронизации выбирается для каждого сегмента сети в системе. Корневой эталон времени называется grandmaster. Грандмастер передает информацию синхронизации на часы, находящиеся в его сегменте сети. Граничные часы с присутствием в этом сегменте затем передают точное время другим сегментам, к которым они также подключены.

Упрощенная система PTP часто состоит из обычных часов, подключенных к одной сети, без использования граничных часов. Гроссмейстер избирается, и все остальные часы синхронизируются напрямую с ним.

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

PTP обычно использует ту же эпоху, что и время Unix (начало 1 января 1970 г.). В то время как время Unix основано на всемирном координированном времени (UTC) и зависит от дополнительных секунд, PTP основывается на международном атомном времени (TAI). Грандмастер PTP сообщает текущее смещение между UTC и TAI, так что UTC можно вычислить на основе полученного времени PTP.

Сведения о протоколе

Синхронизация и управление системой PTP достигается посредством обмена сообщениями через среду связи. С этой целью PTP использует следующие типы сообщений.

  • Сообщения Sync, Follow_Up, Delay_Req и Delay_Resp используются обычными и граничными часами и передают связанную со временем информацию, используемую для синхронизации часов в сети.
  • Pdelay_Req, Pdelay_Resp и Pdelay_Resp_Follow_Up используются прозрачными часами для измерения задержки в среде связи, чтобы система могла их компенсировать. Прозрачные часы и эти связанные с ними сообщения недоступны в IEEE 1588-2002.
  • Сообщения с объявлением используются алгоритмом наилучшего главного тактового сигнала в IEEE 1588-2008 для построения иерархии часов и выберите главного мастера.
  • Управляющие сообщения используются сетевым управлением для мониторинга, настройки и обслуживания системы PTP.
  • Сигнальные сообщения используются для некритичных по времени коммуникаций между часами. Сигнальные сообщения были представлены в IEEE 1588-2008.

Сообщения делятся на категории событий и общие сообщения. Сообщения о событиях критичны по времени в том смысле, что точность меток времени передачи и получения напрямую влияет на точность распределения часов. Sync, Delay_Req, Pdelay_Req и Pdelay_resp - это сообщения о событиях. Общие сообщения являются более традиционными блоками данных протокола в том смысле, что данные в этих сообщениях важны для PTP, а их временные метки передачи и приема - нет. Сообщения Announce, Follow_Up, Delay_Resp, Pdelay_Resp_Follow_Up, Management и Signaling являются членами общего класса сообщений.

Транспорт сообщений

Сообщения PTP могут использовать протокол дейтаграмм пользователя поверх Интернет-протокол (UDP / IP) для транспорта. IEEE 1588-2002 использует только транспорты IPv4, но он был расширен за счет включения IPv6 в IEEE 1588-2008. В IEEE 1588-2002 все сообщения PTP отправляются с использованием многоадресной передачи сообщений, в то время как IEEE 1588-2008 представил возможность для устройств согласовывать одноадресную передачу для каждого порта. Многоадресная передача использует адресацию IP multicast, для которой групповые адреса многоадресной рассылки определены для IPv4 и IPv6 (см. Таблицу). Сообщения о критических по времени событиях (Sync, Delay_req, Pdelay_Req и Pdelay_Resp) отправляются на порт с номером 319. Общие сообщения (Announce, Follow_Up, Delay_Resp, Pdelay_Resp_Follow_Up, управление и сигнализация) используют номер порта 320.

Адреса групп многоадресной рассылки
СообщенияIPv4IPv6IEEE 802.3 Ethernet
Все, кроме сообщений о задержке однорангового узла224.0.1.129FF0x::18101-1B-19-00-00-00
Сообщения одноранговой задержки: Pdelay_Req, Pdelay_Resp и Pdelay_Resp_Follow_Up224.0.0.107FF02 :: 6B01-80-C2-00-00-0E

В IEEE 1588-2008, инкапсуляция также определена для DeviceNet, ControlNet и PROFINET.

Домены

Домен - это взаимодействующий набор часов, которые синхронизируются с друг друга с помощью PTP. Часы назначаются домену на основании содержимого полей имени поддомена (IEEE 1588-2002) или номер домена (IEEE 1588-2008) в сообщениях PTP, которые они получают или генерируют. Домены позволяют нескольким системам распределения часов использовать одну и ту же среду связи.

Содержимое поля имени поддомена (IEEE1588-2002)IPv4-адрес многоадресной рассылки. (IEEE1588-2002)номер домена. (IEEE1588-2008)Примечания
_DFLT224.0.1.1290Домен по умолчанию
_ALT1224.0.1.1301Альтернативный домен 1
_ALT2224.0. 1.1312Альтернативный домен 2
_ALT3224.0.1.1323Альтернативный домен 3
Специфичный для приложения до 15 октетов224.0.1.130, 131 или 132 согласно хэш-функция на имени поддомена4–127Пользовательские домены
Алгоритм наилучшего главного тактового генератора

Лучший главный тактовый генератор (BMC) Алгоритм выполняет распределенный выбор лучших возможных тактовых импульсов на основе следующих свойств часов:

  • Идентификатор - универсальный уникальный числовой идентификатор для часов. Это обычно строится на основе MAC-адреса.
  • устройства. Обе версии IEEE 1588 пытаются количественно оценить качество синхронизации на основе ожидаемого отклонения синхронизации, технологии, используемой для реализации часов или местоположения в страте часов схема, хотя только V1 (IEEE 1588-2002) знает слой поля данных. PTP V2 (IEEE 1588-2008) определяет общее качество часов с помощью полей данных clockAccuracy и clockClass.
  • Priority - Административно назначенная подсказка о приоритете, используемая BMC для помощи в выборе главного мастера для домена PTP.. IEEE 1588-2002 использовал единственную логическую переменную для указания приоритета. IEEE 1588-2008 имеет два 8-битных поля приоритета.
  • Дисперсия - оценка стабильности тактовым сигналом, основанная на наблюдении за его работой по отношению к эталону PTP.

IEEE 1588-2008 использует алгоритм иерархического выбора на основе для следующих свойств в указанном порядке:

  1. Приоритет 1 - пользователь может назначить конкретный статический приоритет для каждого тактового сигнала, предварительно определив приоритет среди них. Меньшие числовые значения указывают на более высокий приоритет.
  2. Класс - каждые часы являются членом данного класса, каждый класс получает свой собственный приоритет.
  3. Точность - точность между часами и UTC в наносекундах (нс)
  4. Дисперсия - изменчивость часов
  5. Приоритет 2 - окончательно определенный приоритет, определяющий порядок резервного копирования в случае, если другие критерии были недостаточны. Меньшие числовые значения указывают на более высокий приоритет.
  6. Уникальный идентификатор - выбор на основе MAC-адреса используется как средство разрешения конфликтов, когда все остальные свойства равны.

IEEE 1588-2002 использует алгоритм выбора, основанный на аналогичных свойствах.

Свойства часов объявляются в сообщениях IEEE 1588-2002 Sync и в сообщениях Announce IEEE 1588-2008. Текущий мастер часов передает эту информацию через равные промежутки времени. Часы, которые считают себя лучшими ведущими часами, будут передавать эту информацию, чтобы вызвать изменение основных часов. Как только текущий мастер распознает лучшие часы, текущий мастер прекращает передачу сообщений Sync и связанных свойств часов (сообщения Announce в случае IEEE 1588-2008), и лучшие часы становятся мастером. Алгоритм BMC учитывает только самопровозглашенное качество тактовых импульсов и не принимает во внимание качество сетевого соединения.

Синхронизация

Благодаря использованию алгоритма BMC PTP выбирает главный источник времени для домен IEEE 1588 и для каждого сегмента сети в домене.

Часы определяют смещение между собой и своим хозяином. Пусть переменная t {\ displaystyle t}t представляет физическое время. Для данного ведомого устройства смещение o (t) {\ displaystyle o (t)}o (t) в момент времени t {\ displaystyle t}t определяется следующим образом:

о (t) знак равно s (t) - m (t) {\ displaystyle \ o (t) = s (t) -m (t)}\ o (t) = s (t) - m (t)

где s (t) {\ displaystyle s (t)}s (t) представляет время, измеренное подчиненными часами в физическое время t {\ displaystyle t}t , а m (t) {\ displaystyle m (t)}м (т) представляет время, измеренное ведущими часами в физическое время. t {\ displaystyle t}t .

Ведущее устройство периодически передает текущее время в виде сообщения другим часам. В соответствии с IEEE 1588-2002 широковещательная передача осуществляется до одного раза в секунду. Согласно IEEE 1588-2008, разрешено до 10 в секунду.

Механизм синхронизации IEEE 1588 и расчет задержки

Каждая трансляция начинается в момент времени T 1 {\ displaystyle T_ {1}}T_ {1} с сообщения Sync, отправляемого мастером на все часы в домен. Часы, получающие это сообщение, принимают к сведению местное время T 1 ′ {\ displaystyle T_ {1} '}{\displaystyle T_{1}'}, когда это сообщение получено.

Мастер может впоследствии отправить многоадресное Follow_Up с точной временной меткой T 1 {\ displaystyle T_ {1}}T_ {1} . Не все мастера имеют возможность представить точную метку времени в сообщении синхронизации. Только после завершения передачи они могут получить точную метку времени для передачи Sync со своего сетевого оборудования. Мастера с этим ограничением используют сообщение Follow_Up для передачи T 1 {\ displaystyle T_ {1}}T_ {1} . Мастера с возможностями PTP, встроенными в их сетевое оборудование, могут представлять точную метку времени в сообщении Sync и не должны отправлять сообщения Follow_Up.

Чтобы точно синхронизироваться со своим главным устройством, часы должны индивидуально определять сетевое время прохождения сообщений Sync. Время прохождения определяется косвенно путем измерения времени прохождения сигнала туда и обратно от каждых часов до их главного устройства. Часы инициируют обмен со своим мастером, предназначенным для измерения времени прохождения d {\ displaystyle d}d . Обмен начинается с того, что часы отправляют мастеру сообщение Delay_Req в момент времени T 2 {\ displaystyle T_ {2}}T_ {2} . Мастер получает и отмечает время Delay_Req в момент времени T 2 '{\ displaystyle T_ {2}'}{\displaystyle T_{2}'}и отвечает сообщением Delay_Resp. Мастер включает метку времени T 2 '{\ displaystyle T_ {2}'}{\displaystyle T_{2}'}в сообщение Delay_Resp.

Посредством этих обменов часы учатся T 1 {\ displaystyle T_ {1}}T_ {1} , T 1 ′ {\ displaystyle T_ {1} '}{\displaystyle T_{1}'}, T 2 {\ displaystyle T_ { 2}}T_ {2} и T 2 ′ {\ displaystyle T_ {2} '}{\displaystyle T_{2}'}.

Если d {\ displaystyle d}d - время прохождения для Сообщение синхронизации, а o ~ {\ displaystyle {\ tilde {o}}}\ tilde {o} - постоянное смещение между ведущими и ведомыми часами, тогда

T 1 ′ - T 1 = o ~ + d и T 2 ′ - T 2 = - o ~ + d {\ displaystyle \ T_ {1} '- T_ {1} = {\ tilde {o}} + d {\ text {and}} \ T_ {2} '-T_ {2} = - {\ tilde {o}} + d}{\displaystyle \ T_{1}'-T_{1}={\tilde {o}}+d{\text{ and }}\ T_{2}'-T_{2}=-{\tilde {o}}+d}

Комбинируя два приведенных выше уравнения, мы находим, что

o ~ = 1 2 (T 1 ′ - T 1 - T 2 ′ + T 2) {\ displaystyle {\ tilde {o}} = {\ frac {1} {2}} (T_ {1} '- T_ {1} -T_ {2}' + T_ {2})}{\displaystyle {\tilde {o}}={\frac {1}{2}}(T_{1}'-T_{1}-T_{2}'+T_{2})}

Часы теперь знают смещение o ~ {\ displaystyle {\ tilde {o}}}\ tilde {o} во время этой транзакции и могут скорректировать себя на эту величину, чтобы привести ее в соответствие с их хозяином.

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

Дополнительные функции

Стандарт IEEE 1588-2008 перечисляет следующий набор функций, которые реализации могут выбрать для поддержки :

  • Альтернативная шкала времени
  • Великий мастер-кластер
  • Мастера одноадресной рассылки
  • Альтернативный мастер
  • Трассировка пути
Связанные инициативы
  • Международный симпозиум IEEE по точной синхронизации часов для измерения, управления и связи (ISPCS) - это ежегодное мероприятие, организуемое IEEE, которое включает тест и программу конференции с бумажными и постерными презентациями, обучающими материалами и обсуждениями, охватывающими несколько аспектов PTP.
  • Институт встраиваемых систем (InES) Цюрихского университета прикладных наук / ZHAW занимается практической реализацией и применением PTP
  • IEEE 1588 является ключевой технологией в LXI Стандарте для тестирования и измерений, связи и управления
  • IEEE 802.1AS-2011 является частью группы стандартов IEEE Audio Video Bridging (AVB), дополнительно расширенной рабочей группой IEEE 802.1 Time-Sensitive Networking (TSN). Он определяет профиль для использования IEEE 1588-2008 для синхронизации времени через виртуальную мостовую локальную сеть (как определено в IEEE 802.1Q ). В частности, 802.1AS определяет, как IEEE 802.3 (Ethernet ), IEEE 802.11 (Wi-Fi ) и MoCA могут быть частями одного и того же временного домена PTP.
  • SMPTE 2059 -2 - это профиль PTP для использования при синхронизации широковещательных мультимедийных систем
  • AES67 Стандарт совместимости аудиосети включает профиль PTPv2, совместимый с SMPTE ST2059-2.
  • Dante использует PTPv1 для синхронизации.
  • Q-LAN и RAVENNA использует PTPv2 для синхронизации времени.
  • The White Rabbit Project объединяет Synchronous Ethernet и PTP
  • отраслевой профиль протокола точного времени Профили PTP (L2P2P и L3E2E) для промышленной автоматизации в соответствии с IEC 62439-3
  • IEC / IEEE 61850-9-3 Профиль PTP для автоматизации подстанции, принятый в соответствии с IEC 61850
  • Протокол параллельного резервирования использование профилей PTP (L2P2P и L3E2E) для промышленной автоматизации в параллельных сетях
  • PTP изучается для использования в качестве безопасного синхронизатора времени ion протокол в глобальном мониторинге энергосистем
См. также
Примечания
Ссылки
Внешние ссылки
Последняя правка сделана 2021-06-02 04:26:00
Содержание доступно по лицензии CC BY-SA 3.0 (если не указано иное).
Обратная связь: support@alphapedia.ru
Соглашение
О проекте