引言
时间敏感网络(TSN)要求所有设备在纳秒级精度下协调工作。AS同步通过建立统一的时间基准,确保关键数据(如工业控制、自动驾驶指令)在严格时间窗口内传输,避免因时钟偏差引发系统故障。在上一篇(AS三部曲之一:如何理解TSN同步概念中的时钟角色?)中,我们详细介绍了IEEE 802.1AS标准作为IEEE 1588 PTP协议的特定应用规范,在时间敏感网络(TSN)中实现纳秒级高精度时钟同步的基础概念与核心机制。
在掌握了AS的基础概念之后,深入理解其内部的同步运行机制是解锁其强大能力的关键。理解AS同步机制,不仅是掌握TSN技术精髓的核心,更是设计高可靠性实时系统的基石。它解决了分布式系统中“时间一致性”的根本问题,为未来自动驾驶、工业4.0、元宇宙等低延迟高同步需求场景提供关键技术支撑。
* 不想逐字读长文?点击收听本文播客
01.
同步报文
gPTP (广义精确时间协议) 是IEEE 802.1AS标准定义的核心协议,它源于IEEE 1588 PTP,但为时间敏感网络(TSN)进行了优化,旨在实现亚微秒级的时间同步。其同步过程主要依赖于以下报文类型的交互:

事件报文
时间概念报文,进出设备端口时会打上精确的时间戳,用于计算主从时钟之间的时间偏移和路径延迟。事件报文包含以下4种:
Sync、Delay_Req、Pdelay_Req和Pdelay_Resp。
通用报文
非时间概念报文,进出设备端口时不会打上时间戳,用于主从关系的建立、时间信息的请求和通告。通用报文包含以下6种:
Announce、Follow_Up、Delay_Resp、Pdelay_Resp_Follow_Up、Management和Signaling。
02.
同步原理
2.1 同步机制对比
gPTP采用主从设备(Master-Slave)间双向交互时间同步报文的机制,通过记录并计算报文收发的时间戳差值,获取设备间的总往返时延。在假设双向传输路径对称的前提下,将总时延除以2即可估算单向通信延迟,进而推算出从设备相对于主设备的时间偏差。
从设备依据该偏差校准本地时钟,即可实现与主设备的高精度时间同步。相较于传统同步协议如1588v2与NTP,gPTP在实现机制上更接近PTP(精确时间协议)的局部实现。
■ NTP协议通常运行于主控板,其测量的通信时延不仅包含链路传输时间,还引入了各类内部处理延迟(如队列拥塞、软件调度及数据处理等),导致时延波动显著,且难以保证双向时延的对称性,最终限制了时间同步的精度。
■ PTP1588协议基于以下假设:链路延迟相对稳定(或在相邻同步间隔内变化可忽略),且双向路径时延对称。因此,该协议通过在物理链路两端最近处标记时间戳以测量链路时延,从而实现了较高的同步精度。
PTP1588协议进一步定义了两类时延测量与同步方式:
□ Delay机制:适用于端到端路径的时延测量
□ Pdelay机制:用于在两个支持该功能的通信端口之间直接测量端口到端口的传播时延(即链路延迟),此过程与端口的主从角色无关
■ gPTP的同步过程通常遵循经典的PTP延迟请求-响应机制,习惯性沿用Pdelay机制,作为重要区别,gPTP要求(或强烈推荐)在网络的物理层(PHY)或MAC层对PTP报文打上时间戳,而不是在操作系统或应用层。这完全消除了协议栈处理、中断延迟、系统调度等带来的不可控抖动。
2.2 同步原理
矫正对时原理
为了更深入理解同步原理的过程,我们从PTP1588这个协议出发介绍不同方式下的同步机理,然后通过实验验证gPTP的结果,证明其采用了何种方式。

