Fordele ved nøjagtig netværkssynkronisering
Sendt af Richard N Williams on Oktober 12th, 2009
Din computer gør sandsynligvis hundredvis og tusind opgaver om dagen. Hvis det er en del af et netværk, kan antallet af opgaver være millioner. Fra at sende e-mails til at gemme data, og alt andet, som din computer har til opgave at gøre, bliver de alle logget af computeren eller serveren.
Computere bruger tidsstempler til logoprocesser, og faktisk bruges tidsstempler som den eneste metode, en computer skal angive, hvornår og hvis en opgave eller applikation er blevet udført. Timestamps er normalt et 16 eller 32 bit heltal (et langt tal), der tæller sekunder tilbage fra en prime epoke - normalt 01 januar 1970.
Så for hver opgave, som din computer gør, vil den blive stemplet med antallet af sekunder fra 1970, at transaktionen blev udført. Disse tidsstempler er det eneste stykke information, et computersystem skal fastslå hvilke opgaver der er blevet gennemført, og hvilke opgaver der endnu ikke er indledt.
Problemet med computernetværk på mere end en maskine er, at klokkerne på individuelle enheder ikke er tilstrækkelige nok til mange moderne tidsfølsomme applikationer. Computer ure er tilbøjelige til at drive de er typisk baseret på billige krystal oscillator kredsløb og kan ofte drifte med over et sekund om dagen.
Det kan måske ikke synes meget, men i dagens tidsfølsomme verden kan et sekund være lang tid, især når man tager højde for behovene hos brancher som børsen, hvor et sekund kan være forskellen i prisen på flere procent eller online pladsbestilling, hvor et sekund kan gøre forskellen mellem et ledigt sæde og en, der sælges.
Denne drift er også akkumulerende, så i løbet af få måneder kan computersystemerne være over et minut ud af synkronisering, og dette kan have dramatiske effekter på tidsfølsomme transaktioner og kan resultere i alle mulige uventede problemer fra e-mails, der ikke ankommer som en computer, mener de er ankommet, før de er blevet sendt til data, som ikke bliver sikkerhedskopieret eller helt tabt.
En NTP-tidsserver or netværkstidsserver bliver i stigende grad afgørende udstyrstyper til det moderne computernetværk. De modtager en præcis kilde til tid fra et atomur og distribuerer det til alle enheder på netværket. Som atomklokker er utroligt nøjagtige (de vil ikke køre med et sekund selv i et 100,000 år) og protokollen NTP (Network Time Protocol) kontrollerer løbende enhederne tid mod master atomuretiden - det betyder at computernetværket kan køre perfekt synkroniseret med hver enhed inden for et par millisekunder af atomuret.