前言

往期的时间同步——802.1AS协议介绍一文向大家介绍了802.1AS协议的基本内容,基于时间同步协议就能实现主节点与各从节点的时间同步,但是如何评价时间同步的优劣呢?这就需要我们通过一些时间同步的参数进行分析。

本文将借助TSN Systems公司的专业TSN网络分析及测量工具TSN Box以及TSN Tools,(其中TSN Box是网络的硬件接口,作为TAP(Test Access Point)时,能够监测单条链路的报文;TSN Tools是对TSN网络通讯数据进行分析和可视化的软件工具。),从时间同步分析的角度,介绍常用的时间同步参数以及在TSN Tools软件中对应的分析器工具。

时间同步机制

在介绍具体的时间同步参数之前,先来回顾一下802.1AS中保证时间同步的两个机制:Sync 以及Pdelay机制。前者使得从节点接收到全局主节点时钟,后者使得每个节点能计算出相邻链路的延迟,二者结合起来实现时间同步。

1. Sync

全局主节点周期性地发Sync报文,并且在随后的Follow Up报文中附带上之前Sync报文发送的精确时间戳;所有从节点记录下接收到Sync报文的精确时间戳(基于本地时钟),再结合之后的Follow-Up报文中包含的精确时间戳(基于全局主节点时钟),结合下面介绍的路径延时,就能计算出本地时钟相对于全局主节点时钟的偏移。

2. Pdelay

Pdelay机制分为发起端和接收端,任意一个节点都可以是发起端或接收端,也就是说,全局主节点可以是接收端,从节点也可以是发起端。

Pdelay发起端发送Pdelay_Req报文,发起端同时记录下发送的精确时间戳t1;而Pdelay接收端收到Pdelay_Req报文后,记录下接收的精确时间戳t2;然后Pdelay接收端发送Pdelay_Resp报文,其中包含t2这一信息,同时记录下发送的精确时间戳t3;随随后Pdelay接收端再发送包含t3时间信息的Pdelay_Resp_Follow_Up报文,这样发起端获得t1、t2、t3和t4四个时间戳信息,就能计算出发起端至接收端的平均链路延时。

TSN Box与TSN Tools时间同步分析器

TSN Box是网络硬件接口,作为TAP设备时串联进单一链路中,监测双向的通信。需要说明的是配置为TAP的TSN Box向上位机的TSN Tools提供测量数据时,会引入大约1.5μs ±10 ns的延时,详见罗德与施瓦茨公司和TSN Systems公司为车载以太网提供纳秒级精度测量一文。TAP的基本拓扑如下图所示:

TSN Tools是网络分析、可视化的软件,可以将TSN Box捕捉到的报文经过筛选、分析,输出直观的图表,比如将全局主节点周期发送的报文绘制在同一时间线里:

而TSN Tools强大的分析功能来源于分析器模块,比如其内置的802.1AS分析器 ,下面就逐一介绍这些分析器的功能:

1. Sync-Follow_Up Delay

图 Sync-Follow_Up

Sync-Follow_Up Delay表示,在一次Sync报文授时过程中,TSN Box接收到的Sync、Follow_Up报文的时间差,即t4-t2 ,此参数用来反映实际Sync-Follow_Up时间间隔的稳定性。

下图是TSN Tools使用Sync-Follow_Up Delay分析器的效果:

可以看到Sync-Follow_Up Delay基本稳定在10ms,少量波动在-250μs~+750μs范围。

2. Inter-Sync Arrival Delay

Inter-Sync Arrival Delay表示TSN Box接收到相邻两个Sync报文的时间间隔,即t6-t2 ,此参数反映Sync发送周期的稳定性。

下图是TSN Tools使用Inter-Sync Arrival Delay分析器的效果:

可以看到Inter-Sync Arrival Delay在131ms±333μs范围波动,个别波动点在130ms左右。

3. Slave Clock Wander

Slave Clock Wander表示Slave时基相对于Master时基的偏移。

