一种nud的综合测试方法及装置的制作方法

文档序号:7974422阅读:396来源:国知局
专利名称:一种nud的综合测试方法及装置的制作方法
技术领域
本发明涉及通信协议技术领域,特别涉及一种NUD (NeighborUnreachability Detection,邻居不可达检测)的综合测试方法及装置。
背景技术
当前互联网所使用的网络层协议为IPv4(Internet Protocol version 4,互联网协议版本4)协议,随着互联网技术的迅猛发展以及日益递增的网络需求,IPv4协议已经无法满足当前网络需求IP地址枯竭、路由表容量压力剧增、NA(Neighbor Advertisement,邻节点公告)T模式破坏端到端的应用等。为了解决上述问题,IPv6 (Internet Protocol version 6,互联网协议版本6)协议应时而生。IPv6协议不但解决了 IPv4协议存在的弊端,同时也扩展了自己的新特性1)、新设计格式的数据报头,使得路由器提高了处理数据报文的速率以及路由速率;2)、无状态地址自动配置,显著简易了网络环境的配置步骤,降低了网络维护成本;3)、全新的邻居发现协议,该协议包含了一系列网络中邻居节点的交互机制,完善了 IPv4协议中的ARP(Address Resolution Protocol,地址解析协议)、ICMP路由器发现、 ICMP路由器重定向等。其中,IPv6的邻居发现协议中的地址解析机制,较IPv4的ARP协议而言,增加了一种新的检测机制NUD。在完成地址解析后,继续通过这种检测机制来确定邻居节点的可达性,从而保证在通信过程中邻居节点的实时可达;另外根据RFC2461 (Neighbor Discovery for IP Version 6,IPv6邻居发现协议)中所定义的状态机,当邻居可达性状态机之间满足一定条件时,可以实现互相迁移。但是,由于NUD机制中所定义的状态较为复杂,并且存在较多中间状态互相迁移的情况,因此,单从手动测试的角度无法覆盖全面测试的需求,由此需要发明一种自动测试方法,从而实现NUD的全面测试。

