Know-how, előadás, hálózati idő protokoll ntp

Megosztott változók

A következő változók két vagy több rendszerre, partnerre és csomagosztályra vonatkoznak. Ha meg kell különböztetni a megosztott változókat az azonos nevekkel, megad egy változó azonosítót.







Az increment indikátor (sys.leap.peer.leap.pkt.leap) egy két bites figyelmeztető kód, amely további másodperceket tartalmaz az NTP idővonalban. Ezek a bitek 23:59 óráig vannak beállítva, és másnap 00:00 után újraindulnak. Ennek eredményeként az a nap, amikor ezt az eljárást végrehajtják, hosszabb vagy rövidebb lesz egy másodpercig. A másodlagos kiszolgálókhoz ezeket a biteket az NTP protokoll határozza meg. A 0 és 1 bitek (LI) a 7.1. Táblázatban felsorolt ​​értékeket veszi fel.

7.1. Táblázat. Az LI mutató értékei kódok

Minden esetben, kivéve a riasztást (riasztás = 112), az NTP protokoll semmilyen módon nem változtatja meg ezeket a biteket, hanem csak azokat a időátalakítási programokat továbbítja, amelyek nem tartoznak a protokollhoz. Vészhelyzet akkor fordul elő, ha bármilyen okból a helyi óra nem szinkronizálódik. Ez történhet a rendszer inicializálásakor, vagy abban az esetben, ha az elsődleges óra hosszú ideig nem áll rendelkezésre.

Az üzemmód (peer.mode, pkt.mode) egy egész 3 bites szám, amely jelzi az asszociációs módot, amely a 7.2. Táblázatban megadott értékeket veheti igénybe.

7.2. Táblázat. Kódértékek módja

Összehasonlítás céljából a rétegkód nulla értéke nagyobb, mint bármely más érték. Ne feledje, hogy az egész szám maximális értéke, amelyet batch változóként kódolnak. az ntp .maxstratum paraméter korlátozza.

A csereidőszak (sys.poll, peer.hostpoll, peer.peerpoll, pkt.poll). Ez egy egész változó, amely jelzi a minimális intervallumot a továbbított üzenetek között, mért másodpercben és 2 teljesítményként. Például egy 6 érték legalább 64 másodperces intervallumot jelez.

Pontosság (sys.precision, peer.precision, pkt.precision). Ez egy előjeles egész jelző változó órajel pontosságot másodperc, és kifejezve a legközelebbi ereje 2. Az értéket kell kerekíteni a legközelebbi 2-hatvány, például egy hálózati frekvencia 50 Hz-es (20 ms), vagy 60 Hz-es (16,67 ms ) értéke -5 (31,25 ms), míg az 1000 Hz (1 ms) kvarc frekvenciája -9 (1,95 ms).

Alap késleltetés (sys.rootdelay, peer.rootdelay, pkt.rootdelay). Ez egy fixpontszámú, jel, amely a teljes ciklikus késleltetés (RTT) értékét jelzi az elsődleges frekvencia-referenciára, másodpercben kifejezve.

Alap variancia (sys.rootdispersion, peer.rootdispersion, pkt.rootdispersion). Ez a fixpontszám nagyobb, mint nulla, jelezve az elsődleges standardhoz képest az időhiba maximális értékét másodpercben.

A referenciaóra azonosítója (sys.refid, peer.refid, pkt.refid). Ez egy 32 bites kód, amely egy adott referenciaórát azonosít. Abban az esetben a réteg 0 (nem meghatározott) vagy 1 réteg (primer referencia forrás), egy 4-oktett ASCII Többsoros, mentén egy vonalban a bal szélén és kiegészített nullák szükséges, például:

7.4 táblázat. Óraazonosító

Referencia időbélyeg (sys.reftime, peer.reftime, pkt.reftime) - helyi idő szerint az időbélyeg formátumban megfelelő utoljára korrekciója az órát. Ha a helyi óra nem szinkronizálódott, a változó nulla értéket tartalmaz.

Az alap időbélyegző (peer.org, pkt.org) a helyi idő az időbélyeg formátumban, amely megfelel annak a pillanatának, amikor az utolsó NTP-üzenetet elküldtük. Ha a partner nem érhető el, a változó nulla értéket vesz fel.

