前言

往期的时间同步——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. java 模版式的 word

    ... package com.kingzheng.projects.word; import java.io.BufferedWriter; import java.io.File; import ...

  2. php 图像和水印

    生成图像 $img = imagecreate(400,400); imagecolorallocate($img,255,255,255); imageellipse($img,200,200,50 ...

  3. Centos8 Docker部署ElasticSearch集群

    ELK部署 部署ElasticSearch集群 1.拉取镜像及批量生成配置文件 # 拉取镜像 [root@VM-24-9-centos ~]# docker pull elasticsearch:7. ...

  4. 一文了解Docker基本概念

    一.何为Docker Docker 是一个用于开发.交付和运行应用程序的开放平台,Docker 使您能够将应用程序与基础环境分开,以便您可以快速交付软件.借用百度百科的话来说,Docker 是一个开源 ...

  5. [bzoj5510]唱跳rap和篮球

    显然答案可以理解为有(不是仅有)0对情况-1对情况+2对情况-- 考虑这个怎么计算,先计算这t对情况的位置,有c(n-3t,t)种情况(可以理解为将这4个点缩为1个,然后再从中选t个位置),然后相当于 ...

  6. [luogu6860]象棋与马

    根据扩欧$(a,b)=1$必须要满足,同时,若$a+b$为偶数则格子的"奇偶性"不变,因此$a+b$必须为奇数 反过来,容易证明满足$(a,b)=1$且$a+b$为奇数则一定可行( ...

  7. 十.Go并发编程--channel使用

    一.设计原理 Go 语言中最常见的.也是经常被人提及的设计模式就是: "不要通过共享内存来通信,我们应该使用通信来共享内存" 通过共享内存来通信是直接读取内存的数据,而通过通信来共 ...

  8. 1、使用ValueOperations操作redis(String字符串)

    文章来源:https://www.cnblogs.com/shiguotao-com/p/10559997.html 方法 c参数 s说明   void set(K key, V value); ke ...

  9. 关于 n 个 [0,1] 的随机变量第 k 小的期望值

    今天做到一道题,感觉里面一个结论有点意思,就到网上扒了篇证明(bushi)下来了. 知乎回答习惯,先抛结论,再给证明(大雾 结论:对于 \(n\) 个取值范围为 \([0,1]\) 的随机变量 \(x ...

  10. linux中的颜色

    echo -e "\033[30m 黑色字 \033[0m" echo -e "\033[31m 红色字 \033[0m" echo -e "\033 ...