Синхронизация часов
Синхронизация часов — это раздел информатики и техники , целью которого является координация независимых друг от друга часов . Даже если изначально они установлены точно, реальные часы через некоторое время будут отличаться из-за дрейфа часов , вызванного тем, что часы отсчитывают время с несколько разной скоростью. Существует несколько проблем, возникающих из-за различий в тактовой частоте, и несколько решений, некоторые из которых в определенных контекстах более приемлемы, чем другие. [1]
Терминология
[ редактировать ]В последовательной связи синхронизация часов может относиться к восстановлению часов , которое обеспечивает синхронизацию частоты, в отличие от полной фазовой синхронизации . Такая тактовая синхронизация используется при синхронизации в телекоммуникациях и автоматическом определении скорости передачи данных . [2]
Плезиохронная или изохронная работа относится к системе с частотной синхронизацией и слабыми ограничениями на фазовую синхронизацию. Синхронная работа подразумевает более тесную синхронизацию, основанную, возможно, не только на частоте, но и на времени.
Проблемы
[ редактировать ]В результате трудностей с управлением временем в меньших масштабах возникают проблемы, связанные с перекосом часов , которые усложняются в распределенных вычислениях , в которых несколько компьютеров должны будут реализовывать одно и то же глобальное время. Например, в Unix системах команда make используется для компиляции нового или измененного кода и позволяет избежать повторной компиляции неизмененного кода. Команда make использует часы компьютера, на котором она работает, чтобы определить, какие исходные файлы необходимо перекомпилировать. Если источники находятся на отдельном файловом сервере и часы двух компьютеров не синхронизированы, программа make может выдать неверные результаты. [3]
Синхронизация необходима для точного воспроизведения потокового мультимедиа . Синхронизация часов является важным компонентом систем передачи звука через Ethernet .
Решения
[ редактировать ]В системе с центральным сервером решение синхронизации тривиально; сервер будет диктовать системное время. Алгоритм Кристиана и алгоритм Беркли являются потенциальными решениями проблемы синхронизации часов в этой среде.
В распределенных вычислениях проблема становится еще сложнее, поскольку глобальное время узнать нелегко. Наиболее используемым решением синхронизации часов в Интернете является протокол сетевого времени (NTP), который представляет собой многоуровневую архитектуру клиент-сервер, основанную на передаче сообщений протокола пользовательских дейтаграмм (UDP). Временные метки Лампорта и векторные часы — это концепции логических часов в распределенных вычислениях.
В беспроводной сети проблема становится еще более сложной из-за возможности конфликта пакетов синхронизации в беспроводной среде и более высокой скорости дрейфа тактовых импульсов на недорогих беспроводных устройствах. [4] [5]
Алгоритм Беркли
[ редактировать ]Алгоритм Беркли подходит для систем, в которых радиочасов нет . Эта система не имеет другого способа убедиться в фактическом времени, кроме как поддерживать глобальное среднее время как глобальное время. Сервер времени будет периодически получать время от всех клиентов времени, усреднять результаты, а затем сообщать клиентам о корректировке, которую необходимо внести в их локальные часы для достижения среднего значения. Этот алгоритм подчеркивает тот факт, что внутренние часы могут различаться не только по времени, которое они содержат, но и по тактовой частоте .
Взаимная сетевая синхронизация с тактовой выборкой
[ редактировать ]Взаимная сетевая синхронизация с тактовой выборкой (CS-MNS) подходит для распределенных и мобильных приложений. Было показано, что он масштабируется в ячеистых сетях, которые включают косвенно связанные несмежные узлы, и совместим с IEEE 802.11 и аналогичными стандартами. Он может иметь точность порядка нескольких микросекунд, но требует прямого физического беспроводного подключения с незначительной задержкой канала (менее 1 микросекунды) на каналах между соседними узлами, что ограничивает расстояние между соседними узлами до нескольких сотен метров. [6]
Алгоритм Кристиана
[ редактировать ]Алгоритм Кристиана основан на существовании сервера времени. [7] Сервер времени поддерживает свои часы, используя радиочасы или другой источник точного времени, после чего все остальные компьютеры в системе синхронизируются с ним. Клиент времени будет поддерживать свои часы, вызывая процедуру на сервере времени. Варианты этого алгоритма позволяют более точно рассчитывать время за счет учета времени распространения радиосигнала в сети .
Спутниковые навигационные системы
[ редактировать ]Помимо использования в навигации, система глобального позиционирования (GPS) также может использоваться для синхронизации часов. Точность сигналов времени GPS составляет ±10 наносекунд. [8] Для использования GPS (или других систем спутниковой навигации ) для синхронизации требуется приемник, подключенный к антенне с беспрепятственным обзором неба.
Временные коды междиапазонной группы приборов
[ редактировать ]Тайм-коды IRIG — это стандартные форматы для передачи информации о времени. Атомные стандарты частоты и приемники GPS, предназначенные для точного измерения времени, часто оснащены выходом IRIG. вооруженных сил США Стандарты были созданы Рабочей группой по телекоммуникациям Междиапазонной инструментальной группы (IRIG), органом по стандартизации Совета командиров полигонов. Работа над этими стандартами началась в октябре 1956 года, а оригинальные стандарты были приняты в 1960 году. [9]
Протокол сетевого времени
[ редактировать ]Протокол сетевого времени (NTP) — это высоконадежный протокол, широко распространенный в Интернете. Хорошо проверенный годами, он обычно считается новейшим протоколом распределенной синхронизации времени для ненадежных сетей . Это может уменьшить смещение синхронизации до нескольких миллисекунд в общедоступном Интернете и до субмиллисекундного уровня в локальных сетях .
Упрощенная версия протокола NTP, Simple Network Time Protocol (SNTP), также может использоваться как чисто однократный протокол первичной/вторичной синхронизации без сохранения состояния, но в ней отсутствуют сложные функции NTP и, следовательно, она имеет гораздо более низкие уровни производительности и надежности. .
Протокол точного времени
[ редактировать ]Протокол точного времени (PTP) — это протокол «главный/подчиненный» для доставки высокоточного времени по локальным сетям.
Эталонная синхронизация широковещательной передачи
[ редактировать ]Алгоритм эталонной широковещательной синхронизации времени (RBS) часто используется в беспроводных сетях и сенсорных сетях. В этой схеме инициатор передает справочное сообщение, призывающее получателей скорректировать свои часы.
Синхронизация эталонной инфраструктуры вещания
[ редактировать ]Синхронизация эталонной широковещательной инфраструктуры (RBIS) [10] Протокол — это протокол синхронизации главный/подчиненный, такой как RBS, основанный на парадигме синхронизации получателя/приемника. Он специально разработан для использования в беспроводных сетях IEEE 802.11, настроенных в режиме инфраструктуры (т. е. координируемых точкой доступа). Протокол не требует каких-либо изменений в точке доступа.
Синхронный Ethernet
[ редактировать ]Синхронный Ethernet использует Ethernet синхронным образом , поэтому в сочетании с протоколами синхронизации, такими как PTP в случае проекта «Белый кролик» , достигается точность синхронизации субнаносекунды.
Беспроводные одноранговые сети
[ редактировать ]Синхронизация достигается в беспроводных одноранговых сетях путем отправки сообщений синхронизации в многопрыжковом режиме, при этом каждый узел постепенно синхронизируется с узлом, который является непосредственным отправителем сообщения синхронизации. Примеры включают протокол синхронизации времени наводнения (FTSP), [4] и Гармония, [5] оба способны достичь синхронизации с точностью порядка микросекунд.
Гюйгенс
[ редактировать ]Исследователи из Стэнфорда и Google представили Huygens — алгоритм сквозной синхронизации часов на основе зонда. Huygens реализован в программном обеспечении и, следовательно, может быть развернут в центрах обработки данных или в публичных облачных средах. Используя некоторые ключевые аспекты современных центров обработки данных и применяя новые алгоритмы оценки и методы обработки сигналов, алгоритм Гюйгенса достиг точности в десятки наносекунд даже при высокой загрузке сети. [11] Результаты этого исследования апробируются в приложениях финансового рынка. [12]
См. также
[ редактировать ]- Синхронизация Эйнштейна
- Международное атомное время
- Идентификация сети и часовой пояс
- Синхронизация (информатика)
- Передача времени и частоты
- Сигнал времени
- Стандарт времени
- Синхронизация эталонной инфраструктуры вещания
Ссылки
[ редактировать ]- ^ Таненбаум, Эндрю С .; ван Стин, Маартен (2002), Распределенные системы: принципы и парадигмы , Прентис Холл , ISBN 0-13-088893-1
- ^ Норман Мэтлофф (3 сентября 2001 г.), Передача по последовательной линии (PDF) , получено 17 апреля 2018 г.
- ^ Марко Платания (3 июня 2018 г.). «Синхронизация часов» (PDF) . п. 11.
- ^ Перейти обратно: а б Мароти, Миклош; Кусы, Бранислав; Саймон, Дьюла; Ледеци, Акос (2004). «Протокол синхронизации времени наводнения». Материалы 2-й Международной конференции по встраиваемым сетевым сенсорным системам . СенСис '04. Нью-Йорк, штат Нью-Йорк, США: ACM. стр. 100-1 39–49. дои : 10.1145/1031495.1031501 . ISBN 1581138792 . S2CID 9897231 .
- ^ Перейти обратно: а б Ку, Джинкю; Панта, Раджеш К.; Багчи, Саураб; Монтеструке, Луис (2009). «Сказка о двух синхронизирующихся часах». Материалы 7-й конференции ACM по встраиваемым сетевым сенсорным системам . СенСис '09. Нью-Йорк, штат Нью-Йорк, США: ACM. стр. 239–252. дои : 10.1145/1644038.1644062 . ISBN 9781605585192 . S2CID 8242938 .
- ^ Рентель, Карлос Х.; Кунц, Томас (март 2005 г.), «Алгоритм взаимной сетевой синхронизации с тактовой выборкой для беспроводных одноранговых сетей», IEEE Wireless Communications and Networking Conference , 1 , IEEE Press: 638–644, doi : 10.1109/WCNC.2005.1424575 , S2CID 1340072
- ^ Кристиан, Ф. (1989), «Вероятностная синхронизация часов», Distributed Computing , 3 (3), Springer: 146–158, doi : 10.1007/BF01784024 , S2CID 3170166
- ^ «Общий вид передачи времени по GPS» . Национальный институт стандартов и технологий . Архивировано из оригинала 28 октября 2012 г.
- ^ Джош Мэтсон (май 2013 г.). «Выбор правильного протокола синхронизации времени и включение модуля 1756-TIME в ваше приложение» (PDF) . Роквелл Автоматизация . Проверено 13 августа 2019 г.
- ^ Сина, Г.; Сканцио, С.; Валенцано, А.; Зунино, К. (июнь 2015 г.), «Внедрение и оценка протокола синхронизации эталонной широковещательной инфраструктуры», IEEE Transactions on Industrial Informatics , 11 (3), IEEE Press: 801–811, doi : 10.1109/TII.2015.2396003 , S2CID 17867070
- ^ Использование естественного сетевого эффекта для масштабируемой и детальной синхронизации часов . 2018. С. 81–94. ISBN 9781939133014 .
- ^ Джон Маркофф (29 июня 2018 г.). «Время, разделенное до наносекунды, — это именно то, чего хочет Уолл-стрит» . Нью-Йорк Таймс .
Дальнейшее чтение
[ редактировать ]- Говиндан Каннан, Правейн; Джоши, Радж; Чан, Мун Чун. (апрель 2019 г.), «Точная синхронизация времени в плоскости данных с использованием ASIC с программируемой коммутацией», Материалы симпозиума ACM 2019 г. по исследованиям SDN , ACM, стр. 8–20, doi : 10.1145/3314148.3314353 , ISBN 9781450367103 , S2CID 85518997
- Использование естественного сетевого эффекта для масштабируемой и детальной синхронизации часов , ISBN 9781939133014 , получено 19 октября 2021 г.