基于Petri网的协议验证与测试方法研究

来源 :中国科学院计算技术研究所 | 被引量 : 0次 | 上传用户:yqmaidou
下载到本地 , 更方便阅读
声明 : 本文档内容版权归属内容提供方 , 如果您对本文有版权争议 , 可与客服联系进行内容授权或下架
论文部分内容阅读
随着网络服务要求的提高,网络系统的协议也变的越来越复杂,在这种情况下,需要合适的方法、技术来对协议进行正确性验证和测试[1][2].对协议本身的逻辑正确性进行校验的过程称之为验证[3].协议的正确性验证试图在协议具体实现前最大限度的检测和纠正协议错误和缺陷.协议的测试是在协议实现后,用实验的方法检验协议标准文本所规定的功能是否与协议实现执行时完成的功能一致. 在对协议验证和测试的工作中应尽可能的使用形式化的技术,使得验证和测试工作具有坚实的理论基础并且更加精确化和规范化. 本文主要采用基于Petri网的形式化分析方法针对协议的验证和测试问题开展了如下几个方面的研究工作. 1) 形式化的建模技术是协议验证和测试工作的基础.本文给出了三种对协议建立Petri网模型的形式化方法,分别是基于协议实体行为描述语言CPEBSDL(Commutafion Protocol Entity Behavioral Specification and DescriptionLanguage)的Petri网建模方法PMA_CPEBSDL,基于协议实体行为描述语言文法G的Petri网建模方法,基于协议实体行为序列表达式的Petri网建模方法.在一定程度上解决了根据协议文本直接手工建立协议模型易出错的问题,提高了协议Petri网模型的可靠性. 2) 提出了基于Petri网关联矩阵、状态方程及可达图的协议验证方法.这些验证方法给出了Petri网模型的性质和协议实际物理特性之间的对应关系.通过分析网模型的活性、P-不变量(s-不变量)、T-不变量、有界性、公平性等性质,实现了对协议死锁、活锁、资源守恒性、错误的动作序列的可恢复性、接收或发送缓冲区的溢出、遗漏或重复接收报文等特性的验证. 3) 提出了用Petri网理论对协议一致性测试的方法和步骤.解决了一致性测试中的两个难点问题.①测试集和测试例的表示和生成;②被测实现的实际响应序列和预期响应序列的比对.测试集用模拟协议功能的网模型表示,测试例用网模型的进程表示,通过求解网模型的进程表达式给出尽可能覆盖协议所有行为的测试例. 文中结合了很多具体的实例对协议的验证和测试方法给出了详细说明.
其他文献
随着社会生产力的持续进步,人们对高性能计算的需求与日俱增,而机群已经牢牢地占据了HPC体系结构的主流地位.网络攻防技术的激烈转换,使得通过Internet共享资源的计算中心所
无线自组网由于其鲁棒性、抗毁性、适应环境能力强等特点,被广泛用在国防战备、军用通信、紧急救灾等不需要基础通信设施或者只需要临时通信的环境.随着移动通信和移动终端技
本文从Debian GNU/Linux操作系统的基本概念和设计实现出发,研究了在龙芯处理器平台上Linux发行版的开发过程和实现方案,对实现过程中软件包编译和管理环节提出了优化方案和
在目前的考试系统中,由于自然语言处理和人工智能技术的限制,具有通用性和实用性的主观题自动评分系统还没有出现。国内现有的系统对主观题的处理大多依然是通过教师的人工阅
近年来机群系统凭借良好的可扩展性、可用性以及极高的性价比成为高性能计算机和超级服务器的主流结构.然而,磁盘性能的改善远远落后于CPU处理速度、内存性能、互连网络带宽
在现代超大规模集成电路中,每个芯片中都包含上百万个晶体管和互连线,其中任何缺陷都可能导致整个芯片设计失败.在后端物理设计中,要经历综合、布图规划、布局、布线等步骤,
在"龙芯"产业化过程中,"应用软件库"不丰富是一个重要的问题,对于用c/c++等平台相关语言编写的应用程序,移植和维护都需要大量的人力物力,只要"龙芯"产品投入市场,移植和维护
软件安全漏洞的存在及其带来巨大的危害使得软件漏洞检测技术的研究日益重要。其基本思想是通过对待测试软件程序采取不同的技术手段,分析程序的源代码、二进制代码或在对应
近十来年,互联网技术得到了快速发展,互联网用户不断增加,网络应用得到迅速普及,网络数据的增长速度超乎想象。XML语言(可扩展标记语言)作为互联网上数据交换和共享事实上的
随着数据仓库技术与数据挖掘技术的广泛应用和发展,企业管理人员对决策分析有了更高的要求。企业的中高层领导目前更多关注的是如何能够在现有大量数据的背后挖掘到有用的隐藏