Интернет е огромна мрежа с милиони сървъри, които комуникират помежду си постоянно. За да може тази връзка да се осъществява правилно, е важно те да знаят колко е часът. Това звучи като доста семпла задача, но всъщност е много по-важна, отколкото изглежда, обобщава The New Yorker.
Проблемът датира още от преди създаването на предшественика на Интернет – стартиралият като военен проект ARPANET. Тогава се оказва, че свързването на устройства помежду им изисква единно време, което те да могат да синхронизират и сравняват, за да знаят от кого и кога идва дадено съобщение и на кого/кога да го изпратят. Ученият Дейвид Милс има опит в тази сфера, като експериментира с поведението на часовниците, когато са свързани в електрическа мрежа.
Това се случва през 1977 г., като той открива, че околната температура влияе на часовниците и те изменят отброяването на секунди по различен начин. Освен това от значение е дори дали електричеството в мрежата идва от въглищна или хидро централа например. Оказва се, че точното време е непрекъснато търсене на консенсус. Затова има и няколко атомни часовника по света, които се синхронизират от Координираното универсално време (UCT).
По отношение на ARPANET, Милс създава софтуерен протокол, който да открива и коригира отклоненията в часовниците на сървърите. Той го нарича Network Time Protocol (N.T.P)., който става ключов за осъществяването на комуникацията в мрежа. През 1988 г. Милс преработва и подобрява N.T.P., за да може да синхронизира с точност десети от милисекундите. „Винаги мислех, че това е нещо като черна магия“, казва Винт Сърф, един от пионерите на Интернет.
Днес N.T.P. се използва от множество системи, включително GPS, както и в подмрежи, включително финансови, телекомуникационни и т.н. Разбира се, разработени са и допълнителни технологии за синхронизиране, но N.T.P е в основата на всичко. Атомните часовници дори директно предават данните си към N.T.P сървъри, а GPS може също да излъчи информацията до свързаните устройства. Така милиарди устройства по целия свят разчитат на N.T.P, за да са синхронизирани.
Като създател на протокола, Милс има последната дума за всички промени в него. Днес обаче той е много по-стар (роден е 1398 г.), болен от глаукома и е загубил зрението си. И макар все още да продължава да работи по N.T.P., това е доста трудно за него и вече всички в бранша са наясно, че скоро някой ще трябва да го замести.
През годините той разчита на няколко души, които също помагат и имат нужните познания, но това създава друг проблем. Получава се своеобразна конкуренция кой ще има ръководната роля за взимането на крайните решения.
А това е много важно, тъй като N.T.P. е критична част от инфраструктурата. Тя се използва и от правителствени и научни институции. Само през 2000 г. сървърите са изпълнявали над 18 млрд. заявки за синхронизация, а сега са десетки пъти повече и постоянно растат заради увеличаването на мрежите и свързаните с тях устройства.
Същевременно системата не е перфектна. Тя допуска грешки, а понякога е обвинявана и некоректно. Милс казва, че преди години е имало неправилно конфигурирани устройства на конкретен производител, които са изпращали огромен брой съобщения към сървъри на няколко места и това е довело до блокирането им. Първоначално за проблема бил обвинен самият протокол, което ядосало Милс, че името му е замесено по този начин. В последствие ситуацията била оправена с нова команда, която да спира ненужно големия брой заявки за синхронизация.
Най-различни подобни проблеми се проявяват редовно. А дори и скоростта на въртенето на Земята влияе на атомните часовници и на отчитането на времето, като точната продължителност на деня варира и се налагат корекции от време на време. Някой трябва да може да решава всичко това бързо и адекватно, както и да поддържа добра комуникация със замесените страни, за да може всичко да се оправя без големи сътресения в инфраструктурата. N.T.P. е с отворен код, като мнозина го преглеждат и предлагат подобрения редовно, но все пак крайното решение трябва да зависи от някого.
А не всички решения са добри. Така например Милс е добавил функция в N.T.P. да отчита „високосните секунди“ два пъти, за да навакса. Но сега се оказва, че може би ще трябва да се „махне“ една секунда, за да се изравни времето, но не е ясно как ще реагират компютърните системи на това, тъй като те не са предвидени за ситуации, в които времето се връща назад.
Google например използва своя версия на N.T.P., като експериментира с различни подходи. Един от тях е вместо да добавя цяла високосна секунда, тя я разделя на множество милисекунди, които постепенно се внедряват в системата. Така сътресенията са по-малко. Експерти по времето като Юда Левин например са против подхода и вместо това смятат, че компаниите трябва просто да работят в посока премахването на високосните секунди (нещо, което те вече са предложили).
Същевременно не е имало изцяло нова версия на N.T.P. от 2021 г. досега. Вече има цяла подгрупа в Звеното за интернет инженерство (IETF), което определя стандартите на глобалната мрежа и то работи по такъв проект. Оказва се обаче, че има известни несъгласия с Милс какви да са промените и той се опасява, че искат да му отнемат решаващия глас.
Мирослав Ливчар пък е създател на алтернативата Chrony. През годините той е бил сред главните лица в поддръжката на N.T.P., но отново заради различния с Милс се отказва. Вместо това създава Chrony, която работи с различни алгоритми, но за момента е далеч от това да е сериозен конкурент на N.T.P.
Така бъдещето на синхронизацията на времето в Интернет изглежда неясно. Изглежда, че единственото, за което всички участници в проектите са съгласни е, че постигането на консенсус ще е трудно. Днес Милс е намалил участието си, но все още подготвя документ с предложения за ревизиране на протокола, но отново се притеснява, че няма да има кой да го редактира и прегледа именно заради множеството различни мнения.
Коментари
Моля, регистрирайте се от TУК!
Ако вече имате регистрация, натиснете ТУК!
Няма коментари към тази новина !
Последни коментари