EthTsync时间同步协议EthTsync时间同步协议是基于IEEE802.1AS规范中定义的gPTP标准协议发展出来的一套协议,该模块的时间同步原理与gPTP协议一致,只不过在协议内容方面,AUTOSAR规范进行了一些扩展,丰富了gPTP时间同步内容。
因此,本文将重点以IEEE802.1AS定义的gPTP以太网时间同步原理与协议来跟大家讲解EthTsync模块的基本功能与作用,同时针对协议内容的差异也会指出区别与联系。
本节将会从如下几个方面针对EthTsync模块时间同步协议介绍:
gPTP拓扑结构:介绍gPTP协议应用在何种以太网节点网络中使用以及各节点如何进行交互;
gPTP时间同步流程:介绍gPTP时间同步协议实现的基本原理与过程;
gPTP与PTP协议区别和联系:介绍gPTP协议与IEEE 1588规范中定义的PTP协议区别与联系;
AUTOSAR中gPTP协议介绍:介绍在AUTOSAR规范中的gPTP协议的具体内容,包含报文格式定义等内容;
gPTP拓扑结构
如下图2所示展示了单一域时间敏感网络的gPTP域拓扑结构,根据gPTP协议规范了如下域内三种类型的以太网节点:
GrandMaster Node(简称GM):在一个gPTP域内有且仅有一个主时钟,即GrandMaster节点,简称GM;
Bridge Node:桥接节点,在一个gPTP域内可以存在多个,但是不能作为时钟节点,只能作为透明时钟;
Endpoint Node:边缘节点,作为该gPTP域内的从时钟节点;
图2 gPTP单一域节点拓扑结构
其中,gPTP协议是建立在主从时钟关系上的一种协议,也就是说,在一个网络内所有节点都要以Master节点作为主时钟,其余节点作为从时钟,从时钟将自己的本地时间与主时钟时间进行同步,同时时间同步是可以层次递进的,作为slave节点的时钟也可以作为另一个局域网内的主时钟,如网关节点。
在上图中框起来的区域如果发生link错误,导致currentGM无法将时间同步信息传递进该区域,那么就会使用到BMCA算法来实现新的Master时钟选择,
若发生此类场景,图中GNSS边缘时钟节点将会被作为新的GM节点而存在,此时网络中将会存在两个gPTP域。
值得注意的是,AUTOSAR规范中的EthTsync模块明确表示不支持BMCA算法,主要是考虑到整车网络属于一个静态网络,整个ECU拓扑结构上下点电都不会发生变化,如果发生上述连接故障问题也就需要进行售后处理,软件无需处理该场景。
因此,在车载以太网拓扑结构中,gPTP域内的GrandMaster主时钟均已预先设定好,无需通过BMCA算法来进行动态选择。