Az átvételi időbélyeg (peer.rec, pkt.rec) a helyi idő az időbélyeg formátumban, ami megfelel a partnertől kapott utolsó NTP-üzenet érkezési idejének. Ha a partner nem érhető el, a változó nulla értéket vesz fel.

Az átviteli időbélyeg (peer.xmt, pkt.xmt) a helyi idő az időbélyeg formátumban, amely megfelel az NTP üzenet küldésének pillanatának.

Rendszerváltozók

Az operációs rendszer az alábbi változókat használja a helyi órák szinkronizálására.

A változó helyi óra (sys.clock) helyi időjelzést tartalmaz időbélyeg formátumban. A helyi idő egy adott számítógép hardverórájából származik, és diszkréten növekszik a szerkezetileg meghatározott növekményekkel.

Az alapóra (sys.peer) változó egy szelektor, amely azonosítja az alkalmazott szinkronizációs forrást. Ez általában olyan mutató, amely a partner változókat tartalmazza. A nulla érték azt jelzi, hogy nincs szinkronizálási forrás.

Partner változók

Az alábbiakban felsoroljuk azokat a partnerváltozókat, amelyek a mérési eljárások kezelésére és végrehajtására szolgálnak.

A konfigurációs bit (peer.config) egy kicsit. Jelezve, hogy a társulás konfigurációs információk alapján alakult ki, és nem szabad feloszlatni, amikor a partner nem érhető el.

Timestamp frissítés (peer.update) - helyi idő egy időbélyeg formátumban, jelezve, hogy mikor érkezett az utolsó NTP üzenet. Egy változót használnak az időeltolódás varianciájának kiszámításához.

Az elérhetõségi nyilvántartás (peer.reach) az ntp .window bitek eltolási regisztere, amelyet a partner elérhetõségi állapotának meghatározására használnak. Az adatbevitel az alacsony rendű bitekből történik (jobbra). A partner elérhetőnek tekinthető, ha a regiszter legalább egy bájtja 1-nek felel meg.

A partner időzítő (peer.timer) egy egész számláló. Az egymás utáni NTP-üzenetek közötti időtartam vezérlésére szolgál. A számláló beállítása után a tartalma 1 (1 másodpercig) csökken, amíg el nem éri a nulla értéket. Ebben az esetben az átviteli eljárást hívják. Ne feledje, hogy az időzítő működése nem függhet a helyi órától.

Batch változók

A verziószám (pkt.version) egy egész szám. jelezve a feladó verziószámát. Az NTP-üzeneteket mindig az ntp .version aktuális verziójával küldenek, és csak akkor fogadhatók el, ha a verziókódok (ntp .verzió) megegyeznek. Kivételek csak akkor engedélyezettek, ha a verziószám megváltozott.







Az óra szűrője

Szűrők és szelekciós algoritmusok esetén a következő állapotváltozók is kiegészülnek.

A szűrőregiszter (peer.filter) az ntp kaszkádok eltolási regiszterje. műszak. ahol minden kaszkád emlékezik a mért késésre, a torzításra és a számított variancia értékekre, amelyek egy megfigyelésnek felelnek meg. Ez a három paraméter a magasabb rendű oldalról kerül bevezetésre, és az alacsonyabb rendű bitekre (jobbra) tolódik. Ha új megfigyelési eredményeket kap, a régi eredmények elvesztek.

A helyes adatszámláló (peer.valid) egy egész számláló. jelezve a megfelelő mintákat a szűrőregiszterben. A rendelkezésre állási állapot meghatározására és az üzenetküldési periódus növekedésének és csökkentésének szabályozására szolgál.

Az offset (peer.offset) egy fixpontú szám, amelyen a partner órájának a helyi órához viszonyított eltolását másodpercben jelzi.

Késését (peer.delay) - fix pont számát egy jel jelzi a teljes ciklikus késleltetés (RTT) órában partner kapcsolatban a helyi idő alapján terjedési ideje az üzenetet, és a válasz a hálózaton másodpercben. Ne feledje, hogy a változó pozitív vagy negatív értéket vehet fel az óra pontosságától és a felhalmozott offset hibától függően.

