Для виконання контрольної роботи Ви повинні скопіювати текст завдання (у форматі md ) та створити, використовуючи цей текст, на хостингу hack.md лист контрольної роботи із зазначенням Вашого прізвища, імені та по батькові.
Відразу після закінчення контрольної роботи ви маєте надіслати посилання на опублікований лист з розв'язаннями. Лист повинен бути опублікований з правами читання та правки signed-in users.
Остаточну оцінку буде поставлено після співбесіди у вибраних питаннях на знання записаних на Вашому листі контрольної роботи відповідей.
де
- розузгодження комп'ютерного годинника з ідеальним годинником у початковий момент,
- швидкість ходу комп'ютерного годинника щодо ідеального годинника, починаючи з початкового моменту,
- дрейф (відхилення швидкості) комп'ютерного годинника щодо ідеального годинника, починаючи з початкового моменту.
де -початкова відносна неузгодженість, а - дрейф другого годинника відносно до першого ().
У досить простих сценаріях узгодження часу можна знехтувати -дрейфом пар годинників і оцінювати тільки початкову відносну неузгодженість годинників .
Початкова оцінка поточної неузгодженості між часовими помітками клієнта та сервера:
де
— часова помітка клієнта про передачу пакета запиту,
— часова помітка сервера прийому пакета запиту,
— часова помітка сервера передачі пакету у відповідь,
— часова помітка клієнта про прийом пакету у відповідь.
Для каналів з асиметричними затримками можна переписати систему рівнянь (|3) як системи з обмеженням (θ,p|4):
де - параметр асиметрії (для симетричних затримок )
Якщо нам відомі пряма (forward) і зворотна (backward) затримки (), то коефіцієнт асиметрії визначається як
Для симетричних затримок .
Маючи параметр , коефіцієнт асиметрії затримок можна визначити як
Уточнення величини асиметрії - це важке завдання, навіть із використанням односторонніх протоколів, таких, як UDP і протоколів, заснованих на них, наприклад, WebRTC, якщо відсутні заздалегідь синхронізовані пари атомних годинників
Розглянемо мережну програму, в якій два клієнти (js програми всередині браузерів), що знаходяться, можливо, дуже далеко один від одного і від сервера, обмінюються своїм поточним часом, використовуючи тільки HTTP GET fetch() на боці браузерів.
Вибрати варіант за формулою
де d – ваш день народження.
Якщо ви встигли запрограмувати Ваше рішення, треба надати посилання на invite Вашого проекту
2024: Комп'ютерні системи і мережі. 3. Узгодження стану. Синхронізація часу