1、2019/2/14,1,可选项对协议互操作影响的研究,2019/2/14,内蒙古大学 计算机学院 李华,2,目录,协议互操作性测试研究现状 协议互操作性测试功能与过程 形式化方法简介 选项对互操作影响研究的形式化方法; 示例 全文总结及下一步的研究工作。,2,2019/2/14,内蒙古大学 计算机学院 李华,3,背景,网络属于开放环境,不可能使用一家产品。 基于RFC开发协议,由于RFC自身描述的灵活性,使得厂家可能在实现时有所不同。 互操作性测试的重要性 本文假设:互操作性测试是在一定的一致性测试之后。,互操作性测试一般模型,2019/2/14,内蒙古大学 计算机学院 李华,4,互操作性测试
2、过程,2019/2/14,内蒙古大学 计算机学院 李华,5,互操作性测试主要的目的,是据被测系统的形式化模型找到尽可能多的被测协议实体之间的交互行为,并检查被测系统是否能够正确的理解交互信息并根据它们采用正确的行为。,2019/2/14,内蒙古大学 计算机学院 李华,6,步骤,第1步:根据被测系统的协议规范模型例如Petri网,生成系统的可达图; 第2步:根据所得的可达图得到所有的测试路径。如何在最短的时间准确测试出2个实体间的互操作能力,尤其对于复杂而又庞大的协议更为重要。,2019/2/14,内蒙古大学 计算机学院 李华,7,形式化方法-CPN,2019/2/14,内蒙古大学 计算机学院
3、李华,8,定义1 着色Petri网(Coloured Petri net)10 着色Petri网是一个九元组CPN=(, P, T, A, N, C, G, E, I),满足下列条件: (1) 是非空的类型(Type)的有限集合,称之为颜色集合; (2) P是库所的有限集合; (3) T是变迁的有限集合; (4) A是弧的有限集合满足: PT=PA=TA=; (5) N是定义在A上到PTTP的结点函数; (6) C是定义在P上的到的颜色函数; (7) G是谓词函数,定义在T上并且满足:tT:Type(G(t)=BType(Var(G(t),其中B是布尔函数; (8) E是一个定义在A上的弧的表
4、达式函数: aA:Type(E(a)=C(p(a)MSType(Var(E(a),其中p(a)是N(a)的库所,C(p)MS返回库所P上的多重集类型; (9) I是一个定义在P上的初始函数,pP:Type(I(p)=C(p)MS。,2019/2/14,内蒙古大学 计算机学院 李华,9,定义2 在marking M中说一个绑定元素(t,b)BE是可以点火的,当且仅当满足以下2条性质9: G(t)=true, 即防卫表达式必须为真; E(p,t) )+E(t,p) 对于所有的pP,即新marking等于旧marking减去输入弧消耗的token再加上输出弧产生的token。,2019/2/14,内
5、蒙古大学 计算机学院 李华,10,可选项对互操作影响研究的形式化方法,2019/2/14,内蒙古大学 计算机学院 李华,11,通过检查系统所有的测试路径进行测试,显然是不现实的,因此,对上述2个步骤分别进行优化, 第1步采用部分建模,即只对可选项的作用阶段进行建模,缩小需要建模问题的范围;第 2步采用基于数据选择的方法产生可执行的测试路径集,即选择关键结点进行测试;这使得工作量大大减少。,2019/2/14,内蒙古大学 计算机学院 李华,12,被测介绍,OSPFv3协议中的可选项介绍 部分模型的建立 基于数据选择测试路径,2019/2/14,内蒙古大学 计算机学院 李华,13,OSPFv3的H
6、ello协议部分模型,2019/2/14,内蒙古大学 计算机学院 李华,14,算法1 基于数据选择的测试路径集合的生成 输入:基于协议互操作性测试CPN模型的可达图G,关键结点集合K(key) 输出:基于数据选择的测试路径集合S /通过深度优先遍历搜索方法从可达图G中初始点开始建立一棵树,树的结点是G中的结点,树的分支是G中的弧。 Step1:深度优先遍历可达图G得到生成树T; Step2:线索化树T,在线索树T中,除了根结点,每个结点都有1个指针指向自己的双亲结点; Step3:深度优先搜索线索化的树T中的每个结点 如果当前结点是叶子结点 则 将当前结点及沿线索到达的所有祖先结点作为一个测试
7、路径p; 如果 kK且k是路径p上的1个结点 则S=Sp; 直到所有的结点至少被遍历1次,2019/2/14,内蒙古大学 计算机学院 李华,15,如果以邻接表作为可达图G的存储结构,算法1的时间复杂度为O(n+e),其中n为可达图G中结点的个数,e为弧的个数,2019/2/14,内蒙古大学 计算机学院 李华,16,表1 基于数据选择得到测试路径与 非基于数据选择的测试路径比较,2019/2/14,内蒙古大学 计算机学院 李华,17,仿真实验,2019/2/14,内蒙古大学 计算机学院 李华,18,表2 E-bit影响的测试结果,2019/2/14,内蒙古大学 计算机学院 李华,19,总结及下一步的研究,本文研究了可选项对协议互操作的影响, 对可选项作用阶段采取部分建模的方法建立了它的CPN模型,并生成可达图; 基于数据选择方法生成测试路径。并以OSPFv3协议中的可选项E-bit为例,进行了分析研究以及实验设计,对于测试结果进行了统计。 下一步的研究内容将集中在可选项间的关系对互操作性测试的影响。,2019/2/14,内蒙古大学 计算机学院 李华,20,谢谢!,2019/2/14,内蒙古大学 计算机学院 李华,21,