A diszperzió (peer-diszperzió) fixpontos szám. A partner órájának maximális hibája a helyi órához viszonyítva, figyelembe véve a hálózati késleltetést másodpercekben. Csak nullánál nagyobb értékek megengedettek.

Az interneten az összes megvalósítás paramétereit az alábbiakban ismertetjük. A felesleges redundancia kiküszöbölése és a partnerszövetségek stabilizálása érdekében meg kell állapodni ezen paraméterek értékeiről. A fenti paraméterek minden egyes szervezetre érvényesek.

A verziószám (ntp .verzió) az NTP jelenlegi verziószáma (3).

Az NTP port (ntp .port) az NTP protokollhoz rendelt szabványos portszám (123).

A maximális rétegszám (ntp .maxstratum) a maximális rétegszám, amely használható egy köteg változó kódolásakor. Ezt a paramétert általában a végtelenség meghatározásaként értelmezik (az alhálózat útválasztási protokolljának elérhetetlensége).

Az óra maximális időtartama (ntp .maxage) a maximális intervallum másodpercben, melynek során a referenciaóra helyesnek tekintendő az utolsó megbékélés után.

A legnagyobb hiba (ntp .maxskew) a helyi órának az ntp .maxage időben bekövetkező hibájával járó maximális eltolási hiba, másodpercben. Az ntp .maxskew és az ntp .maxage arányt úgy értelmezzük, mint a teljes tényezőcsoport által okozott legnagyobb hiba.

A maximális távolság (ntp .maxdistance) a partnerek közötti maximális megengedett távolság, amikor szinkronizálják a kiválasztási algoritmust.

Az elosztásra vonatkozó minimális időtartam (ntp .minpoll) az elosztás minimális időszaka, ami elfogadható bármely partner számára az interneten. Ezt az időt másodpercben fejezzük ki, és 2-es teljesítményt képvisel.

Legnagyobb levelezési idő (ntp .maxpoll) - az internetes partnerek számára megengedett maximális elosztási idő. Ezt az időt másodpercben fejezzük ki, és 2-es teljesítményt képvisel.

A kiválasztott órák minimális száma (ntp .minclock) a szinkronizáláshoz szükséges minimális számú partner (a kiválasztási algoritmus használatával).

Legnagyobb kiválasztott órák> (ntp .maxclock) - a kiválasztás megszervezéséhez szükséges partnerek maximális száma (a kiválasztási algoritmus használatával).

A minimális variancia (ntp .mindisperse) az egyes rétegek minimális szórásváltozása másodpercben (a szűrési algoritmus használatával).

A maximális variancia (ntp. Maxdisperse) a maximális variancia másodpercben, figyelembe véve az elveszett adatokat (a szűrési algoritmust használva).

A rendelkezésre állási nyilvántartás (ntp .window) mérete a rendelkezésre álló regiszter (peer.reach) mérete bitekben.

Szűrőméret (ntp .shift) - az óraszűrő (peer.filter) eltolási regiszterének mérete kaszkádokban.

A szűrő súlya (ntp .filter) a súly. A szűrő diszperziójának kiszámításához használatos (a szűrési algoritmus használatakor).

A kiválasztott súly (ntp .select) a súly. amelyet a kiválasztott variancia kiszámításánál használunk (a kiválasztási algoritmus működése során használjuk).

Működési módok

A műsorszórási üzemmód kivételével az NTP egyesület akkor alakul ki, amikor két partner cseréli az üzeneteket, és egy vagy mindkettő létrehoz és fenntart egy protokollt. Az egyesülés a peer.mode változó által meghatározott 5 üzemmód egyikében működhet. szimmetrikusan aktív. szimmetrikusan passzív. ügyfél. szerver és adás:

Szimmetrikusan aktív (1). Az ebben a módban futó számítógép rendszeres időközönként üzenetet küld, függetlenül attól, hogy partnere elérhető-e vagy réteg. Ha ebben a módban dolgozik, a számítógép tájékoztatja Önt szinkronizálási szándékáról és szinkronizált partnerként.

