APP下载

基于时间触发机制的通信总线安全性分析

2018-05-18林捷

现代计算机 2018年11期
关键词:物理层时钟总线

林捷

(福建师范大学光电与信息工程学院,福州 350100)

0 引言

随着计算机控制系统飞速发展,对安全关键系统的可靠性、安全性等提出了更高的要求,安全关键系统是指其在失效情况下会造成重大生命财产损失的系统,如轨道交通、航空航天、核工业等。安全关键系统中对通信的实时性和确定性具有非常高的要求。传统计算机控制系统中采用的通信总线,如CAN总线,是基于事件触发的机制,使得系统通信存在不确定和不可预知性安全威胁[1]。为防护安全苛求系统通信中的安全风险,欧盟标准委员会在IEC61508标准中引入了时间触发架构[2]。在文献[3]指出:在时间触发架构(TTA)的系统中,系统的所有活动将会从一个全新的初始状态开始,活动的进展状况会基于一个同步的时间基。各个应用在时间触发总线上占有一个固定的时间段,所有的应用任务之间都在进行着消息交换,依据确定的调度表进行交换。时间触发总线被证实可有效减少系统测试和证明所需要的准备工作,促进分布式实时系统的设计,提高系统的通信安全性。时间触发总线弥补了既有总线协议在列控系统或者同安全相关的系统时容错性和传输速率低的不足。

时间触发通信总线的研究已经引起很多研究学者的关注,大部分研究主要集中在协议运行的调度算法优化方面如文献[4]将装箱算法与遗传算法相结合形成混合遗传算法,从而能更快地找到最优近似解,来提高FlexRay总线的通信效率。文献[5]基于FMEA(失效模式及影响分析方法)提出通用性框架分析FlexRay总线可能存在的系统故障及其影响。NiuRu等人采用广义Petri网形式化的验证了TTP/C总线协议成员服务的一致性[6]。

这些研究往往都是从理论的角度分析时间触发总线的性能,很少从定量的角度分析时间触发机制的可靠信。本文采用FMEA方法分析列控安全计算机平台的通信总线的结构基础上,评估系统可能存在的风险,在协议的设计中采用与TTP/C总线和FlexRay总线相似的时间触发机制,并在协议的运行中采用数据重发机制来防护通信中存在的风险,最后从定量的角度分析所设计的时间触发通信总线可以满足列控安全计算的安全需求。

1 通信总线结构与需求分析

基于时间触发方式的通信网络,由于在整个系统中建立了全局统一的时钟[7],因此时间触发通信总线具有很强的可预测性与周期性。不同的通信设备在通信时能够实现在规定的时间序列,依据确定的调度表进行数据收发操作,从而实现高可靠的数据传输机制,非常适合应用在对系统安全等级要求高的领域如铁路、航空、汽车等行业,目前应用最广泛的时间触发总线有TTP/C总线和FlexRay总线等。如在轨道交通领域,根据EN50159标准对轨道交通控制系统中通信安全威胁做出详细定义,由于当前通信系统存在的一些尚未解决的缺陷,可能导致信息在传输的过程当中会出现一些差错或者误码,诸如此类隐患都有可能对通信系统产生潜在的威胁[8]。

1.1 通信总线结构

相比于OSI和TCP模型,本系统的通信协议层相对简化,包括物理层、链路层和应用层。

图1 通信总线的系统结构

图2 时间触发总线物理层结构图

通过该时间触发总线的物理层结构图中可以看出,物理层位于系统的最底层,并且针对该系统的电气特性和电路接口进行了一些规定,协议链路层的职责是除了对数据包采取组包和解包的措施之外,还承担着对数据进行校验、传送进行差错处理。应用层的职能为对各类不同的数据进行逻辑分析处理和分析计算,与此同时,在传输方面也没有停滞,直接将各类数据的逻辑分析处理结果下发至通信的协议链路层中进行传输。该系统的核心所在不是物理层的功能与规定,而是协议链路层针对该系统的特殊性而产生的一种全新形式的自定义通信协议。

1.2 失效模式及影响分析方法

