




已阅读5页,还剩36页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
西安电子科技大学网络教育 毕业论文(设计)任务书 学习中心 深圳学习中心 专业 通信工程 学号 7011101132007 姓名 题目 ipv6 技术的分析与研究 任务与要求 任务: 本论文概括地阐述了 ipv6 技术目前在国内外的现状和未来的 发展趋势,通过与 ipv4 技术上的对比,介绍了 ipv6 的地址结构 和路由协议、安全机制等。介绍了双协议栈技术、隧道技术和协 议转换技术三种 ipv6 过渡技术。ipv4 向 ipv6 过渡还是一个很漫 长的过程,但是,ipv6 技术的优势及其诸多应用,在未来必然会 有好的前景。研究本课题的研究方法和意义所在,并对其应用进 行深入分析与探讨。 要求: 1. 对 ipv6 技术有充分的认识和了解; 2. 了解 ipv6 技术在国内外研究的现状; 3. 分析 ipv6 技术在下一代网络通信中的意义和重要性; 4. 撰写毕业论文; 5. 参加毕业论文答辩。 开始日期 2012 年 5 月 1 号 完成日期 2012 年 8 月 30 号 指导教师签名 周大为 2012 年 5 月 1 日 西安电子科技大学网络教育 毕业论文(设计)工作计划 学习中心 深圳学习中心 专业 通信工程 学号 7011101132007 姓名 题目 ipv6 技术的分析与研究 工作进程 起止时间 工作内容 2012 年 4 月 24 日-5 月 6 日 与指导教师研讨题目内涵,对所选题目进行确认或 提出修改、调整意见。 2012 年 5 月 7 日-5 月 25 日 查阅资料,围绕题目确定并进行方案论证,撰写开 题报告 2012 年 5 月 26 日-5 月 27 日 撰写开题报告 2012 年 5 月 28 日-6 月 15 日 根据掌握的资料,撰写论文大纲,修改大纲 2012 年 6 月 16 日-7 月 3 日 撰写论文初稿 2012 年 7 月 4 日-7 月 8 日 论文中期检查 2012 年 7 月 9 日-8 月 14 日 修改论文、定稿 主要参考书目: 【1】 ipv6 技术, 王相林著, 2008 年机械工业出版社 【2】 ipv6 技术与应用 ,杨江云,髙鸿峰著, 2010 年清华大学出版社。 【3】 ipv6 原理与实践 ,伍海桑,陈茂科等著,2000 年人民邮电出版社 主要仪器设备: 1. 联网计算机 2. office 2003 办公软件 指导教师签名: 周大为 2012 年 5 月 8 日 西安电子科技大学网络教育 毕业论文(设计)开题报告评议表 姓名 卢炜 学号 7011101132007 性别 男 指导教师 周大为 报告题目 ipv6 技术的分析与研究 报告日期 2012 年 5 月 26日 报告地点 深圳学习中心 对开题报告的意见: 1. 论文难度: 偏高 适当 偏低 2论文工作量: 偏大 适当 偏小 3研究方案的可行性: 好 较好 一般 不可行 4对文献资料及题目的了解程度: 好 较好 一般 较差 5从报告中反映出的综合能力和表达能力: 好 较好 一般 较差 6对开题报告的总体评价: 好 较好 一般 较差 7是否同意论文开题报告: 同意 需要重做 (在相应的内划 ) 对开题报告的评价意见: 该生对本题目有深入的认识,准备充分,开题报告的内容和形式完全达到开 题要求; 该生对题目认识有一定深度,准备工作较充分,开题报告的内容和形式基 本符合要求; 该生对题目认识不深,准备工作不充分,未达到开题要求。 指导教师 签名 周大为 2012 年 5 月 28 日 备 注 西安电子科技大学网络教育 毕业论文(设计)中期报告评议表 学习中心(盖章): 2012 年 6 月 22 日 学 号 7011101132007 姓 名 卢炜 专 业 通信工程 指导教师 周大为 题 目 ipv6 技术的分析与研究 检查内容 检查结果 是否按工作计划进行 是 已完成工作量占总工作 量 的大小 大约 50% 已完成的任务内容 毕业论文选题,论文框架,开题报告,中期报告 遇到那些难点、如何解 决 论文架构设计,交流查阅资料 西安电子科技大学网络教育 毕业论文(设计)评审表 学习中心 深圳学习中心 专业 通信工程 学号 7011101132007 姓名 卢炜 题目 ipv6 技术的分析与研究 中期报告成绩: 论文过程成绩: 建议质量成绩 : 评 语: 指导教师签名: 年 月 日 毕业论文 评语 评语内容应包括:学生的工作态度和投入时间、精力情况;运用基本技 能获取、利用信息的情况;学生对基础知识、专业知识的掌握程度;分 析、解决问题和进行创新的能力;论文(设计)的质量情况。 对毕业设计有何意见或 建议 总体评价 良好 指导教师打分 88 教师签名 周大为 2012 年 6 月 26日 说 明: 此表由指导教师填写,一式两份,一份交学习中心,一份给学生装订入最 终论文。 中期报告得分将作为期中成绩记入总成绩。若不交中期报告或 中期报告得分为不及格的学生不得参加答辩。 组长签名: 年 月 日 答辩小组 意见 答辩小组对评定的“优秀”和“不及格”成绩需给出明确和详细的意见! 综合评审 组意见 组长签名: 年 月 日 摘 要 随着网络规模的急速发展以及 ipv4 地址空间的逐步耗尽,现有的网络面临许 多的挑战:规模问题、安全问题、qos(服务质量)、简便配置等等,这些挑战促 使人们达成一个共识:需要一个新的协议来根本解决目前 ipv4 面临的问题。 ipv6 是继 ipv4 以后的新互联网协议,也可以说是下一代互联网的协议。ipv6 协 议的新特性为下一代互联网的应用和发展提供了更加广阔的前景和完善的支持, 但是它仍然存在许多有待改进和完善的地方,而且实现从 ipv4 到 ipv6 的过渡还 需要很长时间,不同的网络结构其过渡策略也会有所不同。 本论文首先介绍了 ipv6 协议,包括 ipv6 新特性、ipv6 报文结构以及与 ipv4 的对比、ipv6 地址结构、ipv6 单播数据通信、ipv6 路由协议、安全机制等重要 技术;然后介绍了 ipv6 的过渡技术,重点介绍了 ipv6 网络之间的互通技术,即 各种隧道技术。 关键词: ipv6 路由协议 过渡技术 目录 目录 第一章 绪论 .1 1.1 研究的目的和意义 1 1.2 研究内容和方法 2 第二章 ipv6 协议研究 5 2.1 ipv6 协议基础及与 ipv4 的对比 .5 2.2 ipv6 地址体系结构 11 2.3 ipv6 单播数据通信 17 2.4 ipv6 路由协议 19 2.5 ipv6 安全机制 21 第三章 ipv6 过渡技术 23 3.1 三类过渡技术 .23 3.2 ipv6 网络之间互通技术 25 第四章 结论与展望 27 4.1 结论 .27 4.2 展望 .28 致谢 .29 参考文献 .31 第一章 绪论 1 第一章 绪论 无论在技术上还是发展速度上,实践证明 ipv4 是一个非常成功的协议,基于 ipv4 的 internet 及其应用不断的改变着我们的生活及工作方式。但是,ipv4 的 设计者在设计 ipv4 协议时是基于几十年前的网络规模而设计的,他们对于 internet 的估计和预想显得不够充分,随着网络规模的急速发展,现有的网络面 临许多的挑战:规模问题、安全问题、qos 服务质量、简便配置等等,这些挑战 促使大家达成一个共识:需要一个新的协议来根本解决目前 ipv4 面临的问题。 ipv6 是继 ipv4 以后的新的互联网协议,也可以说是下一代互联网的协议。 1.1 研究的目的和意义 ipv6 是 ietf(internet engineering task force,因特网工程工作小组) 设计的下一代互联网协议,全名是“英特网协议第六版(internet protocol version six) ”,目的是最终取代当前正在运行的因特网协议第四版,即 ipv4。 ipv4 在过去的几十年中取得了辉煌的成绩,实践证明,它是一个非常成功的 协议,它本身也经受住了 internet 从几台计算机发展到目前几亿台计算机互联 的考验。因特网走进了千家万户,完全改变了我们的生活及工作方式。 但是也是这种快速发展,出现了迫在眉睫的 ip 地址空间耗尽问题,而 ipv4 地址空间的紧缺直接限制了 ip 技术应用的进一步发展,有专家估计 2012 年 ipv4 地址将全部用完。同时由于地址分配的不均更进一步突出了地址紧缺的矛盾“因 internet 起源于美国,美国的 ipv4 地址很多,而与此形成对照的是,在欧洲和 亚洲地区,申请 ip 地址非常困难。因此,中国的体会尤为痛彻。据统计,中国 的网民到 2004 年年底已经高达 9000 多万,但中国所拥有的 ipv4 的地址还不到 5000 万,占 ipv4 全部地址的 1/100 多一点,每 26 个中国人只能分享一个地址。 与此形成鲜明对比的是:美国 2 亿多人口,拥有近 12 亿地址,占 ipv4 全部地址 的 1/4 强,平均每个美国人享有 6 个 ip 地址。整个中国的 ip 地址空间甚至都没 有美国的一些大学多。中国预测,中国的网民数量还将大幅度上升,但中国能获 得新的 ipv4 地址的机会将越来越困难,类似中国的问题很有可能不久在印度也 会出现。 由于地址的紧缺,在目前的 ipv4 网络中,nat(网络地址转换)技术得到了 普遍的应用,被认为是解决 ip 地址短缺的有效手段,但是由于 nat 破坏了 ip 的 端到端模型,且因需要额外的处理而影响网络的性能,它还阻止了端到端的网络 ipv6 技术的分析与研究 2 安全,所以它只能作为一种解决 ip 地址短缺的权益之计,而不能作为永久的解 决方案。再者新技术的应用导致 ip 地址的短缺矛盾进一步激化:pda、无限设备、 3g 移动电话甚至汽车、冰箱都需要一个全球单播地址,以连接网络。 除了地址短缺外,安全性、qos(服务质量) 、简便配置、性能提高等等要求 都是 ipv4 协议本身无法解决的,从而需要一个新的协议来根本解决目前面临的 问题,同时能够无缝的实现网络的过渡。 但总体上讲,目前国内从事 ipv6 协议研究的单位和人员并不是太多,我国对 ipv6 的研究相比较于日本、瑞典等国家还是有很大差距。 虽然 ipv6 替代 ipv4 已经是必然趋势,但是这将是一个漫长的过程。ipv6 作 为一项新的因特网协议,还有许多需要完善的地方,这对于我们网络技术研究人 员而言是一个机遇,更是一个挑战。ipv4 的研究中国没有赶上,但是这次我们赶 上了,所以我们应该投入巨大的人力物力,千万不能错失这样的好机会。 1.2研究内容和方法 1.2.1 研究内容 本论文研究内容主要有如下内容: (1)ipv6 协议的熟悉和掌握,对比研究 ipv4 与 ipv6 协议异同以及主机对 两种协议的兼容性。 (2)ipv6 单播数据通信机制的研究。 (3)ipv6 过渡技术特别是对隧道机制的研究。 (4)搭建 ipv6 的关键应用服务平台。 1.2.2 研究方法与思路 论文主要用到的技术包括: (1)linux 技术 (2)组网技术 (3)ipv4 协议 (4)ipv6 协议 (5)zebra (6)动态路由(ospfv6,ripng,bgp4+等)技术 (7)ipv6 过渡技术(gre,手动,自动,6to4,isatap 等隧道技术) (8)各种 ipv6 网络应用(www,ftp,dns,网络安全等) 论文涉及知识面较广,需要用到的网络知识很多,包括网络底层协议、网络 规划、网络组网、网络调试、路由配置、动态路由、隧道技术、网络服务器配置 与调试、网络安全、linux 系统熟练使用以及了解内核机理等等,这些都需要有 第一章 绪论 3 一定的知识积累和动手能力,也需要花费比较多时间和精力才能够游刃有余,这 些都得益于本人长期接触以及工作学习积累。由于个人能力有限,在摸索过程中 碰到许多难题,有时候往往是一个小问题也需要想尽各种办法来排查才能得出问 题所在,况且在没有现成的 ipv6 网络设备的依托条件下我转向软路由,通过在 网上查阅资料文献并通过一些测试,才论证了用 zebra 软路由也能达到实验的目 的。 采用的方法是: (1)选择了主流的支持 ipv6 协议的操作系统平台,具体是 redhatlinux(主要)和 windowsxp,在该平台上进行了一系列相关的 ipv6 基础实 验,对实验数据进行分析,通读相关的 rfc 文档,在两者间进行理论和实践的结 合。 (2)选择国外开发的支持 ipv6 的软件路由产品,在此产品上进行各种路由 协议的配置,实现多机互联的隧道、路由实验,寻找 ipv6 互联中的问题,积累 相应的经验。 (3)平台搭建好后,再在其上编译、配置搭建主流的 ipv6 应用平台。 ipv6 技术的分析与研究 4 第二章 ipv6 协议研究 5 第二章 ipv6 协议研究 2.1 ipv6协议基础及与 ipv4的对比 2.1.1 ipv6 协议新特性 (1)全新的报文结构 ipv6 使用了新的协议头格式,也就是说 ipv6 数据包的报文头是全新的。在 ipv6 中,报文头包括固定头部和扩展头部,对于一些非根本性的和可选择性的字 段被移动到了 ipv6 协议头之后的扩展协议头中,这就使得网络中的中间路由器 在处理 ipv6 协议头时,有更高的效率。 同时,ipv6 协议头和 ipv4 协议是不兼容的,因此,ipv6 取代 ipv4 协议对其 上层如 tcp(传输控制协议)和 udp(用户数据报协议) 、smtp(简单邮件传输协 议)等应用程序。这些应用程序都必须被修改以处理 ipv6 的 128 位的新的地址, 同时,因为这些地址通常是传送给 tcp 和 udp 传输协议,所以这些协议也必须修 改,以使其在 ipv4 和 ipv6 下均能正常工作。 (2)巨大的地址空间 ipv6 的地址空间非常巨大,业界常用的一个比如是说 ipv6 可以做到地球上 的每一粒沙子都有一个 ip 地址。 ipv6 的引入,一个很重要的原因在于它解决了 ip 地址缺乏的问题。ipv6 的 地址位数比 ipv4 要长得多,增长了 4 倍,达到了 128 比特,而 ipv4 只有 32 比 特。按照目前全世界人口数为 65 亿来计算,ipv4 地址的拥有量是每 3 个人能有 2 个 ipv4 地址,而世界上每个人却可以拥有 5.710 28个 ipv6 地址。同时在 ipv6 中使用前缀的概念替代了 ipv4 中网络 id 的概念。前缀表示用多少位来标识 子网。 (3)全新的地址配置方式 随着技术的进一步发展,internet 上的节点不再单纯是计算机了,将包括 pda移动电话、各种各样的终端、甚至包括冰箱、电视等家用电器,这就要求 ipv6 主机地址配置更加简化。 为了简化主机地址配置,ipv6 除了支持手工地址配置和有状态自动地址配置 (利用专用的地址分配服务器动态分配地址,比如通过 dhcp,动态主机配置协议 来统筹管理 ip 地址,主机在启动时会和 dhcp 服务器联系,以获得自己的 ip 地 址)外,还支持一种无状态地址配置技术。在无状态地址配置中,网络上的主机 能自动给自己配置 ipv6 地址,在同一链路上,所有主机可以不用人工干预就可 ipv6 技术的分析与研究 6 以进行通讯,也正是这种无状态地址自动配置技术,使得未来 ipv6 的广泛普及 成为可能。 (4)对 qos 更好的支持 ipv6 在包头中新定义了一个叫做流标签的特殊字段。ipv6 的流标签字段使得 网络中的路由器可以对属于一个流的数据包进行识别并提供特殊处理。用这个标 签,路由器可以不打开传送的内层数据包就可以识别流,这就使得即使数据包的 有效载荷已经用 ipsec 和 esp 进行了加密,仍然可以实现对 qos 的支持。 (5)内置的安全性 ipv6 协议本身就支持 ipsec,在网络层进行 ipsec 认证与加密,能提供端到 端的安全。这就为网络安全提供了一种基于标准的解决方案,提高了不同 ipv6 实现方案之间的互操作性。 (6)全新的邻居发现协议 ipv6 中的邻节点发现协议是一系列机制。该协议是 ipv6 的一个关键协议, 也是 ipv6 和 ipv4 的一个很大的不同点,它用来管理相邻节点之间的交互。该协 议用更加有效的单播和多播报文,取代了 ipv4 中的地址解释(arp) 、cimp 路由 器发现、cimp 路由器定向,并在无状态地址自动配置中起到不可或缺的作用。 (7)可扩展性 因为 ipv6 报头之后添加了扩展报头,ipv6 可以很方便地实现功能扩展。 ipv4 报头的选项字段最多可以支持 40 个字节的选项,而 ipv6 扩展报头的长度只 收到 ipv6 数据包的长度制约。 (8)移动性 由于采用了路由扩展报头和目的地址扩展报头,使得 ipv6 提供了内置的移 动性。 2.1.2 ipv6 报文结构 ipv4 数据包由两个基本组成部分:pi 包头和有效载荷。其中 ip 包头包含很 多的字段,路由器用这些信息从网络到网络转发数据包,直到最终目的地。ip 包 头中的字段标识发送方、接受方和传输协议,并定义许多其他的参数。而有效载 荷表示发送方传给接受方的信息(数据) 。 其实 ipv6 网络模型和 ipv4 的网络模型是一致的。主要包括两个角色:主机 和路由器。数据在网络中传输的过程和 ipv4 网络是类似的:即是路由器利用包 头中的信息将数据包从发送方一跳一跳地转发到接收方,如图 2.1 所示。 第二章 ipv6 协议研究 7 图 2.1 ipv6 网络模型 主机 a 发数据包给主机 b,过程如下:主机 a 发送一个数据包到路由器 a,数据 包的源地址是主机 a,目的地址是主机 b,路由器 a 读取该数据包头中的相关内 容,然后查找自己的路由表,决定下一条地址,并吧数据包转发出去,之后中间 的每台路由器都执行同样的操作,最后数据包到达主机 b。 ipv6 数据包由一个 ipv6 报文、多个扩展报头和一个上层协议数据单元组成。 ipv6 数据包由三部分构成,即:ipv6 报头(ipv6 headre) 、扩展报头 (extension header)以及上层协议数据单元( upper layer protocol datd unit) 。 (一)ipv6 基本报头 每一个 ipv6 数据包都必须包含 ipv6 报头(也称之为基本报头或固定报头) 。 固定报头包含 8 个字段,总长度固定为 40 个字节,ipv6 的报头结构最早是在 rfc1883 中给出详细的描述,但是现在该规范以及被 rfc2460 所替代,在新的技 术规范中对 ipv6 做了许多改动。 ipv4 报头包含了 14 个字段,并且报头长度是不 固定的,这些会消耗掉中间路由器的大量 cpu 资源,它在 rfc791 中描述。ipv6 和 ipv4 二者的报文头是很大的不同的, ipv6 报文头由以下 8 部分组成: (1)版本号(version) 版本号长度是 4 位,其值是 6,这个字段和 ipv4 版本号域基本是一致的, 只是 ipv4 的值是 4。该字段规定了 ip 协议的版本。 (2)通信流类别(traffic class,8 位) 通信流类别和 ipv4 中的服务类型功能相类似,它表示的是 ipv6 数据包的类 或者优先级。但是在 rfc2460 中并没有定义通信流类别字段的值。 (3)流标签(flow lable,20 位) 在 ipv4 中并没有流标签,在 ipv4 中要定义一个流需要 5 元组:源 ip、目 的 ip,上层协议(udp 或 tcp) ,源端口以及目的端口。流标签是 ipv6 中新增的 字段,它用来表示这个数据包属于源节点和目标节点之间的一个特定数据包序列, 它还需要由 ipv6 的中间路由器进行特殊处理。目前关于流标签字段的详细使用 细节,还没有定义,所以在这一块是大有作为的。 (4)有效载荷长度(payload length,16 位) ipv6 技术的分析与研究 8 有效载荷长度是指扩展报头和上层协议数据单元的长度,单位是字节。该字 段有 16 位,即最多能表示 65535 字节的有效载荷,如果有效载荷长度超过这个 数值,则该字段会置零,然后由后面跟着的逐跳选项扩展报头中的超大有效载荷 选项来表示。在 ipv4 中定义了总长度字段来表示 ip 数据包的总长度。 (5)下一个报头(next header,8 位) 如果 ipv6 报头后面存在有扩展报头的话,则该字段定义第一个扩展报头的 类型,否则定义上层协议数据单元中的协议类型。此字段相对于 ipv4 中的协议 字段(portool,8 位) 。 (6)跳限制(hop limit,8 位) 该字段类似于 ipv4 中的生存时间字段(time to live,8 位) ,它定义了 ip 数据包所能经过的最大人跳数。ip 数据包每经过一个路由器,则路由器会修改数 值,使之减 1,当路由器接收到的数据包的数值为 0 时,则会丢弃此包。 (7)源地址(source address,128) 表示的是发送方的 ipv6 地址,地址空间由在 ipv4 中定义的 32 位长度扩大 到 128 位长度,是 ipv6 继 ipv4 最重要的扩展。 (8)目的地址(destination address,128) 表示的是接受方的 ipv6 地址,在 ipv4 中此字段也有定义,只是长度为 32 位。 以上是 ipv6 基本报头的 8 个组成部分,与 ipv4 的基本报头内容相比,减少 了以下几项内容: (1)报头长度 ihl(internet header length,4 位):在 ipv4 中,报头长 度指的是有效载荷之前的 4 字节块的数量,也就是数据包头的总长度,包括选项 字段部分,这样,ipv4 报头的长度是不固定的,而 ipv6 不使用选项字段,而是 利用扩展字段,基本报头长度固定为 40 个字节,并且对扩展字段的处理也不同 于 ipv4 对选项字段的处理。 (2)标识(identification,16 位) 、标志(flags,3 位) 、分段偏移量 (fragmentoffset,13 位):由于 ipv6 处理分段有所不同,所以标识、标志和分 段偏移量等三个和分段有关系的字段也被去掉。在 ipv6 网络中,中间路由器不 再处理分段,而只在产生数据包的源节点处理分段,这样设计的意义是可以省去 中间路由器因为需要处理分段而耗费的大量 cpu 资源。 (3)报头校验和(header checksum,16 位):ipv6 设计者认为在第 2 层数 据链路层、第 4 层传输层的都已经有校验和,第 3 层网络层的校验和位冗余的, 并且还会大量消耗中间路由器的资源,所以就吧此项去掉了。 (4)选项(options,长度不固定) 、填充(padding):由于 ipv6 中选项是 交给扩展报头处理,因此也去掉了选项字段和填充字段这样可以简化报头,也减 第二章 ipv6 协议研究 9 少了中间路由器的资源消耗。 (二)扩展报头 ipv6 扩展报头是跟在基本报头之后的可选报头,ipv6 信息包中,可选 的 internet 层被编码在不同的报头中,同时这些报头被放在 ipv6 报头和上层报 头之间。ipv6 数据包中可以有一个或多个扩展报头,也可以没有扩展报头,这些 扩展报头的长度可以是不一样的,并且没有最大长度的限制。ipv6 将一些 ip 层 的可选功能实现在上层封装和固定 ipv6 头部之间的扩展头部中,增强了 ipv6 的 功能,因为在数据包进行转发时,每一个中间路由器不需要检查或处理每一个到 达 ipv6 报头的目的地址域所确定的节点或者是在多点传送情况下的所有节点中 的一个节点,这样大大提高了路由器处理数据包的速度,也提高了其转发性能。 如果数据包中包括多个扩展报头,则每一个扩展报头都是通过前一个报头中 的下一个报头字段值来确定的,并且最后一个扩展报头的下一个报头字段指明的 是上层协议。这一点我们可以从图 2.2 来看: 图 2.2 ipv6 扩展报头 扩展报头必须严格按照他们在信息包中出现的顺序进行处理,例如,信息包 的接受者不能对整个信息包进行扫描,找一个特殊种类的扩展报头而且优先于它 前面的报头来处理这个报头。 扩展报头中的逐跳选项报头是一个例外,她所携带的信息必须被信息包传送 路径上所经过的每一个节点进行检查和处理,并且它必须紧跟在 ipv6 报头后面。 在处理一个报头的时候,节点必须处理下一个报头。如果当前报头的下一个 报头域的值不能被节点识别,则该节点应该丢弃该信息包,同时要给发送者返回 一个 icmp(internet control message protocol,internet 控制报文协议)参 数问题报文,在此 icmp 报文的指针域给出原始信息包中不可识别值的偏移量。 下面是一些常用的扩展报头: (1)逐跳选项报头(hop-by-hop options header,值为 0) (2)目标选项报头(destination options header,值为 60) (3)路由报头(routing header,值为 43) (4)分段报头(fragent header,值为 44) (5)认证报头(authentication header,值为 51) ipv6 技术的分析与研究 10 (6)封装安全有效载荷报头(encapsulating security payload header,值 为 50) 以上扩展报头中的前四个可以参考 rfc2460,后面两个可以分别参考 rfc2402 和 rfc2406。当一个数据包中有多个扩展报头时,扩展报头的排列次序 是按照一定的原则来排列的,下面是 rfc2460 所建议的扩展报头的排列次序: (1)ipv6 报头 (2)逐跳选项报头 (3)目标选项报头(注 1) (4)路由报头 (5)分段报头 (6)认证报头(注 2) (7)封装安全有效载荷报头(注 2) (8)目标选项报头(注 3) 注 1:由 ipv6 数据包目的地址的第一个地址或当存在路由报头时,路由报头 所指的中间目标地址进行处理 注 2:关于认证报头和封装安全有效载荷报头的相对次序的补充建议可参照 rfc2406 注 3:只能由数据包的最终目标进行处理 每一个扩展报头最多只能出现一次,但目标选项报头例外,它最多可以出现 两次,一次在路由报头之前,另一次在上层报头之前。 如果上层报头是另一个 ipv6 报头(处于隧道方式或被封装于 ipv6 中) ,则 它后面还可以跟它自己的扩展报头,这些扩展报头之间也同样要按照建设的次序 来排列。 (三)上层协议数据单元 上层传输协议为了能够和 ipv6 进行连续,必须要进行相应的修改,才能够 利用 ipv6 网络基础的设置,涉及问题包括如下几个方面: 上层校验问题 最大报文生存时间问题 最大上层协议载荷大小问题 对携带路由头的数据包的回应问题 校验和问题:首先在 ipv4 中,udp 的校验和是可选的,但是在 ipv6 中则是 必须的;当前在 ipv4 中,tcp、dup 都将包括 ipv4 源地址字段和目标地址字段等 组成的伪报头加进了它们的校验和计算中,而因为 ipv6 地址相对于 ipv4 已经变 化,所以必须对 tcp、udp 和 icmp 的通信流做改动才可以重新计算。 最大报文生存时间问题:由于 ipv6 去掉“time to live”(由 hop limit 来 第二章 ipv6 协议研究 11 代替),所以 ipv6 不能再为上层提供控制数据包在网上的生存期的服务。任何 有 internet 层来限制数据包的生存时间的协议要自己提供这样的机制来探测和 丢弃旧的数据包。 最大上层协议载荷大小问题:此也可以说是最大报文段长度,它等于数据最 大包长度减去 ip 报头和 tcp/edp 报头,所以必须要考虑 ipv6 报头比 ipv4 报头 长的问题。 对携带路由头的数据包的回应问题:rfc2460 规定:当回应一个带有路由报 头的数据包的时候,只有收到的数据包的源地址和路由报头的完整性和真实性得 到确认以后,才可以回应通过逆序收到的路由报头而产生的路由报头。这一点规 定主要是基于安全性的考虑。 2.2 ipv6地址体系结构 最新的 ipv6 地址结构体系在 rfc3513(ipv6 address architecture)中定 义,该体系取消了早期公布的 rfc2373,给出了 ipv6 地址模型,ipv6 地址的文 本表示,ipv6 单播地址、任播地址、多播地址的定义,ipv6 节点所需要的地址 以及 eui-64 接口标识的创建方法。 ipv6 相比 ipv4 最大的变化在于地址长度:ipv6 的地址长度是 128 位,而 ipv4 的地址长度只有 32 位。这样 ipv6 就可以有 2 128 个地址,大约的数字是 3.41028 个地址,按找世界人口 65 亿来计算,则每个人都可以拥有 5.71028 个 ipv6 地址,这样的地址定义基本可以一劳永逸的解决地址短缺的问题。 2.2.1 ipv6 地址的文本表示方式 有三种常规格式来表示 ipv6 地址。 (1)首选的格式 ipv4 的 32 位地址是用点分十进制法来表示的,例如:2。而 ipv6 的 128 位地址是用冒号十六进制表示方法来表示的,即是吧 128 位划分为 8 段,每段长度是 16 位,然后每段再转化为用 4 位十六进制来表示的数,并用冒 号相互隔开,例如:3ffe:3240:0000:0000:ffff:0000:001e:0010 (2)压缩格式 但是,经常出现 ipv6 地址包含有一长串的零;比如像上面的 ipv6 地址表 示,这样用首选格式书写就很不方便,为此又定义了一种压缩的格式,我们可以 把以上地址表示为:3ffe:3240:ffff:0:1e:10。 这里有如下几个规则: 当一个或多个连续的 16 比特段都为 0 字符时,可用:(两冒号)来表 示,但是一个 ipv6 地址中只允许最大出现一个: ipv6 技术的分析与研究 12 可将不必要的 0 去掉,即是可以把一个段中前面的零去掉,比如把 001e 写成 1e,0000 写成 0 即可。 不能把有效的零去掉,例如不能把 0010 写成 1 而应该写成 10。 (3)内嵌 ipv4 地址的 ipv6 地址 在 ipv4 和 ipv6 的过渡机制中经常会用到双栈主机,这些主机的 ipv6 地址 有特殊的表示方法:x:x:x:x:x:x:9。这种方法中,ipv6 地址的 第一部分使用十六进制表示,而后一部分即是十进制的 ipv4 地址。下面是例子: 0:0:0:0:0:0:9。 (ipv4 兼容 ipv6 地址) ,写成压缩格式是: 9 0:0:0:0:0:ffff:9 (ipv4 映射 ipv6 地址) ,写成压缩格式 是:ffff:9 2.2.2 ipv6 地址前缀的文本表示 地址前缀或格式前缀(foemat prefix,fp) ,也属于 128 位地址空间范围之 中,是地址的最前面的那段数字,一般用来表示路由或子网的标识。我们可以把 它看作是类似于 ipv4 中的网络 id。它的表示方法与 ipv4 中的 cidr 表示方法一 样,用“地址/前缀长度”来表示,例如,对 60 位的前缀 135e00000000ad2(十 六进制) ,正确的表示方法有: 135e:0000:0000:ad20:0000:0000:0000/60 135e:ad20:0:0:0:0/60 135e:0:0:ad20:/60 每个前缀必须是完整的 128 位地址格式+“/”+前缀位数的格式。 当我们定义一个节点时,一般要指定这个节点的地址,还要指明它的子网前 缀: 节点地址:135e:0:0:ad20:12:34:56:ab 节点所处子网前缀:135e:0:0:ad20:;/60 在 rfc2373 规范中定义可以简短的把三者合起来写为: 135e:0:0:ad20:12:34:56:ab/60 即可。 在 rfc2373 中定义的 ipv6 地址空间分配情况表如图 2.3 所示。 第二章 ipv6 协议研究 13 表 2.3 ipv6 地址空间分配情况表 从上表可以看出,保留地址(fp=0000 0000)占地址空间的比例是 1/256, 它用作非指定地址,回送地址和嵌入 ipv4 地址的 ipv6 地址。其他的保留地址是 nsap 地址(fp=0000 001) 。 除了组播地址(fp=1111 1111)外,前缀从 001 到 111 的都需要具有 eui-64 格式的 64 位接口标识。 未分配地址占全部地址空间的 85%左右,保留为将来使用。 ipv6 技术的分析与研究 14 2.2.3 地址分类 ipv6 中地址分类包括以下三类:单播(unieast) ,多播(multieast) ,任播 (anveast) 。ipv6 取消了 ipv4 中的广播(bordaacst)类型,它的功能由多播来 实现,并且增加了一种新的地址形式:任播。 单播地址:和 ipv4 中的单播概念是类似的,寻址到单播地址的数据包最终 会被发送到一个唯一的接口。 多播地址:又称为组播地址,是指一个源节点发送的单个数据包能被特定的 多个目的节点接受到。 任播地址:这是 ipv6 中特有的地址类型,它用来标识一组网络接口(通常 属于不同的节点) 。目的地址是任播地址的数据包将被发送给其中路由意义上最 近的一个网络接口。 (1)单播地址 ipv6 单播地址一般可分为可聚合全球单播地址(globalaggregatable global unicast address) 、链路本地地址( link-local address) 、站点本地地 址(site-local address) 、嵌入 ipv4 的 ipv6 地址等几类。 可聚合全球单播地址(globalaggregatable global unicast address) 可聚合全球单播地址就是 ipv6 的公网地址。rfc2374(an ip aggergatable global unieast addressfomr)定义了每个可聚合全球单播地址有三个部分组成: 提供商分配的前缀(public topology);提供商分配给组织机构的前缀最少 是 48 位,并且这个前缀也是提供商自己前缀的一部分。 站点拓补(site topology):组织机构利用所收到的前缀的 49-64 位(共 16 位)来将网络分成最多 65535 个子网。 接口 id(interface identifier):表示的是 ipv6 地址的低 64 位,一般获 得接口 id 的最常用的方法是使用 eui-64 地址。 设计这样的地址格式是为了能够同时支持基于当前供应商的聚焦和支持交换 局(exchanges)的新的聚集类型,从而能有高效的路由聚焦。站点可以选择连 接到两种类型中的任何一种聚焦点上。如图 2.4 所示: 第二章 ipv6 协议研究 15 图 2.4 可聚合全球单播地址 其中,fp 固定为 001,用于可聚合全球单播地址的格式前缀:tlad(top- level aggergation identifier)是顶级聚合标识符:res(reseversd)保留以 后使用:nlaid(next-levelaggregation identifier)为下一级聚合标识符: slaid(site-leve-aggergation identifier)为站点级聚合标识符:interface id 为接口标识符。 现在常用的可聚合全球单播地址有如下: 2001:/16 用于 ipv6 internet 2002: /16 用于 6to4 3eff:/16 用于 6bone 而 2003:/16 至 3ffd:/16 未指定。 链路本地地址 链路本地地址可自动生成,从而实现 ipv6 的即插即用特性。链路本地地址 是 ipv6 中的应用范围受限制的地址类型,只能在连接到同一本地链路的节点之 间使用,路由器不能转发任何源地址或目的地址包含链路本地地址的数据包到其 他链路上去,但它也是一种非常重要的地址,在邻居发现,地址自动配置或无路 由等 ipv6 机制中都会用到。 链路本地地址有固定格式,它由一个固定的前缀 fe80:/64 和接口 id 两部 分组成,如图 2.5 所示: 图 2.5 链路本地地址 当一个节点启动 ipv6 协议栈时,一个节点的每个接口会自动配置一个链路 本地地址,这种机制使得连接到同一个链路的 ipv6 节点不需要做任何配置就可 以进行通讯了,在自动配置链路本地地址的时候,interafeeid 也是使用 eui-64 地址。 eui-64 地址是通过修改链路层地址(在以太网中即是 mac 地址)来生成的, 这就能保证了接口 di 的唯一性。由 48 位 mac 修改为 64 位 eui-64 地址方法如下: 在第 24 位处(介于厂商 10 和厂商编号 id 之间)加入两个字节:offx,oxef,同 时把第一个字节的倒数第二位由全局位(0)改为本地位(1)即可。例如在我的 实验环境里,我的 mac 地址是:00:0d:88:47:0c:82,它的链路本地地址是: fe80:20d:88ff:fe47:c82/64 本地站点地址 本地站点地址是另一种应用范围受限的地址,它也有固定的前缀: ipv6 技术的分析与研究 16 fec0:/48。它有些类似于 ipv4 的私有地址,但仅仅能在一个站点内使用,路由 器不能将具有站点本地源或目的地址的数据包转发到站外去。本地站点地址不能 自动生成,这和链路本地地址不同,它的地址格式如图 2.6 所示: 图 2.6 本地站点地址 嵌入 ipv4 地址的几类 ipv6 地址 1. ipv4 兼容地址(ipv4-compatible ipv6 address):格式是: :a.b.c.d(其中 a.b.c.d 是以点分十进制表示的 ipv4 地址) 。它用于具有 ipv4 和 ipv6 两种协议的节点使用 ipv6 进行通信,在 ipv6 过渡技术中有一种机制: 主机和路由器利用动态隧道在 ipv4 的路由体系中传送 ipv6 数据包,此时的 ipv6 节点使用的就是此类型的 ipv6 地址。 2. ipv4 映射地址(ipv4-mapped ipv6 address):格式是: :ffff:a:b:c:d,它用来表示只支持 ipv4 而不支持 ipv6 的节点的 ipv6 地址。 在 nat-pt 过渡技术中会大量使用此种地址。 3. 6to4 地址:它的格式是:2002.a.b.c.d:xxxx:xxxx:xxxx:xxxx:xxxx,其 中 a.b.c.d 是分配给路由器的 ipv4 地址,用户不能改变,这个地址可以用来查 找 6to4 隧道的其他终点。 4. isatap 地址:格式是:前缀: 0:5efe:a.b.c.d/64,即后 64 位必须是 0:5efe:a.b.c.d 的格式。 5. 回送地址(loopback address):0:0:0:0:0:0:1 或:1 即位回送地址。 它被用于节点发送 ipv6 数据包给自己的情况。在发送数据包被另外的节点的时 候,数据包的源地址和目的地址都不能是回送地址,这样的数据包也永远不会被 ipv6 路由器转发。回送地址不可以分配给任何物理接口,可以认为是分配给了一 个虚拟的接口,一般是 lo(loopback interface)接口,在实践中我们经常使用 这个地址来测试内核是否正常工作。 (2)多播地址 ipv6 组播地址也用特定的前缀来表示,它的最高前 8 位为 1。格式如下: 图 2.7 ipv6 组播地址 标志(flags)前三位必须是 0,目前只使用了最后的一位,当该位为 0,表 第二章 ipv6 协议研究 17 示的是由 iana 所分配的一个永久地址,当为 1 时,表示是一个临时组播地址。 范围(scope)用来限制组播数据在网络中的范围。在 rfc2373 中这样定义 它的含义: 0(0000):预留 1(0001):节点本地范围 2(0010):链路本地范围 5(0101):站点本地范围 8(1000):组织本地范围 e(1110):全球范围 f(1111):预留 除了以上所列之外,其余的都是未分配的。 在重复地址检测中,还会用到一种特殊的组播地址,叫做 sclicited-node address,可翻译为被请求节点组播地址,它的地址是:ff02:1:ff00:0/104 加 上单播地址的最后 24 位组成。 需要注意的是:多播地址不可以作为 ipv6 数据包的源地址,也不会出现在 任何的路由报头中。 (3)任播地址 任播地址从单播地址空间进行分配,使用单播地址的任何格式,在语法上, 二者无任何差别。当一个单播地址被分配给多个接口时,则就转换为任播地址。 它适用于“one-to-one-of-many”的通讯场合。接收方只需是一组接口中的一个 即可,这能使移动用户上网不受地理位置太多的限制,能接入离用户最近的一个 接收站。被分配具有任播地址的节点必须得到明确的配置,从而能知道它是一个 任播地址。目前,任播地址只能作为目标地址,且仅分配给路由器。 2.3 ipv6单播数据通信 2.3.1 ipv6 单播数据转发概述 ipv6 单播数据通信和 ipv4 是一致的,就是源节点发送的数据包在传输的过 程中经过的中间路由器会根据数据包所包含的目的地址查找相关的路由表来决定 下一跳地址和发送接口以进行转发。所以,在三层上,路由表仍然是最关键的数 据结构。但是三层对等通信还必须依赖于二层所提供的服务,因此,ipv6 单播数 据通信必须要解决根据三层地址如何来确定数据包应该发往哪个二层邻居的问题, 即是三层的 ip 地址与二层 mac 地址的对应问题,在 ipv4 中是通过 arp(address resolution protocol,地址解析协议)技术实现的,在 ipv6 中,则是通过邻居 缓存的
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 高中原电池课件
- 高中doing课件教学课件
- 高一知识培训课件
- 山地土地租赁合同范本(山地生态旅游项目合作开发)
- 知识产权评估与交易全权委托合作协议书
- 金融信息行业用工合同及商业秘密保护协议
- 宫颈糜烂护理知识细则
- 心理学在安全生产中的应用
- 养殖场水质监测指南
- 如何引导初高中学生建立正确的人生规划
- 脚手架施工方案
- 第一单元 主题案例二 学习家庭园艺技巧-高中劳动与综合实践单元教学设计
- 2025年甘肃省工会系统招聘工会工作者183人考试参考试题及答案解析
- 2025年金华东阳市人民医院公开招聘编外人员6人考试参考试题及答案解析
- 高速服务区安全知识培训课件
- 2025贵州毕节黔西市面向社会招聘城市社区工作者33人2025-08-笔试模拟试题及答案解析
- 幼儿园学前教育法测试题及答案2025
- 2025江苏宿迁沭阳县司法局招聘人民调解员1人备考试题及答案解析
- 白内障手术培训课件
- 机关事业单位驾驶员技师试卷(附答案)
- 民族宗教知识课件
评论
0/150
提交评论