这需要TSN Box和Slave节点均与Master同步;Slave节点发送Reverse-Sync,并且记录发送时间戳t1’,在TSN Box接收到Reverse-Sync记录接收时间戳t2’,由于Tap Delay足够小,且TSN Box已经与Master节点同步,所以t2‘可以认为是Master时基的时间戳’;随后Slave节点发出Reverse-Follow_Up,其中会包含t1’信息,然后Slave节点再次发送一对Reverse-Sync、Follow_Up,此时在TSN Box就有t1’、t2’、t5’、t6’四个时间戳,其中t1’、t5’是Slave时基下的时间戳,t2’、t6’是Master时基下的时间戳,两种时基下的时间差与Master时基之比就表示Slave时基相对于Master时钟的偏差,由于这个偏差通常比较小,所以在TSN Tools中以每秒偏差多少纳秒的形式显示:

可以看到Slave Clock Wander在±100ns范围波动。

4. Sync Delay

Sync Delay表示TSN Box接收到Sync报文的时间戳与Follow Up报文中包含的Sync发送时间戳之差,这里假定Master与TSN Box之间的物理连接线束长度很小,此时引入的链路延时大约是纳秒级,则Sync Delay能够反映Master节点记录发送时间戳的能力。
可以看到Sync Delay大约在840±40ns范围:

5.Propagation Delay

图 Pdelay

Propagation Delay即Pdelay也就是单一链路延迟,仅考虑单向时为从发起端到接收端的时延,考虑双向时为双向时延的平均值。

可以看到Propagation Delay大约在2825ns±25ns范围。

6. Peer Delay Round Trip

Peer Delay Round Trip表示计算从PdelayRequest发出到接收到PdelayResponseFollowUp的时间差,即t6-t1 :

7. Forwarding Delay

Forwarding Delay指的是报文经过单个或多级交换设备转发产生的时延,需要从TSN Box的一端接收从Master发出的报文,另一端接收经过转发的报文,TSN Box比对两端相同报文的接收时间戳,从而计算出转发的时间。

结语

本文通过介绍TSN Tools中各个802.1AS分析器的功能及使用方法,展示了TSN Box结合TSN Tools所提供的强大的时间同步分析能力。TSN Box结合TSN Tools是应对复杂的、具有时间敏感特性的车载以太网的有效解决方案。

北汇信息作为TSN Systems公司在中国的独家合作伙伴,借助TSN Systems公司专业的TSN网络设备及分析软件,能够为下一代E/E架构中时间敏感网络提供系统级测试解决方案,包括系统设计测试、系统性能测试以及系统鲁棒性测试等。此外还提供TSN技术Workshop,其中对TSN协议族内各个子协议的解读、行业现状及趋势分析、根据应用场景提出TSN网络架构解决方案等内容,将有效地帮助客户迎接下一代E/E架构中时间敏感网络带来的挑战。

图源自TSN Box手册及TSN Tools软件。

