11. Actualización automática de fecha y hora (NTP)
El Powermeter Smart tiene implementada una función de actualización de fecha y hora local
mediante consulta a un servidor externo a través del protocolo NTP. Dicho protocolo funciona
sobre UDP, y el puerto estándar reservado es el 123.
La actualización automática de fecha y hora se puede desactivar, pero por defecto esta función
viene activada. Es posible ajustar la frecuencia de ejecución de consultas automáticas, que por
defecto está establecido en 86.400 segundos (equivalente a 1 día).
Normalmente la consulta a los servidores NTP devuelve la fecha y hora en un formato UTC o
GMT 0, razón por la cual es necesario adaptar la respuesta a la zona horaria local del equipo.
Por esa razón, en el equipo se provee la capacidad de configurar la zona horaria (GMT).
El servidor de destino al cual se envían las consultas NTP es time.nist.gov y el puerto por
defecto es el UDP 123. Pero tanto la dirección como el puerto pueden ser modificados para
apuntar a otro servidor. Esto resulta particularmente útil en casos donde se desea utilizar un
servidor NTP disponible en LAN, por ejemplo en casos donde el equipo no tendrá acceso a
internet por cuestiones de seguridad de red.
Dado que la consulta NTP se realiza sobre UDP sin ningún mecanismo que asegure la
integridad de los datos, se implementó un mecanismo de validación para evitar errores. El
mismo consiste en 2 validaciones:
● El timestamp en formato unix (segundos desde 1970) obtenido como respuesta debe
estar comprendido entre 1.000.000.000 y 4.000.000.000.
● La consulta NTP se repite 3 veces consecutivas, y en todas las oportunidades el
timestamp recibido como respuesta debe ser similar (con pocos segundos de diferencia
entre ellos).
Superada la validación, la fecha y hora obtenidas como respuesta de la consulta son aceptadas
como correctas, y se ajusta el reloj de tiempo real del equipo en base a dicha información.
43