发明内容
本发明的目的在于,提供一种NUD的综合测试方法,能够实现NUD的自动化测试。本发明的另一目的在于,提供一种NUD的综合测试装置,能够实现NUD的自动化测
试ο本发明的NUD的综合测试方法,根据选择对NUD第一至第十状态变迁中任一种状态变迁进行自动测试,或者对所述十个状态变迁依次进行自动测试,其中,第一状态变迁为从EMPTY到INCOMPLETE ;第二状态变迁为从EMPTY到STALE ;第三状态变迁为从 EMPTY到INCOMPLETE到REACHABLE ;第四状态变迁为从REACHABLE到STALE ;第五状态变迁为从REACHABLE到STALE ;第六状态变迁为从STALE到DELAY ;第七状态变迁为从DELAY到PROBE ;第八状态变迁为从DELAY到REACHABLE ;第九状态变迁为从PROBE到 REACHABLE ;第十状态变迁为从PROBE到EMPTY。其中,对于所述第一状态变迁,包括下列步骤la、查看被测设备1当前邻居表状态为EMPTY ;lb、被测设备1发送NS地址解析报文到本地链路,其中,所述NS地址解析报文包括IPv6目的地址和目的链路层地址;lc、发送所述报文的同时,查看被测设备1邻居表对应的地址项信息,包括该被测设备的IPv6目的地址和目的链路层地址;IcU查看对应地址项状态为INCOMPLETE ;le、重复发送相同的NS地址解析报文预定次数,未收到任何的NA报文回应,即发送NS超时;If、查看被测设备1当前邻居表状态,之前所建立的对应地址项被删除。其中,对于所述第二状态变迁,包括下列步骤2a、查看被测设备2当前邻居表状态,状态为EMPTY ;2b、被测设备1发送NS地址解析报文到本地链路;2c、被测设备2第一次收到该NS地址解析报文;2d、收到报文的同时,查看被测设备2邻居表对应的地址项信息,包括该被测设备的IPv6目的地址及目的链路层地址;2e、查看被测设备2当前邻居表状态,对应的地址项状态为STALE。其中,对于所述第三状态变迁,包括下列步骤3a、执行所述测试步骤Ia-Id ;3b、被测设备2向被测设备1发送NA报文,该NA报文的构造参数为ICMPv6请求标记=1 ;3c、被测设备1收到被测设备2发送的NA回复报文;3d、收到报文的同时,查看被测设备1邻居表对应的地址项状态为REACHABLE。其中,对于所述第四状态变迁,包括下列步骤
4a、执行所述测试步骤3a_3d ;4b、被测设备1邻居表的REACHABLE_TIME可达定时器设定计时时间,可达定时器开始倒计时;4c、在可达定时器所设定的时间内,没有收到关于被测设备2的可达性证实信息;4d、查看被测设备1邻居表对应的地址项状态为STALE。其中,对于所述第五状态变迁,包括下列步骤5a、执行所述测试步骤3a_3d ;5b、被测设备2向被测设备1发送NA报文,该NA报文的构造参数为ICMPv6 请求标记! = 15c、被测设备1收到被测设备2发送的非S置位的NA报文;5d、收到报文的同时,查看被测设备1邻居表对应的地址项状态为STALE。其中,对于所述第六状态变迁,包括下列步骤6a、执行所述测试步骤;
6b、被测设备2发送NS地址解析报文到本地链路;6c、被测设备1收到被测设备2发送的NS地址解析报文;6d、收到报文的同时,查看被测设备1邻居表对应的地址项状态为DELAY。其中,对于所述第七状态变迁,包括下列步骤7a、执行所述测试步骤6a_6d ;7b、对被测设备1邻居表的DELAY_FIRST_PROBE_TIMER延时代理定时器进行时间设定,延时代理定时器开始倒计时;7c、在延时代理定时器所设定的时间内,没有收到被测设备2的NA报文回复;7d、查看被测设备1邻居表对应的地址项状态为PROBE。其中,对于所述第八状态变迁,包括下列步骤8a、执行所述测试步骤6a_6d ;Sb、对被测设备1邻居表的延时代理定时器进行时间设定,延时代理定时器开始倒计时;Sc、在延时代理定时器所设定的时间内,收到被测设备3的NA报文回复;8d、查看被测设备1邻居表对应的地址项状态为REACHABLE。其中,对于所述第九状态变迁,包括下列步骤9a、执行所述测试步骤7a_7d ;%、被测设备1周期性的发送NS地址解析报文到本地链路;9c、设置发送的最大时间间隔RETRANS_TIMER为1 s,最大的发送次数MAX_ UNICAST_SOLICIT为3次;其中,MAX_UNICAST_SOLICIT为最大单播请求次数;9d、被测设备1邻居表的最大定时器为MAX_TIMER = RETRANS_TIMER*MAX_UNICAST_S0LICIT,MAX_TIMER定时器开始倒计时;其中,MAX_TIMER为最大时间;9e、在设定的最大时间内,收到设备2的NA回复;9f、查看被测设备1邻居表对应的地址项状态为REACHABLE。其中,对于所述第十状态变迁,包括下列步骤10a、执行所述测试步骤7a_7d ;10b、被测设备1周期性的发送NS地址解析报文到本地链路;IOc、设置发送的最大时间间隔RETRANS_TIMER为1 s,最大的发送次数MAX_ UNICAST_SOLICIT 为 3 次;其中,RETRANS_TIMER 为重传次数时间间隔;MAX_UNICAST_ SOLICIT为最大单播请求次数;10d、被测设备1邻居表的最大定时器为MAX_TIMER = RETRANS_TIMER*MAX_UNICAST_S0LICIT,MAX_TIMER定时器开始倒计时;其中,MAX_TIMER为最大时间;10e、在设定的最大时间内,没有收到设备3的NA报文回复;IOf、查看被测设备1当前邻居表状态,之前所建立的对应地址项被删除。其中,在执行NUD状态变迁测试时,选择性地执行NUD通信报文测试,所述NUD通信报文测试,包括下列步骤11a、被测设备1发送NS地址解析报文到本地链路;
lib、被测设备2发送NA报文到被测设备1 ;11c、被测设备2记录参数到本地邻居表中,包括设备1的IPv6源地址和设备1 的源链路层地址;lid、被测设备1记录参数到本地邻居表中,包括设备2的IPv6源地址和源链路层地址;lie、被测设备1根据被测设备1中的邻居表信息,发送NS报文到被测设备2,开始 NUD检测;Ilf、获取此NS报文,进行解析;llg、利用NS报文模型验证各个参数,并记录结果;llh、被测设备2回复NA报文给被测设备1 ;11 i、获取此NA报文,进行解析;11 j、利用NA报文模型验证各个参数,并记录结果。本发明的NUD的综合测试装置,包括NUD状态测试模块,用于根据选择对NUD第一至第十状态变迁中任一种状态变迁进行自动测试,或者对所述十个状态变迁依次进行自动测试。其中,所述NUD状态测试模块,包括,获取模块、创建模块和发送模块,其中,所述获取模块,用于获取邻居表中具体地址项的状态信息和地址信息;所述创建模块,用于创建通信过程中所需要的NS报文或NA报文;所述发送模块,用于发送由创建模块创建好的报文。进一步地,本发明可以包括通信报文测试模块,所述通信报文测试模块,包括获取模块、解析模块和判断模块,其中,所述获取模块,用于获取通信过程中的交互报文,包括 NS报文和NA报文;所述解析模块,用于解析获取模块获取的交互报文,包括NS报文和NA报文;所述判断模块,用于判断解析模块解析的报文字段是否与所定义的报文模型一致。本发明的有益效果是依照本发明的NUD的综合测试方法及装置,测试装置通过自动化实现,并根据不同的测试模块运行不同的测试脚本,从而克服了现有技术中手动测试的角度无法覆盖全面测试的需求,能够实现NUD模块的全面的自动化测试。


