sanzyf
2020-06-17
799浏览量
物联网平台提供NTP服务,解决嵌入式设备资源受限,系统不包含NTP服务,端上没有精确时间戳的问题。
物联网平台借鉴NTP协议原理,将云端作为NTP服务器。设备端发送一个特定Topic给云端,payload中带上发送时间。云端回复时在payload中加上云端的接收时间和发送时间。设备端收到回复后,再结合自己本地当前时间,得出一共4个时间。一起计算出设备端与云端的时间差,从而得出端上当前的精确时间。
本文通过MQTT.fx模拟设备端进行功能测试,工具接入请参考MQTT.fx接入物联网平台使用说明
/ext/ntp/${YourProductKey}/${YourDeviceName}/request
/ext/ntp/${YourProductKey}/${YourDeviceName}/response
{"deviceSendTime":"1571724098000"}
说明
1.时间戳数字的格式,支持Long和String。默认为Long类型。
2.NTP服务目前仅支持QoS=0的消息。
/ext/ntp/${YourProductKey}/${YourDeviceName}/response
/ext/ntp/${YourProductKey}/${YourDeviceName}/request
发送一条QoS=0的消息,payload中带上设备当前的时间戳,单位为毫秒。{"deviceSendTime":"1592361428000"}
{"deviceSendTime":"1592361428000","serverSendTime":"1592366463548","serverRecvTime":"1592366463548"}
请参考:NTP服务
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。
云服务技术课堂,各类技术课程、最佳实践输出,来好好听课吧!