Você está na página 1de 43

NTP

Network Time Protocol


Arquitetura do NTP
Arquitetura
O Os servidores NTP formam uma topologia hierrquica,
dividida em camadas ou estratos (em ingls: strata)
numerados de 0 (zero) a 16 (dezesseis).
O O estrato 0 (stratum 0) na verdade no faz parte da
rede de servidores NTP, mas representa a referncia
primria de tempo.
O O estrato 16 indica que um determinado servidor est
inoperante.
Topologia
Arquitetura
O De forma geral, quanto mais perto da raiz, ou seja, do
estrato 0, maior a exatido do tempo. O estrato ao qual o
servidor pertence a principal mtrica utilizada pelo NTP
para escolher dentre vrios, qual o melhor servidor para
fornecer o tempo.
O Por outro lado, normalmente as diferenas de exatido
entre os estratos no so expressivas e h, no momento de
escolher-se um conjunto de servidores de tempo para
configurar um determinado cliente, outros fatores a se
considerar, como por exemplo a carga qual os servidores
esto submetidos, e o atraso de rede.
Arquitetura
Arquitetura
Associaes
O Permanentes: so criadas por uma configurao ou
comando e mantidas sempre.
O Priorizveis (preemptables): so especficas da verso
4 do NTP e criadas por uma configurao ou
comando, podem ser desfeitas no caso de haver um
servidor melhor, ou depois de um certo tempo.
O Efmeras ou transitrias: so criadas por solicitao
de outro dispositivo NTP e podem ser desfeitas em
caso de erro ou depois de um certo tempo.
Arquitetura
O Modo simtrico: (symmetric mode) Dois ou mais
dispositivos NTP podem ser configurados como pares
(peers), de forma que possam tanto buscar o tempo,
quanto fornec-lo, garantindo redundncia mtua.
Essa configurao faz sentido para dispositivos no
mesmo estrato, configurados tambm como clientes
de um ou mais servidores. Caso um dos pares perca
a referncia de seus servidores, os demais pares
podem funcionar como referncia de tempo. O modo
simtrico pode ser:
Arquitetura
O Ativo: O dispositivo A configura o dispositivo B como seu
par (criando dessa forma uma associao permanente).
Por sua vez, o dispositivo B tambm configura o
dispositivo A como seu par (tambm cria uma associao
permanente).
O Passivo: O dispositivo A configura o dispositivo B como
seu par (modo simtrico ativo). Mas o dispositivo
B no tem o dispositivo A na sua lista de servidores ou
pares. Ainda assim, ao receber um pacote de A, o
dispositivo B cria uma associao transitria, de forma a
poder fornecer ou receber o tempo de A.
Arquitetura
O Broadcast ou Multicast: O NTP pode fazer uso de
pacotes do tipo broadcast ou multicast para enviar
ou receber informaes de tempo. Esse tipo de
configurao pode ser vantajosa no caso de redes
locais com poucos servidores alimentando uma
grande quantidade de clientes.
Arquitetura
Funcionamento do NTP
O O NTP um protocolo de rede que permite a
sincronizao dos relgios dos dispositivos partir de
referncias de tempo confiveis.
O Na verdade, algumas implementaes do SNTP, a
verso simplificada do protocolo, fazem isso e apenas
isso. Mas o NTP em sua forma completa muito mais
complexo.
Funcionamento do NTP
O Obter, partir de diversas amostras, informaes de tempo
de um determinado servidor, como o deslocamento,
disperso e variao.
O Discernir, dentre um conjunto de servidores, quais
fornecem o tempo correto e quais esto mentindo.
O Escolher, dentre os servidores que fornecem o tempo
correto, qual a melhor referncia.
O Disciplinar o relgio local, descobrindo seus principais
parmetros de funcionamento, como preciso, estabilidade
e escorregamento e ajustando-o de forma contnua e
gradual, mesmo na ausncia temporria de referncias de
tempo confiveis, para que tenha e melhor exatido
possvel.
Funcionamento do NTP
O Garantir a monotonicidade do tempo.
O Identificar, partir de mtodos criptogrficos,
servidores de tempo conhecidos e confiveis, evitando
possveis ataques.
O Formar, em conjunto com outros servidores NTP, uma
topologia simples, confivel, robusta e escalvel para a
sincronizao de tempo.
Funcionamento do NTP
Troca de Mensagens e Clculo do
Deslocamento
Troca de Mensagens e Clculo do
Deslocamento
A troca de mensagens entre cliente e
servidor permite que o cliente descubra qual seu
deslocamento (offset) em relao ao servidor, ou
seja, o quanto seu relgio local difere do relgio
do servidor.
a, x, y e b
Troca de Mensagens e Clculo do
Deslocamento
No possvel calcular o tempo de
transmisso das mensagens.
Contudo, o tempo total de ida e volta, ou atraso (Round
Trip Time ou RTT) que a soma T-ida + T-volta pode ser
calculado como:
atraso (delay) = (b-a)-(y-x)
Considerando-se que o tempo de ida igual ao tempo de
volta, pode-se calcular o deslocamento entre o servidor e o
relgio local como como:
deslocamento (offset) = (x-a+y-b)/2
Troca de Mensagens e Clculo do
Deslocamento
Troca de Mensagens e Clculo do
Deslocamento
T-ida = 2
T-volta = 2
a=9,
x=4,
y=9
b=18
atraso = (b-a)-(y-x) = (18-9)-(9-4) = 9 - 5 = 4.
deslocamento = (x-a+y-b)/2 = (4-9+9-18)/2 = -14/2
= -7.
Um deslocamento de -7 significa que o relgio local do Cliente deve
ser atrasado 7 unidades de tempo para se igualar ao do Servidor.
Vimos o mtodo para se conseguir calcular o
deslocamento, que T-ida = T-volta. Mas isso nem sempre
verdade!
H atrasos estocsticos nas redes devido s filas
dos roteadores e switchs. Numa WAN ou na Internet
enlaces de diferentes velocidades e roteamento
assimtrico, alm de outros fatores, tambm causam
diferenas entre T-ida e T-volta.
Troca de Mensagens e Clculo do
Deslocamento
deslocamento - atraso/2 <= deslocamento verdadeiro <= deslocamento +
atraso/2
O Pior caso:
a=9;
x=2;
y=7;
b=18.
T-ida=0
T-volta=4
Troca de Mensagens e Clculo do
Deslocamento
atraso = (b-a)-(y-x) = (18-9)-(7-2) = 9 - 5 = 4.
deslocamento = (x-a+y-b)/2 = (2-9+7-18)/2 = -18/2 = -9
O deslocamento est errado! Sabe-se que o valor correto -7, contudo
o valor calculado -9. Isso deve-se a assimetria da rede, no tocante a
T-ida e T-volta.
Algoritmo de Seleo dos
Relgios
Para a seleo dos relgios, o NTP considera
como verdadeiro o deslocamento que se encontra dentro
de um determinado intervalo de confiana. Esse
intervalo calculado, para cada associao com um
servidor, como:
Intervalo de confiana do deslocamento
intervalo de confiana = (deslocamento/2) + disperso.
Exemplos de seleo de relgios
Consulta: Lista de Servidores do NTP
Os relgios falsos so identificados por um x
Tally-codes
Algoritmo de Agrupamento
Trabalha com os servidores que so
relgios verdadeiros;
Critrios:
O Estrato (stratum)
O Distncia para a raiz;
O Variao (jitter);
Relgios afastados (outlyes);
Sobreviventes (survivor);
Aps esta filtragem, o melhor dos relgios
sobreviventes considerado o par do sistema
(system peer)
* par do sistema / + relgios sobreviventes / - relgios afastados
Tally-codes
Consulta: Lista de Servidores do NTP
Algoritmo de Combinao
de Relgios
Algoritmo de combinao de relgios
O algoritmo de combinao de relgios
utilizando quando se tem mais de um servidor
sobrevivente e quando nenhum deles est com a
palavra chave prefer.
Algoritmo de combinao de relgios
O algortmo de Combinao de Relgios
calcula uma mdia ponderada dos
deslocamentos dos relgios, com o objetivo de
aumentar a exatido.
Disciplina do relgio local
responsvel por controlar a fase e a frequncia
do relgio do sistema.
O Utiliza duas filosofias:
O Phase Locked Loop(PLL)
O Frequency Locked Loop (FLL)
Disciplina do relgio local
O Phase Locked Loop
Mais vivel quando h uma grande variao(jitter).
O Frequency Locked Loop
melhor para quando h instabilidades na frequncia.
Disciplina do relgio local
Caractersticas:
O Saltos no tempo so evitados, sempre que possvel;
O Se uma diferena maior que 128ms for detectada o
NTP considera que o tempo est muito errado e se
faz necessrio uma alterao no relgio;
O Se a diferena for maior que 1000s desconsidera a
alterao e devem ser alteradas manualmente;
Segurana
No contexto de Tecnologia da Informao deve-se
garantir as quatro propriedades abaixo:
O Integridade
O Disponibilidade
O Autenticidade
O Confidencialidade
Segurana
Autenticao
O Por chave Simtrica(Symmetric Key);
O Por chave Pblica(Autokey).
Segurana
Autenticao por chave simtrica (Utilizado para)
O Autenticar servidores ou pares no modo simtrico
ativo;
O Autenticar pares no modo simtrico passivo ou
servidores broadcast ou multicast;
O Autenticar requisies dos programas de monitorao
e controle ntpq e ntpdc.
Segurana
Autenticao por chave simtrica
Segurana
Autenticao por chave Pblica
O Pode-se configurar um grupo de segurana com um
ou mais servidores confiveis (TH Trusted Hosts)
no estrato mais baixo. Elege-se um desses
servidores para ser o agente confivel (TA - trusted
agent) e gerar os certificados privados, um
certificado pblico auto assinado, e chaves de
Identificao privadas. Se houver mais de um
servidor confivel, esses certificados e chaves so
copiados para os demais manualmente.
Segurana
Autenticao pro chave Pblica
O O autokey se encarrega de resgatar os certificados
ao longo da cadeia de servidores NTP at chegar a
um servidor confivel, garantindo que toda a cadeia
de servidores confivel.