SNTP
Den aktuella versionen av sidan har ännu inte granskats av erfarna bidragsgivare och kan skilja sig väsentligt från
versionen som granskades den 22 mars 2015; kontroller kräver
12 redigeringar .
SNTP |
namn |
Enkelt nätverkstidsprotokoll |
Nivå (enligt OSI-modellen ) |
Applicerad |
Familj |
TCP/IP |
Port/ID |
123/ UDP |
Syftet med protokollet |
Tidssynkronisering |
Specifikation |
RFC 4330 |
SNTP ( Engelska Simple Network Time Protocol ) är ett tidssynkroniseringsprotokoll över ett datornätverk. Det är en förenklad implementering av NTP - protokollet . Det används i inbyggda system och enheter som inte kräver hög noggrannhet, samt i anpassade tidsprogram. SNTP-protokollet är ett specialfall av NTP-protokollet med vissa förenklingar. Således kan en SNTP-klient komma åt vilken NTP-server som helst som om den vore en SNTP-server.
Tidsformat
SNTP-protokollet använder samma tidsformat som NTP-protokollet - ett 64-bitars nummer som består av en 32-bitars sekundräknare och en 32-bitars bråksekundersräknare. Ett tidsräknarvärde på noll motsvarar noll timmar den 1 januari 1900, 18:28:16 7 februari 2036, etc. För att protokollet ska fungera framgångsrikt är det nödvändigt att klienten känner till sin tid inom ±34 år efter servertiden.
Meddelandeformat
Byte |
0 |
ett |
2 |
3 |
fyra |
5 |
6 |
7 |
åtta |
9 |
tio |
elva |
12 |
13 |
fjorton |
femton |
16 |
17 |
arton |
19 |
tjugo |
21 |
22 |
23 |
24 |
25 |
26 |
27 |
28 |
29 |
trettio |
31
|
0-3 |
IR |
HB |
Läge |
Strata |
Polling intervall |
Noggrannhet
|
4-7 |
Dröjsmål
|
8-11 |
Dispersion
|
12-15 |
Käll-ID
|
16-19 |
Uppdaterings tid
|
20-23
|
24-27 |
Starttid
|
28-31
|
32-35 |
Tidpunkt för mottagning
|
36-39
|
40-43 |
Utskickstid
|
44-47
|
48-51 |
Identifieringsnyckel
|
52-55 |
Meddelandesammandrag
|
56-59
|
60-63
|
64-67
|
- Korrigeringsindikatorn (IR) visar en varning om en framtida infogning eller radering av en sekund i dagens sista minut:
IR |
Menande
|
0 |
Ingen korrigering
|
ett |
Sista minuten kommer att ha 61 sekunder
|
2 |
Sista minuten kommer att ha 59 sekunder
|
3 |
Tiden är osynkroniserad
|
- Versionsnumret (HB) är det aktuella värdet på 4.
- Läge:
Läge |
Menande
|
0 |
Reserverad
|
ett |
symmetrisk aktiv
|
2 |
Symmetrisk passiv
|
3 |
Klient
|
fyra |
Server
|
5 |
Utsända
|
6 |
Reserverad för NTP-kontrollmeddelanden
|
7 |
Reserverad för privat bruk
|
- Strat - fältet definieras endast för servermeddelanden:
Strata |
Menande
|
0 |
Kiss of Death (server får inte användas)
|
ett |
Primär synk
|
2-15 |
Sekundär synk
|
16-255 |
reserverad
|
- Avfrågningsintervallet är ett heltal utan tecken vars binära exponent anger det maximala intervallet mellan på varandra följande meddelanden i sekunder. Definierade endast för servermeddelanden, giltiga värden är 4 (16s) till 17 (cirka 36h).
- Precision är ett heltal med tecken vars binära exponent indikerar noggrannheten hos systemklockan. Definierat endast för servermeddelanden, typiska värden är -6 till -20.
- Fördröjning är ett signerat fast punktnummer mellan 15 och 16 siffror som indikerar den totala tiden fram och tillbaka för signalen att nå tidsserverns klockkälla. Definierat endast för servermeddelanden.
- Variansen är ett tal utan tecken med en fast punkt mellan 15 och 16 siffror, som visar det maximala felet på grund av klockinstabilitet. Definierat endast för servermeddelanden.
- Käll-ID - serversynkroniseringskälla, sträng för stratum 0 och 1, IP-adress för sekundära servrar. Definierat endast för servermeddelanden.
- Uppdateringstid - Den tid då systemklockan senast ställdes eller justerades.
- Starttid, mottagningstid, sändningstid definieras nedan.
- Identifieringsnyckel, meddelandesammanfattning - valfria fält som används för autentisering.
Klientjobb
SNTP-klienten kan fungera i unicast-, broadcast- och multicast-lägen. I unicast-läge skickar klienten en begäran (läge 3) och väntar på ett svar (läge 4) från servern. I broadcast-läge skickar klienten inga förfrågningar, utan väntar på meddelanden (läge 5) från en eller flera servrar. I multicast-läge skickar klienten en begäran (läge 3) till en broadcast-adress och väntar på ett svar (läge 4) från en eller flera servrar. Den första servern som svarar används för efterföljande unicast-förfrågningar, andra svar ignoreras.
Fält
|
Single-multicast
|
Utsända
|
Begäran |
Svar
|
Korrigeringsindikator |
0 |
0-3 |
0-3
|
Versionsnummer |
1-4 |
från begäran |
1-4
|
Läge |
3 |
fyra |
5
|
Strata |
0 |
0-15 |
0-15
|
Polling intervall |
0 |
ignoreras |
ignoreras
|
Noggrannhet |
0 |
ignoreras |
ignoreras
|
Dröjsmål |
0 |
ignoreras |
ignoreras
|
Dispersion |
0 |
ignoreras |
ignoreras
|
Käll-ID |
0 |
ignoreras |
ignoreras
|
Uppdaterings tid |
0 |
ignoreras |
ignoreras
|
Starttid |
0 |
Se beskrivning |
ignoreras
|
Tidpunkt för mottagning |
0 |
Se beskrivning |
ignoreras
|
Utskickstid |
Se beskrivning |
Se beskrivning |
Se beskrivning
|
Autentisering |
inte nödvändigt |
inte nödvändigt |
inte nödvändigt
|
Meddelandesammandrag |
inte nödvändigt |
inte nödvändigt |
inte nödvändigt
|
I unicast- och multicast-läge fyller klienten i fälten "HV", "Mode" och eventuellt "Send Time". De återstående fälten är fyllda med nollor. Servern kopierar fältet Sändtid till Starttid och ställer in fälten Mottagningstid och Sändningstid. "Ankomsttid" är fast vid tidpunkten för mottagande av svar från servern.
namn |
Koden |
När den genereras
|
Starttid |
T1 |
Tiden då förfrågan skickades av klienten
|
Tidpunkt för mottagning |
T2 |
Tiden då begäran togs emot av servern
|
Utskickstid |
T3 |
Serverns svarstid
|
Ankomst tid |
T4 |
Kundens svarstid
|
Den aktuella tiden är inställd på T4, korrigerad för den lokala tidsförskjutningen. Lokalt tidsskift t och paketöverföringsfördröjning d beräknas med formlerna:
t = ((T2 - T1) + (T3 - T4)) / 2
d = (T4 - T1) - (T3 - T2)
I broadcast-läge får klienten ingen information om spridningsfördröjning och ingen korrigering görs.
Se även
Länkar
RFC 4330 - Simple Network Time Protocol (SNTP) version 4