在同步网络设备中,当报文发出或抵达时,会依据设备本地时钟为其标记时间戳。在一步(One-Step)模式下,延迟测量机制所使用的同步(Sync)报文会直接携带其自身的发送时刻信息。而在两步(Two-Step)模式下,同步报文本身并不包含发送时间戳,设备仅记录该报文的实际发送时刻,并通过随后发出的Follow_Up报文传递这一时间信息。
√ 主设备于t1时刻发出Sync报文。若其工作在one-step模式,该报文中会直接携带时间戳t1;若为two-step模式,则t1将在后续的Follow_Up报文中发送。
√ 从设备在t2时刻收到Sync报文。在one-step模式下,t1可从该报文中直接提取;在two-step模式下,需等待接收Follow_Up报文以获取t1。
√ 从设备于t3时刻向主设备发送Delay_Req报文。
√ 主设备在t4时刻接收到该Delay_Req报文。
√ 主设备通过Delay_Resp报文将时间戳t4传送至从设备。
基于所获得的t1、t2、t3、t4四个时间戳,从设备可计算出主从设备间的平均路径延迟(Delay)及时钟偏差(Offset),进而校准自身时钟,实现与主设备的精确同步。具体计算原理如下:
需要注意的是:结果的精度取决于时间戳的精度。它们应尽可能准确地反映发送和接收时间。从设备的偏移量和延迟计算是基于在两个不同地方获取的时间戳的差异。因此,两个时钟应使用相同的刻度,即相同的tic间隔。这是通过漂移补偿实现的:从属时钟速率通过控制环路加速或减慢。稍微不同的抽动间隔会降低结果。
设备通过协议计算出本地时钟与主时钟源之间的时间偏差,并依此对本地时钟进行校准。这一持续且周期性的同步机制,保证了从设备能够始终与主时钟保持精确的时间同步。
根据上述工作机制,精确的时间同步依赖于主时钟(Master)与从时钟(Slave)之间传输路径的时延对称性。若双向传输时延存在差异,将导致同步偏差,其数值等于上行与下行时延差值的一半。因此,实现高精度时间同步的核心在于确保节点间时延保持稳定、避免抖动。尽管链路传播时延通常较为一致,但设备节点处的处理时延往往波动较大。
为此,在IEEE相关标准协议中,通过引入校正字段(correctionField)参与延迟计算,能够有效补偿时延不对称性,从而更准确地估计平均路径时延(Delay)与时钟偏移量(Offset)。

如图转发时延校正处理,在设备的入口与出口端口,系统会依次对报文中的correctionField字段进行时间补偿:入口阶段减去当前时间戳,出口阶段则加上相应时间戳。这一处理机制实际上相当于将报文在当前设备内部的转发时延值累积至校正字段(correctionField)中。
转发中继类型
端到端
端到端透明时钟更新与单个数据包传输相关的延迟的时间间隔字段。从设备通过端到端的延迟请求/延迟响应消息交换来测量到主站的延迟。端到端延迟测量的基本操作如下图所示:

点对点
对等透明时钟测量与入口传输路径相关的线路延迟,并将此延迟也包括在校正字段中。TC使用Pdelay-Req/Pdelay-Resp消息测量到所有相邻时钟的链路延迟。对等透明时钟可以允许在网络拓扑更改后更快地重新配置。点对点延迟测量的基本操作如下图所示:

需要注意的是:IEEE 802.1AS网桥传输同步的方式非常相似,事实上,在数学上等同于IEEE 1588对等透明时钟(TC)传输同步的方式。
每座桥测量相对于其邻居的频率偏移;相对于GM的累积频率偏移以及从端口上同步消息到达与主端口上后续同步消息发送之间的时间差用于构造放置在后续消息中的同步时间。此外,相邻网桥和/或终端站之间的传播延迟是使用对等延迟机制测量的。
03.
AS同步机制测试
选取三台交换机作为测试设备,两台交换机通过时钟优先级方式进行Master和Slave设置,确立时钟角色,其中一台交换机作为DUT时间感知中继器,去传输和同步Master和Slave的时钟。

3.1 初始化参数
进入交换机的Web管理页面,首先确认交换机设备处于出厂配置模式下,即确认AS的参数是否进行过调整。

3.2 Mater-DUT-Slave时钟设置
根据第2节当中对于BMCA最佳主时钟选取的规则,设置IP地址192.168.4.64交换机的时钟Priority1为100,192.168.4.65交换机的时钟Priority1为默认248(作为待测DUT),192.168.4.66交换机的时钟Priority1设置为200,并开启gPTP的start功能。
此时情况下,4.64交换机的时钟作为Master存在,4.66交换机作为Slave存在,可以理解为它们作为两个OC(普通时钟存在并进行同步)。
4.65交换机作为BC(本质上它也是作为一个Slave时钟参与同步,并转发Master-slave之间的同步报文)。如下设置:

