Secunda care sperie Internetul: ce probleme au fost în 2012

de: Răzvan Băltărețu
17 06. 2015

Pe 30 iunie, omenirea va avea o secundă în plus. Dacă te bucuri că vei avea, în sfârșit, mai mult timp la dispoziție (sic!), ar trebui să știi că în urmă cu trei ani această secundă a dezorientat Internetul.

Secunda din 30 iunie este necesară, cum a fost și în urmă cu trei ani, deoarece trebuie compensată încetinirea vitezei de rotaţie a Pământului în jurul propriei axe. Din 1972, oamenii au primit 24 de astfel de secunde-bonus. Cele mai recente au fost adăugate timpului universal în 2008 şi în 2012. Fenomenul mareelor face ca rotația planetei să încetinească și așa se ajunge la această situație.

Din 1967, timpul universal, adică cel afişat de ceasuri şi computere, nu mai este conectat la rotaţia terestră şi la corpurile astrale, ci este calculat în funcţie de radiaţiile izotopului de cesiu 133. Astfel a apăut o diferenţă între timpul universal şi rotaţia terestră. Întrucât încetinirea rotaţiei Terrei în jurul propriei axe este de o secundă, ea trebuie adăugată dispozitivelor care afişează ora exactă. Dacă această corecţie nu ar fi realizată, atunci ziua şi noaptea vor ajunge să fie „inversate” (din punct de vedere orar) peste 6.000 de ani, conform Mediafax.

[related]

Cum a fost afectat Internetul în 2012 din cauza secundei

Deși pare o chestiune de rutină, în 2012 o astfel de secundă a dat peste cap Internetul, site-uri precum Reddit fiind grav afectate, după cum nota „Adevărul” la acea dată. Reddit a pus problemele, în primă fază, pe seama unei scăderi de viteză din cauza dificultăților pe care le-a întâmpinat Amazon în ultimele 24 de ore. „Doar părea că rețeaua se mișcă foarte încet”, a spus Jason Harvey, unul dintre administratorii care supervizează activitatea Reddit. Dar după jumătate de oră s-a dovedit că problemele sunt la propriile servere care rulează sistemul de operare Linux.

Kernelul din Linux are un subsistem denumit “hrtimer” (temporizator de înaltă rezoluție). Acesta nu s-a adaptat adăugării secundei și a creat hiperactivitate pe servere, ceea ce a dus la blocarea procesoarelor. Reddit n-a fost singurul care a avut probleme. Acest tip de dificultăți apar de fiecare dată când este o ajustare de timp. În ianuarie 2009, schimbarea a afectat Solaris, sistemul de operare al Sun Microsystems și un pachet de software de la Oracle.

“La fiecare astfel de ajustare a timpului găsim ceva. Este enervant, pentru că e un caz clasic de cod care nu ajunge să fie rulat și, deci, nu este testat în condiții normale”, a spus Linus Torvalds la acea dată. Totuși, scăparea din kernelul Linux-ului a fost reparată de hackerul John Stultz, în martie, dar unele versiuni de Linux nu au fost actualizate. Hrtimer este apelat când o aplicație este în modul “hibernare” și așteaptă ca sistemul de operare să încheie niște operații. În unele cazuri, își fixează o alarmă care se declanșează când sistemului de operare îi ia prea mult timp.

Pe 30 iunie, când s-a adăugat secunda, hrtimerele erau înaintea întregului sistem și astfel s-a declașant alarma care a dus la pornirea mai multor aplicații care, la rândul lor, au supraîncărcat procesoarele.

Internetul s-a dezvoltat repede și a mai omis lucruri

O soluție în astfel de cazuri este restartarea, dar asta a produs, în 2012, o „cădere” a Reddit pentru aproximativ jumătate de oră. Mai mult, sisteme ca Linux se bazează pe Network Time Protocol (NTP) prin care sunt conectate la ceasurile atomice pentru a verifica timpul. Înainte de 30 iunie 2012, NTP a transmis avertismente către servere că anul acesta o zi va avea cu o secundă mai mult. În urma acestuia, câteva servere Opera s-au blocat.

O explicație pentru astfel de probleme este că web-ul nu a avut prea multe astfel de ocazii. “Din 1999 până în 2005, nu au fost prea multe secunde adăugate. Și toate noțiunile despre procesoare și stocare online au venit într-o perioadă de calm temporal. A fost o perioadă mare de timp în care oamenii au creat tot felul de lucruri și n-au trebuit să se gândească cum se vor adapta la timp”, a explicat Steve Allen, programator la Observatorul Lick, de ce Internetului i-a luat mai mult să-și dea seama cum apar așa probleme.