图1为本发明的总的设计思路的示意图;图2为NUD状态变迁测试包括的10种状态变迁的示意图;图3为本发明实施例的NUD的综合测试方法的流程示意图;图4为本发明的NUD的综合测试装置中NUD状态变迁测试模块的结构示意图;图5为本发明的NUD的综合测试装置的示意图;图6为本发明的通信报文测试模块的结构示意图。
具体实施例方式以下,参考附图1 6详细描述本发明的NUD的综合测试方法及装置。本发明的NUD的综合测试方法,如图1所示,本发明的总的设计思路是先划分测试模块,设计被测试模块的测试用例,包括具体的测试步骤;根据所设计的测试用例,生成TCL测试脚本;然后,在不同模块的测试环境中运行不同的TCL脚本,进行测试,产生报文及状态变迁结果;最后,分析报文及状态变迁结果,自动生成测试结果。根据RFC246l(Neighbor Discovery for IP Version 6,IPv6 邻居发现协议)定义,NUD状态变迁共包含以下5种状态1) INCOMPLETE “未完成”状态,表示地址解析正在执行,邻居节点的链路层地址尚未确定;2) REACHABLE “可达”状态,表示地址解析成功,邻居节点可到达,但是此可到达状态并非稳定状态;3) STALE “失效”状态,表示未确定邻居节点是否可达,此状态为稳定状态;4) DELAY “延时”状态,表示未确定邻居节点是否可达,此状态并非稳定状态;5) PROBE “探测”状态,表示未确定邻居节点是否可达,需要通过持续发送NS报文验证邻居节点的可达性。在本文中,“——>”表示状态变迁方向,如图2所示,NUD状态变迁测试包括如下 10种情形1) EMPTY-> INCOMPLETE (发送NS报文给邻居节点)(其中的INCOMPLETE状态
属于中间状态,如果在规定时间内没有查看,就查看不到这个状态。)2) EMPTY——> STALE (初次收到邻居节点发送的NS报文)(STALE状态为中间状态,只有设备第一次收到NA报文回复时,才会出现该状态,时间很短,转换快,会转换为 REACHABLE 或者 DELAY。)3) EMPTY-> INCOMPLETE-> REACHABLE (其中的 INCOMPLETE 状态属于中间
状态,如果在规定时间内没有查看,就查看不到这个状态。)4) REACHABLE-> STALE (REACHABLE_TIME 定时器超时)(该 STALE 状态在手动
测试中无法测试,需要通过自动化脚本构造报文从而实现该状态的产生。)5) REACHABLE——> STALE (收到邻节点发送的非S置位的NA报文)(该STALE状态在手动测试中无法测试,需要通过自动化脚本构造报文从而实现该状态的产生。)6) STALE——> DELAY (由该STALE状态到DELAY状态也需要通过自动化脚本构造报文实现,在手动测试中无法看到这两个状态的改变。)7) DELAY-> PROBE (在 DELAY_FIRST_PR0BE_TIMER 时间内还未收到 NA 报文)
(这两个状态间的转换需要通过自动化脚本设定内部DELAY_FIRST_PR0BE_TIMER延时代理定时器来实现)8) DELAY-> REACHABLE (在 DELAY_FIRST_PR0BE_TIMER 时间内收到 NA 报文)
(这两个状态间的转换需要通过自动化脚本设定内部DELAY_FIRST_PR0BE_TIMER延时代理定时器来实现)9) PROBE-> REACHABLE(在 RETRANS_TIMER*MAX_UNICAST_SOLICIT 时间内收到 NA 报文)(这两个状态间的转换需要通过自动化脚本设定内部最大时间MAXjIMER定时器来实现)10) PROBE-> EMPTY(在 RETRANS_TIMER*MAX_UNICAST_SOLICIT 时间内未收到 NA 报文)(这两个状态间的转换需要通过自动化脚本设定内部最大时间MAXjIMER定时器来实现)
按照上述状态描述,具体测试步骤划分如下1) EMPTY——> INCOMPLETE (发送NS报文给邻居节点)la、查看被测设备1当前邻居表状态为EMPTY ;lb、被测设备1发送NS地址解析报文到本地链路,其中,具体报文构造参数如下 (需要说明的是,本文中的NS报文构造参数均与此处相同,下文中出现时,不再对其进行解释。)IPv6_Target_Address (IPv6目的地址)=FF02: 1 :FF+被请求节点全球单播地址的后M位;Target Link-Layer Address (目的链路层地址)=33 33+被请求节点多播地址的后32位;lc、发送报文的同时,查看被测设备1邻居表对应的地址项信息包括该被测设备的IPv6目的地址和目的链路层地址;IcU查看对应地址项状态为INCOMPLETE ;le、重复发送相同的NS地址解析报文预定次数(例如三次),未收到任何的NA报文回应,即发送NS超时;If、查看被测设备1当前邻居表状态,之前所建立的对应地址项被删除。2) EMPTY——> STALE (初次收到邻居节点发送的NS报文)2a、查看被测设备2当前邻居表状态,状态为EMPTY ;2b、被测设备1发送NS地址解析报文到本地链路;2c、被测设备2第一次收到该NS地址解析报文;2d、收到报文的同时,查看被测设备2邻居表对应的地址项信息,包括该被测设备的IPv6目的地址及目的链路层地址;2e、查看被测设备2当前邻居表状态,对应的地址项状态为STALE。3) EMPTY-> INCOMPLETE-> REACHABLE3a、同上面1)中测试步骤la-Id ;3b、被测设备2向被测设备1发送NA报文,该NA报文的构造参数为ICMPv6_ Solicited Flag(ICMPv6 请求标记)=1 ;3c、被测设备1收到被测设备2发送的NA回复报文;3d、收到报文的同时,查看被测设备1邻居表对应的地址项状态为REACHABLE。4) REACHABLE-> STALE (REACHABLE_TIME 定时器超时)4a、同上述3)中测试步骤3a_3d ;4b、被测设备1邻居表的REACHABLE_TIME可达定时器设定为30s,可达定时器开始倒计时;4c、在可达定时器所设定的时间内,没有收到关于被测设备2的“可达性证实信息,,;4d、查看被测设备1邻居表对应的地址项状态为STALE。5) REACHABLE——> STALE (收到邻节点发送的非S置位的NA报文)5a、同上述3)中测试步骤3a_3d ;5b、被测设备2向被测设备1发送NA报文,该NA报文的构造参数为
ICMPv6_Solicited Flag(ICMPv6 请求标记)! =15c、被测设备1收到被测设备2发送的非S置位的NA报文;5d、收到报文的同时,查看被测设备1邻居表对应的地址项状态为STALE。6) STALE-> DELAY6a、同上述5)中测试步骤;6b、被测设备2发送NS地址解析报文到本地链路;6c、被测设备1收到被测设备2发送的NS地址解析报文;6d、收到报文的同时,查看被测设备1邻居表对应的地址项状态为DELAY。7) DELAY-> PROBE (在 DELAY_FIRST_PROBE_TIMER 时间内还未收到 NA 报文)7a、同上述6)中测试步骤6a_6d ;7b、被测设备1邻居表的DELAY_FIRST_PROBE_TIMER延时代理定时器设定为5s,延时代理定时器开始倒计时;7c、在延时代理定时器所设定的时间内,没有收到被测设备2的NA报文回复;7d、查看被测设备1邻居表对应的地址项状态为PROBE。8) DELAY——> REACHABLE (在延时代理时间内收到NA报文)8a、同上述6)中测试步骤6a_6d ;Sb、被测设备1邻居表的延时代理定时器设定为5s,延时代理定时器开始倒计时;Sc、在延时代理定时器所设定的时间内,收到被测设备3的NA报文回复;8d、查看被测设备1邻居表对应的地址项状态为REACHABLE。9) PROBE-> REACHABLE 在 RETRANS_TIMER重传次数 *MAX_UNICAST_SOLICIT (最
大单播请求)时间内收到NA报文9a、同上述7)中测试步骤7a_7d ;%、被测设备1周期性的发送NS地址解析报文到本地链路;9c、设置发送的最大时间间隔RETRANS_TIMER为1 s,最大的发送次数MAX_ UNICAST_SOLICIT(最大单播请求)为3次;9d、被测设备1邻居表的最大定时器为MAX_TIMER (最大时间)=RETRANS_TIMER (重传次数)*MAX_UNICAST_SOLICIT (最大单播请求),MAXjIMER(最大时间)定时器开始倒计时;9e、在设定的最大时间内,收到设备2的NA回复;9f、查看被测设备1邻居表对应的地址项状态为REACHABLE。
10) PROBE-> EMPTY(在 RETRANS_TIMER*MAX_UNICAST_SOLICIT 时间内未收到 NA 报文)10a、同上述7)中测试步骤7a_7d ;10b、被测设备1周期性的发送NS地址解析报文到本地链路;10c、设置发送的最大时间间隔RETRANS_TIMER(重传次数)为ls,最大的发送次数 MAX_UNICAST_SOLICIT(最大单播请求)为3次;10d、被测设备1邻居表的最大定时器为MAX_TIMER (最大时间)=RETRANS_TIMER (重传次数)*MAX_UNICAST_S0LICIT (最大单播请求),MAXjIMER(最大时间)定时器开始倒计时;
12
10e、在设定的最大时间内,没有收到设备3的NA报文回复;10f、查看被测设备1当前邻居表状态,之前所建立的对应地址项被删除。此外,本发明还可以根据实际需要,在执行NUD状态变迁测试的同时,选择性地执行NUD通信报文测试,该NUD通信报文测试,包括下列步骤a、被测设备1发送NS地址解析报文到本地链路;b、被测设备2发送NA报文到被测设备1 ;C、被测设备2记录参数到本地邻居表中,包括设备1的IPv6源地址和设备1的源链路层地址;d、被测设备1记录参数到本地邻居表中,包括设备2的IPv6源地址和源链路层地址;e、被测设备1根据被测设备1中的邻居表信息,发送NS报文到被测设备2,开始 NUD检测;f、获取此NS报文,进行解析;g、利用NS报文模型验证各个参数,并记录结果;其中,各个参数如下ICMPv6_TYPE(ICMP报文类型)返回NS报文中的类型值ICMPv6_Target Address (ICMPv6目的地址)返回NS报文中的全球单播地址或链路本地地址变量;ICMPv6_0ptions TYPE (ICMPv6选项类型)返回NS报文中选项字段的类型值;ICMPv6_0ptions(ICMPv6选项)返回NS报文中的选项字段变量;Source Link-Layer Address (源链路层地址);h、被测设备2回复NA报文给被测设备1 ;i、获取此NA报文,进行解析;j、利用NA报文模型验证各个参数,并记录结果;其中,各个参数如下ICMPv6_TYPE(ICMP报文类型)返回NS报文中的类型值;ICMPv6_Target Address (ICMPv6目的地址)返回NA报文中的全球单播地址或链路本地地址变量;ICMPv6_0ptions_TYPE (ICMPv6选项类型)返回NA报文中选项字段的类型值;ICMPv6_0ptions (ICMPv6选项)返回NA报文中的选项字段变量;Target Link-Layer Address (目的链路层地址);ICMPv6_Solicited Flag (ICMPv6请求标识)返回NA报文的选项字段S标志位变
So如图3所示,在具体实现时,可以包括如下步骤步骤301 将编写好的TCL测试脚本运行在测试环境中;步骤302 输入参数testjnodule值,选择测试模块;步骤303 如果testjnodule = 1,则表示被测模块为NUD状态变迁模块;步骤304 输入参数statusjnodule值,选择状态变迁测试子模块;步骤305 若statusjnodule = n(n = 1,2......10),则表示被测的状态变迁为上
面所述的第几种情形,继而自动运行该测试环境下的测试例;步骤306 如果statusjnodule = all,则表示被测的状态变迁为上面所述的全部十种情形,继而自动运行该测试环境下的测试例;步骤307 如果testjiiodule = 2,则表示被测模块为NUD通信报文模块,继而自动运行该测试环境下的测试例;步骤308 分析报文及状态变迁结果,自动生成测试结果。图4为本发明的NUD的综合测试装置中NUD状态变迁测试模块的结构示意图。该 NUD状态变迁测试模块,包括获取模块401、创建模块402、发送模块403。其中,获取模块401,用于获取邻居表的当前状态;创建模块402,用于创建通信过程中所需要的报文;发送模块403,用于发送由创建模块创建好的报文。另外,还可以在发送模块403中内置定时器,以控制发送报文的时间间隔以及重复发送的次数。其中,获取模块401可以进一步包括第一获取单元401a,用于获取邻居表中具体地址项的状态信息;第二获取单元401b,用于获取邻居表中具体地址项的地址信息,其中, 该地址信息主要用于NUD表项的地址项信息填充。其中,创建模块402可以进一步包括第一创建单元40 ,用于创建NS报文,具体包括地址解析NS报文以及NUD状态检测NS报文;第二创建单元402b,用于创建NA报文, 具体包括地址解析NA报文以及NUD状态检测NA报文。如图5所示,本发明的NUD的综合测试装置,可以进一步包括通信报文测试模块, 如图6所示,该通信报文测试模块,包括获取模块601、解析模块602、判断模块603。其中,获取模块601,用于获取通信过程中的交互报文;解析模块602,用于解析获取模块获取的交互报文;判断模块603,用于判断解析模块解析的报文字段是否与所定义的报文模型一致。其中,获取模块601可以进一步包括第一获取单元601a,用于获取通信过程中的 NS报文;第二获取单元601b,用于获取通信过程中的NA报文。综上所述,依照本发明的NUD的综合测试方法和装置,能够根据不同的测试模块运行不同的测试脚本,特别是在NUD状态变迁测试模块中,实现了十种状态变迁的测试,克服了现有技术中手动测试的角度无法覆盖全面测试的需求,能够实现NUD模块的全面的自动化测试。以上是为了使本领域普通技术人员理解本发明,而对本发明所进行的详细描述, 但可以想到,在不脱离本发明的权利要求所涵盖的范围内还可以做出其它的变化和修改, 这些变化和修改均在本发明的保护范围内。
权利要求
1.一种NUD的综合测试方法,其特征在于,根据选择对NUD第一至第十状态变迁中任一种状态变迁进行自动测试,或者对所述十个状态变迁依次进行自动测试,其中,第一状态变迁为从EMPTY到INCOMPLETE ; 第二状态变迁为从EMPTY到STALE ; 第三状态变迁为从EMPTY到INCOMPLETE到REACHABLE ; 第四状态变迁为从REACHABLE到STALE ; 第五状态变迁为从REACHABLE到STALE ; 第六状态变迁为从STALE到DELAY ; 第七状态变迁为从DELAY到PROBE ; 第八状态变迁为从DELAY到REACHABLE ; 第九状态变迁为从PROBE到REACHABLE ; 第十状态变迁为从PROBE到EMPTY。
2.如权利要求1所述的NUD的综合测试方法,其特征在于,对于所述第一状态变迁,包括下列步骤la、查看被测设备1当前邻居表状态为EMPTY ;lb、被测设备1发送NS地址解析报文到本地链路,其中,所述NS地址解析报文包括 IPv6目的地址和目的链路层地址;lc、发送所述报文的同时,查看被测设备1邻居表对应的地址项信息,包括该被测设备的IPv6目的地址和目的链路层地址;IcU查看对应地址项状态为INCOMPLETE ;le、重复发送相同的NS地址解析报文预定次数,未收到任何的NA报文回应,即发送NS 超时;If、查看被测设备1当前邻居表状态,之前所建立的对应地址项被删除。
3.如权利要求1所述的NUD的综合测试方法,其特征在于,对于所述第二状态变迁,包括下列步骤2a、查看被测设备2当前邻居表状态,状态为EMPTY ; 2b、被测设备1发送NS地址解析报文到本地链路; 2c、被测设备2第一次收到该NS地址解析报文;2d、收到报文的同时,查看被测设备2邻居表对应的地址项信息,包括该被测设备的 IPv6目的地址及目的链路层地址;2e、查看被测设备2当前邻居表状态,对应的地址项状态为STALE。
4.如权利要求1所述的NUD的综合测试方法,其特征在于,对于所述第三状态变迁,包括下列步骤3a、执行所述测试步骤Ia-Id ;3b、被测设备2向被测设备1发送NA报文,该NA报文的构造参数为ICMPv6请求标记 =1 ;3c、被测设备1收到被测设备2发送的NA回复报文;3d、收到报文的同时,查看被测设备1邻居表对应的地址项状态为REACHABLE。
5.如权利要求4所述的NUD的综合测试方法,其特征在于,对于所述第四状态变迁,包括下列步骤4a、执行所述测试步骤3a_3d ;4b、被测设备1邻居表的REACHABLE_TIME可达定时器设定计时时间,可达定时器开始倒计时;4c、在可达定时器所设定的时间内,没有收到关于被测设备2的可达性证实信息; 4d、查看被测设备1邻居表对应的地址项状态为STALE。
6.如权利要求4所述的NUD的综合测试方法,其特征在于,对于所述第五状态变迁,包括下列步骤5a、执行所述测试步骤3a_3d ;5b、被测设备2向被测设备1发送NA报文,该NA报文的构造参数为 ICMPv6请求标记! = 15c、被测设备1收到被测设备2发送的非S置位的NA报文;5d、收到报文的同时,查看被测设备1邻居表对应的地址项状态为STALE。
7.如权利要求6所述的NUD的综合测试方法,其特征在于,对于所述第六状态变迁,包括下列步骤6a、执行所述测试步骤;6b、被测设备2发送NS地址解析报文到本地链路;6c、被测设备1收到被测设备2发送的NS地址解析报文;6d、收到报文的同时,查看被测设备1邻居表对应的地址项状态为DELAY。
8.如权利要求7所述的NUD的综合测试方法,其特征在于,对于所述第七状态变迁,包括下列步骤7a、执行所述测试步骤6a_6d ;7b、对被测设备1邻居表的DELAY_FIRST_PROBE_TIMER延时代理定时器进行时间设定, 延时代理定时器开始倒计时;7c、在延时代理定时器所设定的时间内,没有收到被测设备2的NA报文回复; 7d、查看被测设备1邻居表对应的地址项状态为PROBE。
9.如权利要求7所述的NUD的综合测试方法,其特征在于,对于所述第八状态变迁,包括下列步骤8a、执行所述测试步骤6a_6d ;8b、对被测设备1邻居表的延时代理定时器进行时间设定,延时代理定时器开始倒计时;8c、在延时代理定时器所设定的时间内,收到被测设备3的NA报文回复; 8d、查看被测设备1邻居表对应的地址项状态为REACHABLE。
10.如权利要求8所述的NUD的综合测试方法,其特征在于,对于所述第九状态变迁,包括下列步骤9a、执行所述测试步骤7a_7d ;%、被测设备1周期性的发送NS地址解析报文到本地链路;9c、设置发送的最大时间间隔RETRANS_TIMER为ls,最大的发送次数MAX_UNICAST_ SOLICIT为3次;其中,MAX_UNICAST_SOLICIT为最大单播请求次数;9d、被测设备1邻居表的最大定时器为MAX_TIMER = RETRANS_TIMER*MAX_UNICAST_S0LICIT,MAX_TIMER定时器开始倒计时;其中,MAX_TIMER为最大时间;9e、在设定的最大时间内,收到设备2的NA回复;9f、查看被测设备1邻居表对应的地址项状态为REACHABLE。
11.如权利要求8所述的NUD的综合测试方法,其特征在于,对于所述第十状态变迁,包括下列步骤10a、执行所述测试步骤7a_7d ;10b、被测设备1周期性的发送NS地址解析报文到本地链路;10c、设置发送的最大时间间隔RETRANS_TIMER为ls,最大的发送次数MAX_UNICAST_ SOLICIT为3次;其中,RETRANS_TIMER为重传次数时间间隔;MAX_UNICAST_SOLICIT为最大单播请求次数;10d、被测设备1邻居表的最大定时器为MAX_TIMER = RETRANS_TIMER*MAX_UNICAST_S0LICIT,MAX_TIMER定时器开始倒计时;其中,MAX_TIMER为最大时间;10e、在设定的最大时间内,没有收到设备3的NA报文回复;IOf、查看被测设备1当前邻居表状态,之前所建立的对应地址项被删除。
12.如权利要求1至11中任一项所述的NUD的综合测试方法,其特征在于,在执行NUD 状态变迁测试时,选择性地执行NUD通信报文测试,所述NUD通信报文测试,包括下列步骤11a、被测设备1发送NS地址解析报文到本地链路; lib、被测设备2发送NA报文到被测设备1 ;11c、被测设备2记录参数到本地邻居表中,包括设备1的IPv6源地址和设备1的源链路层地址;lid、被测设备1记录参数到本地邻居表中,包括设备2的IPv6源地址和源链路层地址;lie、被测设备1根据被测设备1中的邻居表信息,发送NS报文到被测设备2,开始NUD 检测;llf、获取此NS报文,进行解析;lig、利用NS报文模型验证各个参数,并记录结果;llh、被测设备2回复NA报文给被测设备1 ;1 Ii、获取此NA报文,进行解析;llj、利用NA报文模型验证各个参数,并记录结果。
13.一种执行如权利要求1至12所述方法的装置,其特征在于,包括NUD状态测试模块,用于根据选择对NUD第一至第十状态变迁中任一种状态变迁进行自动测试,或者对所述十个状态变迁依次进行自动测试。
14.如权利要求13所述的装置,其特征在于,所述NUD状态测试模块,包括,获取模块、 创建模块和发送模块,其中,所述获取模块,用于获取邻居表中具体地址项的状态信息和地址信息;所述创建模块,用于创建通信过程中所需要的NS报文或NA报文; 所述发送模块,用于发送由创建模块创建好的报文。
15.如权利要求13所述的装置,其特征在于,进一步包括通信报文测试模块,所述通信报文测试模块,包括获取模块、解析模块和判断模块,其中,所述获取模块,用于获取通信过程中的交互报文,包括NS报文和NA报文; 所述解析模块,用于解析获取模块获取的交互报文,包括NS报文和NA报文; 所述判断模块,用于判断解析模块解析的报文字段是否与所定义的报文模型一致。
全文摘要
本发明提供一种NUD的综合测试方法及装置,其中,该方法包括根据选择对NUD第一至第十状态变迁中任一种状态变迁进行自动测试,或者对所述十个状态变迁依次进行自动测试,其中,状态变迁包括从EMPTY到INCOMPLETE;从EMPTY到STALE;从EMPTY到INCOMPLETE到REACHABLE;从REACHABLE到STALE;从REACHABLE到STALE;从STALE到DELAY;从DELAY到PROBE;从DELAY到REACHABLE;从PROBE到REACHABLE;从PROBE到EMPTY。本发明能够实现NUD的自动化测试。
文档编号H04L29/12GK102404168SQ20111036201
公开日2012年4月4日 申请日期2011年11月15日 优先权日2011年11月15日
发明者黄雅静 申请人:北京天融信科技有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1