Szimmetrikusan passzív (2). Ez a fajta kapcsolat kezdetben egy szimultán aktív üzemmódban működő partner üzenetének érkezésekor jön létre. Ez addig marad érvényben, amíg a partner elérhető, és olyan rétegben működik, amely alacsonyabb vagy egyenlő az adott számítógéppel. Ellenkező esetben az egyesület szétesik. Az egyesület azonban létezni fog, amíg legalább egy üzenetet küldünk válaszként. Ha ebben a módban dolgozik, a számítógép tájékoztatja Önt szinkronizálási szándékáról és szinkronizált partnerként.

Ügyfél (3). Az ebben a módban futó számítógép rendszeres időközönként üzenetet küld, függetlenül attól, hogy partnere elérhető-e vagy réteg. Ha ebben a módban dolgozik, a számítógép (általában egy hálózati munkaállomás) értesíti a szinkronizált partner szándékát.

A kiszolgáló (4). Ez a fajta társulás kezdetben az ügyfél kérésének megérkezésekor jön létre, és csak erre a kérésre válaszol. A válasz után az egyesület megszűnik. Ha ebben az üzemmódban dolgozik, a számítógép (általában egy működő hálózati állomás) értesíti a partner szinkronizálására vonatkozó szándékáról.

Műsorszolgáltatás (5). Az ebben a módban futó számítógép rendszeres időközönként üzenetet küld a partnerek elérhetőségéről vagy rétegéről. Ha ebben a módban dolgozik, a számítógép (általában egy hálózati környezetben működő hálózati időszerver) értesíti Önt az összes partner szinkronizálására vonatkozó szándékáról.

Szimmetrikus üzemmódban az ügyfél különbsége a kiszolgálótól gyakorlatilag eltűnik. A szimmetrikusan passzív módot a szinkronizáló alhálózat alapcsomópontjainak (alsó rétegének) közelében és viszonylag nagy számú partnerrel futó ideiglenes szerverek használják. Ebben a módban a partner azonosítására nincs szükség előre, mivel az állapotváltozókkal való kapcsolatot csak akkor hozza létre, ha NTP-üzenetet kap. Ráadásul a tárolt állapot később is használható, ha a partner elérhetővé válik, vagy magasabb szinten fog működni, ezért szinkronforrásként nem alkalmas.

A szimmetrikusan aktív üzemmódot a szinkronizálás végcsomópontjai (a legmagasabb réteg) közelében működő időszerverek használják. A megbízható ideiglenes szolgáltatás általában két partner segítségével, a legközelebbi alsó réteg és egy partner ugyanazon rétegében valósítható meg. Emiatt az üzenetáramlás általában kicsi, még akkor is, ha a kapcsolat elvész, és minden kérés esetén hibaüzenet jelenik meg.

Egy normális helyzet, az egyik partner dolgozik aktív üzemmódban (szimmetrikus aktív. Ügyfél vagy broadcast), konfigurált indító állományában, míg mások a passzív üzemmódban (szimmetrikus passzív vagy szerver), gyakran anélkül, hogy előre konfigurációt. Azonban mindkét partner úgy konfigurálható, hogy szimmetrikus üzemmódban működjön. valamilyen hiba, ha mindkét partner dolgozik ugyanabban a módban, de nem szimmetrikus aktív. Ilyen esetekben minden partner figyelmen kívül hagyja a másikból érkező üzeneteket és az egyesülést. ha létezik, akkor megszűnik, mert a partner nem érhető el.

A Broadcast módot nagysebességű helyi hálózatokban dolgoznak nagyszámú munkaállomással, ahol a nagy pontosság nem szükséges. Egy tipikus forgatókönyv szerint egy vagy több ideiglenes LAN-kiszolgáló periodikusan sugárzott üzeneteket küld munkaállomásoknak, amelyek ezután meghatározzák az időtartamot, amely egy előre meghatározott terjedési késleltetésen alapul, több ezredmásodperc alatt.

Eseménykezelés

Az NTP protokoll szempontjából jelentős események fordulnak elő, amikor a szakértői időzítő lejár, amelyek közül az egyik kifejezetten az aktív társult partnerre koncentrálódik, valamint különböző partnerek NTP-üzenetek fogadásakor. Esemény előfordulhat egy kezelőparancs vagy egy észlelt hiba következtében, például egy elsődleges referencia hibájából.




Kapcsolódó cikkek