协议一致性测试.doc_第1页
协议一致性测试.doc_第2页
协议一致性测试.doc_第3页
协议一致性测试.doc_第4页
协议一致性测试.doc_第5页
已阅读5页,还剩3页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

IPv6IPv6 协议一致性测试协议一致性测试 发布时间 2010 年 02 月 05 日 o分享 推荐 打印 收藏 文 黄哲 导言导言 IPv6 测试首先需要关注在各个协议模块的一致性测试和性能规格测试 其次是各种应用组 网和互通测试 尤其是关注过渡技术是否能满足当前 IPv6 与 IPv4 网络并存时期的需求 本文 将针对 IPv6 设备的协议一致性测试 介绍其测试特点 测试环境搭建 测试脚本执行 以及测 试结果的分析 帮助读者有效的进行相关测试 从而选择符合协议标准的 IPv6 设备 IPv6IPv6 一致性测试的特点一致性测试的特点 作为一个新的协议族 IPv6 相对 IPv4 的主要变化首先在于网络层基础协议 包括地址 ND 协议等 其次各路由协议也都提供了 IPv6 的版本 在链路层 应用层也配合地址的变化做 了相应的修改 并且新增了隧道 NATPT 等过渡技术 相对 IPv4 而言 IPv6 协议一致性测试的特点在于首先要考虑数据平面的模块测试 而其 中的报文处理 ICMP 和 ND 模块为重点和难点 且这些模块的 RFC 都在不断的更新过程中 一 些功能有了相应的变化 典型的例子就是 0 型路由扩展头在最新的 RFC5095 中被废弃 因此在 协议一致性测试中 需要及时的关注协议的更新 测试工具测试工具 Tahi IPv6 Ready 协议一致性测试套是目前认可度最高 最被广泛使用的 IPv6 协议一致性 测试工具 可以在 Tahi 组织的网站 http www tahi org 上免费下载 运行在安装 FreeBSD 系统的 PC 上 截至目前的最新版本是 4 0 5 通过该测试的设备 可以获得 IPv6 论坛 IPv6 Forum 的 IPv6 Ready Phase2 的金牌认证 Tahi IPv6 Ready 测试套是一种基于脚本开发的一致性测试工具 分为 3 个层次 如图 1 所示 分别为底层的 FreeBSD 操作系统 居中的测试平台 以及最上层的测试脚本集 图 1 Tahi IPv6 Ready 测试套架构 测试内容测试内容 Tahi IPv6 Ready 测试脚本集包含了网络层和应用层常见的需要一致性测试的模块 包括 基础协议 IPsec MIPv6 DHCPV6 SIP IKE 等 其中 IPv6 Core Protocol 为核心模块 是 IPv6 一致性测试最基础的部分 在目前的 IPv6 Ready 一致性测试中 通常只选用此部分进行 测试 其他模块由于目前缺少用户需求 因而极少有设备支持 所以在现有情况下很少进行测 试 IPv6 Core Protocol 测试集可以分为 5 个模块 SPEC ADDR ICMP ND PMTU 与 RFC 的 对应关系如表 1 模块名称对应 RFC SPECRFC2460 Internet Protocol Version 6 IPv6 Specification RFC2464 Transmission of IPv6 Packets over Ethernet Networks RFC5095 Deprecation of Type 0 Routing Headers in IPv6 ADDRRFC4862 IPv6 Stateless Address Autoconfiguration ICMPRFC4443 Internet Control Message Protocol NDRFC4861 Neighbor Discovery for IP version 6 PMTURFC 1981 Path MTU Discovery for IP version 6 表 1 模块与 RFC 对应列表 测试环境测试环境 使用 Tahi IPv6 Ready 测试套进行 IPv6 一致性测试时 测试环境包括三个部分 测试仪 器 被测设备 控制台 分别对应下面拓扑图中的 FreeBSD 系统的 PC H3C MSR50 路由器 控 制台 PC 图 2 测试拓扑 如图 2 所示 运行测试脚本的 FreeBSD 系统需要提供两块网卡 而被测设备 MSR50 提供两 个以太网接口 两者之间建立两条直连以太链路 在这两条链路上所使用的 IPv6 地址前缀分别 为 3FFE 501 FFFF 100 64 和 3FFE 501 FFFF 101 64 并采用 EUI64 格式生成接口 ID 在 MSR50 和 FreeBSD 上 应当只运行基础的 IPv6 协议栈 并尽可能关闭其他一切非必要 的模块 例如路由 STP 等 避免无关的报文影响测试脚本的判断 测试过程测试过程 协议一致性测试属于黑盒测试的一种 它只对协议实现的外部可观察行为 即报文的格式 内容 时间等 进行测试 其测试过程原理可以用如图 3 的测试状态机来描述 图 3 测试状态机 S0 初始状态 S1 接收报文后的状态 S2 验证报文正确后的状态 E1 接收一个报文 E2 验证报文正确 E3 验证报文错误 E4 丢弃该报文 以图 4 中 SPEC 模块的测试例 13 中对于未知类型扩展头的测试执行为例来介绍 脚本执 行是命令行形式的文本界面 脚本构造正确或异常报文与设备进行交互 同时将收发的报文内 容以文字描述形式输出在文字界面上 图 4 测试脚本执行界面 在这个测试过程中 脚本向被测设备 MSR50 发送含有未知类型扩展头的请求报文 MSR50 收到请求后 状态由 S0 变为 S1 然后判断报文存在错误 回复差错消息 则此脚本的执行获 得预期结果 最后是状态复位动作 设备重新回到状态 S0 单个测试例的执行过程结束 在 5 个模块的一致性测试过程中 均是根据此原理与过程进行 1 SPECSPEC 模块的测试 模块的测试 分为 IPv6 报文基本头检查 扩展头处理 以及转发和以太层封装几 个层次 覆盖了 IPv6 在传输层以下各个头部的所有细节字段 图 5 IPv6 报文头部 测试脚本在报文的 IPv6 基本头部或扩展头部设置正确或错误的值 检查 MSR50 路由器在 报文转发过程中 是否能检查出错误所在 并做响应处理 例如是正常转发 或是丢弃并触发 ICMPv6 差错消息等 2 ADDRADDR 模块的测试 模块的测试 检查设备在配置地址后是否正确的进行通过 NS NA 检测报文交互 判断地址的可用性 以及对交互报文的合法性检查 图 6 DAD 过程 当 MSR50 配置新地址时 会发送 DAD NS 报文 测试仪针对收到的 DAD NS 会做响应的回 复 当回复的 NA 报文合法时 MSR50 会报地址冲突 当回复的 NA 报文存在非法字段时 MSR50 新配置的地址能够生效 并正确用于转发 3 ICMPICMP 模块的测试模块的测试 验证 ICMPv6 的报文封装格式 设备在处理错误报文时所触发的差错 消息 以及信息查询消息 图 7 ICMP 差错消息的触发 脚本构造 Echo Request 给 MSR50 进行转发 并在报文中设置 HopLimit 字段为 1 未知类 型的扩展头等错误场景 MSR50 能识别检测到报文错误 并回复 ICMP 的超时 参数错误等差错 消息 4 NDND 模块的测试 模块的测试 测试内容包括地址解析 邻居不可达检测 邻居状态机 路由器和前 缀发现 重定向功能四个部分 以及交互的 NS NA RS RA Redirect 报文的有效性验证 图 8 邻居状态机 脚本主要围绕着邻居状态机制 通过发送 NS NA RS RA Redirect 报文 验证 MSR50 上的 邻居状态是否能正确切换 5 PMTUPMTU 模块的测试 模块的测试 包括了动态 PathMTU 表项的生成 并根据 PathMTU 表项进行本地发 包的分片 图 9 动态 PathMTU 与报文分片 脚本构造 ICMP TooBig 消息给 MSR50 然后通过检查 MSR50 发送的分片大小来验证 MSR50 是否生成正确的动态 PathMTU 表项 测试结果测试结果 测试结果如表 2 所示 5 个模块的 319 个脚本全部通过 不存在失败或阻塞问题 通过率 达到 100 模块模块 测试项总测试项总 数数 通过通过失败失败阻塞阻塞通过率通过率 SPEC797900 100 ADDR292900 100 ICMP464600 100 ND15015000 100 PMTU151500 100 总计总计 31931900 100 表 2 H3C MSR50 测试结果 由此可以看出 H3C MSR50 路由器在 IPv6 的核心协议栈的实现很完善 完整的支持 IPv6 Core Protocol 所涉及的 RFC1981 2460 2464 4443 4861 4862 5095 等标准 并提供

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论