局域網(wǎng)內(nèi)同步(這個(gè)時(shí)在工作中用得多的):如果只需要在本局域網(wǎng)內(nèi)進(jìn)行系統(tǒng)間的時(shí)鐘同步,那么就可以使用局域網(wǎng)中任何一個(gè)系統(tǒng)的時(shí)鐘。你需要選擇局域網(wǎng)中的一個(gè)節(jié)點(diǎn)的時(shí)鐘作為“”的時(shí)間源,然后其它的節(jié)點(diǎn)就只需要與這個(gè)時(shí)間源進(jìn)行時(shí)間同步即可。使用這種方式,所有的節(jié)點(diǎn)都會(huì)使用一個(gè)公共的系統(tǒng)時(shí)鐘,但是不需要可局域網(wǎng)外的系統(tǒng)進(jìn)行時(shí)鐘同步。如果一個(gè)系統(tǒng)在局域網(wǎng)的內(nèi)部,同時(shí)又不能使用無線時(shí)鐘,這種方式是的選擇。
NTP意圖將所有參與計(jì)算機(jī)的協(xié)調(diào)世界時(shí)(UTC)時(shí)間同步到幾毫秒誤差內(nèi)。它使用Marzullo算法的修改版來選擇的時(shí)間服務(wù)器,其設(shè)計(jì)旨在減輕可變網(wǎng)絡(luò)延遲造成的影響。NTP通??梢栽诠不ヂ?lián)網(wǎng)保持幾十秒的誤差,并且在理想的局域網(wǎng)環(huán)境中可以實(shí)現(xiàn)超過1毫秒的精度。不對(duì)成路由可擁塞控制可能導(dǎo)致100毫秒(或更高)的錯(cuò)誤。
聯(lián)網(wǎng)計(jì)算機(jī)同步時(shí)鐘簡便的方法是網(wǎng)絡(luò)授時(shí)。網(wǎng)絡(luò)授時(shí)分為廣域網(wǎng)授時(shí)和局域網(wǎng)授時(shí)。廣域網(wǎng)授時(shí)精度通常能達(dá)50ms級(jí),但有時(shí)超過500ms,這是因?yàn)槊看谓?jīng)過的路由器路徑可能不相同。現(xiàn)在還沒有更好的辦法將這種不同路徑延遲的時(shí)間誤差完全消除。局域網(wǎng)授時(shí)不存在路由器路徑延遲問題,因而授時(shí)精度理論上可以提到亞毫秒級(jí)。Windows內(nèi)置NTP服務(wù),在局域網(wǎng)內(nèi)其授時(shí)精度也只能達(dá)10ms級(jí)。因此,提高局域網(wǎng)NTP授時(shí)精度成為一個(gè)迫切需要解決的問題。
本程序能通過網(wǎng)絡(luò)授時(shí)服務(wù)器獲取當(dāng)前時(shí)間,因?yàn)橐话阄覀兊氖謾C(jī)只能提供到分鐘的時(shí)間顯示,并且由于手機(jī)硬件的固有問題導(dǎo)致經(jīng)常會(huì)出現(xiàn)手機(jī)系統(tǒng)時(shí)間不準(zhǔn)確問題,(已知的某平臺(tái)的手機(jī)會(huì)在充電后時(shí)間變快4分鐘),這是編寫本程序的初衷,本程序功能夠提供給使用者到秒級(jí)的時(shí)間顯示,同時(shí)告訴使用者手機(jī)系統(tǒng)時(shí)間與當(dāng)前標(biāo)準(zhǔn)時(shí)間的差值,但無權(quán)去修改使用者手機(jī)的系統(tǒng)時(shí)間,軟件使用中會(huì)消耗非常少的網(wǎng)絡(luò)流量。