论文部分内容阅读
随着计算机网络技术的蓬勃发展,Internet已经成为全球通信的核心基础设施。协议是计算机网络中各种通信实体相互交换信息时必须遵守的一组规则,它是Internet的灵魂。而协议中的任何错误和缺陷都将给系统的稳定性、可靠性、安全性、容错性、互通性和互操作性带来巨大的危害,面向协议错误和缺陷的健壮性研究正在成为协议工程的研究热点。 BGP协议健壮性测试研究具有重要理论意义和实际应用价值。BGP位于Internet的核心控制层面,是域问路由的事实标准,BGP的脆弱性直接影响Internet路由的稳定性。BGP协议健壮性测试取得任何突破性进展,将直接提高Internet的可靠性和可用性。此外BGP协议具有路由协议的一般性特征,BGP健壮性测试使用的测试方法和测试框架可以方便地推广到其他协议的健壮性测试中。 本论文通过对BGP协议组的分析,根据BGP协议的特点、Internet发展的新趋势和BGP面临的挑战,提出了适合于BGP健壮性测试的测试方法和测试框架,并对其中的一些关键问题进行了研究。本论文的主要研究工作包括以下几个方面: 第一,健壮性缺陷分析和分类。虽然BGP协议标准中含有健壮性设计的内容,但是当BGP应用到Internet之后,面对复杂的Internet环境还是表现出众多的健壮性缺陷。利用测试机构提供的测试数据,互联网上公布的监测信息、统计结果和BGP失效实例,以及本实验室多年从事BGP研究、开发和测试的文档资料,本论文详细分析了BGP协议在设计、实现、使用和扩展等阶段可能出现的健壮性缺陷。对BGP健壮性缺陷的分析和分类将帮助协议设计和实现工程组在以后各自的工程中不再重复这些错误,更为健壮性测试确定了测试目标,使后续工作做到有的放矢。 第二,NC的健壮性测试集合研究。BGP协议的功能可以分成两部分:网络通信(NC,Network Communication)和路由信息处理(RI-Pro,Routing Information Processing)。NC的作用是为路由信息流提供稳定可靠的通信通道。BGP协议的NC在协议标准中使用FSM描述,该状态机实现了对等体的建立,维护TCP连接和参数协商等功能。我们提出了基于RFSM(Robustness Finite State Machines)的健壮性测试方法,该方法对FSM的功能部分和功能保护部分进行了严格区分,对功能部分提出用CFSM(Core FSM)描述,对功能保护部分提出使用RFSM进行描述。本文详细地构造了BGP的RFSM,并提出了RFSM的构造方法。在构造RFSM的过程中还重点探讨了冲击集合,以及特征序列和测试预言等健壮性测试面临的新问题。该测试方法可以系统地生成BGP协议NC部分的反向测试集合,此外该健壮性测试方法具有通用性:对于通信协议的FSM,都可以使用该方法构造新的RFSM,实现健壮性测试案例的生成。 第三,RI-Pro的健壮性测试集合研究。RI-Pro是路由协议软件的核心,其主要功能是路由信息的计算和路由表的更新,以及新路由信息的生成和传播。RI-Pro的测试不仅具有