




已阅读5页,还剩74页未读, 继续免费阅读
(通信与信息系统专业论文)ospfv3和aodvjr路由协议研究与测试.pdf.pdf 免费下载
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
北京交通大学硕士学位论文o s p f v 3 和a o d v j r 路由协议研究与测试 摘要 随着i n t e r n e t 的迅速发展,网络规模不断扩大,结构日趋复杂, 高效稳定的路由协议成为保障网络性能的重要因素。协议测试是保证 协议实现其目标性能的有效手段,对于路由协议的测试日益成为众多 科研人员所关注的热点和工程实践的必要环节。虽然全世界都把6 作为下一代m 网络发展的标准,v 6 的一系列相关协议标准也相继 制定出台,但是,还没有一个对于i p v 6 下网络协议进行测试的统一 规范。尤其是对于,、,6 下各种路由协议的测试技术研究就显得紧迫 而重要。 本论主要进行了两部分工作:一是依托北京交通大学球网络实验 室的国家8 6 3 项目:“高性能i p l ,6 路由器协议栈软件”,深入研究了 o s p f v 3 路由协议,对其进行了一致性测试,保证了路由协议栈软件的 质量,顺利通过国家8 6 3 验收。另一部分是作为h e l i c o 岫公司的国家 科技部启动的“创新基金项目短距无线网络z i g b e e ( 紫蜂) 技术 研制与开发”项目中的一部分一一i p v 6o v e ri e e e 8 0 2 1 5 4 协议栈的 开发,针对低速无线个域网中我们自主实现的a o d v j r 无线路议进行 测试。测试工作主要包括测试原理简介、路由协议介绍、列举测试点、 编写测试用饲、搭建测试环境并进行测试、分析测试结果。通过测试 工作,发现软件中潜在的问题,找到代码实现上不符合协议标准的地 方,给开发人员提出建议。 关键词:i p v 6o s p f v 3a o d v测试 北京交通大学硕士学位论文0 s p f v 3 和a o d v j r 路由协议研究与测试 a b s t r a c t w l t ht h ed e v e l o p m e n to fi n t e m e t ,w en e e dm o r ce 伍c i e n ta l l ds t e a d y r o u t i n gp m t o c o l st oe n s u r e e t w o r kp e r f 0 珊锄c e p r o t o c o lt e s t i n gi sa i l e 所c i e n tw a yt oa s s u r et h ep r o t o c o l i m p i i c a t i o n ,s c i c n t j s t sp a ym o r ea l l d m o r ea t t c n t j o nt or o u t i n gp m t o c o l t e s t i i l 岛a i l dj tb e c o m e sa l li m p o n 姐t t a c h ei nap r o j e c t 皿o u 曲w ec o n s i d e r e di p v 6a sas t a l l d a r do ft i l en e x t g e n e f a t i o ni pn e t 、o r k ,a n das e r i e so fp f o t o c o l so fi p v 6h a v et u m e du p , t h e r es t i l ld on o th a v et c s ts t a d a r dt ot i l ei p v 6p f o t o c o l s ,e s p e c i a l l yt o i p v 6m u t j n g p r ) t o c o l s r 1 1 i i sp 叩e ri n c l u d e s 铆op a n s :t l l e6 i s to n ej sp a r to fn a t i o n a l “8 6 3 ” p r o j e c t “i p v 6r o u 咖gp r o 眦o ls t a c ks o f t w a r ew j t l lh 蛐p e 怕珊a n c e ”, r e s e a r c hd e e p l ya l l d f o c i l so nt l l et e s t i n go f0 s p f v 3d y n 锄i cm u t i n g p r o t o c 0 1 t h es e c o n do ej sap a no fl h eh e l j c o m mc o m p a n yp r o j e c t “z i g b e ep r o t o c o ls t a c kd e v e l 叩m e n t ”i p 、r 6o v e rm e e 8 0 2 1 5 4 d e v e l o p m e n t ,f o c u so nt h ea o d v j rr o u t i l l gp m t o c o l t e s t i n gi nl r w p :f 悄 t h ew o f km a i l l l yi n c l u d et e s t i l l gp m t o 1 ,r o u t i n gp m t o c o l i n t r o d u c t j o n , s p e c i a l i z et e s t i n gf c a t u r e s ,w r i t ct c s t i n gc a s e s ,p u tu pt c s t i n ge n v j m 劬e n t a n de x e c u t et e s “n gp r o c e s s w i t l lt h et e s tw o r kw ef i n do u tt h ep r o b l e m s o f t h es o f 时a f c ,i n s p e c tt h ea c c o m p l i s ho ft h ec o d et h a td i s a c c o r dw i t ht l l e p r o t o c o l ,g i v ep r o p o s a l st od e v e l o p e l k e yw o r d s :i p v 6o s p f v 3a o d vt e s t l 北京交通大学硕士学位论文o s p f v 3 和a o d v j r 路由协议研究与测试 第一章绪论 1 1 背景和意义 计算机技术已经越来越广泛地应用于国民经济和国防建设等各个 部门,尤其是在航空航天、核能、通信、交通、金融等一些关键领域 中,计算机的作用更加重要。作为计算机的一个重要应用,网络技术 在近几年来得到迅速发展,网络给人的学习和生活都带来了深远的影 响。而路由协议作为保证整个网络有效互联、保持两络拓扑快速变化 的主要协议,则日益成为i n t e r n e t 的灵魂。随着i n t e r n e t 的迅速发 展,网络规模不断扩大,结构日趋复杂,高教稳定的路由协议成为保 障弼络性能的重要因素。 经过几年的发展,i p v 6 技术已经日渐成熟,较为成功的解决了 i p v 4 所存在的问题,成为下一代互联网的标准1 2 】。i p v 6 作为下一代 i n t e r n e t 的核心,深受各研究部门和网络生产厂家的青睐,各种i p v 6 产品陆续推出,然而,对应同一标准却存在许多不同的实现版本。虽 然i p v 6 作为下一代的网络协议推出已经有1 0 年之久,国际标准组织 也已经制定了各种i p v 6 下的路由协议的标准,但是i p v 6 两络还只是 处于小规模试运行阶段,还没有大规模商用。基于i p v 6 的路由协议 只有为数不多的几家公司开发出了试验版本而且不同公司的这些版 本没有经过统一的入网测试,兼容性上必定存在很多问题。如果将不 同公司的i p v 6 路由器同时接入网络,可能会存在通信协议理解的错 误,网络中的路由器上一个很小的不协调就可能导致整个网络的瘫 痪。现在随着因特网向i p v 6 过渡步伐的加快,迫切需要制定出一套 北京交通大学硕上学位论文o s p f v 3 和a o d v j r 路由协议研究与测试 议的内部处理过程,则采取灵活的非形式化的方法。在测试实践中, 一方面应当充分利用现有的成果和经验,进行改进和扩展,同时探索 更适合于路由协议测试的方法、手段乃至系统。 本文通过对i p v 6 下路由协议测试技术的研究,给出了一套对基于 i p v 6 的o s p f 动态路由协议和低速无线个域网的a o d v 路由协议的测试 方案,对于匡家制定i p v 6 下的路由协议测试规范具有参考价值,也可 用于各公司的i p v 6 路由器产品和无线传感器网络的测试工作。 2 协议测试的国内外研究现状 协议测试是保证协议实现其目标性能的有效手段,它从六、七十年 代开始受到研究人员的重视,并投入了大量的人力物力从事这方面的 研究。围绕着协议,已经开展了各种各样的研究,从而形成了一个新的 学术领域协议工程学。协议测试是协议工程学的一个重要分支。 由于一个标准的协议的各种实现之间并不能确保成功可靠地通信,所 以协议测试研究应运而生。在过去的几十年间,将协议测试的研究分 成一致性测试、互操作性测试和性能测试分别进行研究。而且,协议 测试的研究是由国际标准化组织倡导的,其中很多概念基于开放系统 互联o s i 的7 层参考模型。 许多计算机厂家和实验室纷纷推出自己的测试系统和测试仪。例 如:美国s p i r e n t 公司的协议一致性测试仪、加拿大i d a c 0 m 公司的0 s i 协议一致性测试仪、美国a l c a t e lt i t n 公司的0 s i 协议一致性测试系 统x r t l e 、美国a l c a t e l 公司的0 s i 协议一致性测试仪系列、美国惠普 公司的测试仪系列、法国的一家实验室的跨式测试系统以及柏林的 g o r 科学研究院的计算机技术与信息协会开发的t e k 0 s 测试系统等。 北京交通大学硕士学位论文o s p f v 3 瓤a o d v i r 路由协议研究与测试 近几年来,中国的很多研究机构也投入了大量精力进行网络协议 测试工作的研究。这其中主要有清华大学计算机系网络实验室,开发 了一套测试集自动生成系统;中科院的网络测试实验室,进行了较多 对基本网络协议和测试技术的研究,初步开发了基于i p 协议的一致性 测试软件:华为、中兴等网络设备厂商,他们由于需要对自己的产品 进行测试也进行了一些针对自己产品的协议测试工作。这些单位主要 是对1 p v 4 下的基本协议和路由协议进行测试,北京交通大学i p f 网络实 验室作为国内最早从事i p v 6 网络研究的机构,对于i p v 4 和i p v 6 下的路 由协议进行了大量研究,开发了一套兼容i p v 4 和1 p v 6 的协议测试系 统。 由于各个实验室的大量投入,协议一致性测试技术已经取得了不 少成绩。并在不断通发展前进。 1 3 论文的主要工作 “商性能i p v 6 路由器协议栈软件”是由北京交通大学负责的国家 8 6 3 重大科研项目。本项目组在多年信息网络的研究,特别是i p v 6 研究成果基础上,斜甩自己歼发鲍i p v 5 路出器平台,实现支持 v x w o r k s 、l i n u x 等操作系统,具有多操作系统移植性、稳定性,能方 便地运行于“8 6 3 ”i p v 6 硬件平台,兼顾效率的i p y 6 协议栈软件,并 进行了测试,通过鼠家验收, 本文的来源主要是对于项目中的0 s p f v 3 路由协议的测试工作。测 试作为整个协议栈软件工作的一部分对于整个软件的质量保证具有 非常重要的作甩。要求通过溺试工 车,发现软 牛中潜存钓b u g ,找 到代码实现上不符合协议标准的地方,给开发人员提出需要解决的问 北京交通大学硕十学位论文o s p f v 3 和a o d v j r 路由协议研究与测试 题。 其次,最新e e 提出了8 0 2 1 5 4 标准实现低速率的无线通信, 并在此基础上构架z i g b e e 网络。而传感器网络是l p v 6 的“杀手级” 应用,我们把6 引入此网络,实现了基本的m e s h 网络,本文主要 进行了i p v 6o v e r 磁e 8 0 2 1 5 4 网络路由协议a o d v 的设计和测试工 作。并针对在短距无线网络的测试过程中出现的问题提出了“黑名单” 的测试方法。 论文的工作主要包括以下几个方面: ( 1 ) 首先,论文分析了软件测试的一般性理论,介绍了软件测 试的目的、原则和发展方向,介绍了软件测试中最常用的黑盒测试和 白盒测试技术。 ( 2 ) 其次,论文分析了路由协议的特点并研究了路由协议的测 试技术,主要是详细介绍了基于i p v 6 的o s p f v 3 路由协议和基于i p v 6 的低速无线个域网的a o d v 路由协议。 ( 3 ) 然后,介绍了路由协议测试的基本理论、分类、方法,提 出了0 s p f v 3 协议的一致性测试方法和无线a o d v 路由协议的测试方 法。 ( 4 ) 对协议进行了测试。主要包括:列举测试组、编写测试例、搭 建环境并进行测试、分析测试结果:针对无线网络的特点制定相应方 案进行测试。 北京交通大学硕士学位论文o s p f v 3 和a o d v j r 路由协议研究与测试 第二章测试原理与技术 2 1 软件测试理论介绍 2 1 1 软件测试的定义及目的 在开发大型软件系统的漫长过程中,面对着极其错综复杂的问 题,入的主观认识不可能完全符合客观现实,与工程密切相关的各类 人员之间的通信和配合也不可能完美无缺,因此,在软件生命周期的 每个阶段都不可避免地会产生差错。我们力求在每个阶段结束之前通 过严格的技术审查,尽可能早地发现并纠正差错;但是,经验表明审 查并不能发现所有差错,此外在编码过程中还不可避免地会引入新的 错误。如果在软件投入生产性运行之前,没有发现并纠正软件中的大 部分差错,则这些差错迟早会在生产过程中暴露出来,那时不仅改正 这些错误的代价更高,而且往往会造成很恶劣的后果。测试的目的就 是在软件投入生产性运行之前,尽可能多地发现软件中的错误。 下面这些规则可以看作是测试的目标或定义: ( 1 ) 测试是为了发现程序中的错误而执行程序的过程; ( 2 ) 好的测试方案是极可能发现迄今为止尚未发现的错误的测试方 案; ( 3 ) 成功的测试是发现了至今为止尚未发现的错误的测试。 从上述规则可以看出,测试的正确定义是“为了发现程序中的错 误而执行程序的过程”。这和某些人通常想象的“测试是为了表明程 序是正确的”,“成功的测试是没有发现错误的测试”等等是完全相反 6 北京交通大学硕士学位论文 o s p p v 3 和a o d v j r 路由协议研究与测试 的。正确认识测试的目标是十分重要的,测试目标决定了测试方案的 设计。如果为了表明程序是正确的而进行测试,就会设计一些不易暴 露错误的测试方案;相反,如果测试是为了发现程序中的错误,就会 力求设计出最能暴露错误的测试方案。 基于不同的立场,存在着两种完全不同的测试目的。从用户的角 度出发,普遍希望通过软件测试暴露软件中隐藏的错误和缺陷,以考 虑是否可接受该产品。从软件开发者的角度出发,则希望测试成为表 明软件产品中不存在错误的过程,验证该软件已正确地实现了用户的 要求,确立人们对软件质量的信心n 2 1 2 软件测试方法和流程 软件测试方法主要有黑箱测试与白箱测试两类。黑箱测试又称功 能测试、数据驱动测试或基于规格说明的测试,是在完全不考虑程序 内部结构和内部特性的情况下,只根据需求规格说明书的要求来检查 程序的功能是否符合它的功能说明。黑盒测试方法主要有等价类划 分、边界值分析、因果图、错误推测等,主要用于软件确认测试。“黑 盒”法着眼于程序外部结构、不考虑内部逻辑结构、针对软件界面和 软件功能进行测试。是穷举输入测试,只有把所有可能的输入都作为 测试情况使用,才能以这种方法查出程序中所有的错误。实际上测试 情况有无穷多个,人们不仅要测试所有合法的输入,而且还要对那些 不合法但是可能的输入进行测试。在独立测试阶段多采用黑箱测试方 法。协议一致性测试属于黑盒测试的范畴。 白箱测试又称结构测试、逻辑驱动测试或基于程序的测试,允许 测试人员对程序内部逻辑结构及有关信息来设计和选择测试用例,对 程序的逻辑路径进行测试。白盒测试的主要方法有逻辑驱动、基路测 一7 北京交通大学硕上学位论文;p f v 3 和a o d v 剪路由协议研究与测试 试等,是穷举路径测试,主要用于软件验证。适合在单元测试中运用。 从测试实际的前后过程来看,软件测试是由一系列的不同测试所 组成,这些软件测试的步骤分为:单元测试、集成测试、确认测试、 系统测试和验收测试。 单元测试:针对每个模块进行的测试,可从程序的内部结构出发 设计测试用例,多个模块可以平行地对立地测试。通长在编码阶段进 行,多为白盒测试。 集成测试:在单元测试的基础上,将所有模块按照设计要求组装 成为系统,必须精心计划,应提交集成测试计划、集成测试规格说明 和集成测试分析报告。 确认测试:完成集成测试以后,要对开发工作初期制定的确认准 则进行校验。验证软件的功能和性能及其它特性是否与用户的要求一 致,通常采用黑盒测试方法。 验收测试:检验产品质量的最后一道工序。与前面讨论的各种活 动不同之处在于它突出了客户的作用,同时软件开发人员也有一定程 度的参与。 测试工作的总体流程如图2 1 所示: 2 2 协议测试 图2 1 测试工作总体流程图 2 2 1 协议测试介绍 协议测试是对被测系统进行系列业界认可的规范性操作,并将 其得出的实验结果与协议规范相比较,判定二者是否完全相符。若相 符则该被测系统所配置的协议正确,否则有误。 协议测试大都采用黑盒测试。它首先是准确判定针对该被测系统 的有目的的输入信息和输出信息的具体实现;然后再将输入信息和输 出信息所实现的具体形式进行比较和判别;最后与实验预期结果相 北京交通大学硕士学位论文o s p f v 3 和a o d v j r 路由协议研究与测试 比,从而判定该协议是否正确实现。这种协议测试的基本概念模型如 图2 2 所示: 图2 2 协议测试的基本概念模型 在对协议测试进行详细介绍之前,先对协议测试模型中几个关键 词解释如下: 被测系统( u n d e r t c s t e r ) :在具体实验中,希望对其进行协议测试 的一个具体系统。 测试系统( t c s t e r ) :针对被测系统所设计的一种针对性很强的测 试结构。 被测实现i u t ( i i n p l e m c n t u n d e r t e s t ) :针对某一个协议的具体实 现。 控制观察点p c o ( p o i n to f o d n t r o l 柚do b e r v a t i o n ) :测试设备 对被测实现进行观察控制所接触。 2 2 2 协议测试的基本方法 对于相同的协议进行测试,可以有多种不同的测试方法,而这些 测试方法的分类方式也有不同的标准。但是,现在一般来说,对于测 试系统中被测对象i u t 而言,可以根据测试系统所控制的p c o 的位 置不同,将这些测试方法分为4 种【5 j :本地测试法、远程测试法、分 布测试法、协同测试法。每种测试法都有自己的优点和缺点。由于远 程测试法是将i u t 视作一个黑盒,在远端、外部进行协议测试,不会 有许多测试软件在被测系统中工作,从而减少了对被测系统本身的影 北京交通大学硕士学位论文 0 s p f v 3 和a o d v 扣路由协议研究与测试 响,因此现在的协议测试大部分都是采用该测试方法。 2 2 3 协议一致性测试 协议一致性测试是协议工程中难度最大,实现最困难的一个课 题,它是近年来的热门问题。 1 一致性定义 所谓一致性测试就是验证设备实现与相应协议标准的一致性,检 验不同的待测设备是否能够满足一个统一的要求,从而在相同的外部 条件下进行相同的动作,并且输出相同的结果。如果完全一致,就说 明协议的实现是完全正确的。“一致性”在这里有两种含义:“彻底性” 和“标准性”。彻底性是指所实现的协议必须经过彻底性测试,和程 序测试一样,程序的转移和变量的取值范围都必须使用一次或多次以 上。标准化是指测试套也必须是标准的【6 】。 在o s i 范畴内,如果一个实际系统在它与别的实际系统通信中所 表现的行为符合o s i 协议规范的一致性要求,我们就说他呈现了一致 性。 2 一致性测试的基本流程 一致性测试实质上是利用一组特定的测试例,在一定的网络环境 下,对待测设备进行黑箱测试,通过比较实际输出与预期输出的异同, 判定待测设备在多大的程度上与标准描述相一致,并借此来保证通过 一致性测试的设备在不同网络中的表现一致。 协议一致性测试的基本流程如图2 3 所示: 北京交通大学硕士学位论文0 s p f v 3 和a o d v j r 路由协议研究与测试 图2 3 一致性测试的基本流程 ( 1 ) 测试集的生成 这个阶段主要包含协议测试集的确定、分组、设计及其形式化描 述。测试集的生成阶段并未直接参与协议的测试行为,但它是所有测 试工作的基础。 ( z ) 测试管理 在这个阶段,主要是进行协议测试前的各种准备工作,尤其是直 接与测试系统具体参数配置有关的各种设置。其中,最为重要的是根 据协议实现功能申明和协议实现参数说明来进行测试集的选择,并设 置相应的各种参数化,同时对测试系统进行初始化,从而开始启动测 试环境。 测试管理阶段是下面测试管理的直接准备者,同时,往往还可以 通过测试操作的反馈信息来介入到测试执行阶段的某些活动。 ( 3 ) 测试执行 这个阶段就是为测试系统包括各个测试子系统提供经过测试集静 北京交通大学硕士学位论文 o s p f v 3 和a o d v j r 路由协议研究与测试 态选择后的每个测试例,并按照某种预先次序由测试系统来具体执行 测试。 ( 4 ) 测试结果分析和报告 这个阶段主要就是根据测试执行阶段获取的相关信息自动生成测 试结果,并根据所定义的测试报告格式,生成测试结果报告。 协议一致性测试是网络测试的一个重要方面,是提高协议实现正 确性的重要保证,也是测试研究的重点和难点。 2 2 4 路由协议的特点及其测试 路由是把信息从源( 发起者) 穿过网络传递到目的地的行为。路 由包含两个基本的动作:选路和转发。在口网络中,路由的选择由 路由器来完成。路由协议实现了路由器与路由器之间的通信,这种通 信既可以发生在自治系统内,也可以发生在自治系统之间。路由协议 与其它协议相比较,具有许多特殊的地方。认识路由协议的特点是对 路由器开展有效的测试工作的基础。 路由协议与传统的协议有很大的不同。对l s o 等传统的网络协议 而言,一般情况下,第n 层通信协议都有相应的n 1 层服务和n + 1 层服务,而路由协议则没有这种相应的上层协议存在。但是,路由协 议更着重在路由协议之间的相互交互,一般有两种情况,即相同路由 协议不同路由器之间和同一路由器的不同端口之间的相互交互,和同 一路由器内部的不同路由协议之间的相互交互【w 。 路由协议的目的是为建立路由提供所需的信息。一般来说,协议 传送的通常是上层协议的数据,其目的是将这些数据正确、迅速地传 送;而路由协议交互的是关于网络拓扑结构的信息,证确地处理、发 送这些信息,形成对于网络拓扑结构的正确反映是路由协议的主要功 1 3 北京交通大学硕士学位论文o s p f v 3 和a o d v j r 路由协议研究与测试 能,并不要求数据的“尽力转发”,相反,各个路由协议中对尽量减 少数据量的交互、降低交互的频率,避免路由更新时造成突发数据都 有所考虑。 路由协议本身具有分布式系统的特点。各种不同的自治系统内和 自治系统之间的路由器相互联系通信、相互作用来实现各种网络之间 的数据传输。这种分布式的数据传输配合正是网络功能实现的根本。 即便是在同一台边界路由器,它的每个路由器端口都会独立地运行相 同的各种路由协议,这些路由协议之间相互交互、协调作用,保证了 路由器数据转发作用。由此可见,路由协议具有分布式和并发系统的 特性。 传统的协议测试主要着重于协议的状态机的分析、测试,也就是 更多的考虑协议从开始建立连接到解除连接的整个过程。而路由协议 除了状态机的描述外,更多地考虑分析、测试当协议实现处于稳定状 态时的各种协议行为,尤其是对各种数据交互的处理分析。 对于路由协议的测试要充分考虑这些特点,才能寻找到适合路由 协议测试的方法,才能更好的编写出优秀的测试例。 北京交通大学硕士学位论文o s p f v 3 和a o d v j r 路由协议研究与测试 路 图3 1o s p f 工作流程图 3 1 1o s p f v 3 分组结构 对于不同的数据包类型,o s p f v 3 都有一个共同的1 6 字节的公共 数据包头【9 】,如图2 3 所示。 o 7 81 51 63 1 版本类型包长度 路由器i d 区域i d 校验和实例i d零域 图3 2o s p f v 3 的公共包头 0 s p f v 3 使用了5 种不同的报文类型,每种类型都设计成支持网 北京交通大学硕士学位论文o s p f v 3 和a o d v j r 路由协议研究与测试 络中不同的、高度专门化的功能。这5 种报文类型如下所示:呼 叫报文:该报文用于建立和维护邻接节点关系。在o s p f v 3 中,邻接 是交换路由选择数据的基础。正是通过使用了呼叫协议,o s p f v 3 节 点才能发现本区域中的其它o s p f v 3 节点,然后在发现的邻居节点中 决定是否建立邻接关系,即是否建立通信,互相交换链路状态信息。 数据库描述报文:这种类型的报文用于描述路由器的链路状态数 据库内容,但不实际传送这个数据库。它用于告诉那些需要交换的路 由器自己的链路状态数据库中包含哪些l s a ,并且它还用于协商交换 过程中所需要的主次路由器。 链路状态请求( l s r ,i j i l l 【s t a t cr e q u e s t ) 报文:该报文用于请求 邻居路由器链路状态数据库的特定部分。在接收到d d 报文后,如果 o s p f v 3 路由器发现邻居路由器的信息比自己的更新或更完善,路由 器将向其邻居路由器发送一个链路状态请求来请求更新的链路状态 信息。 链路状态更新( l s u ,l i n ks t a t eu p d a t e ) 报文:链路状态更新报 文常常用于向其邻居节点传送所请求的l s a 。 链路状态确认( l s a c k ,i j i l ks t a t e a c k n o w l e d g m e n t ) 报文:该报文 用于保证o s p x 北京交通大学硕士学位论文 0 s p f ”和a o d v j r 路由协议研究与测试 4 如果路由器是新选举出来的d r 或b d r ,或者不再是d r 或 b d r ,则重复步骤2 和3 ,然后跳到步骤5 。 5 通过上述步骤,路由器现在应当是d r 或b d r ,此时路由器的 接口状态也应当被相应的设置。如果路由器现在是d r ,则接口状态是 d r ;如果路由器现在是b d r ,则接口状态是b d r ;其它情况下,接口 状态是d r o t h e r 。 6 如果连接的网络是n b m a 并且路由器刚成为d r 或叻r ,则它 应当开始给那些不能成为d r 的邻居发送h e l l o 报文。这是通过给每 个路由器优先级为o 的邻居启动s t a r t 事件完成的。 7 假如上述计算导致d r 或b d r 的身份改变了,则跟该接口有 关的近邻需要重新定义( 有些近邻要形成,有些要解除) 。为完成这 一任务,在所有状态至少为2 一w a y 的邻居上触发事件a d j o k ? 。这将 导致重新检查它们是否可以成为近邻。 上述步骤有可能导致同一个路由器既是d r 又是b d r 。被选举出 来的d r 不一定是具有最高路由器优先级的路由器,被选举出来的 b d r 也不一定是具有第二高路由器优先级的路由器。 3 1 3 链路状态通告l s a 对于路由器所处的每个区域,路由器都需要维护一个链路状态数 据库。对每个区域的最短路径树的计算,分别由每个路由器以自己为 树根进行。 一个区域的链路状态数据库由路由器l s a ( r o u t c 卜l s a ) 、网络 l s a ( n e t w d r k 凼) 、域间前缀岱a ( i n t e r - a r e a _ p r e f i x l s a ) 、域问 路由器l s a ( i n t e r - a r e a r o u l e 卜l s a ) 、自治系统外部l s a ( a s e x t e m a l l s a ) 、链路l s a ( u n l 【一l s a ) 、域内前缀u 渔 2 0 北京变通大学硕士学位论文o s p f v 3 和a o d v j r 路由地望凹究与测试 ( i n t r a a e a p r c f i x l s a ) 等组成。这些l s a 用于描述o s p f v 3 路由 选择的不同方面,它们可以直接对0 s p f v 3 区域中每个路由器直接寻 址,并且同时发送信息。l s a 描述了网络拓扑结构中的每一条链路的 相关信息, 3 1 3 1 l s a 的分组格式 每个类型的l s a 都有自己的结构,但是。它们都由一个公共头 开始。这个公基头具有固定的长度,都为2 0 字节。璐a 的公共头分 组格式如图2 4 所示: l s a 经历时间l s a 类型 链路状态m 通告路由器 【s a 序号 u a 校验和 长度 3 1 3 2l s a 的更新 图3 ,3l s a 公共头 在o s p f v 3 协议中,l s a 不是一直不变化的。下列事件会导致 l s a 的更新: ( 1 ) 路由器自己产生的l s a 中有个l s a 的l s 年龄达到了 l s r e & s h 弧m e 。在这种倩况下,不管礁鱼的皮容是否相周,都应当 产生新的l s a 。这样做的目的是使得链路状态的计算增加了健壮性。 但是,在m i n l s n e i v a l 时间内不应生成两个相同的l s a 。这可能要 求把下仑实例的生成推迟到m i a 璩i n 把n 堪后。 2 】, 北京交通大学硕士学位论文o s p f v 3 和a d d v i r 路由协议研究与测试 ( 2 ) 一个和路由器相连的网络上的d r 发生改变。此时应当生成 新的r o u t e r l s a 并且若路由器自身成为了d r ,则还要生成 n e m o r k l s a 。若路由器自身不再是d r ,则应当把路由器为该网络 已经产生的n a t w o r k l s a 从路由域中删除。 ( 3 ) 有一个邻居路由器改变成f u us t a t e 或改变为不是f u us t a t e 。 这可能意味着需要生成一个新的r o u t e r l s a 实例。而且,假如路由 器自身就是所连网络的d r ,需生成一个新的n e t w o r k - l s a 。路由器 应当产生( 或重新产生) 或删除链路上的n e t 、o r k l s a 和一个或多个 r o u t e r - l s a 、i n t m a r e a n f i x l s a 。 ( 4 ) 在路由表中增加或删除或修改域内路由。这可能导致为每个 连接域生成一个新i l l t r a a r e a p r c f i 【l s a 和i n t r a a r e a r o u t c r - l s a 实 例( 可能包括为主干域生成) 。 ( 5 ) 在路由表中增加或删除或修改域问路由。这可能导致为每个 连接域生成一个新h l t e 卜a r e a p r c 血i 姒和i n t e r - | a i c a r o u t e r - l s a 实 例( 但永远不为主干域生成) 。 ( 6 ) 浚路由器刚刚连到一个域上。该路由器于是必须为新连的域 生成i n t e 卜a r c a 。p r c f i x l s a 和h t c 卜a r e a r o u t e 卜l s a 。 ( 7 ) 当路由器的某个虚链路发生变化时,可能要给虚链路的传输 域生成一个新的l 沁u t e r - l s a ,同时给主干域生成一个新的 r o u t e r - l s a 。 ( 8 ) 通过直接与外部路由协议( 例如b g p ) 联系而获得的外部路 由变化了,则将导致a s b r 生成一个新的a s e x t e 皿a 1 l s a 实例。 ( 9 ) 路由器不再是a s b r 。此时,路由器应删除它以前生成的所有 a s e x t e m a l 璐a 。 0 0 ) 当路由器某个接口的状态发生改变。路由器应当产生( 或重 北j 荨翅大学硕士学位论文 o s p f v 3 和a o d v j r 路由协议研究与测试 新产生) 它的【j n i 【l s a 和一个或多个r o u t e r _ l s a 、 i t r a a r e a - p r e f i x l s a 。 0 d 链路上d r 的身份发生改变。路由器需要产生( 或重新产生) 或删除它的n c t w o r k - l s a 和一个或多个的r o u t e f - l s a 、 i n t r a a r e a p r e f i x l s a 。 一个邻居的接口i d 发生改变。这可能导致路由器为相关域 产生一个r 0 u t e 卜l s a 的新实例,并且重新产生一个或多个 h t r a a r e a p r c f i x l s a 。 一个相连的链路上增加了一个新的前缀或是删除了一个前 缀。这导致路由器为该链路重新产生i j n k l s a 。如果该路由器是和 该链路相连的唯一的路由器,则导致路由器重新产生一个 i n t r a a r e a p t c f i 】【l s a 。 当接收到一个新的工j n l 【l s a 时,导致链路上前缀的聚合发 生改变。如果该路由器是链路上的d r ,则它产生一个新的 i n t r a a r e a p r c f i x i s a 。 3 1 4 o s p f v 3 和o s p f v 2 的比较 o s p f v 3 是在o s p f v 2 的基础上发展而来的。由于v 4 和,v 6 协议的不同,使得o s p f v 3 在0 s p f v 2 的基础上做了许多改动。与 0 s p f v 2 相比,o s p f v 3 的优点主要体现在以下几点: 1 扩展性 0 s p f v 3 的主要目的之一是“开发一种独立于任何具体网络层的 路由协议”。为实现这一目的,o s p f v 3 做了以下几点改动: ( 1 ) o s p f v 3 基于“链路”实现而不再基于“子网”实现,包交 互使用的目的地址是链路本地地址而不是全球单播地址。这样就使得 北京交通大学硕士学位论文o s p f v 3 和a o d v j r 路由协议研究与涮试 只要在数据链路层能够通信的两个路由节点都可以交互0 s p f v 3 信 息,而不管这两个节点在不在一个子网上。客观上,不再受具体网络 层通信的限制。 ( 2 ) o s p f v 3 的内部路由信息被重新进行了设计,路由器l s a 和网络 l s a 不再含有任何网络地址信息,只说明拓扑结构,为公告计算域内 路由必须的地址信息,o s p f v 3 引入了另外一种专门的l s a ,即域内 前缀l s a 。 2 通用性 o s p f v 3 增加了多种可选功能,如多播0 s p f 等,以实现通用性。 为了达到这一目的,o s p f v 3 扩展了功能选项数据域( 由o s p f v 2 的 l 字节增加到o s p f v 3 的3 字节) 。 3 简单性 ( 1 ) 通过利用,v 6 包的安全头,0 s p f v 3 消息可以被认证和加密, 而不需要单独的安全认证。 ( 2 ) 在0 s p f v 3 中,多个实例的实现是通过在0 s p f v 3 包头中加 入“实例i d ”字段来实现的,而在0 s p f v 2 中多个实例的实现是通 过验证类型和验证数据实现的。 ( 3 ) 对多宿主机的支持:连在不同子网上的主机称为多宿主机。 在o s p f v 3 中用一个r 比特来标志该节点是否为路由器。 总之,o s p f v 3 是一个非常强大的特性丰富的开放路由选择协议。 在正确完成所有工作后,o s p f v 3 网络将回报给你稳定的性能和快速 的汇聚。 北京交通大学硕上学位论文o s p f v 3 和a o d v i r 路由擤议研究与测试 部处理过程和性能方面的测试,如收敛时间、交互频率和吞吐量等, 是路由协议测试的重点和难点。 对于l p v 6 下的动态路由协议i 受0 试首先是对于i p v 6 网络的测试, 需要搭建一个i p v 6 的网络环境,也就是所有的主机接口都需要配备 有i p v 6 地址,路由协议测试仪能够收发各种i p v 6 数据包,能够包括 各种路由协议的内容,并可以对接收到的各种i p v 6 数据包进行分析。 而其它的步骤,与测试i p v 4 下的路由协议基本相同 x 北京交通大学硕士学位论文0 s p f v 3 和a o d v j r 路由协议研究与测试 三个小测试组【1 2 】: ( 1 ) h e l l o 有限状态机( h e l l o f s m ) :主要是描述h e l l o 报文对邻居 状态的影响,总共编写了1 3 个测试例。 ( 2 ) 数据库交互( d a 劬a s e e 】【c h a n g c ) :主要是描述数据库交互对邻 居状态的影响,总共编写了4 0 个测试例。 ( 3 ) 泛洪( f 1 0 0 d i n g ) :泛洪是一个非常重要的模块,同时也是一 个非常复杂的模块。为了具体的描述泛洪对邻居状态的影响,我 们又把泛洪这个模块分成三个部分:域内泛洪( f 1 0 0 d i l l g - i n t r a a 陀a ) 、 区域边界路由器泛洪( f l o o d i n g - a b r ) 、自治系统边界路由器泛洪 ( f 1 0 0 d i n g a s b r ) ,每个部分都是很复杂的。我们为泛洪这个小测试 组编写了1 0 3 个测试例,其中,域内泛洪7 5 个,区域边界路由器泛 洪2 4 个,自治系统边界路由器泛洪4 个。 邻居状态这个测试组总共编写了1 5 6 个测试例,它是编写了最多 测试例的测试组。 ( 4 ) 0 s 珊w 报头( o 趼f - h 魄d e r ) 这个测试组主要是描述0 s p f 协报头的正确性,主要是看是否正 确产生了o s p f v 3 报头,以及它在传输过程中是否保持正确性和完整 性。总共编写了5 个测试例。 ( 5 ) i p v 6 报头( i p v 6 h 睫d 盯) 这个测试组主要是描述i p v 6 报头,主要是看是否正确产生了 v 6 报头,以及它在传输过程中是否保持正确性和完整性。总共编写了1 9 个测试例。 ( 6 )0 s h 3 格式化( o s p f - f o m a t ) 这个测试组主要是在产生o s p f v 3 协议包时是否正确产生了报 文。总共编写了4 4 个测试例。 北京交通大学硕十学位论文o s p f v 3 和a o d v 扣路由协议研究与测试 ( 7 ) 路由计算( r 0 u t e - c a l 姐i a 6 蛐) : 这个测试组主要是描述路由计算的。路由计算是o s p f v 3 协议的 核心,我们主要就是看是否正确产生了路由。路由计算有域内路由计 算、域问路由计算、外部路由计算三个部分。总共编写了1 9 个测试 例。 ( 8 )等量多径( m u l 6 p k - i n s 血m ) 这个测试组主要是描述等量多径的。在o s p f v 3 中,当对同一个 目的地址存在着多个相同费用的路由时,o s p f v 3 在这些路由上平均 分配流量,我们称之为流量平衡。这样减轻了某一条路径的负荷。编 写了1 个测试例。 综上所述。在o s p f v 3 这个测试集中编写了8 个测试组,总共编 写了2 6 6 个测试例。 3 3 2 编写测试用例 正如上面所描述的,o s p f v 3 协议是个非常复杂的协议,因此我 们为它编写了较多的测试例。我们采用逻辑覆盖和流程图相结合的方 式,并针对特定的环境采取专门的方法,尽可能使以测试需求为基础 而开发出来的测试用例完全覆盖协议的各个细节由于篇幅所限,在这 里不可能把所有的测试例都一列举出来。我们选举一个测试组作为 代表加以详细阐述,这里以接口有限状态机( i n t e 血c e f s m ) 为代表, 我们在这一测试组主要是编写d r 、b d r 的选举。 3 3 2 1 接口状态 接口是指路由器与网络的连接部分,路由器一般至少有两个接 北京交通大学硕士学位论文0 s p 脚3 和a o d v j f 路由协议研究与测试 口。o s p f v 3 接口是指路由器上运行o s p f v 3 协议的接口。在o s p f v 3 中,为了完成邻居路由器的发现、维持以及链路状态信息的交互,引 入了接口状态的概念。同一接口在不同的o s p f v 3 启动时期会处于不 同的状态,而不同的状态也决定了路由器在处理协议包时所采取的不 同措施。o s p f v 3 接口的状态有以下7 种:( 1 ) d
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 手指谣小熊猫课件
- 红色旅游教育功能分析-洞察及研究
- 次卡协议书5篇
- 人教版四年级数学上学期第6单元除数是两位数的除法综合素养评价卷(含答案)
- 吉林省白城市通榆县育才学校2024-2025学年八年级下学期4月月考生物试题(含答案)
- 学生食品安全培训教育课件
- 手扶梯使用安全培训课件
- 2025-2026学年安徽省安庆市太湖县五校联考九年级(上)开学英语试卷(含答案)
- 工程咨询国际化竞争-洞察及研究
- 模块化设计质量策略-洞察及研究
- 奥曲肽治疗肠梗阻的护理
- 十五五住房和城乡建设发展思路
- 马克思主义经典原著选读-1
- 《书愤》课件-【中职专用】高二语文(高教版2023职业模块)
- 邻里中心项目策划工作建议书框架及标准格式
- 人工智能通识 课件 第七章 智能之躯-具身智能
- 妈妈驿站加盟合同范本
- T/CUWA 60055-2023城镇排水管道螺旋缠绕内衬法修复用硬聚氯乙烯(PVC-U)带状型材
- DB62T 25-3016-2016 建筑工程资料管理规程
- 专题06 对角互补模型(原卷版)
- 2025勤工俭学合同范本
评论
0/150
提交评论