SNTP
Den aktuelle version af siden er endnu ikke blevet gennemgået af erfarne bidragydere og kan afvige væsentligt fra den
version , der blev gennemgået den 22. marts 2015; checks kræver
12 redigeringer .
SNTP |
Navn |
Simpel Network Time Protocol |
Niveau (ifølge OSI-modellen ) |
Anvendt |
Familie |
TCP/IP |
Port/ID |
123/ UDP |
Formål med protokollen |
Tidssynkronisering |
Specifikation |
RFC 4330 |
SNTP ( engelsk Simple Network Time Protocol ) er en tidssynkroniseringsprotokol over et computernetværk. Det er en forenklet implementering af NTP -protokollen . Det bruges i indlejrede systemer og enheder, der ikke kræver høj nøjagtighed, såvel som i brugerdefinerede tidsprogrammer. SNTP-protokollen er et specialtilfælde af NTP-protokollen med nogle forenklinger. Således kan en SNTP-klient få adgang til enhver NTP-server, som om den var en SNTP-server.
Tidsformat
SNTP-protokollen bruger samme tidsformat som NTP-protokollen - et 64-bit tal bestående af en 32-bit sekundtæller og en 32-bit brøksekundtæller. En tidstællerværdi på nul svarer til nul timer den 1. januar 1900, kl. 18:28:16 7. februar 2036 osv. For at protokollen skal fungere korrekt, er det nødvendigt, at klienten kender sin tid inden for ±34 år efter servertiden.
Meddelelsesformat
Byte |
0 |
en |
2 |
3 |
fire |
5 |
6 |
7 |
otte |
9 |
ti |
elleve |
12 |
13 |
fjorten |
femten |
16 |
17 |
atten |
19 |
tyve |
21 |
22 |
23 |
24 |
25 |
26 |
27 |
28 |
29 |
tredive |
31
|
0-3 |
IR |
HB |
Mode |
Strata |
Afstemningsinterval |
Nøjagtighed
|
4-7 |
Forsinke
|
8-11 |
Spredning
|
12-15 |
Kilde-id
|
16-19 |
Opdater tid
|
20-23
|
24-27 |
Starttidspunkt
|
28-31
|
32-35 |
Tidspunkt for modtagelse
|
36-39
|
40-43 |
Afsendelsestid
|
44-47
|
48-51 |
Identifikationsnøgle
|
52-55 |
Beskedsammendrag
|
56-59
|
60-63
|
64-67
|
- Korrektionsindikatoren (IR) viser en advarsel om en fremtidig indsættelse eller sletning af et sekund i dagens sidste minut:
IR |
Betyder
|
0 |
Ingen rettelse
|
en |
Det sidste minut vil have 61 sekunder
|
2 |
Det sidste minut vil have 59 sekunder
|
3 |
Tiden er ude af synkronisering
|
- Versionsnummeret (HB) er den aktuelle værdi på 4.
- Mode:
Mode |
Betyder
|
0 |
Reserveret
|
en |
symmetrisk aktiv
|
2 |
Symmetrisk passiv
|
3 |
Klient
|
fire |
Server
|
5 |
Udsende
|
6 |
Reserveret til NTP-kontrolmeddelelser
|
7 |
Reserveret til privat brug
|
- Strat - feltet er kun defineret for servermeddelelser:
Strata |
Betyder
|
0 |
Kiss of Death (server må ikke bruges)
|
en |
Primær synkronisering
|
2-15 |
Sekundær synkronisering
|
16-255 |
reserveret
|
- Pollingintervallet er et heltal uden fortegn, hvis binære eksponent angiver det maksimale interval mellem på hinanden følgende meddelelser i sekunder. Defineret kun for servermeddelelser, gyldige værdier er 4 (16s) til 17 (ca. 36h).
- Præcision er et heltal med fortegn, hvis binære eksponent angiver nøjagtigheden af systemuret. Defineret kun for servermeddelelser, typiske værdier er -6 til -20.
- Forsinkelse er et signeret fastpunktsnummer på mellem 15 og 16 cifre, der angiver den samlede tur-retur-tid for signalet til at nå tidsserverens urkilde. Defineret kun for servermeddelelser.
- Variansen er et tal uden fortegn med et fast punkt mellem 15 og 16 cifre, der viser den maksimale fejl på grund af urets ustabilitet. Defineret kun for servermeddelelser.
- Kilde-id - serversynkroniseringskilde, streng for stratum 0 og 1, IP-adresse for sekundære servere. Defineret kun for servermeddelelser.
- Update Time - Det tidspunkt, hvor systemuret sidst blev indstillet eller justeret.
- Starttidspunkt, modtagetid, sendetidspunkt er defineret nedenfor.
- Identifikationsnøgle, beskedsammendrag - valgfrie felter, der bruges til godkendelse.
Klientjob
SNTP-klienten kan fungere i unicast-, broadcast- og multicast-tilstande. I unicast-tilstand sender klienten en anmodning (tilstand 3) og venter på et svar (tilstand 4) fra serveren. I broadcast-tilstand sender klienten ikke anmodninger, men venter på beskeder (tilstand 5) fra en eller flere servere. I multicast-tilstand sender klienten en anmodning (tilstand 3) til en broadcast-adresse og venter på et svar (tilstand 4) fra en eller flere servere. Den første server, der svarer, bruges til efterfølgende unicast-anmodninger, andre svar ignoreres.
Mark
|
Single-multicast
|
Udsende
|
Anmodning |
Svar
|
Korrektionsindikator |
0 |
0-3 |
0-3
|
Versionsnummer |
1-4 |
fra anmodning |
1-4
|
Mode |
3 |
fire |
5
|
Strata |
0 |
0-15 |
0-15
|
Afstemningsinterval |
0 |
ignoreret |
ignoreret
|
Nøjagtighed |
0 |
ignoreret |
ignoreret
|
Forsinke |
0 |
ignoreret |
ignoreret
|
Spredning |
0 |
ignoreret |
ignoreret
|
Kilde-id |
0 |
ignoreret |
ignoreret
|
Opdater tid |
0 |
ignoreret |
ignoreret
|
Starttidspunkt |
0 |
se beskrivelse |
ignoreret
|
Tidspunkt for modtagelse |
0 |
se beskrivelse |
ignoreret
|
Afsendelsestid |
se beskrivelse |
se beskrivelse |
se beskrivelse
|
Godkendelse |
ikke nødvendigt |
ikke nødvendigt |
ikke nødvendigt
|
Beskedsammendrag |
ikke nødvendigt |
ikke nødvendigt |
ikke nødvendigt
|
I unicast- og multicast-tilstand udfylder klienten felterne "HV", "Mode" og eventuelt "Send Time". De resterende felter er udfyldt med nuller. Serveren kopierer feltet Sendetid til Starttid og indstiller felterne Modtagelsestid og Afsendelsestid. "Ankomsttidspunkt" er fastsat på tidspunktet for modtagelse af et svar fra serveren.
Navn |
Koden |
Når den er genereret
|
Starttidspunkt |
T1 |
Det tidspunkt, hvor anmodningen blev sendt af klienten
|
Tidspunkt for modtagelse |
T2 |
Det tidspunkt, hvor anmodningen blev modtaget af serveren
|
Afsendelsestid |
T3 |
Serverens responstid
|
Ankomsttid |
T4 |
Kundens responstid
|
Den aktuelle tid er indstillet til T4, korrigeret for den lokale tidsforskydning. Lokalt tidsskift t og pakketransmissionsforsinkelse d beregnes ved hjælp af formlerne:
t = ((T2 - T1) + (T3 - T4)) / 2
d = (T4 - T1) - (T3 - T2)
I broadcast-tilstand modtager klienten ikke information om spredningsforsinkelse, og der foretages ingen korrektion.
Se også
Links
RFC 4330 - Simple Network Time Protocol (SNTP) version 4