蓝牙授时CTS (Current Time Service)、PTP、NTP

1. 蓝牙有自带的授时服务,这是应用层级别的授时服务,不过精度和分辨率都是秒级。

reference:《Current Time Service (CTS)》CTS.ICS.p5

2. NTP授时协议。

NTP是TCP/IP协议族里面的一个应用层协议,用来使客户端和服务器之间进行时钟同步,属于计算机网络技术。通过协议+算法,分辨率可以达到1ms,精度达到0.1S(100ms)完成没问题,甚至可以达到0.01s(10ms)级精度。

虽然NTP本不是应用于蓝牙,但是这个做法有一定参考性,具体应用时,尽量缩小连接间隔和latency。

reference:什么是NTP?NTP如何实现时钟同步? - 华为

结合参考文献,以下进一步详解,可以更轻松理解。

① T_Transfer_delay = (T4-T1)-(T3-T2) :这很好理解,T3-T2时服务器收发处理信息消耗的时间,T4-T1是整个RTT(Round-Trip Time)信息往返消耗的时间;(T4-T1)-(T3-T2),因为T4和T1都是客户端的时间戳,那相减只省下来回的传输延迟;如果T_Transfer_delay/2,那就是单向传输的延迟时间。

T_Offset =((T2-T1)+(T3-T4))/2,华为的方程组理解很到位,当然也有一种理解过程如下。

T2-T1:服务端接收请求报文的时间戳 - 客户01230端发送请求报文的时间戳,结果当然就是传输延迟(T_Transfer_delay)和时钟差(T_Clock_offset)。

T2-T1 = T_Clock_offset + T_Transfer_delay/2

T3-T4:服务端发送响应报文的时间戳 - 客户端接收响应报文的时间戳,结果也是传输延迟和时钟差,这时候需要从数学意义上理解,offset值其实并不会因为传输方向变化而改变,而传输方向改变后延迟则是反向的,所以符号上会体现为负方向

T3-T4 = T_Clock_offset +(- T_Transfer_delay/2)

综上

(T2-T1)+(T3-T4)

= T_Clock_offset + T_Transfer_delay/2+ T_Clock_offset +(- T_Transfer_delay/2)

= 2*T_Clock_offset

3. 广播授时

如Mesh、PAwR(ESL)、传统广播等,注意这是基于BLE的三种完全不同的技术方案。

4.有线网络

有线网络有延时的优势,包含EtherNet(<100m)、Can(40~500m)、RS-485(500~1500m)、PLC(电力载波100~5000m)、Optical Fiber(100Km+)、SDH/SONT(100Km+)、DWDM(100Km+)

4.1. PTP

PTP是硬件PHY或MAC层的协议,在OSI中的底层,因此,信息处理时延基本可以忽略不计(消耗时约0.1ms、0.01ms),通过频率同步和时间同步(相位同步),整体实现0.1us级别的精度。

蓝牙暂时没有办法集成实现。

什么是1588v2(PTPv2 )?1588v2(PTPv2)是如何实现同步的? - 华为

相关推荐
BioRunYiXue几秒前
AlphaGenome:DeepMind 新作,基因组学迎来 Alpha 时刻
java·linux·运维·网络·数据库·人工智能·eclipse
Huanzhi_Lin3 分钟前
Nginx本地资源服务器-常用脚本
服务器·前端·nginx·batch·静态资源服务器
此刻觐神4 分钟前
IMX6ULL开发板学习-04(Linux磁盘管理相关命令)
linux·运维·学习
wb18911 分钟前
docker-ce容器技术重习
运维·笔记·docker·容器·云计算
jiayong2312 分钟前
第 4 课:怎么把一个大页面拆成多个组件
运维·服务器·前端
qq_85730581914 分钟前
ubuntu 22 源码安装bochs
linux·运维·ubuntu
A-刘晨阳14 分钟前
麒麟v10桌面版2403版本运行程序提示权限不足(KYSEC)
运维·云计算·操作系统·银河麒麟·麒麟桌面系统
百结21416 分钟前
Python网络编程
网络·python
闻道且行之16 分钟前
虚拟机三种网络模式全解析(桥接 / NAT / 仅主机)
网络·智能路由器·vmware·虚拟机
恒创科技HK22 分钟前
恒创科技:刚交付的香港云服务器应该做哪些测试
运维·服务器