Atomsko vreme |
Bojan Stojanović |
Neka vreme na vašim računarima otkucava u ritmu svetskog standarda vremena - povežite se sa cezijumskim atomskim časovnicima koji greše manje od sekunda u milion godina! |
Prema jednoj anegdoti, ruski pesnik Samuil Jakovljevič Maršak je, prilikom prvog boravka u
Londonu 1914. godine, sreo čoveka na ulici i upitao ga: "Šta je vreme?" Maršak je, u stvari,
hteo da sazna koliko je sati ali, pošto još uvek nije dobro govorio engleski, umesto "What time
is it?" pitao je "What is time?" Zbunjeni prolaznik je odgovorio: "Pa to je filozofsko pitanje.
Zašto ga meni postavljate?" Zaista, vreme je kompleksna pojava koju nije lako definisati i
objasniti bez pomoći fizike, kosmologije, biohemije ili filozofije, pa se zato drugo pitanje
čini jednostavnijim. Dakle, koliko je sati?
Ako odgovor potražite konsultujući interni časovnik PC računara, nećete biti mnogo zadovoljni.
Ukoliko ga niste skoro doterivali, odstupanja od nekoliko minuta su sasvim uobičajena. U većini
današnjih personalaca nalazi se nekompenzirani kvarcni oscilator osetljiv na ambijentalnu
temperaturu, pa je prosečno dnevno odstupanje nekoliko sekundi. Istraživanje na tu temu
obavljeno pre par godina u Americi obuhvatilo je 5722 računara - šezdeset procenata je
pokazivalo vreme sa greškom većom od minuta, kod 10% greška je bila veća od 13 minuta, a na
izvesnom broju računara čak ni godina nije bila korektna.
Kakvu korist imamo od toga da nam računar pokazuje tačno vreme? Ako su u pitanju individualni,
neumreženi računari, sa aproksimativnim vremenom se može živeti. Uostalom i na ručnim
časovnicima, prema kojima usklađujemo dobar deo svakodnevnih aktivnosti, tolerancija od
plus-minus minut je podnošljiva. Međutim, tu je i ona principijelna crta - ako sat već postoji,
zašto da ne bude tačan? U nekim primenama računara u vojsci, masovnim komunikacijama ili
industriji ovakvo razmatranje je bespredmetno. Jednostavno, neophodno je besprekorno tačno
vreme (reda veličine milisekunda).
Kada se radi o umreženim računarima (recimo lokalna mreža neke firme) može se govoriti o
potrebi da svi računari u mreži pokazuju isto vreme. Zamislite banku ili osiguravajući zavod
gde je neophodno pratiti hronologiju transakcija. Ukoliko bi ta banka imala filijale u nekoliko
gradova bilo bi razumno upotrebiti neki efikasan metod za sinhronizaciju vremena na svim
računarima. Ako problem posmatramo globalno, brzo ćemo stići do Interneta. Pored obilja
podataka koji putuju mrežom nad mrežama, kako stoje stvari kada je u pitanju tačno vreme.
Sjajno! Internet omogućava da se povežete direktno sa primarnim etalonima vremena - cezijumskim
atomskim časovnicima koji greše manje od sekunda u milion godina!
Kako bi informacija o vremenu, koja se prenosi standardnim TCP/IP paketima čije je kašnjenje u
uslovima "gustog saobraćaja" veoma teško predvideti, bila pouzdana, razvijen je Network Time
Protocol (NTP) koji koristi veoma složene algoritme za proračunavanje i kompenzaciju
kašnjenja. Da bismo razjasnili neke pojmove o kojima će u tekstu biti reči i upustili se u opis
funkcionisanja NTP-a, napravićemo "mali" skok u prošlost. Spremite se za putovanje, razdaljina
je milion godina...
Obrisi vremena
Homo erectus i rani Homo sapiens svakako se nisu bavili slojevitim aspektima
vremena, ali su osećali njegov tok. Kako je u osnovi registrovanja vremena neki periodični
proces, u davna vremena nije bilo mnogo izbora - na raspolaganju su bili "prirodni oscilatori":
Mesec (mesečeve mene, plima i oseka) i Zemlja (rotacija Zemlje oko sopstvene ose, smenjivanje
dana i noći, odnosno revolucija Zemlje oko Sunca, smena godišnjih doba). Osnovni ciklus je,
naravno, dan-noć, duboko usađen u životni ritam biljnog i životinjskog sveta.
Kako se naš vremeplov pomera ka osvitima civilizacije, primećujemo želju da se uspostavi
kontrola nad neumitnim tokom vremena. Dovoljno je bilo razviti nekakav sistem beleženja
vremenskih intervala kako bi se moglo predvideti približavanje cikličnih prirodnih pojava.
Egipćani su imali potrebu za hronološkim metodom kojim bi mogli da predvide ponašanje Nila i
tako prilagode poljoprivredne radove od kojih je zavisilo funkcionisanje celokupne države.
Gotovo svi stari narodi razvili su u tu svrhu kalendare zasnovane na kretanju nebeskih tela.
Kalendari su bili manje ili više precizni, a cela zbrka oko njih, koja se održala do današnjih
dana, zasniva se na činjenici da Zemlja ne obiđe oko Sunca za ceo broj dana, već za 365.2422
dana. Za detaljne informacije o kalendarima pogledajte tekst Dejana Ristanovića "Strogo po
kalendaru", koji je objavljen u "Računarima" 94.
Ovde će biti dovoljna napomena da je za kalendar kakvog ga danas koristimo usvojen početni
trenutak - podne 1. januara 4713. godine pre nove ere. Broj dana protekao od tog trenutka
naziva se julijanski broj dana ( Julian Day Number - JDN). Standardni julijanski dan ima
Radio signal tačnog vremena
Ako želite da imate sopstveni stratum 1 vremenski server, najbolje je da nabavite
specijalizovanu PC karticu koja će vam obezbediti radio sinhronizaciju sa nekim od atomskih
časovnika. Najefikasnije i najjeftinije rešenje (oko 200 DEM) je nabaviti karticu koja prima
DCF77 signal. Ovakve kartice sa softverom se prodaju u Conrad -ovim prodavnicama u
Nemačkoj, a mnogim časopisima za elektroniku su objavljivane šeme za njihovu samogradnju.
Kompletne podatke o radio signalu koji emituje DCF77 naći ćete na
www.eecis.udel.edu/~mills/ntp/dcf77.html .
|
Doba klepsidri i peščanika
Iako je u poređenju sa našim, život Sumeraca ili Egipćana bio manje dinamičan, postepeno se
javljala potreba za merenjem kraćih vremenskih intervala nego što su to dani, meseci i godine.
Prvi časovnici nastali su oko 3500 godine p.n.e - bili su to obelisci čija je senka omogućavala
podelu dana na pre i posle podne. Obelisk je preteča sunčanih časovnika koji su u Egiptu ušli u
upotrebu oko 1500. godine p.n.e. Ovi časovnici su imali precizniju podelu tako da počinje da se
koristi termin čas.
Naučnici tog doba već su prilično dobro spoznali vreme i praktične probleme skopčane sa
njegovim merenjem. Znali su da mora postojati referentni proces kojim se registruju jednaki
vremenski intervali kao i neki način da se dobijeni rezultati merenja prikažu. Sunčani
časovnici su u to vreme bili najprecizniji ali, tokom oblačnih ili kišovitih dana, potpuno
neupotrebljivi. Zato su se konstruktori bacili na posao pokušavajući da pronađu druge načine za
merenje vremena. Tako je tadašnja tehnologija lansirala specijalno baždarene i markirane sveće,
zatim petrolejske lampe na čijim je rezervoarima bila označena vremenska skala, peščane i
vodene časovnike.
Jedan od najstarijih vodenih časovnika pronađen je u grobnici faraona Amenhotepa I, koji je
mumificiran oko 1500. godine p.n.e. Na razvoju vodenih časovnika najviše su radili stari Grci.
Njihovi usavršeni modeli nazvani su klepsidre, a pored Grka koristili su ih Rimljani i Kinezi.
Klepsidre su zasnovane na principu isticanja vode u tankom mlazu iz rezervoara, pri čemu se
puni drugi rezervoar sa plovkom; kretanje plovka pomera kazaljku koja pokazuje vreme.
Preciznost ovih časovnika nije bila velika, prvenstveno zbog toga što isticanje mlaza vode nije
apsolutno ravnomeran proces (i pored toga što su se konstruktori trudili da obezbede konstantan
pritisak), ali je njihov značaj u tome što su omogućavali merenje vremena nezavisno od doba
dana. Na žalost, zimski uslovi nisu im bili naklonjeni, jer bi se tada voda jednostavno ledila.
Antifriz je izmišljen par hiljada godina kasnije.
Zapinjača i klatno
U srednjem veku nije ostvaren nikakav napredak u oblasti merenja vremena - još uvek su važili
principi koje su ustanovili Egipćani i Grci. U X veku u Engleskoj, bili su prilično popularni
ručni sunčani časovnici. Renesansa u Italiji, pored ostalog, donela je i velike mehaničke
časovnike na tornjevima i crkvama u mnogim gradovima - engleska reč clock (časovnik)
etimološki je vezana za francusku reč cloche koja znači zvono. Zvona su igrala važnu
ulogu u srednjevekovnom životu i sva je prilika da su mehanizmi kojima su ona pokretana na
zvonjavu, načinjeni od zupčastih točkova i oscilirajućih ručki, pripremili put za pronalazak
mehaničkih časovnika.
Ključni izum koji je omogućio pojavu mehaničkog časovnika je vretenasta zapinjača ( verge
escapement ). Bila je to domišljata naprava u kojoj je jednu tešku šipku sa obrtnom tačkom
blizu središta, pokretao najpre na jednu, pa na drugu stranu zupčasti točak čiji je pogon
obezbeđivao teg obešen o bubanj. Točak je napredovao za po jedan zubac pri svakoj dvosmernoj
oscilaciji šipke. Budući da šipka nije imala svoj prirodni period, ritam časovnika zavisio je
od pogonskog točka, ali je on bio pod uticajem različitog trenja u pogonskom mehanizmu. Usled
toga je tačnost ovakvih časovnika bila niska - odstupanje od četvrt sata dnevno bilo je sasvim
uobičajeno, a ni greška od punog sata nije predstavljala čudo.
Pronalazak mehaničkog časovnika predstavljao je odlučujući korak koji je vodio ka opštem
prihvatanju sistema računanja vremena u kome su dan i noć zajedno podeljeni na 24 jednaka časa.
U Italiji, gde je prvi javni časovnik postavljen u Milanu 1335. godine, časovnici su otkucavali
24 časa još nekoliko narednih vekova. Većina drugih zemalja zapadne Evrope je prihvatila sistem
u kome su se časovi računali u dva niza po 12. Sve do sredine XVII veka mehanički časovnici
imali su samo jednu kazaljku, a brojčanik je bio podeljen na časove i četvrti.
Potreba naučnika za merenjem kratkih vremenskih intervala još uvek nije bila zadovoljena
pronalaskom mehaničkog časovnika sa zapinjačom. U svojim znamenitim eksperimentima sa puštanjem
kugle niz strmu ravan, Galileo Galilej je koristio posudu sa vodom sa čijeg bi otvora sklonio
palac u trenutku kada je trebalo da započne merenje, i vraćao ga pri kraju. Moderno merenje
vremena temelji se na Galilejevom otkriću jednog prirodnog periodičnog procesa koji se može
neograničeno ponavljati i brojati - njihajućeg klatna. Galilej je došao do zaključka da svako
klatno ima sopstveni period oscilovanja koji zavisi od njegove dužine. Tek je u starosti počeo
da razmišlja o ugradnji klatna u satni mehanizam, tako da je umro ne ostvarivši svoju ideju.
Nekoliko godina kasnije, 1656, to je učinio holandski naučnik Kristijan Hajgens, čiji je sat sa
klatnom označio početak ere veoma tačnih časovnika. Njihovo odstupanje bilo je malo. desetak
sekundi dnevno. Hajgensov doprinos je i u otkriću da Galilejevo klatno, u kome teg opisuje
kružni luk, nije izohrono. Teorijski savršen izohronizam (što znači da je period oscilacija
isti za sve uglove njihanja) može se postići tako što će se teg naterati da opisuje cikloidalni
(cikloida je kriva koju opisuje tačka na kružnici koja se pomera duž prave linije) luk.
Etalon vremena
Tačnost časovnika je proveravana poređenjem sa referentnim događajem, za koji se pouzdano znalo
da se dešava uvek u isto vreme. Tokom hiljada godina to je bilo prividno kretanje Sunca,
tačnije trenutak kada Sunce dostigne zenit. Ovaj momenat je moguće veoma precizno ustanoviti
astronomskim osmatranjima, pa se za bilo koju tačku na Zemljinoj kugli može uspostaviti lokalno
vreme, tako što će se časovnik ravnati prema Suncu. U prvoj polovini XIX veka, razvojem
saobraćaja, pokazuje se da nije naročito praktično da svako mesto ili grad ima sopstveno vreme.
Kada su Engleska, Škotska i Vels 1840. godine uvele jedinstveno vreme koje je važilo za celo
Ostrvo, počinje bitka za standard vremena, uspešno okončana tek u skorije doba. Za referentnu
tačku, po kojoj je Ujedinjeno Kraljevstvo usklađivalo časovnike, uzeta je Kraljevska
astronomska opservatorija u Griniču ( Greenwich ). Ova opservatorija odigrala je važnu
ulogu u pomorskoj navigaciji u vreme britanske dominacije svetskim morima, upravo zbog
preciznog registrovanja vremena.
U akciju su stupile i Sjedinjene Američke Države, koje su 1830. osnovale Pomorsku opservatoriju
(USNO - United States Naval Observatory ). Na poziv tadašnjeg Predsednika SAD, delegati iz
25 vodećih zemalja okupili su se oktobra 1884. godine u Vašingtonu, na Međunarodnoj
konferenciji o meridijanima. Značaj ove konferencije u smislu uspostavljanja standarda bio je
ogroman, a onda donete rezolucije važe i danas.
Odlučeno je da se uspostavi jedinstveni sistem meridijana koji će važiti u celom svetu. Za
nulti meridijan ( Zero Longitude ) usvojen je onaj koji prolazi kroz Griničku
opservatoriju. Zemljina kugla je podeljena sa 24 standardna meridijana (po 12 istočno i zapadno
od Griniča). Za univerzalni dan usvojen je srednji sunčani dan koji počinje u ponoć po Griniču
i traje 24 sata. Time je uspostavljeno standardno vreme - Greenwich Mean Time (GMT) i
Grinič je, kako to Englezi (neskromno) naglašavaju, postao mesto gde počinje prostor i vreme.
Svet je zatim podeljen na 24 časovne zone čijim sredinama prolaze standardni meridijani.
Urađene su i izvesne korekcije kako bi neke države ostale u istoj časovnoj zoni. U odnosu na
GMT, zapadna područja imaju negativni ofset (istočna obala SAD je u zoni GMT-5) a istočna
pozitivni (SR Jugoslavija - GMT+1). Datumska granica prolazi 180. meridijanom, kroz Tihi okean.
Što se tiče merne jedinica za vreme, logično je bilo da se i ona definiše preko astronomskih
osmatranja. I dalje su to bili najravnomerniji periodični procesi za koje se znalo. Tako je
sekund definisan najpre kao 1/86400 srednjeg sunčanog dana, a zatim kao 1/31,556,925.9747
tropske godine. Koliko je, međutim, nebeska mehanika precizna?
Veličanstveni cezijum 133
Usavršavanjem hronometara postalo je moguće merenje sve manjih delova sekunda. Tridesetih
godina ovog veka u upotrebu su ušli časovnici zasnovani na kvarcnim oscilatorima. Još ranije je
kod kristala kvarca primećen je piezoelektrični efekat, pojava kod koje pri prolasku električne
struje kroz kristal dolazi do mehaničkih oscilacija, a koje za posledicu imaju generisanje
električnog signala određene frekvencije. Pošto nemaju delove kojima bi smetalo trenje ili
mehaničke vibracije, kvarcni oscilatori su bolja vremenska baza od časovnika sa klatnom.
Međutim, učestanost njihovih oscilacija zavisi od veličine i oblika kristala, a nije moguće
naći dva sa istim osobinama. Greška koju oni prave iznosi 0.1 - 1 s dnevno.
Kada govorimo o odstupanju, treba imati u vidu da u mehaničkim i kvarcnim časovnicima dolazi do
fizičko - hemijskih promena odnosno do "starenja" ( aging ), koje čini da se preciznost
časovnika menja tokom njegove eksploatacije. Ukupno odstupanje ( drift ) definiše se kao
aging plus odstupanje do koga dolazi usled delovanja nekih spoljnih faktora, na primer
trenja ili jačih vibracija kod mehaničkih časovnika ili promene ambijentalne temperature, koja
dovodi do promene oblika kristala kod kvarcnih časovnika.
Zbog sve većih zahteva za visoko preciznim merenjima javila se potreba za nekim još temeljnijim
vremenskim standardom od svih onih što se mogu dobiti na osnovu astronomskih osmatranja. Jedan
takav standard jeste prirodni period karakterističnih elektromagnetnih talasa koje proizvodi
neki vibrirajući atom ili molekul. Ovi elektromagnetni talasi, usled osobenih načina
vibriranja, odlikuju se veoma tačnom učestanošću i obrazuju oštre linije u spektru. Optičke
spektralne linije nisu pogodne za upotrebu kao vremenski standard, jer nema načina da
neposredno mere njihove frekvencije. Izvesni atomi, međutim, izazivaju radio učestanosti, a one
se neposredno mogu meriti. Atomi cezijuma stvaraju radio talase učestanosti oko 9200 megaherca.
Pogodna je okolnost da se ova talasna dužina nalazi u opsegu koji koriste radari, tako da su
već bile veoma razvijene elektronske tehnike kojima su se obrađivale navedene frekvencije.
U američkom Nacionalnom institutu za standarde i tehnologiju (NIST) je 1957. godine napravljen
prvi atomski cezijumski časovnik. Časovnik se sastojao od radio primopredajnika podešenog da se
poklopi sa učestanošću cezijumovog atoma. Oscilirajuće elektromagnetno polje što ga proizvodi
primopredajnik nagoni ove atome da rezoniraju kada je frekvencija tačna. Magnetno polje može se
podesiti da se veoma tačno poklopi sa atomskim vibracijama. U slučaju cezijumskog časovnika,
podešavanje se može izvesti uz tačnost od jednog dela na 100 biliona, što odgovara odstupanju
od jednog sekunda u milion godina. Shodno tome, 1967. godine je uvedena nova definicija sekunda
iz perspektive prirodnog perioda atoma a ne više nebeskih tela.
Merna jedinica za vreme, sekunda, redefinisana je kao trajanje koje odgovara dužini
9,192,631,770 perioda zračenja atoma cezijuma 133 pri prelasku elektrona između dva hiperfina
nivoa osnovnog stanja. Cezijumski atomski časovnici širom sveta određuju etalon vremena.
Statističkim metodima se utvrđuje njihovo prosečno dnevno odstupanje (u nanosekundama), a zatim
se svi doteruju prema srednjem vremenu. Ova operacija je u nadležnosti Međunarodnog biroa za
tegove i mere u Parizu (BIPM). Ovako dobijeno vreme naziva se internacionalno atomsko
vreme (TAI). TAI je sinhronizovano sa GMT 1. januara 1958. godine. Uvođenjem nove vremenske
baze, odnosno frekvencionog standarda, eksperimentalno je potvrđeno usporavanje Zemljine
rotacije. Na otprilike svakih 500 dana, razlika između GMT i TAI poraste na 1 sekund.
Pošto je naš svakodnevni život i dalje pod neprikosnovenim uticajem smene dana i noći odnosno
Zemljinog obrtanja oko sopstvene ose, uvedena je nova vremenska skala na osnovu TAI, ali koja
se sinhronizuje prema GMT uvek kada se među njima kumulira razlika veća od 0.9 sekunda. Tada se
uvodi prestupna sekunda, odnosno 31.6. ili 31.12. godine u kojoj je nastalo navedeno odstupanje
nakon 23:59:59 časovnici otkucaju 23:59:60, pa tek onda 00:00:00. U slučaju kada bi se ovakvim
dodavanjima greška akumulirala u suprotnom pravcu, sekund bi trebalo oduzeti - nakon 23:59:58
nastupilo bi 00:00:00. Ovakva realizacija standardnog vremena naziva se koordinirano
univerzalno vreme ( Coordinated Universal Time - UTC) - ponoć 1. januara 1972. označila je
inicijalni otkucaj UTC ere. Poslednja prestupna sekunda bila je 31.12.1995. a trenutna razlika
između TAI i UTC je 30 sekundi.
Emitovanje vremena
Kroz istorijat merenja vremena prošli smo gotovo sve periode ljudske civilizacije, počev od
drevnih kalendara, preko obeliska u Egiptu, sunčanih, peščanih, vodenih, mehaničkih, kvarcnih i
atomskih časovnika do svetskog standarda vremena - UTC. U trenutku kada je svet postao bogatiji
za najprecizniji merni standard koji je nauka izmislila, značajno je informaciju o tačnom
vremenu podeliti sa drugima, odnosno učiniti je dostupnom najširijim slojevima tehnike,
privrede, industrije i stanovništva.
Tačno vreme se u svetu distribuira na više načina. U SAD postoji nekoliko radio predajnika koji
emituju kodiranu UTC informaciju. Najpoznatiji su WWV ( Fort Colins, CO ), WWVB
( Boulder, CO ), WWVH ( Kauai, HI ). U Evropi je najpoznatiji predajnik DCF77 u
Majnflingenu (Nemačka) koji emituje na frekvenciji od 77.5 kHz. Tu su, zatim satelitski sistemi
- GOES na 468 MHz koji je u nadležnosti NIST-a i GPS ( Global Positioning System ), pod
kontrolom američkog ministarstva odbrane. GPS je osmišljen kao konstelacija od 24 satelita,
svaki u po jednoj vremenskoj zoni; njihova osnovna namena je navigacija, ali pored toga emituju
i UTC signal. Američka obalska straža koristi radio navigacijski sistem LORAN-C koji takođe
emituje UTC. Najzad tu je i sistem OMEGA, pod kontrolom američke mornarice.
Kada je u pitanju sinhronizovanje računara sa standardnim vremenom, jedan od veoma popularnih
servisa u Americi je Automated Computer Time Service (ACTS) koji obezbeđuje NIST.
Dovoljno je modemom pozvati (303) 494-4774 i računar će primiti informaciju o vremenu u ASCII
obliku. Format informacije je JJJJ YR-MO-DA HH:MM:SS TT L UT1 msADV UTC(NIST) OTM. Pri tome je
JJJJ modifikovani julijanski datum (MJD), YR-MO-DA je standardno predstavljanje, godine, meseca
i dana, HH:MM:SS je UTC vreme na koje treba primeniti ofset u skladu sa vremenskom zonom. TT
može da ima vrednosti od 00 do 99 i označava da li je na snazi standardno vreme (ST -
Standard Time ) ili letnje vreme ( Daylight Saving Time - DST). U praksi je tokom ST
vrednost 00, a tokom DST vrednost je 50. Prvog dana meseca, kada dolazi do promene ST/DST, ovaj
broj se menja u konkretan broj dana do promene vremena, a onda umanjuje za 1 svakog dana, dok
ne dostigne nulu na dan smene.
L označava približavanje prestupne sekunde - kada je L=0, prestupne sekunde nema. Jedinica
označava da će poslednjeg dana u tekućem mesecu biti ubačena prestupna sekunda, a dvojka da će
sekunda biti izbrisana. DUT1 je korekcioni faktor kojim se UTC konvertuje u stariji oblik
univerzalnog vremena i može da ima vrednosti između - 0.8 i +0.8 s. msADV označava kompenzaciju
koju NIST unosi zbog eventualnog kašnjenja telefonskog signala; standardno iznosi 45 ms.
UTC(NIST) označava "vremenskog provajdera" a OTM ( on-time-marker ) je zvezdica (*).
Prosleđeno vreme je regularno tek u trenutku prijema OTM-a, a najbolji rezultati se postižu
kada se, posredstvom softvera koji komunicira sa NIST-om, tri puta uzastopno "vrati" OTM, čime
se dopušta NIST-u da proračuna realnu vrednost za msADV. ACTS je veoma popularan izvor vremena:
12 telefonskih linija dnevno opsluži oko 10,000 poziva. Prethodno opisano kodiranje vremenske
informacije se, inače, naziva Daytime Protocol .
Network Time Protocol
Sredinom osamdesetih godina, kada su u Americi kompjuterske mreže zasnovane na TCP/IP protokolu
bile u velikoj ekspanziji, Denis Ferguson ( Dennis Ferguson ) sa Univerziteta u Torontu
osmislio je Network Time Protocol - NTP. Kompletnu specifikaciju NTP (RFC-1305) napisao
je Dejvid Mils ( David Mills ) sa Univerziteta u Delaveru. NTP je dizajniran za
distribuiranje vremenske informacije posredstvom Interneta, pri čemu je poseban akcenat
stavljen na pouzdanost. NTP je u stanju da izmeri kašnjenje TCP/IP paketa i proračuna
kompenzacioni faktor. Veoma je robustan i u praksi potvrđen, tako da se njegovim korišćenjem
može računati na odstupanje od svega 1 do 10 ms od UTC. NTP se može upotrebiti za
sinhronizaciju jednog kompjutera ili cele kompjuterske mreže pomoću hijerarhijske strukture
servera i klijenata.
U osnovi NTP nalazi se primarni vremenski server, računar koji je neposredno povezan sa
referentim izvorom vremena, cezijumskim atomskim časovnikom. Ovakav računar naziva se
stratum 1 (latinski: sloj) i na njemu je instaliran NTP softver. Računari opremljeni
sličnim softverom, nazovimo ih stratum 2 , komuniciraju posredstvom TCP/IP protokola sa
stratumom 1, dobijaju informaciju o tačnom vremenu i sinhronizuju svoje časovnike. Svaki
računar na koji je instaliran NTP softver istovremeno je klijent višim stratumima i server
nižim. NTP podržava 16 ovakvih nivoa. Idući od stratuma 1 prema nižim nivoima, tačnost opada,
ali odstupanje u praksi ne prelazi 100 ms. Da bi se povećala pouzdanost, svaki klijent može
imati nekoliko servera u višim stratumima, pri čemu NTP, upoređivanjem dobijenih podataka,
smanjuje mogućnost greške.
Na slici 2 su prikazane neke tipične šeme NTP sinhronizacije. Računar BX je sinhronizovan
neposredno pomoću primarnog ( stratum 1 ) servera. Računar BY, radi povećanja pouzdanosti,
koristi usluge dva primarna servera. LANZ je lokalna mreža firme koja želi da sinhronizuje
svoje računare. Upotrebljeno je klasično rešenje: dva računara (B1, B2) su konfigurisana kao
vremenski serveri koji su sinhronizovani pomoću tri primarna servera (A1, A2, A3). Ostali
računari u firmi (C1, C2, ..., Cn) sinhronizuju se preko lokalnih servera.
NTP je prvobitno razvijen za Unix , ali je njegova puna implementacija sada na
raspolaganju i za Windows NT . Kompletan paket se može besplatno preuzeti sa Interneta
( www.eecis.udel.edu/~ntp/software.html ) i koristiti bez ograničenja. Na raspolaganju je
obimna dokumentacija, kao i drajveri za skoro sve poznate specijalizovane kartice koje primaju
UTC signal posredstvom nekog od navedenih sistema (GPS, GEOS, DCF77...).
Pozabavimo se sada načinom na koji NTP prenosi informaciju o vremenu. NTP vremenska oznaka je
64-bitni neoznačeni broj u fiksnom zarezu i predstavlja broj sekundi proteklih od ponoći 1.
januara 1900. godine. Inicijalni otkucaj UTC ere (0h 1.1.1972. MJD 41,317.0) odgovara NTP
vremenu 2,272,060,800.0. Prva 32 bita predstavljaju cele sekunde, a ostatak je razlomljeni deo.
Rezolucija NTP formata je oko 200 pikosekundi, što je dovoljno i za najezoteričnije primene.
Postojeći NTP format omogućava upotrebu do 2036. godine (32 bitni integer registruje
maksimalnu vrednost od 4,294,967,295 sekundi, što odgovara intervalu od oko 136 godina i dva
meseca). Ukoliko NTP i tada bude bio u upotrebi, moraće da se uspostavi nekakva konvencija za
datume u ciklusima od po 136 godina.
Kompletan NTP vremenski paket je prikazan na slici 3. LI ( Leap Indicator ) je dvobitni
podatak koji predstavlja upozorenje o prestupnoj sekundi, koje se dodaje/briše poslednjeg
minuta tekućeg dana. Kodiranje je sledeće:
LI | Vrednost | Značenje |
00 | 0 | bez upozorenja |
01 | 1 | poslednji minut ima 61 sekund |
10 | 2 | poslednji minut ima 59 sekundi |
11 | 3 | časovnik nije sinhronizovan |
Mode | Značenje |
0 | rezervisano |
1 | symmetric active |
2 | symmetric passive |
3 | client |
4 | server |
5 | broadcast |
6 | rezervisano za NTP kontrolnu poruku |
7 | rezervisano |
Stratum | Značenje |
0 | nije naznačen - nedostupan |
1 | primarni (povezan sa na pr. DCF77 ili GPS) |
2-15 | sinhronizacija preko NTP |
16-255 | rezervisano |
d = (T4 - T1) - (T2 - T3)
c = ((T2 - T1) + (T3 - T4)) / 2
Jednostavnije rešenje - SNTP
Potpuna implementacija NTP protokola obezbeđuje takvu pouzdanost i zaštitne mehanizme kakvi
velikom broju korisnika u praksi nisu potrebni. Pored toga, na raspolaganju je prvenstveno za
Unix i Windows NT , sadrži razmerno obimnu i komplikovanu dokumentaciju. Za
individualne korisnike i manje mreže pogodnije bi bilo neko jednostavnije rešenje. Na sreću,
1995. godine objavljena je pojednostavljena verzija NTP-a, Simplified Network Time
Protocol - SNTP. Najbolje je da ga upoznamo na konkretnom primeru.
Jedan od najboljih shareware programa koncipiranih oko SNTP-a je WinSNTP firme
Coetanian Software ; preuzmite ga sa www.coetanian.com . Prilikom preuzimanja
programa, neophodno je da ostavite svoju e-mail adresu na koju će, posle nekoliko minuta, stići
šifra kojom program "otključavate". Period probnog korišćenja je 30 dana, a nakon toga se za
registraciju mora platiti 26 dolara. WinSNTP postoji u verzijama za Windows 3.1x ,
Windows 95 i NT .
Upotreba je veoma jednostavna: nakon instalacije unesite Internet adresu vremenskog servera,
što može da bude adresa nekog računara u lokalnoj mreži. Dovoljno je da jedan računar usklađuje
svoj časovnik prema nekom spoljnom referentnom izvoru, a WinSNTP će se pobrinuti da isto
vreme "vidi" i ostatak računara u mreži. Naravno, najbolje rešenje je nabaviti (ili napraviti)
specijalizovanu PC karticu koja bi primala DCF77 radio signal, čime bi se vršila precizna
sinhronizacija vremena na vremenskom serveru. Na ovaj način praktično se dobija stratum 1
server i postiže visoka tačnost na časovnicima računara u lokalnoj mreži.
Neumreženi korisnici se moraju opredeliti za neki javni vremenski server na Internetu, recimo
tempo.cstv.to.cnr.it (150.145.33.1). Ovde primećujemo prvu razliku u odnosu na potpuni
NTP, gde je moguće definisati nekoliko servera. No, ovo ograničenje i nije tako dramatično, jer
svi veliki primarni vremenski serveri rade 24 sata dnevno i zaštićeni su od ispada. Problem
može nastupiti jedino ako je došlo do privremenog prekida veze na nekoj Internet putanji, ali
se ovakve stvari relativno retko dešavaju.
Bitno je još razumeti opcije Initial Poll i Max Delta . Po instalaciji programa,
Initial Poll je automatski postavljen na 60 s i označava interval između dva uzastopna
poziva vremenskog servera. Ovaj period je dovoljan da se uspostavi tačnost sinhronizacije od
100 ms, što je tipična vrednost koja se postiže upotrebom SNTP protokola. Ukoliko WinSNTP
ustanovi da je lokalni časovnik na vašem računaru precizniji od podrazumevanog, automatski će
produžiti Poll Interval na maksimalno 16 minuta. Ako je tačnost od 100 ms nepotrebna,
može se povećati Max Delta na 500 ms, što će smanjiti učestanost pozivanja vremenskog
servera.
Kod podešavanja vremenskih zona (Set TZ) treba obratiti pažnju na to da WinSNTP koristi
jednu nestandardnu konvenciju. Uobičajeno je da područja istočno od Griniča imaju pozitivan, a
zapadna negativan ofset u odnosu na UTC, dok je kod WinSNTP -a obrnuto. Dakle u polju
Offset from UTC unećete: -01:00. Autori programa naglašavaju da će se u narednim
verzijama WinSNTP -a primeniti mehanizam iz Windows 95 , dakle ako je u samom
Windows -u sve oko vremenskih zona i letnjeg vremena dobro podešeno, ova opcija će biti
nebitna za WinSNTP . Do tada, moraćemo da se pozabavimo i podešavanjem letnjeg/zimskog
vremena. U vremenskoj zoni Evrope kojoj mi pripadamo, na letnje vreme se prelazi poslednje
nedelje marta u 02:00, kada se časovnici pomeraju na 03:00. Povratak na zimsko (standardno
vreme) je poslednje nedelje septembra u 02:00 prema standardnom vremenu, pri čemu se časovnici
sa 03:00 vraćaju na 02:00. Pripazite na to da navedeno pravilo ima i izuzetke - prošle godine
je povratak na zimsko vreme kasnio nekoliko nedelja.
Kada se ste završili sa podešavanjem, WinSNTP će automatski uspostaviti vezu sa
vremenskim serverom i korigovati vreme na vašem računaru, o čemu dobijate poruku. Ukoliko
program koristite na individualnom računaru a Internetu pristupate preko Dial-Up veze,
možete kliknuti na Set Time i, nakon korekcije vremena, napustiti WinSNTP . Tako
povremeno doterujete interni časovnik vašeg PC-ja.
WinSNTP u lokalnoj mreži
Daleko je atraktivnija primena u lokalnoj mreži. WinSNTP ćemo staviti u Start Up
folder , a u Shortcut Properties postavićemo da se program poziva sa Winsntp.exe
-s . Time se postiže da WinSNTP postane potpuno nevidljiv za korisnika: nema ga čak ni
na taskbar -u, ali ćemo, ako želimo da promenimo neko podešavanje, morati da restartujemo
kompjuter uz brisanje parametra -s. WinSNTP je veoma "pitoma" aplikacija koja ne ugrožava
stabilnost sistema, ima izuzetno skromne memorijske apetite i, ako ste jednom sve dobro
podesili, garantovano ćete zaboraviti na WinSNTP , a vreme na vašem računaru će uvek biti
ukorak sa standardnim, uz prosečno odstupanje od 100 ms.
WinSNTP podržava broadcast režim, ali samo na nivou klijenta. Ako želite da
koristite ovaj režim, vaš vremenski server mora biti zasnovan na potpunom NTP protokolu. U toj
situaciji se WinSNTP startuje sa Winsntp.exe -b . Ako vam ovakav način rada nije
neophodan, WinSNTP se bez ikakvih problema koristi i na serveru. U dokumentaciji je
preporučeno da se u slučaju koriščenja SNTP protokola na serveru, njegova sinhronizacija obavi
nekim referentnim spoljnim izvorom, na primer radio vezom sa DCF77 - ne preporučuje se u
ovakvoj situaciji server sinhronizuje preko Interneta. Međutim, ako vam ne smeta nešto manja
tačnost, (maksimalno odstupanje teško da će preći 200 ms) i ovakav način sinhronizacije je
upotrebljiv.
Posebno je zanimljiva mogućnost da WinSNTP radi kao Windows NT servis. Ova opcija
nije sastavni deo uobičajene 32-bitne WinSNTP distribucije, već morate preuzeti posebnu
arhivu (konsultujte www.coetanian.com ). Program možete konfigurisati da radi kao servis
ili kao standardna aplikacija, što je opisano u README fajlu. Ukoliko ste ga podesili da radi
kao servis, na raspolaganju su vam svi standardni NT načini za podešavanje. U Control
Panel/Services kliknite na WinSNTP Time Synchronization i obavite standardna
podešavanja. Na raspolaganju su i neke dodatne opcije, recimo Allow Interaction with
Desktop , gde određujete da li će WinSNTP biti vidljiv, upravo ono što nedostaje na
Windows 95 .
Ako je vaša jedina želja da svi računari u lokalnoj mreži pokazuju isto vreme koje ne mora da
bude besprekorno tačno, WinSNTP ima odgovor i za to. U normalnim okolnostima program će
Primarni serveri vremena
Prilikom konfiguracije NTP softvera, treba dobro izabrati vremenske servere. Ažurnu listu
stratum 1 servera naći ćete na adresi www.eecis.udel.edu/~mills/ntp/clock1.html .
Vodite računa da se opredelite za pouzdan server sa kojim ostvarujete dobru vezu preko
Interneta. U praksi je najbolje odlučiti se za oficijelne servere SAD (USNO Master Clock )
koji su povezani direktno sa H-maser atomskim časovnicima. Adrese su tick.usno.navy.mil i
tock.usno.navy.mil .
|
Za sladokusce
WinSNTP je izuzetno moćan program, mada na prvi pogled ne deluje atraktivno. Sve potrebne
opcije su tu, jednostavan je za korišćenje i korektno obavlja svoj zadatak. Jedino mu se može
zameriti nedostatak nekih podešavanja u samom programu i preterana upotreba parametara u
komandnoj liniji, ali to i nije neka ozbiljna zamerka. Na Internetu se može pronaći još
nekoliko programa koji pristupaju serverima atomskog vremena. Ovi programi su uglavnom
zasnovani na SNTP protokolu, mogućnosti su im znatno skromnije, ali su zato vizuelno
ubedljiviji.
AtomTime95 je program koji pristupa NIST serveru u Boulder -u u Koloradu
( time-a.timefreq.bldrdoc.gov ). Prikazuje UTC vreme na serveru, lokalno vreme na računaru
i odstupanje, nakon čega se klikom na Adjust vrši korekcija vremena. Moguće je podesiti i
pristup nekom drugom serveru koji vreme emituje u NIST (ACTS) obliku, recimo
tycho.usno.navy.mil .
AccuSet 4.1 je simpatičan program koji uspostavlja modemsku vezu sa NIST-om i na taj
način podešava vreme. Prikazuje i druge korisne informacije kao što je vreme u nekim svetskim
metropolama, a u stanju je i da izgovori tačno vreme, naravno na engleskom. Komercijakna
verzija ovog programa pokazuje i neke astronomske zanimljivosti, recimo vremena mesečevih mena,
pomračenja Sunca itd. Pogledati na ourworld.compuserve.com/homepages/retsik_software .
Dimension 4 je veoma upotrebljiva alatka koja se može uspešno koristiti u kombinaciji sa
WinSNTP . Osnovna prednost mu je mogućnost definisanja velikog broja servera tako da će
se, ako neki od njih "ćuti" automatski uspostaviti veza sa sledećim.
(www.thinkman.com/~thinkman ).
ID Logic World Time je grafički najatraktivniji program za podešavanje vremena na
računaru. Prilikom startovanja vidite animaciju Zemlje koja se okreće oko svoje ose, a zatim se
prikazuje karta sveta sa vremenskim zonama i aktivnim časovnicima koji prikazuju vreme u
velikim svetskim gradovima. Da bi se ubacio Beograd, program treba registrovati (28 dolara);
registrovani program omogućava i pristup najvažnijim američkim serverima (NIST i USNO) i
sinhronizaciju vremena.
Yet Another Time Synchronizer i Tardis for Windows 95 su programi koji takođe mogu
da pristupaju velikom broju servera. YATS veoma pregledno prikazuje tok komunikacije sa
serverom i može se upotrebiti za nadgledanje, ako se opredeljujete za neki nov i neproveren
vremenski server. I ovi programi do punog izražaja dolaze ako se upotrebljavaju istovremeno sa
WinSNTP , jer ga veoma uspešno dopunjavaju tamo gde mu je "Ahilova peta".
RealClock95 na vaš desktop dovodi realistične fotografije satova koji, što je
najlepše, rade prikazujući vreme na osnovu internog časovnika. Na raspolaganju je nekoliko
veoma lepih klasičnih zidnih satova, a kolekcija uključuje i one sa klatnom ili kukavicom. Ako
pokazujete više afiniteta za moderne trendove tu su i dva digitalna stona časovnika. Sve satove
videte u tri veličine, a za korišćenje svih modela treba registrovati program ($9.95).
Horizonti kompjuterskog vremena
Uspostavljanje veze sa etalonima vremena dovodi na vaš računar jedinstveni ritam kojim
otkucavaju milioni časovnika širom sveta. Veoma lep osećaj, verujte na reč, pruža saznanje da
Internet nije samo Web, ftp ili email , već uvek i nešto više, a upravo se u tim još
neotkrivenim potencijalima krije njegova prava snaga. Sinhronizacija vremena je samo jedan
korak u nekom budućem globalnom objedinjavanju o kome, sa današnjeg aspekta, ipak može samo da
se nagađa.
Razmišljajte i onoj drugoj strani, a to je približavanje 2000. godine i problemi koji će se
pojaviti u prilagođavanju postojećih programa i računara. Baš me zanima da li će novi standard
biti primenljiv i 1. januara 10000. godine... ili ćemo lopticu kratkovidosti prebaciti budućim
generacijama.
|
|