《系统级汽车架构安全分析方法(3)》描述如何实现模型综合(从汽车网络架构中合成CTMC连续时间马尔科夫链),重新迭代了概率模型检查的基本内容,并重点检查了不同组件的性能影响。本文将介绍汽车网络分析所需的属性规范子集。在确定模型综合和属性后,对模型进行属性分析。
01属性规格
为了评估上一篇中合成的模型,需要指定一个属性。然后通过模型检查算法对模型进行属性检查。通常情况下,可以定义大量的多样化属性。一般采用一种语言,如计算树逻辑(CTL)来形式化描述属性。可以验证的属性非常灵活,除此以外,还包括可到达性和系统在某一组状态下停留的时间。
对于SAAN(汽车信息安全分析:一种在系统级对汽车架构进行安全分析的方法和框架)来说,关注的是系统、子系统、组件或这些集合的可被利用的时间。为了确定这一点,我们需要将分析时间
当直接定义时间
(a)瞬时变换
(b)非瞬时变换
图1.3 通过图1.2中的体系结构生成了具有瞬时变换的通用Markov模型(a)和不具有瞬时变换的优化Markov模型。状态表示为:
当对图3.6(b)中,我们的例子中ECU的状态进行可被利用性分析时
接下来,将介绍模型检查算法,验证模型的属性,并将合成的模型和属性规范作为输入。
02模型检察
在《系统级汽车架构安全分析方法(3)》中确定了要分析的模型,并在上文中给模型指定属性后,现在,将对指定属性
此处重点要介绍的是CTMC的概率模型检查。在下文中,CTMC模型检查所需的元素,经过调整和简化呈现在公式(3.27)至(3.34)中。在此过程中,一些元素会突出显示,这些元素至关重要。
为了模型检查算法,需要输入表示模型的矩阵
下面,我们将简要探讨图1.3(a)中的通用方法和SAAN方法的矩阵生成,分别表示为
要在给定的时间
由于该应用包含的始终是阳率,所以
得到矩阵
在 CTMCs 中假设指数分布,可以用来模拟变换。为了模拟这种指数行为,在每个步骤中都采用了泊松分布(
这样,我们可以计算出时间
但是,通过这种矩阵还不能直接知道时间
且
最后将预期值定义为:
接下来简要讨论这种计算的性能影响:
性能影响。公式(3.34)中的计算被定义为无限和,但实际上,这种计算必须是有界的。在其他文献中,有提到一种算法是用来确定达到设定精度所需的最小和最大迭代次数。对于大的
此外,当系统中最小的和最大的速率相差太多时,过大的瞬时变换近似值会导致模型形成一个刚性模型,在此设置中,大约是7个数量级或以上。然而,太小的近似值会导致不准确的结果,因为太小的近似值不能准确的表示实际情况。在任何情况下,瞬时变化都会产生更大的
模型大小。如公式(3.28)和公式(3.29)所示,通用方法建立的模型明显大于特定领域方法。分析较大的模型会增加分析时间,因为公式(3.34)中的矩阵乘法需要的时间明显延长。去掉瞬时变换可以减小模型的大小,从而使模型分析所需的计算量最小化。这点将下篇文章中分析。