- 1、本文档共25页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
FSM/EFSM的被动测试算法及其在BGP/OSPF协议测试的实现 答辩人:魏小亮 指导教师:吴建平 教授 2001年6月 主要内容 选题背景 完成的主要工作 被动测试系统结构 EFSM被动测试变量管理的算法研究 EFSM被动测试变量管理器的实现 易于移植的Watcher结构 未来工作展望 选题背景 1972年:被动测试被提出但没有有效算法 1997年:D. Lee提出FSM/NFSM模型的被 动测试算法 1998年:R. Miller提出CFSM模型的被动测 试算法 EFSM模型的被动测试算法? 用于实际协议测试的算法? 完成的主要工作 算法:EFSM被动测试算法中的变量管理 实现: FSM模型描述BGP协议的被动测试器 NFSM/EFSM模型描述OSPF的被动测试器 实验: 模拟协议实现(学习NS2/Socrates) 数据收集(BW的修改,OW) 数据的处理(BGP/OSPF的包解析器等) FSM被动测试系统结构 EFSM被动测试系统结构 EFSM被动测试的变量管理 现有的方案: NFSM 不考虑变量的问题 测试能力? 区域状态机的思路 EFSM—(变量区间×状态)?FSM 如何记录可能的状态? 放弃不确定的变量值[Tabour99 ] 不分裂状态,放弃记录有多个可能取值的变量 EFSM被动测试的变量管理 提出的方案: 用区间记录可能的取值 “区域自动机”——“放弃不确定值”的折衷方案 利用条件获取信息 发生了变迁条件为(x==c)的变迁?x=c 有限度地分裂节点(陈东洛) situation =状态+变量值; 可能的situation过多时,把状态相同的situation合并。 记录历史信息(陈东洛) 不确定变迁条件+不确定动作=assertion(断言) situation=状态+变量值+assertion (断言) EFSM被动测试的变量管理 四个方案的综合: 兼容性 报错条件——可以漏过一些错误,不能误判 每个算法都是遵守被动测试报错条件的,算法的组合仍然满足报错条件。 冗余性 可能值区间 vs 记录历史信息 历史信息记录的是可能值区间不能记录确定的信息 EFSM被动测试的综合算法 EFSM被动测试的综合算法 EFSM被动测试变量管理器的实现 变量管理器框架: EFSM被动测试变量管理器的实现 可能值区间——Value类的数据结构: private: ELEMENT_TYPE upper, lower; //取值区间的上 确界和下确界 bool error; //是否在运算中发生错误 (用于错误传播的控制) public: bool changed; //是否在运算中改变了区间(用 于从条件获取信息的传播) 基于Value定义的运算规则 EFSM被动测试变量管理器的实现 变迁条件的描述: 析取范式 从条件中获取变量值:Implication Actions EFSM被动测试变量管理器的实现 Assertion的描述: 合取范式 和取范式有利于做Assertion去冗余处理: 判断和取范式中每一个合取项,如果能被变量值确定的描述,则该合取项为冗余信息。 EFSM被动测试变量管理器的实现 条件的描述: EFSM被动测试变量管理器的实现 表达式的描述: EFSM被动测试变量管理器的实现 Action的分析过程: 易于移植的Watcher结构 历史: BGP Watcher ?BGP Watcher for Passive Testing ?OSPF Watcher for Passive Testing ?Protocol Watcher结构 OSPF Watcher Protocol Watcher Protocol Watcher 对于一个新的协议,需要重新设计的模块有: l根据协议设计数据包的数据结构、文件结构和缓冲结构 l根据新的文件结构、缓冲结构重新设计文件和缓冲的初始化模块和结束模块 l重新设计事件处理器模块 l重新设计各层的过滤器(其实大多数过滤器是不需要的,直接返回允许通过即可) l可选:重新设计可视化模块 Protocol Watcher 接口模块设计规范: 初始化模块 Int event_handler_init(void) 包处理模块 Int event_handler_process(char* buf, int len) 完成模块 Int event_handler_done(void) MAC层过滤模块 int ProtocolFilter(char *buf,int len) 未来工作展望 在理论上对现有的EFSM变量管理算法进行复杂性分析,提高算法效率。 在EFS
文档评论(0)