Протокол PTPv2 в коммутаторах SOFINET

Синхронизация времени стала неотъемлемой частью многих современных технологий и отраслей. Например, в корпоративных сетях синхронизация необходима для корректной работы серверов и приложений, а в системах видеонаблюдения — для точной записи событий. В таких отраслях можно применять протокол NTP (Network Time Protocol), который стал стандартом де-факто для синхронизации времени. NTP обеспечивает точность на уровне миллисекунд, что достаточно для большинства задач, таких как логирование событий, работа баз данных или синхронизация рабочих станций.

Однако есть отрасли, где точность синхронизации времени критически важна, и отклонение даже на наносекунды может привести к серьезным последствиям. Рассмотрим несколько примеров:

  • Финансовые рынки (биржи): На онлайн-биржах миллисекунды и даже микросекунды определяют, кто первым купит или продаст актив. Серверы Торговой Клиринговой Системы (ТКС) должны быть синхронизированы с высокой точностью, чтобы избежать ошибок в расчетах и гарантировать честность торгов. Если точность синхронизации снизится, это может привести к прямым финансовым потерям и утрате доверия к бирже.
  • Сети сотовой связи 5G: В сетях 5G используется технология временнОго мультиплексирования данных Time Division Duplex (TDD), где один и тот же частотный диапазон используется для передачи и приема данных в разные временные интервалы. Если базовые станции не синхронизированы, возникает интерференция, что приводит к потере данных, снижению качества связи и в конечном итоге к отказу в обслуживании. Точность синхронизации станций сотовой связи должна быть на уровне наносекунд.
  • Энергетика (Smart Grid): В умных энергетических сетях (Smart Grid) точная синхронизация требуется для корректного управления потоками энергии, защиты оборудования и анализа данных в реальном времени. Потеря точной синхронизации времени может привести к авариям, отключениям и финансовым потерям.
  • Обработка теле/видео/аудио потоков: В телевидении и медиаиндустрии синхронизация аудио и видео потоков критически важна. Если синхронизация нарушена, зрители заметят задержку звука и несоответствие аудиоряда «картинке». При монтаже часть информации может быть утеряна либо, наоборот, могут быть задействованы лишний кадры. В профессиональных студиях точность синхронизации должна быть на уровне микросекунд.

Для решения этих задач был разработан протокол PTPv2 (Precision Time Protocol версии 2), который обеспечивает синхронизацию времени с точностью до наносекунд.

Общее техническое описание механизмов и сообщений PTPv2

PTPv2 — это сетевой протокол, который передает точное время от источника (Grand Master) к приемникам (Ordinary Clock). Основная задача PTPv2 — обеспечить синхронизацию всех устройств в сети с минимальной погрешностью.

  • Grand Master (GM): Это устройство, которое является источником точного времени. Обычно Grand Master оснащен GPS-приемником для получения точного времени от спутников. Для повышения надежности GM часто дублируется.
  • Ordinary Clock (OC): Это конечные устройства, которые синхронизируются с Grand Master. Например, серверы, медиаконвертеры, базовые станции или камеры.
  • Сообщения PTPv2: Протокол использует несколько типов сообщений для синхронизации:
    • Sync: Сообщение, которое передает текущее время от Grand Master.
    • Follow_Up: Дополнительное сообщение, которое передает точное время отправки Sync.
    • Delay_Req: Запрос от Ordinary Clock для измерения задержки.
    • Delay_Resp: Ответ от Grand Master с информацией о задержке.

Проблема транзитной инфраструктуры

Одна из главных проблем, с которой сталкивается PTPv2, — это задержки, вносимые самой транзитной инфраструктурой (коммутаторами, маршрутизаторами, кабелями). Такие задержки могут быть разной длины и зависят от множества факторов, таких как:

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

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

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

Решение: аппаратная поддержка PTPv2 в коммутаторах SOFINET

Для компенсации этого неприятного эффекта и компенсации задержек в транзитной инфраструктуре коммутаторы должны поддерживать функцию Transparent Clock (TC). Это аппаратная функция, которая позволяет коммутаторам измерять время прохождения пакета через само устройство и корректировать временные метки в транзитных сообщениях PTPv2. Особенно важно подчеркнуть, что это должно происходить на аппаратном уровне, т.е. на уровне чипсета коммутатора. При отсутствии аппаратной поддержки PTPv2 чипсетом коммутатора невозможно добиться стабильной синхронизации времени.

  • Как это работает компенсация задержек:
    1. Коммутатор получает сообщение PTPv2 (например, Sync).
    2. Он измеряет время, которое потребовалось для обработки и передачи пакета.
    3. Коммутатор добавляет это время в поле correctionField сообщения PTPv2.
    4. Конечное устройство (Ordinary Clock) учитывает эту поправку при расчете точного времени.

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

Настройка PTPv2 на коммутаторах SOFINET

Коммутаторы SOFINET линеек SFN3600, SFN3800-RM, SFN7300, SFN7400, SFN8500 поддерживают протокол PTPv2 в режиме Transparent Clock начиная с версии ПО SOFOS 10.1.240.4.

Ниже пример настройки коммутатора в режиме TC End-to-End:

! Включаем PTP глобально на коммутаторе и выбираем режим End-To-End Transparent Clock
#(config)ptp enable
#(config)ptp device-type e2etc

! Включаем PTP на интерфейсе
#(config)interface 25G 0/1
#(config-if)ptp enable

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

Функционал PTPv2, как и любой другой функционал коммутаторов SOFINET, никак не лицензируется и доступен к использованию сразу после приобретения коммутатора.

Заключение

PTPv2 — это мощный инструмент для обеспечения точной синхронизации времени в современных сетях. Благодаря аппаратной поддержке в коммутаторах, протокол способен компенсировать задержки, вносимые транзитной инфраструктурой, что делает его незаменимым в таких сферах, как финансы, телекоммуникации, энергетика, медиа и многие другие. Настройка PTPv2 на современных коммутаторах SOFINET проста и позволяет быстро развернуть систему синхронизации времени с минимальными затратами. В реальных сетях, где задержки могут быть значительными, использование PTPv2 с поддержкой Transparent Clock становится критически важным для обеспечения стабильной работы.