(通信与信息系统专业论文)t比特路由器中双协议栈ip层的研究与实现.pdf_第1页
(通信与信息系统专业论文)t比特路由器中双协议栈ip层的研究与实现.pdf_第2页
(通信与信息系统专业论文)t比特路由器中双协议栈ip层的研究与实现.pdf_第3页
(通信与信息系统专业论文)t比特路由器中双协议栈ip层的研究与实现.pdf_第4页
(通信与信息系统专业论文)t比特路由器中双协议栈ip层的研究与实现.pdf_第5页
已阅读5页,还剩54页未读 继续免费阅读

(通信与信息系统专业论文)t比特路由器中双协议栈ip层的研究与实现.pdf.pdf 免费下载

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

文档简介

中文摘要 随着因特网用户量的急速增长和业务类型的不断丰富,研制适用于当前i p v 4 网络和下 一代i p v 6 网络的t 比特双栈路由器已经迫在眉睫。而路由器是三层处理设备,因此t 比 特双栈路由器中网络层的实现方案将直接影响其总体性能。本文结合国家“十五”8 6 3 计划 重大课题“可扩展到t 比特的高性能i p v 4 v 6 路由器基础平台及实验系统”,详细分析了高 性能路由器中双协议栈网络层的基本原理,提出了一种实用的双协议栈网络层设计方案, 并应用于t 比特双栈路由器中。然后,针对高性能t 比特路由器双协议栈网络层实现中的 三个难点如何启动地址解析功能来生成转发表的问题、主机路由问题和如何实现i p v 4 和i p v 6 两个相互独立的协议栈之间的互通问题,分别提出了解决方案,这些方案所实现的 功能扩展了t 比特路由器双协议栈网络层的功能。本文的主要工作如下: 从高性能路由器设计角度深入分析了双协议栈i p 层的功能需求和设计目标,提出了实 现过程中的难点问题,为t 比特路由器双协议栈i p 层的设计提供了基本思路; 分析了基于l i n u x 操作系统的网络系统分层结构,给出了双协议栈网络层数据传输流 程与双协议栈i p 层各基本协议的实现方案,并通过了协议的一致性测试; 提出并实现了适合于具有分布式结构的t 比特级高性能路由器的一种地址解析的实现方 案,解决了高性能t 比特路由器中地址解析相关协议实现中的两个难点问题,即其运 行在主控时带来的如何启动地址解析功能来生成转发表的问题和主机路由问题; 提出了一种在双栈路由器中隧道技术和协议互译两种技术相互结合的双栈互通实现方 案,解决了t 比特路由器的双协议栈实现中的又一难点,即如何实现i p v 4 和i p v 6 两 个相互独立的协议栈之间的互通问题,该方案既可以解决各个分散的i p v 6 节点跨越 i p v 4 网络相互通信的问题,又可以解决i p v 6 节点与i p v 4 节点间互通的问题,其隧道部 分已被成功运用于t 比特路由器系统中。 关键词:t 比特路由器;双协议栈;地址解析;邻居发现( n d ) ;n e t l i n k ;i p v 4 i p v 6 协议 栈间互通;隧道;n a t p t 第1 页 a b s t r a c t w i t ht h er a p i dd e v e l o p m e n to fi n t e r n e ta n dt h ea b u n d a n c eo fs e r v i c e s ,d e v e l o p i n gt e r a b i t r o u t e r sw i t hi pd u a l s t a c kt oa p p l yt h ei p v 4 i p v 6n e t w o r ki sv e r yi m p o r t a n tn o w a d a y s g i v e n t h a tr o u t e r sa r el a y e r3d e v i c e s ,t h ei m p l e m e n t a t i o ns c h e m eo fd u a l s t a c ki nt h et e m b i tr o u t e r w i l ln l a k eaf u l li m p a c to nt h ew h o l ep e r f o r m a n c e t h i st h e s i si sd e v o t e dt ot h er e s e a r c h e si n t o t h e t h e o r y a n d i m p l e m e n t a t i o n o fd u a l - s t a c k a c c o r d i n g t ot h er e q u i r e m e n t so ft h e h i g h - p e r f o r m a n c et e r a b i tr o u t c rv r o j e e to ft h en a t i o n a lh i - t e e hr e s e a r c hp r o g r a m8 6 3f o rt h e t e n t hf i v e y e a rp l a n b a s e do nt h ea n a l y s i so ft h ef u n d a m e n t a lo ft h ei pl a y e ro fd u a l s t a c ki n t h et e r a b i tr o u t e r , a l li m p l e m e n t a t i o ns c h e m eo fi pl a y e ro fd u a l - s t a c ki sp r o p o s e di nt h i st h e s i s n 坨s c h e m eh a sb e e na p p l i e di nt h et e r a b i tr o u t e r t h e ni m p l e m e n t a t i o ns c h e m e st oe x t e n dt h e b a s i cf u n c t i o no fi pl a y e ro fd u a l s t a c ka r ep u tf o r w a r dt oh a n d l et h r e ed i f f i c u l t i e si nt h e i m p l e m e n t a t i o no f t h ei pl a y e ro f d u a l s t a c k t h ek e y c o n t r i b u t i o n si nt h i st h e s i si n c l u d e : 1 1 l ef u n c t i o na n dd e s i g nr e q u i r e m e n t so ft h ei pl a y e ro fd u a l s t a c ki nh i g h - p e r f o r m a n c e r o u t e ra r ea n a l y z e di nd e t a i l a n dd i f f i c u l t i e si nt h ei m p l e m e n t a t i o na r ep r o p o s e d n 佗s e p r o p o s a l sc o m eu pw i t ht h eb a s i ci d e n sf o rt h ei pl a y e ro f d u a l s t a c ki nt h et e r a b i tr o u t e r t h cl a y e r e ds t r u c t u r ei nt h en e t w o r ks y s t e mb a s e do nl i n u xi sa n a l y z e d 1 1 1 ed a t a t r a n s m i s s i o nf l o wa n dt h ei m p l e m e n t a t i o ns c h e m ei nt h ei pl a y e ro f d u a l - s t a c ka r ep r e s e n t e d t h es c h e m ep a s s e st h ep r o t o c o lc o n f o r m a n c et e s t i n g i nt h i st h e s i s as c h e m eo fa d d r e s sr e s o l u t i o nt h a tf i t sf o r t h eh i g hp e r f o r m a n c et e r a b i tr o u t e r w i t hd i s t r i b u t e df r a m e w o r ki s p r o p o s e d t h es c h e m es o l v e st w od i f f i c u r i e s i nt h e i m p l e m e n t a t i o no fa d d r e s sr e s o l u t i o ni nt h eh i g h - p e r f o r m a n c et e r a b i tr o u t e r t h e s et w o d i 伍c u l t i e sa r ea b o u th o wt oi n i t i a t ea d d r e s sr e s o l u t i o nt og e n e r a t et h ef o r w a r dt a b l ea n dt h e h o s tr o u t i n gp r o b l e m t h i ss c h e m eh a sb e e ns u c c e s s f u l l ya p p l i e di nt h et e r a b i tr o u t e r ad u a l s t a c ki n t e r a c t i n gs c h e m eb e t w e e nt h et u u n e lt e c h n i q u ea n dt h ep r o t o e o lt r a n s l a t i o n t e c h n i q u ei sp r o p o s e d t h es c h e m es o l v e sa n o t h e rd i f f i c u l t yi n t h ei m p l e m e n t a t i o no f d u a l s t a c ki nt h et e r a b i tr o u t e rt h a ti sh o wt oi m p l e m e n tt h ec o m m u n i c a t i o nb e t w e e nt w o i n d e p e n d e n tp r o t o c o ls t a c k si ni p v 4a n di p v 6 t h i ss c h e m ec a ns o l v et h ep r o b l e mo fe a c h s c a t t e r e di p v 6 n o d et h a tc o m m u n i c a t e st h r o u g hi p v 4n e t w o r k a n dt h ei n t e r - c o m m u n i c a t i o n b e t w e e ni p v 6n o d ea n di p v 4n o d e n 嵋t u m l e lp a r th a sb e e ns u c c e s s f u l l ya p p l i e di nt h e t e r a b i tr o u t e rs y s t e m k e yw o r d s :t e m b i tr o u t e r ;d u a l s t a c k ;a d d r e s sr e s o l u t i o n ;n e i g h b o rd i s c o v e r y d ) ;n e t l i n k ; i n t e r - e o m m u n i c a t i o nb e t w e e ni p v 4 i p v 6d u a l s t a c k ;t u n n e l ;n a t p t 第1 1 页 信息工程大学硕士学位论文 表目录 表li p v 6 协议支持的主要功能8 表2 邻居发现协议所支持的功能9 表3 邻居发现协议的报文类型1 0 表4 双协议栈口层的功能需求11 表5 砰v 4 部分的协议一致性测试结果。2 3 表6i p v 6 部分的协议一致性测试结果2 3 表7 先应式地址解析功能测试结果3 3 表8 主机路由部分功能测试结果3 4 第v 页 信息工程大学硕士学位论文 图目录 图1t 比特路由器系统级总体结构图6 图2t 比特路由器主控软件分层结构图7 图3l i n u x 的协议栈网络系统分层结构图1 4 图4 数据接收流程1 6 图5 数据发送流程1 7 图6 总体数据流图1 8 图7 双协议栈i p 协议的函数关系1 9 图8 双协议栈i c m p 协议的函数关系2 0 图9 双协议栈a r p 协议的函数关系2 0 图1 0 双协议栈n d 协议的函数关系2 2 图l l 先应式地址解析功能原理图2 4 图1 2n d 在t 比特路由器主控软件中的位置2 6 图1 3 路由表到转发表转换示意图2 7 图1 4n d 协议实现中问题产生的相关流图2 7 图1 5 实现方案图2 8 图1 6 方案前后地址解析方式情况的比较。2 9 图1 7n e t l i n k 机制双向通信示意图3 0 图1 8 获取内核邻居表信息的n e t l i n k 报文格式3 0 图1 9n d 模块与硬件抽象层的具体实现通信流图。3 1 图2 0 实现方案中系统数据维护模块部分的实现流图3 2 图2 l 方案测试环境图3 3 图2 2 双协议栈问的互通3 7 图2 3i p v 6 包的封装和解封装3 8 图2 4 双协议栈互通方案图,3 9 图2 5i p v 4 i p v 6 数据包在双协议栈中的分流过程4 0 图2 6i p v 4 隧道模块双向处理框图4 1 图2 7 隧道包解封装过程的函数实现流程4 2 图2 8 隧道包封装过程的函数实现流程4 3 图2 9 测试环境图4 3 图3 0n a t - p t 模块双向处理框图4 5 图3 l 地址转换举例4 5 第v i 页 堕皇三堡奎兰堡主鲎垡笙苎 图3 2i p v 4 i p v 6 的i c m p 出错报文翻译4 6 图3 3d n s a l g 在n a t - p t 中的功能举例4 7 第v l l 页 学位论文原创性声明 所提交的学位论文是本人在导师指导下进行的研究工作及取得的研究成果。尽我所 知,除了文中标注和致谢的相关内容外,论文中不包含其他个人或集体已经公开的研究成 果。与我一同工作的同志对本研究所做的任何贡献均已在论文中作了明确的说明并表示谢 意。 学位论文题目;! g 犍竖童墨生巫协这拢堡层的班盔生塞理 学位论文作者签名:霎垒蕴日期:口。多年月j - ge t 学位论文版权使用授权书 本人完全了解信息工程大学有关保留、使用学位论文的规定。本人授权信息工程大学 可以保留并向国家有关部门或机构送交论文的复印件和电子文档,允许论文被查阅和借 阅;可以将学位论文的全部或部分内容编入有关数据库进行检索,可以采用影印,缩印或 扫描等复制手段保存、汇编学位论文。 ( 涉密学位论文在解密后适用本授权书。) 学位论文题目: ! 丝挂蹬由矍虫巫迹邀拢堡屋的班究曼塞现 学位论文作者签名:量盔基日期:朋多年月 珀 作者指导教师签名: 兰。邕如日期:抄舌年月名日 信息工程大学硕士学位论文 第一章绪论 1 1 研究背景 随着光传输技术的发展和成熟应用,传输链路和传送节点已不再是限制骨干网发展的 因素,而作为业务节点的路由器却成为“瓶颈”另外,电信运营商和大型i s p 也面临着 i p 网络设备的频繁升级扩容问题。因此,大力发展t 比特路由器是突破骨干网容量限制的 关键,也是满足我国信息产业发展和基础设施建设的需要。 现有的几乎每个网络及其连接设备都支持i p v 4 ,因此要想一夜间就完成从i p v 4 到i p v 6 的转换是不切实际的。i p v 6 必须能够支持和处理i p v 4 体系的遗留问题,需要相当长的时 间才能完成,所以作为面向新一代互联网的核心网络路由器必须在i p 协议的支持上实现 口v 4 、i p v 6 的双协议栈配置,以支持i p v 4 和i p v 6 的网络互联。 由国家数字交换系统工程技术研究中心承担的“可扩展到t 比特的高性能i p v 4 v 6 路 由器基础平台及实验系统”项目为国家8 6 3 计划信息技术领域高性能宽带信息网( 3 t n c t ) 专项中的重大项目。其目标是研究支持i p v 4 v 6 协议、可扩展到t 比特的高性能路由器基 础平台关键技术,包括可扩展的系统结构、高速接日、大容量交换网络、转发引擎、存储 管理与队列调度等m 。本课题依附于上述8 6 3 项目,研究的主要内容是t 比特路由器中双 协议栈i p 层的研究与实现。 1 2 当前研究现状 在t 比特路由器的研究方面,国外大公司的研究起步较早,近期推出了t 比特交换 路由产品类或者概念产品的公司主要有:c i s e o , j u n i p e r 、a v i c i 、p l u r i s 、n o r t e l 、a l e a t e l 、 c h i a r o n e t w o r k s 、i r o n b r i d g e n e t w o r k s 、a e e e l i g h t n e t w o r k si n e 等”。在我国,国家8 6 3 高 科技发展计划于1 9 9 9 年启动了“中国高速信息示范网”项目,研制成功了g s r ,g s r 应用 和技术水平相当于c i s c o1 2 0 0 0 系列、j u n i p e rm 4 0 路由器,它的成功标志着我国在宽带网 络核心设备的研究开发上向前迈出了一大步,为t 比特路由器的研究做了一定的技术储备 但目前尚没有真正形成产业化,t 比特路由器的研究也还基本上是停留在概念阶段。 在支持i p v 4 i p v 6 双栈的t 比特路由器技术方面,目前可以实现i p v 4 i p v 6 双协议栈的 方式有集中式和分布式两种。集中式实现方式就是将双协议栈和i p v 6 路由软件放在tb i t 路由器的主控处理机上,i p 包通过线卡进入路由器后,在转发板上进行分拣;分布式实现 方式就是除了tb i t 路由器的主控处理机上有i p v 6 协议栈和i p v 6 路由软件外,转发板上也 有i p v 6 协议栈软件,使得转发板具备直接软件转发i p v 6 包的功能。 目前考虑对i p v 4 i p v 6 双栈的支持,涉及i p v 4 、i p v 6 及两者结合技术。对i p v 6 的研究 第l 页 信息工程大学硕士学位论文 和两者结合技术的研究为其双栈实现奠定了重要基础。但目前整个i p v 6 协议栈实现技术、 i p v 6 应用程序方面还处于积累阶段,作为i p v 6 核心协议的r f c 2 4 6 0 ,i t f c 2 4 6 l ,r f c 2 4 6 2 , r f c 3 5 1 3 ,r f c 3 5 8 7 中,成熟水平最高达到草案标准( d r a f ts t a n d a r d ) 阶段,还没有成为真正 的互联网标准( i n t e r a c ts t a n d a r d ) 。而其余协议还分别处于标准化阶段的最初两个阶段:草稿 ( i n t e r n e t - d r a f l ) 阶段或提案标准( p r o p o s e ds t a n d a r d ) 阶段。i e t f 成立了专门的工作组 n g t r a n s 来研究i p v 4 i p v 6 网络的互通问题,目前解决i p v 4 i p v 6 网络过渡问题的基本技 术主要有3 种它们分别是:双协议栈技术,隧道技术和翻译转换技术。但在t 比特双栈路 由器中实现i p v 4 i p v 6 双栈间互通的研究方面,目前在公开的资料中还没有见到完整的实 现方案。 由于协议本身的改进与演变和不同的硬件体系结构都可能会在实现策略上带来相应 变化。因此,需要根据各具体协议的特点并结合特定的硬件体系结构来完成系统的设计与 实现。 1 3 本文的主要研究工作 可扩展刭t 比特的高性能i p v 4 v 6 路由器基础平台及实验系统,能够为各种路由协议 软件提供可靠的、一致的和高实时性的系统服务,并且利于协议软件的移植,这同时也是 软件模块的主要设计目标。我们根据不同的处理要求,在路由器内部设簧了一系列性能不 同的处理器,这些处理器按照功能和位置的不同可以分成两级,主控一级处理器和单板二 级处理器。主控是路由器的控制中心,它负责整个路由器的管理和控制,i p 路由协议在主 控板上运行。 本课题研究的主要内容是t 比特路由器中双协议栈i p 层的研究与实现。双协议栈i p 层是主控单元的协议软件之一,是整个协议栈软件的基本组成部分,也是其实现的基础。 它主要完成协议栈中网络层的功能,即数据包的软件转发。这些数据包包括带i p v 6 扩展头 的数据包以及所有的协议包。本课题研究的主要目的是通过对双协议栈i p 层在t 比特路 由器中的研究,提出针对t 比特路由器双协议栈i p 层的设计思想和实现方案,设计出适 合于t 比特路由器双协议栈的地址解析实现方案,研究i p v 4 和i p v 6 协议栈之间的互通问 题。 本文完成的主要工作如下: 从高性能路由器设计的角度分析了双协议栈i p 层的关键技术与实现要求,并提出 实现过程中可能带来的问题。根据实现要求,在分析了双协议栈i p 层相关协议和 l i n u x 内核两万余行源代码的基础上,提出针对t 比特路由器双协议栈【p 层的设 计思想和实现方案。 在分析了l i n u x 操作系统内核与用户空间n e t l i n k 通信机制的基础上,针对高性能 第2 页 信息工程大学硕士学位论文 t 比特路由器中n d 协议及a r p 协议运行在主控时带来的如何启动地址解析功能 来生成转发表的问题和主机路由问题,提出了一种适合于具有分布式结构的t 比特 级高性能路由器的地址解析实现方案并对方案进行了功能测试。目前该方案已被成 功运用于t 比特路由器系统中。 在分析了当前主流网络互通技术的基础上,找出了双栈路由器中i p v 4 i p v 6 双协 栈问互通的两种实现方法。针对t 比特路由器的双协议栈还是互相独立的不能互 通的问题,提出了双栈路由器中隧道技术和协议互译两种技术相互结合的i p v 4 i p v 6 协议栈间互通的实现方案,并给出该方案隧道部分的具体实现和功能测试结 果。目前该方案的隧道部分已被成功运用予t 比特路由器系统中。 1 4 论文的结构安排 第一章主要介绍了课题的背景、意义以及课题的研究思路,最后介绍了论文的结构安 排。 第二章对t 比特路由器中的i p v 4 i p v 6 协议栈研究的背景知识进行综述。首先讨论了 t 比特路由器的结构特点,然后简要介绍了双协议栈及其i p 层的部分基本协议,并从路由 器设计的角度对双协议栈i p 层的实现要求进行了细致的分析,为可扩展到t 比特的路由 器中双协议栈i p 层的研究设计提供了良好的参考准则。 第三章重点讨论了基于l i n u x 操作系统的双协议栈i p 层基本功能的实现方案。本章通 过引入l i n u x 操作系统的网络系统分层结构,并结合t 比特路由器特定的硬件体系结构, 提出了双协议栈m 层实现中的难点,给出了完成基本功能的双协议栈i p 层总体数据传输 流程图和各基本协议i p v 4 i p v 6 协议、l c m p v 4 i c m p v 6 协议以及a r p 协议和n d 协议 的实现方案,给出了协议的一致性测试结果,做出了对a r p 协议和n d 协议、主机路由处 理功能和双协议栈互通功能扩展的考虑。这些总体设计方案为双协议栈的实现提供了很好 的框架。 第四章提出并实现了一种适合于具有分布式结构的t 比特级高性能路由器的地址解析实 现方案。本章首先论述分布式高性能路由器中地址解析相关部分的功能需求以及存在的闯 题,然后针对存在的问题,利用l i n u x 内核提供的n e t l i n k 机制,分别给出了t 比特路由器 中先应式地址解析以及主机路由的实现方法,测试结果表明,该方案使得t 比特路由器控制 平面能够高效可靠地完成地址解析功能。 第五章详细阐述了一种适用于双栈路由器的i p v 4 i p v 6 协议栈间互通的实现方案。首 先简要介绍i p v 4 i p v 6 互通技术的发展现状,为了满足过渡时期i p v 4 i p v 6 网络互联的需 求,针对t 比特路由器的双协议栈还是互相独立的不能互通的问题,提出了双栈路由器中 隧道技术和协议互译两种技术相互结合的i p v 4 i p v 6 协议栈间互通的实现方案,并给出该 第3 页 信息工捍大学硕士学位论文 方案隧道部分的具体实现及测试结果 最后,对全文做了总结,并提出了今后需要继续研究的有关工作。 第4 页 信息工程大学硕士学位论文 第二章t 比特路由器中的i p v 4 i p v 6 协议栈 i p v 4 i p v 6 双协议栈是t 比特路由器中的核心协议软件。本章简要介绍了t 比特路由 器结构特点和双协议栈及其i p 层的部分基本协议,分析双协议栈i p 层的功能需求,为后 续章节提出新的方案奠定基础。 2 1t 比特路由器结构特点 2 1 1 路由器的功能及发展 路由器是负责在网络层对口包进行转发的主要设备,正是路由器的广泛使用,才使得 今天的i n t e m e t 具有极大的可伸缩性,在世界各地互联了各种不同的子网。路由器屏蔽了 下层网络的技术细节,使各类网络都统一为i p ,这种一致性使全球范围用户之日j 的通信成 为可能。 路由器具有两大功能。一是路由表的计算与维护,二是数据包的转发。路由表的计算 与维护功能主要包括路由表的计算和系统的配置、管理,以及与其它路由器交换路由信息; 路由器转发功能是将进入路由器的数据包,通过查路由表从正确的端口发送出去。 路由器技术发展主要是在包转发技术方面的进步。对于低中端路由器,交换路由信息、 路由表查找以及转发数据报文都是由软件实现的,所有的i p 包都要经过中央c p u 进行转 发处理,吞吐率比较低。而高端路由器使用基于硬件的报文转发。包转发和路由表查找都 是由a s i c 芯片完成,软件只完成路由协议报文处理、路由表计算以及将计算好的路由表 下发到转发板上等功能。 2 1 2t 比特路由器总体结构 国家8 6 3 重大专项课题“可扩展到t 比特的高性能i p v 4 v 6 路由器基础平台及实验系 统”的路由器属于高端路由器,它采用基于光背板的并行交换全分布式体系结构啪,如 图1 所示。该路由器由8 个路p h 单元互连组成。系统级总体结构由路由单元、系统级光背 板、系统级内部通信和中央处理单元构成。 第5 页 信息工程大学硕士学位论文 图1t 比特路由器系统级总体结构图 路由单元的最大配置为8 个,每个路由单元最大可以支持8 个l o g b p s 速率的端口, 每个端口可根据需要灵活配置各类线卡。各路由单元间用户数据分组通过高速互连光背板 互通,各路由单元的协议及控制分组通过系统级内部通信与中央处理机通信;系统级光背 板实现各路由单元间用户数据分组的互连,由8 个平面的光互连网络组成;系统级内部通 信实现各路由单元与中央处理机之间协议报文和控制信息的传输。 中央处理机( 即主控) 处理各类协议及设备管理维护信息,并提供系统级全局唯一的 路由转发表的维护命令,集中控制各路由单元的操作和维护,确保各路由单元操作和维护 第6 页 堡星三矍奎兰堡主兰堡堡苎 的实时性和一致性,它通过系统级内部通信对所有各路由单元进行控制、管理与维护。图 2 是t 比特路由器主控软件分层结构图,由图可见主控软件由六层组成,它们分别是硬件 抽象层肼,网络驱动层,双协议栈i p 层,t c p u d p 层,路由协议和s n m pa g e n t 、t e l n e ts h e l l 、 w e bs e v e r 等。其中网络驱动层为网络协议提供统一的发送接口,屏蔽各种各样的物理介 质,同时负责把来自下层的包向合适的上层协议配送;硬件抽象层包括虚拟驱动、系统管 理和内部通信三大模块,能够为各种路由协议软件提供可靠的、一致的和高实时性的系统 服务,并且有利于协议软件的移植;双协议栈i p 层是整个协议栈的关键部件,也是完成 数据包转发功能的关键。 图2t 比特路由器主控软件分层结构图 2 2 双协议栈的简介 作为面向新代互联网的核心网络路由器必须在i p 协议的支持上实现i p v 4 、i p v 6 的 双协议栈配置,以支持妒v 4 和i p v 6 的网络互联。因此t 比特路由器是具有i p v 4 i p v 6 双 协议栈的路由器,它支持i p v 4 、i p v 6 以及与之相关的协议。 2 2 1 双协议栈工作方式 双协议栈工作( 支持手动或自动隧道的情况下) 的缺省m 包发送算法“1 如下: i 如果坤包的目的地址是i p v 4 地址: 如果目的站点在可达链路上,直接发送; 如果目的站点不可达,要么送往在线路由器,要么不可达。 i i 如果i p 包的目的地址是i p v 4 兼容的i p v 6 地址: 如果目的站点在可达链路上,直接发送i p v 6 包; 如果目的站点处于o f f - l i n k , ( 1 ) 如果有可达i p v 4 路由器,则封装在i p v 4 包中发往 第7 页 信息工程大学硕士学位论文 i p v 4 路由器;( 2 ) 如果有可达i p v 6 路由器,则不封装,直接发送;( 3 ) 如果没有可达 路由器,则不可达。 i i i 如果碑包的目的地址是纯i p v 6 地址: 如果目的站点在可达链路上,直接发送i p v 6 包; 如果目的站点处于o f f - l i n k ,( 1 ) 如果有可达i p v 6 路由器,则直接发送到路由器:( 2 ) 如果目的地通过手动隧道可达,并且链路上有可达i p v 4 路由器,则封装成i p v 4 包,目的 i p 地址为隧道终点地址,链路地址为可达路由器的链路地址;( 3 ) 否则为不可达。 2 2 2 双协议栈中的i p 层基本协议简介 t 比特路由器i p v 4 i p v 6 双协议栈体系结构中i p 层基本协议主要包括:i p v 4 部分的 网络层协议和i p v 6 部分的网络层协议。其中职v 4 部分的网络层协议包括i p v 4 协议6 1 、 i c m p v 4 协议删和a r p ( a d d r e s sr e s o l u t i o np r o t o c 0 1 ) 嘲;i p v 6 部分的网络层协议包括i p v 6 协议伽、i c m p v 6 协议n 0 1 1 和n d 协议( n e i g h b o rd i s c o v e r yp r o t o c 0 1 ) 1 2 o 由于i p v 4 协 议体系是被我们熟知的并且i c m p v 6 与i c m p v 4 类似,因此本小节仅介绍i p v 6 协议体系中 的i p v 6 协议和n d 协议。 i p v 6 协议简介 i p v 6 是”i n t e r a c tp r o t o c o lv e r s i o n6 ”的缩写,它是由i e t f 设计的用来替代现行的i p v 4 协议的一种新的i p 协议。i p v 6 是为了解决i p v 4 所存在的地址空间不足、缺乏服务质量保 证和安全性问题等方面的缺点和不足而提出的,同时它还在许多方面提出了改进,例如路 由方面、自动配置方面。具体来说,i p v 6 协议所支持的主要功能如表1 所述。 表1i i :h t 6 协议支持的主要功能 i p v 6 所支持的功能 功能简介 简化的包头和灵活的扩展i p v 6 对数据包头作了简化,以减少处理器开销并节省网络 带宽,它还定义了多种扩展头,这使得i p v 6 变得极其灵活, 能提供对多种应用的支持,同时又为以后支持新的应用提供 了可能 层次化的地址结构i p v 6 系统支持三种不同类型的网络地址“”,即单播 ( u n i c a s t ) ,多播( m u l t i c a s t ) 和任播( a t x y c a s t ) 地址。i p v 6 的地址空间是按照不同的地址前缀来划分的,并采用了层次 化的地址结构。这样可减小路由器中路由表的规模,从而减 少存储器容量和c p u 的开销,提高查表和转发速度 支持地址自动配置i p v 6 另一个基本的特征就是支持无状态1 和有状态两神地 第8 页 堡星三堡奎堂堡圭堂竺丝茎 址自动配置方式。无状态地址自动配置方式是获得地址的关 键,而有状态配置,如d h c p ( 动态主机配置协议) 需要 一个额外的服务器,因此需要很多额外的操作和维护 网络层的认证与加密i p v 6 协议内置安全机制,并已经标准化为i p s e c ,它提供认 证和加密两种服务。认证( a h ) 用于保证数据的一致性, 而封装化安全载荷( e s p ) 用于保证数据的保密性和数据一 致性。在l p v 6 包中。a h 和e s p 都是以扩展头的形式实现 的,可以同时使用,也可以单独使用其中一个,具有很好的 灵活性 服务质量的保证 1 p v 6 的服务质量保证体现在能根据不同的业务流种类提供 不同的服务。数据传输过程的中间节点可以根据i p v 6 包头 中的“传输类别”与“流标签”字段识别和分开处理不同服务 等级的业务流 移动性的支持 i p v 6 还定义了在i p 层实现的移动支持协议,即移动i p v 6 。 移动i p v 6 在新功能和新服务方面可提供更大的灵活性。并 且能够通过简单的扩展满足大规模移动用户的需求 n d 协议简介 邻居发现协议( n e i g h b o rd i s c o v e r y ,n d ) 是i p v 6 协议的一个基本的组成部分,r f c 2 4 6 1 是邻居发现协议的标准规范,它取代了在i p v 4 中的地址解析协议c a r p ) 、控制报文协议 ( i c m p ) 中的路由器发现部分、重定向协议的所有功能。并进行了定的扩展。邻居发现 协议解决了连接在同一条链路上的所有节点之问的互操作问题。具体来说,邻居发现协议 所支持的功能如表2 所述。 表2 邻居发现协议所支持的功能 邻居发现协议的功能 功能描述 路由器发现主机如何发现本地链路上的路由器 前缀发现节点使用此机制来确定链路本地地址的地址前缀以及必须发送给 路由器转发的地址前缀 参数发现主机如何发现与指定链路或网络有关的一些参数,如链路的最大 传输单元c l i n km t u ) 和发送包的跳限制( h o pl i m i t ) 地址自动配置节点如何为自己的一个网络接口自动配置一个全球唯一的、直接 第9 页 信息工程大学硕士学位论文 可用的地址 地址解析 替代了a r p 和r a r p ,根据一个本地节点的i p v 6 地址得剑它的 链路层地址 下一跳地址确定可用于确定包的下一个目的地。即可确定包的目的地是否在本地 链路上。如果在本地链路,下一跳即是目的地;否则,下- 剐b e p 是路由器,邻居发现可用于确定应使用的路由器 邻居不可达检测 节点如何确定一个邻居是否是可到达的,如果不再可剑达的邻居 是一个路由器,则可以试着使用另一个路由器,还可以重新进行 地址解析使其可达 重复地址检测在进行地址自动配置时,节点利用重复地址检测来确定它要使用 得地址是否已被其它节点占用 重定向功能有时节点选择的转发路由器对于待转发的包而言并非最佳。这种 情况下,该转发路由器可以对节点进行重定向,以将包发送给更 佳的路由器。例如,节点将发往i n t e m e t 的包发送给为节点的 i n t r a n e t 网服务的默认路由器。该i n t r a n e t 网路由器可以对节点进 行重定向,以将包发送给连接在同一本地链路上的i n t c m e t 路由器 邻居发现协议以高效的组播和单播n d 报文替代了以往基于广播的地址解析协议a r p 、 i c m p v 4 路由器发现和i c m p v 4 重定向报文,它使用五种类型的i p v 6 控制信息报文( i c m p v 6 ) 来实现邻居发现协议的各种功能,这五种信息报文的类型和功能描述如表3 所示。 表3 邻居发现协议的报文类型 报文类型功能描述 路由器请求 主机可以请求本地路由器立即发送其路由器通告。路由器必须周期性发 r o u t e r 送这些通告,但是在收到路由器请求报文时,不必等待下一个预定传送 s o l i c i t a t i o n 时间剑达。而应立即发出通告 路由器宣告 路由器周期性地发送此消息,用来宣告其可用性。以及用丁配置的链路 r o u t e r 和因特网参数,包含网络地址前缀、建议的跳限值及本地链路最大传输 a d v e r t i s e m e n t 单元( m t o ) ,也包括指明节点应使用的自动配置类型的标志等。另外, 路由器收到一个路由器请求消息以后应立即发送一个路由器宣告消息 邻居请求 节点发送邻居请求消息来请求邻居的链路层地址,以验证它先前所获得 n e i g h b o r 并保存在缓存中的邻居链路层地址的可达性,或者验证它自己的地址在 s o l i c i t a t i o n 本地链路上是否是唯一的 第l o 页 笪星三堡查兰婴主堂垒堡茎 邻居宣告 节点在收到邻居请求消息或者其链路层地址改变时,应发送邻居宣告消 n e i g h b o r a d y e r t i s e m e n t 息告知自己的链路层地址 重定向路由器通过重定向消息通知主机。对于特定的目的地址。自己并不是最 r e d i r e c t 佳路由。路由器通过组播来发送其路由器通告报文,这样同一链路上的 节点可以构造自己的可用默认路由器列表 在双协议栈协议体系中,p v 4 协议栈中的i p v 4 、i c m p v 4 以及a r p 协议和i p v 6 协议 栈中的i p v 6 、i c m p v 6 以及n d 协议是整个双协议体系的核心,也是构成基本协议栈的关 键。 2 3t 比特路由器双协议栈i p 层的功能需求 在t 比特路由器的设计实现过程中,需要实现链路层( 包括p p p 、以太网等) 、网络层( 包 括i p v 4 、i c m p 4 、a r p 、i p v 6 、i c m p v 6 、n d 协议等) 、传输层( 包括t c p v 4 、t c p v 6 、u d p v 4 、 u d p v 6 等) 以及应用层( 包括各种路由协议等) 的各种协议。本课题涉及的主要内容为网络层 即双协议栈i p 层的设计与实现,根掘系统的需求,双协议栈i p 层的功能需求包括三部分: i p v 4 协议与i p v 6 协议部分,i c m p v 4 协议与i c m p v 6 协议部分和a r p 协议与n d 协议部 分,三个部分具体的功能需求如表4 所示: 表4 双协议栈i p 层的功能需求 i p v 4 协议与1 p v 6 协议i c m p v 4 协议与i c m p v 6 协议a r p 协议与n d 协议 对从外部网络进来的数据包处理接收的i c m p v 4 、i c m p v 6地址解析 进行合法性验证数据包 为i p 层和高层协议产生和发送邻居不可达性检测( 仅 数据包的接收和发送 i c m p v 4 、i c m p v 6 差错数据包对n d 协议) 对i p v 4 报头中选项字段的处 审查i c m p v 4 、i c m p v 6 差错数 重复地址检测( 仅对n d 理( 对i p v 6 扩展头的处理,据包并提交给高层协议进行处 协议) 包括接收数据时对扩展头的理,例如目的不

温馨提示

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

评论

0/150

提交评论