Що таке gPTP?
gPTP – це назва, надана профілю IEEE 802.1AS протоколу PTP. gPTP – це лише свого роду профіль PTP. Це пояснюється тим, що gPTP специфікований незалежно. Іншими словами, замість того, щоб стверджувати, що він вимагає, забороняє та дозволяє певні опції, визначені в IEEE 1588, він визначає всі ці функції незалежно у стандарті IEEE 802.1AS. Як результат, поточна специфікація gPTP, IEEE 802.1AS-2020, має 421 сторінку, майже таку ж довжину, як IEEE 1588-2019. 1AS читається нелегко. Більшість людей, які його читають, спочатку вважають його дуже складним, але зрештою, якщо виконати роботу, дуже однозначним. Це пояснюється тим, що вся поведінка протоколу описується за допомогою машин станів. Якщо ви читали 1AS і вона вам сподобалася, я рекомендую «Етику» Бенедикта де Спінози для вашого наступного цікавого читання.
IEEE 802 та IEEE 802.1 – це ті, хто подарував нам Ethernet та Wi-Fi, тому вони мають значну довіру. Першу (2011) версію gPTP вони спрямовували на аудіо/відео програми, але ці люди зазвичай дотримуються рекомендацій організацій зі стандартизації мовлення/медіа SMPTE та Товариства аудіоінженерії, які обидві пішли іншим шляхом. Однак існує великий інтерес до gPTP у світі промислової автоматизації та автомобільних технологій.
gPTP працює через Ethernet і також може взаємодіяти з механізмом точного вимірювання часу Wi-Fi. Цей механізм був створений для того, щоб пристрої Wi-Fi могли визначати затримки поширення між собою. Використання точного вимірювання часу краще, ніж просто надсилання повідомлень gPTP через Wi-Fi, оскільки зазвичай неможливо встановити часову позначку на Media Independent Interface (MII), як це можливо з PTP в Ethernet, через те, що PHY та MAC інтегровані в окремі мікросхеми. Таким чином, ви отримуєте кращу точність, використовуючи вбудований механізм синхронізації Wi-Fi.
gPTP працює з sdoId=1, що робить його єдиним профілем PTP наразі, який має значення, відмінне від 0. Це логічно ізолює його від усього іншого трафіку PTP.
gPTP використовує механізм затримки вузла для вимірювання затримки мережі, і тому вимагає, щоб усі комутатори в мережі мали прозорий годинник (TC) або граничний годинник (BC). Зверніть увагу, що затримка вузла називається затримкою каналу в 1AS.
На практиці BC розгортаються набагато частіше, ніж TC, оскільки перша версія gPTP мала лише BC. Програми промислової автоматизації часто використовують кілька доменів PTP в одній фізичній мережі. Крім того, багато BC мають багато портів, тому, якщо ви передаєте повідомлення затримки вузла в обидва напрямки в кожному порту кілька разів для кожного домену, це означає багато повідомлень та обробки затримки вузла. Кращим рішенням є використання служби загальної середньої затримки каналу (CMLDS). Це незалежний від домену режим затримки вузла, який вимірює затримки вузла та робить результати доступними для всіх доменів. CMLDS працює на SdoID 20016 та в Ethernet в домені 0.
Говорячи про gPTP BC, вони є лише різновидом BC. З точки зору протоколу вони поводяться здебільшого як BC, але за продуктивністю синхронізації є еквівалентом TC. Останнє пояснюється тим, що gPTP BC зазвичай не синхронізуються з Grandmaster Clock. Натомість вони вимірюють коефіцієнт швидкості сусідів (тобто коефіцієнт частоти) із сусідніми gPTP-пристроями та накопичують добуток коефіцієнтів швидкості вхідних сусідів по всьому шляху зв'язку PTP у сукупному коефіцієнті швидкості TLV, що додається до повідомлень Announce (див. Рисунок 1). Змінне представлення призначене для захисту від помилок переповнення та недостатнього переповнення, уникаючи використання арифметики з плаваючою комою.

Рисунок 1. Співвідношення швидкості сусідів, виміряне за допомогою повідомлень PTP PDelay.
Отримувачі часу використовують сукупне співвідношення швидкості та поля корекції для визначення зміщення свого годинника відносно годинника Grandmaster.
Вимірювання співвідношення швидкості сусідів проілюстровано на рисунку 2.

Рисунок 2. Структура TLV кумулятивного коефіцієнта швидкості.
Пам'ятаєте, я казав, що gPTP BCs поводяться здебільшого як PTP BCs. Вони можуть діяти в режимі SyncLocked. Цей режим описано на рисунку 3.

Рисунок 3. Порівняння стандартних PTP-базових ліній зв'язку з gPTP-базовими лініями зв'язку в режимі SyncLocked.