基于TSN 802.1AS协议的时间同步分析(7种延时,1次厘清)的更多相关文章

  1. 高可靠性——TSN 802.1Qci协议介绍

    TSN协议族根据实现功能可以分为:定时与同步.延时.可靠性和资源管理四个类别,往期的时间同步--TSN协议802.1AS介绍一文向大家介绍了定时与同步功能的核心--802.1AS协议,而在基于TSN工 ...

  2. 时间同步——TSN协议802.1AS介绍

    前言之前的主题TSN的发展历史和协议族现状介绍了TSN技术的缘起,最近一期的主题TSN协议导读从定时与同步.延时.可靠性.资源管理四个方面,帮助大家了解TSN协议族包含哪些子协议,以及这些子协议的作用 ...

  3. 基于byte[]的HTTP协议头分析代码

    smark 专注于高并发网络和大型网站架规划设计,提供.NET平台下高吞吐的网络通讯应用技术咨询和支持 基于byte[]的HTTP协议头分析代码 最近需要为组件实现一个HTTP的扩展包,所以简单地实现 ...

  4. UNIX网络编程——分析一帧基于UDP的TFTP协议帧

    下图是UDP的段格式: 相比TCP段格式,UDP要简单得多,也没啥好说的,需要注意的是UDP数据长度指payload加上首部的长度. 下面分析一帧基于UDP的TFTP协议帧: 以太网首部 0000: ...

  5. 分析一帧基于UDP的TFTP协议帧

    下图是UDP的段格式: 相比TCP段格式,UDP要简单得多,也没啥好说的,需要注意的是UDP数据长度指payload加上首部的长度. 下面分析一帧基于UDP的TFTP协议帧: 以太网首部 0000: ...

  6. (原创)巩固理解基于DS18B20的1-wire协议(MCU,经验)

    1.Abstract     如前篇随笔所写,将以前遇到最难懂的两个部分重拾一下.前一篇写的是I2C协议(http://www.cnblogs.com/hechengfei/p/4117840.htm ...

  7. 802.1x协议&eap类型

    EAP: 0,扩展认证协议 1,一个灵活的传输协议,用来承载任意的认证信息(不包括认证方式) 2,直接运行在数据链路层,如ppp或以太网 3,支持多种类型认证 注:EAP 客户端---服务器之间一个协 ...

  8. 802.11协议帧格式、Wi-Fi连接交互过程、无线破解入门研究

    相关学习资料 Linux黑客大曝光: 第8章 无线网络 无线网络安全攻防实战进阶 无线网络安全 黑客大曝光 第2版 http://zh.wikipedia.org/wiki/IEEE_802.11 h ...

  9. WIFI:802.11协议帧格式

    802协议桢格式 802.11和Wi-Fi技术并不是同一个东西.Wi-Fi标准是802.11标准的一个子集,并且是Wi-Fi联盟负责管理 802协议桢格式: 协议 发布年份/日期 Op.标准频宽 实际 ...

随机推荐

  1. jsonp初识

    我们在项目中对接口发起请求时会遇到一个跨域请求的问题,在这个时候,我们可以用一个较为简单的方法解决:jsonp 后端(以php为例): <?php header('Content-type: a ...

  2. [loj3342]制作菜品

    当$n-1\le m$,不妨令$d_{1}\le d_{2}\le...\le d_{n}$,则$(n-1)k\le mk=\sum_{i=1}^{n}d_{i}\le d_{1}+(n-1)d_{n ...

  3. 【Tool】IDEA功能--SVN和Git

    IDEA功能--SVN和Git 2019-11-08  21:12:22  by冲冲 1.IDEA的SVN (1)提交项目代码到SVN服务器 ① 指定不用上传的目录 ② 设置项目上传的路径 SVN服务 ...

  4. pycharm的selenium设置

    如果运行文件,提示 no model named selenium 那就需要添加selenium的安装地址 如上图 在python>lib>site-packages 在pycharm的f ...

  5. GIT Bash 简单讲解-git如何推/拉代码

    GIT Bash 简单讲解 一.            注册/登录GIT账号 注册(或者登录) GitHub地址:https://github.com/ 注册不做详细的讲解,按照注册指示进行注册就可以 ...

  6. SAM 感性瞎扯

    SAM 做题笔记. 这里是 SAM 感性瞎扯. 最近学了后缀自动机(Suffix_Automaton,SAM),深感其巧妙之处,故写文以记之. 部分文字与图片来源于 OI-Wiki,hihoCoder ...

  7. SP20173 DIVCNT2 - Counting Divisors (square)

    Refer 主要思路参考了 Command_block 的题解. Description 给定 \(n\)(\(n\le 10^{10}\)),求 \[\sum_{i=1}^n\sigma_0(i^2 ...

  8. 在Linux下搭建nRF51822的开发烧写环境(makefile版)

    http://www.qingpingshan.com/m/view.php?aid=394836

  9. c#图标、显示图表、图形、json echarts实例 数据封装【c#】

    page: <%@ Control Language="C#" AutoEventWireup="true" CodeFile="Viewxxx ...

  10. Shell 打印空行的行号

    目录 Shell 打印空行的行号 题解 Shell 打印空行的行号 写一个 bash脚本以输出一个文本文件 nowcoder.txt中空行的行号,可能连续,从1开始 示例: 假设 nowcoder.t ...