所谓的FMEA(失效模式及影响分析方法)是一种归纳分析方法。它通过分析产品或系统可能存在的故障模式而确定对产品或系统性能及功能的发挥、人员安全与维修等的影响。FMEA可以在系统的初期阶段,在第一步对各项数据进行逻辑处理以及对系统分析设计,找出潜在的威胁和隐患,从这些威胁和隐患当中继续根据数据观察多方面威胁和隐患的产生因素,对其产生的后果和影响进行模拟,最小化影响。从而能够在通信系统实现前预先采取措施,减少失效模式,从而有效地提高系统的质量和可靠性。它能够系统地分析潜在的风险因素,在系统级采用FMEA分析可能出现的失效模式,及其导致的后果和发生的原因,并确定和初步评估协议设计中所采取的保护策略。

下面汇总了FMEA分析的结果,FMEA分析的结果都会包含其核心内容,也就是协议失效模式、协议原因、故障影响和防护措施。具体分析结果参照表1通信节点的FMEA分析。

表1 通信节点的FMEA分析

2 时间触发通信总线

首先,时间触发通信总线必须符合故障安全原则的总要求。其次,还需保证它与安全关键计算机控制系统可稳妥适配,不允许其他特异性问题出现。因此该总线在相关的安全领域的应用中,一方面釆用时间触发机制保证通信时间的确定性,另一方面设计相应的安全通信协议应对通信失效的风险,如引入总线通信的重传机制,防止重复、删除、插入、延迟、乱序等时间相关的传输风险

2.1 总线物理层冗余性

在上一节中采用FMEA方法分析总线通信存在的风险,通过借鉴ARINC659高可靠度和安全度的物理层,在物理层总线上采用4条冗余通道[3],进一步提高总线的可靠性、容错性以及利用率。物理层总线分为两组H1和H2,由通信控制器进行主控,每组总线又有x 和 y两个通道,共有 H1x、H1y、H2x、H2y四条总线,每条总线在每个时钟的上升沿传输4bit数据。在发送和接收上利用半双工进行通信传输,同时采用交叉检测容错机制对接收的数据进行校验,再对比较后的数据进行CRC解码,最终数据校验无误后判断接收到的数据为有效数据。由于每条线路且相同时间发生传输错误的概率极小,由于每条线路在同一个时间内发生传输错误的概率极小,倘若某个时刻单条线路发生传输错误就变得可被允许,这将极大地提高通信的容错能力。

图3 总线物理层冗余结构

2.2 总线链路协议层分析

时间触发架构(以下简称TTA)由Kopetz等人提出,目的是为设计可靠性分布式系统提供一个可靠性框架。该架构可用于车载网络,飞行器控制网络,过程自动化等领域。TTA将大型应用系统逐步分解成相对独立的簇和节点。在每个节点中生成一个已知精度的全局时基。时间触发总线依赖于通信各节点时间调度管理。时间调度管理的基础是时间无冲突分配和各节点时间同步。因此,时间触发架构的关键之处在于控制不同的设备节点时间相一致,否则会造成总线冲突竞争情况,导致整体通信陷入瘫痪。理想状况是多设备通信的总线之间保持同步(这需要依赖物理时钟同步机制),各个节点之间跟随相同的主控节点的全局时钟。

(1)通信模型

时间触发总线通信节点之间的关系模型为主从关系模型,该模型单位周期内有且只有一个主设备来控制协调全局设备通信。该模型的参考原理是几个待同步的节点的时间段必须同时参考同一个主控节点的时间,从而实现同步。

基于此模型,时间触发总线可在单位周期内以主控节点的时钟为同步基准时钟,将多个从节点的时钟同步于主控节点,实现在每个周期内对多个从节点进行同步,避免时钟误差累积造成的通信失步问题。

(2)时间片划分策略

由于时间触发总线是数据线和时钟线多节点共享,属于半双工通信方式。需要采用分时复用技术实现多对多双向通信。分时复用是指利用不同的时间实现在同一组通信线路上实现接收和发送数据功能,以及多个节点利用不同时间实现两两通信,但在同一时间只能有一个节点能发送数据。为此需要合理划分时间段才能实现多个通信节点无冲突通信。首先根据节点数n,取其中一个为主控节点,其余(n-1)节点为从。每个节点两两相互通信,则至少需要划分为n*(n-1)时间片。