交换机1设置

交换机2设置

交换机3设置

gPTP(802.1AS)使能开启
3.3 观察DUT&Slave同步精度
由第2节所述,AS同步精度偏移是相对于Master时钟的偏移量,所以精度误差主要由Slave计算并获得偏移结果。在RELY-TSN交换机中我们可以在Slave角色的交换机中观察相对于Master角色的时钟偏移量。
虹科合作伙伴SOC-E RelyUm系列
TSN测试方案

虹科为客户提供SOC-E RelyUm系列TSN IP核、板卡、TSN交换机、测试套件等一站式解决方案,覆盖从产品研发到实际应用的全链条。
无论您处于产业链的哪个环节,是进行新产品研发,还是构建完整的应用网络,都能在我们这里找到适配的产品与服务,满足您多样化的需求。
在本次案例中,由于4.65和4.66的交换机充当Slave(DUT=BC时钟,Slave=OC时钟),所以在两台交换机的同步打印窗口查看同步精度结果。
首先观看主时钟设备的PTP clockID实例,GM clock ID以及GM present布尔值。其中PTP clockID实例为本设备的时钟源ID、GM clock ID为主时钟Master ID、GM present为false时表示本设备作为主时钟源Master设备;为ture时表示本设备作为从时钟Slave设备(外部存在Master)。同时查看OC时钟(Master&Slave clock)和BC构建生成的同步树,即三台交换机的同步端口状态(Master/Slave-port)。


Master时钟状态

DUT slave时钟状态

Slave时钟状态
结果显示,Slave设备(交换机3)的GM clock ID为Mater设备(交换机1)的PTP clockID实例,并且GM present=true,同步精度GM offset为3ns左右。
DUT设备(交换机2)GM clock ID为Mater设备(交换机1)的PTP clockID实例,并且GM present=true,同步精度GM offset为3ns左右。
Master设备(交换机1)的Port-1端口作为Master-port,DUT设备(交换机2)的Port-0端口作为Slave-port,用于和上一极时钟节点(交换机1)连接,Port-1端口作为master-port,用于和下一级时钟节点进行连接同步。Slave设备(交换机3)的Port-0端口作为slave-port,用于和上一级时钟节点(DUT)进行连接同步。整体同步树与第2节中描述一致。
3.4 观察同步报文
利用Slave(交换机3)设备的端口进行端口镜像,此例中采用port-1进行端口镜像,对port-0同步端口进行同步报文捕获。Slave设备开始port-1的镜像捕获,捕获port-0端口的Ingress和Egress帧,如图所示。

Slave设备(交换机3)的port-1接入电脑PC,并通过wireshark进行报文捕获,如图所示。


在捕获的报文中我们查看用于AS同步的几条特定报文,Sync,Announce、Follow_Up、Pdelay_Req和Pdelay_Resp、Pdelay_Resp_Follow_Up。
特别说明的是,RELY-TSN交换机采用的是2步法P2P对等延迟计算方式,该方式是指Pdelay方式下的Pdelay_Resp报文,不带有本报文发送时刻的时间戳,设备只是记录Pdelay_Resp报文发送时的时间,由后续的Pdelay_Resp_Follow_Up报文带上Pdelay_Resp报文发送时刻的时间戳。
Correctionfield的修正值有数值,该测试案例中存在DUT这个边界时钟,同步报文在转发过程需要进行对等延迟计算和驻留延迟补偿等,从而添加到修正报文当中。此外我们还可以在看到用于同步计算的preciseOriginTimestamp (seconds)和preciseOriginTimestamp。
结语.
AS同步机制的成熟,标志着TSN技术在自动驾驶、工业4.0和元宇宙等领域迈出关键一步。其纳秒级精度和轻量化架构,解决了“时间一致性”这一分布式系统的根本挑战。未来,随着TSN生态的扩展,AS协议有望进一步优化低延迟高同步需求场景,推动网络从“尽力而为”向“确定性传输”的范式转变。敬请期待“AS三部曲”终篇,我们将深入解析协议优化与前沿应用。
作者简介
罗显志
虹科高级技术工程师,专注TSN技术领域,具有丰富的理论基础和应用经验,提供专业的TSN测试和培训服务。