(3)节点时钟同步策略

主从节点的时间同步有全局时钟和局部时钟两个概念。局部时钟是表示节点时间计时是以自身晶振时钟为基准,而全局时钟是指全部节点相同时间源的时钟为基准。传统的全局时钟策略是直接采用统一时钟源,通过时钟线与各节点时钟保持一致。该策略虽然可以达到绝对的时钟同步,但存在时钟频率受限,节点距离受限、高抗干扰环境等缺点。因此我们将采用局部时钟和全局时钟相结合方式,通过总线的数据线和时钟线来进行周期性全部时钟同步,其他时间段各节点采用局部时钟计时。主控节点在通信周期T开始前维持一个短时固定的同步时隙,该同步时隙用于全局时钟同步。在同步时隙内,从节点以主控节点的晶振时钟为基准。主控节点根据链路层规定向总线发送一定固定格式数据信息以及一定频率的时钟信号作为全局同步信号,同步信号使得全局节点开始统一计时。

这种同步广播机制除了可以防止通信中出现数据乱序,延迟等风险,还可以在其中的一个通信对象出现故障停止工作时,保证其他通信对象正常运行。当系统维护人员更换通信对象或者添加新的通信对象时,通信对象只有收到当前主通信对象发送的广播同步信号才可以按照预定的时间片轮转表正常运行,大大提高通信总线的容错能力与扩展性。

3 时间触发总线的实时性

在第2节中从定性的角度分析时间触发通信总线在协议层上的同步机制与数据重传机制如何防范重复、删除、插入、延迟、乱序等时间相关的传输风险。通信总线传输数据时,往往会存在传输延迟等现象,如果传输延迟过长会引发延迟、重复、乱序等风险,本文运用网络演算对时间触通信总线进行最坏网络延迟分析。

3.1 网络演算基本概念

网络演算理论用于定量求解通信数据队列长度、延迟、数据包丢失率等通信总线性能的确定性边界,其中,到达曲线模型与服务曲线模型是最重要的两个概念。通过到达曲线模型与服务曲线模型求解总线通信的最大延迟。

定理1最大延迟时间。假定一个系统S数据流的到达曲线为α(t),为数据流提供的服务曲线为β(t),其最大延迟D(α,β)满足:

则系统中数据流的最大延迟为D(α,β),如图所示,为到达曲线为α(t),服务曲线β(t)的最大水平距离。

图4 到达曲线、服务曲线与最大延迟

3.2 通信时延网络演算模型

考虑到通信总线数据流的突发性,根据文献[9]中的漏铜模型,可令其到达曲线模型为:

其中bi为数据突发量,γi为数据传输的平均速率。

由数据帧格式可知,数据信息准备发送之前需要对每个数据段进行相应地添加帧头和帧尾,进行组帧后,在总线上实时传输数据。组帧就是对数据段前加入起始位、目标地址、源地址、数据帧长度,在数据段后面添加CRC校验码与结束标识符。同理数据在接收时也需要进行解帧处理。数据的传输延迟与消息数据帧的长度有关,则计算公式为:

其中:Td为传输延迟时间,FHead代表帧头字节个数为7,FTail代表帧尾字节个数为3,DataSegment表示数据段字节个数为0-256,tbit表示传输1比特(bit)数据所需要的时间。通过理论公式的计算,确定将来实现时间触发总线协议的时间片周期T,确保T>Td保证在一个时间片在无故障情况下能够传输一帧数据。

3.3 差错策略下通信时延分析

由于外界的电磁干扰、线路短路等故障导致传输线路上的数据丢失或者错误,因此总线通信中引入数据重传机制保证数据传输的可靠性。在时间触发通信总线的链路层协议中,消息的调度是预先定义在时间片轮换表中,发送方在发送时间片结束后就放弃了总线的使用权,交给了下一个时间片。为提高总线利用率,在数据重传机制中采用“双消息ID”方式,也就是每个节点在发送消息时包含自身消息ID同时附带接收数据的应答消息ID,这样保证数据在同一周期得到应答,无需等到下一个周期。如果发送节点没有收到上一个时间片的应答帧ID,此时发送节点重新发送数据,同时记录重发的次数。考虑到时间触发通信协议工作在具有电磁屏蔽的插箱中,收到外界干扰的可能性较低,为保证时效性,可定义通信数据重发有限次数,若超过规定数据重传的次数,系统将导向故障安全处理。

在现代的通信系统之中,针对各类通信对象相互之间进行各类通信之时,由于外界的无关电磁波产生的多种干扰而引发瞬态故障,从而致使数据信息的丢包,损坏,丢失,对端根据所接收的数据进行分析核验发现问题之后,无法进行下一步操作,因此时间触发通信总线的数据重传机智的可靠性目标可以定义为:

其中P表示由于干扰而导致数据丢失以及损坏的概率。根据文献可知,在时间Ti内单条总线通信数据发生的随机错误服从泊松分布[10]:

由泊松分布可以看出:时间触发通信总线数据传输中,在整个通信周期中不存在冗余。不存在出现一个或者多个错误,消息处理过程能够被正确发送的,故其消息传送出错概率为:

图5 不同重传次数的可靠性对比

图6 不同重传次数的延迟时间

由于通信数据重传的次数越多,导致通信带宽的利用率越低,综合考虑,在实现时间触发通信总线的流程中我们选定数据重传的次数为3次。

4 结语

本文根据国际安全相关标准,采用FMEA方法辨识评估时间触发通信总线在安全关键系统中应用中可能存在的安全风险,分析表明在通信总线设计中引入时间触发机制能有效地保障安全关键系统的通信确定性与可预测性。同时也表明时间触发通信总线通过在不同通信对象间主动应答方式和数据重传等策略来防护系统由于瞬态故障导致数据的损坏。最后对时间触发总线在通信传输时的延迟特性进行分析,根据实际的仿真验证和理论计算来验证时间触发总线整体时延特性,定量地分析时间触发总线的可靠性与安全性,进一步说明时间触发架构下通信总线可满足安全关键系统通信的安全性需求。

参考文献:

[1]Maier R,Bauer G,Stöger G,et al.Time-Triggered Architecture:a Consistent Computing Platform[J].IEEE Micro,2010,22(4):36-45.

[2]Hérard J,Hedberg J,Kivipuro M,et al.Validation of Communication in Safety-Critical Control Systems[J].Nordtest report.104 p

[3]李佳,田光宇,钮翔,等.FlexRay网络通信延迟时间分析[J].清华大学学报(自然科学版),2007,47(08):1343-1346.

[4]Muller C,Valle M,Armengaud E,et al.A Generic Framework for Failure Modes and Effects Analysis of Automotive Networks[C].IEEE International Conference on Industrial Informatics.IEEE,2011:293-298.

[5]Lboudec B J,Patrick.T.:Network Calculus,A Theory of Deterministic Queuing Systems for the Internet[J],2010.

[6]Niu R,Cao Y,Tang T.Formal Safety Verification for TTP/C Network in Drive-by-Wire System[C].IEEE International Conference on Vehicular Electronics and Safety.IEEE,2007:1-6.

[7]杨佳谞,吴成富,段晓军.时间触发架构总线分析[J].航空计算技术,2013,43(04):125-128.

[8]Functional Safety of Electrical/Electronic/Programmable Electronic Safety-Related Systems German Version EN 61508:2010[S],2010,4.

[9]张连明,陈志刚,黄国盛.网络演算理论及应用研究[J].计算机工程与应用,2006,42(27):8-11.

[10]Maier R,Bauer G,Stöger G,et al.Time-Triggered Architecture:a Consistent Computing Platform[J].IEEE Micro,2010,22(4):36-45.

猜你喜欢

物理层时钟总线
基于K-ML-MPWFRFT的物理层安全传输技术
古代的时钟
MVB冗余总线故障模式分析
这个时钟一根针
基于CAN/LIN总线的LED车灯控制研究
利用Modbus协议实现垂直螺旋卸车机取料器自动调速方法
有趣的时钟
一种应用于5G基于LDPC码的物理层包编码
时钟会开“花”
卫星通信物理层安全技术探析