您好,欢迎访问三七文档
当前位置:首页 > 电子/通信 > 综合/其它 > IPv6协议详解(一)
IPv6协议详解1.1IPv6概述由于很多原因促使IPv6的设计与实现,首先也是最重要的原因,因特网协议版本4(IPv4)地址方案受到了其32比特地址长度的限制,这给internet的长期发展带来了问题,而且,部分IPv4地址方案(如D类和E类)被保留作为特殊用途,这也减少了可用的IPv4全球唯一单播地址的数目。又因为在各个地区或大洲internet发展的速度不同,因此分配置IPv4地址也不均衡。全球唯一单播IPv4地址的可用数量已经不足以为每一个即将出现的新设备分配一个不同的IP地址了,IP被市场认为是融合不同应用层面(数据、语音、视频)的公共承载者。然而,除了当前在因特网上互连的计算机,这些新设备也需要很鑫的IP地址来互连各种IP设备仪器。尽管采用了如无类间路由选择(CIDR)和网络地址转换(NAT)等机制,全球因特网路由选择表仍然巨大而且在持续增长,因此,一些研究预计在2011年前IPv4地址空间将耗尽。在这种情况下,促使因特网工程工作组(IETF)达成一个共识,设计实现一个新的IP协议来替代IPv4,IPv6视为一种解决IPv4地址空间耗尽的潜在的方案,虽然在万维网和商业因特网的早期,开发了NAT来解决这个紧迫问题,但因为其破坏因特网的端到端模型的。在1993年发布了提案征求(RFC1550),以下3个提案被详细研究:因特网公共结构(CATNIP),提议用网络业务接入点(NSAP)地址整合CLNP、IP和IPX协议(在RFC1707中定义)增强的简单因特网协议(SIPP),提议将IP地址长度增加到64比特,改进IP包头(RFC1752中定义)CLNP编址网络上的TCP/UDP(TUBA),建议用无连接网络协议(CLNP)代替IP,TCP/UDP和其他上层协议运行在CLNP之上(RFC1347中定义)。推荐的提案是SIPP,地址长度为128比特,SIPP的主要作者是SteveDeering。IANA为这个协议分配的版本号是6,1993年一个叫下一代IP(IPng)的工作组在IETF成立,刚好在万维网导致因特网流量爆炸之前,然而,这个IPv4的问题在万维网宾客之前存在。随后,在1995年末发布了第一个规范(RFC1883),2001年IPng工作组更名为IPv6。如下图所示IPv6的起始和发展。在1996年,因特网上建立了一个IPv6试验床,叫做IPv6骨干(6bone)。6bone主要混合使用了具有IPv6beta版实现的CiscoIOS软件的路由器和其他基于UNIX平台的路由器软件,IPv6地址空间中前缀3ffe::/16被分配了6bone的参与者,在1997胩,最初的尝试是按照基于提供商的IPv6地址格式划分IPv6地址空间。一年后,第一个IPv6交换局(称为6TAP)在芝加哥STARTAP部署。在1999年,区域因特网注册机构(RIR)开始用IPv6地址空间2001::/16分配运营的IPv6前缀。在同一年,一个由主要的因特网提供商和研究与教育网络组成的世界范围的联盟——IPv6论坛(IPv6Forum)成立,目的是为了推进IPv6市场,促进提供商之间合作。在2000年,许多提供商开始在他们的主流产品上捆绑IPv6。INIA应IPng工作组的要求在1995年分配版本6给IPng协议,那么IPv5呢,IPv5是一个试验性的资源预留协议,被称为因特网流协议(ST),目的是提供服务质量(Qos)。它能支持多媒体在因特网上实时传输。它由两个协议组成——用作数据传输的ST协议和流控制协议(SCMP),IPv5又称为ST2,记录在RFC1819和RFC1190中。1.2IPv6特点IPv6具有以下特点:128比特地址方案,为将来数十年提供了足够的IP地址巨大的地址空间为数十亿设备,如PDA、蜂窝设备和802.11系统,提供了全球唯一址。多等级层次有助于路由聚合,提高了路由选择到因特网的效率和可扩展性使具有严格路由聚合的多点接入成为可能自动配置过程允许IPv6网络中的节点配置它们自己的IPv6地址重新编址机制使得IPv6提供商之间的转换对最终用户是透明的ARP广播被本地链路的多播替代IPv6的包头比IPv4的包头更有效率,数据字段更少,支持了包头的校验和游标记字段可以提供流量区分新的扩展包头替代了IPv4包头的选项字段,并且提供了更多的灵活性IPv6被设计为比IPv4协议能更有效地处理移动性和安全机制为IPv6设计了许多过渡机制,允许从IPv4网络平稳地向IPv6网络过渡。IPv4的地址长度为32比特,可编址的节点数是4294967296(232),约3个人有2个IPv4地址(按世界人口总数为60亿计算)。IPv6的地址长度为128位,这就意味着有3.4×1038个地址,允许世界上每个2约有5.7×1028个IPv6地址。IPv6使得几乎每种设备都有一个全球的、可达的地址:计算机、IP电话、IP传真、TV机项盒、照相机、传呼机、无线PDA、802.11设备、蜂窝电话、家庭网络和汽车等等。在IPv6这个较大的地址空间可以使用多层等级结构,如下图所示,每一台都有助于聚合IP地址空间,增强地址分配功能。提供商和组织机构可以有层叠的等级结构,管理其所辖范围内空间的分配。较大的IPv6地址空间足以给ISP和组织机构分配大块的地址,给组织机构的整个网络一个足够大的前缀,能够使它只使用一个前缀。而且ISP可以把它所有客户的前缀,而且,ISP可以把它所有客户的前缀路由聚合一个前缀并发布给IPv6因特网。如下图所示,ISPB向IPv6因特网公告它能够路由网络2001:420::/35,这个网络包含分配给客户B3的IPv6空间和客户B10的IPv6空间。ISPA向IPv6网络公告它能够路由网络2001:410::/35,包括了A1和A2用户网络。这些路由聚合促进了高效的和可扩展的路由选择。使用IPv6拥有很多的地址空间,能够为一个组织同时使用多们前缀。一个连接到几个ISP的组织得到这些ISPIPv6地址空间的部分前缀,这允许不破坏全球路由表而实现多点接入,目前这在IPv4中是不可能的。如下图所示,多点接入的客户连接到ISPA和ISPB,分别为它们分配了网络2001:420:b3::/48和2001:410:a1::/48。ISPA和ISPB向IPv6因特网公告它们的/35前缀。用IPv4进行多点接入显然是可以的,但是它对全球因特网路由表有影响,因为相同的网络前缀可能被不同的自治系统(AS)公告出去。自动配置是IPv6带来的新功能,由于具有比较大的地址空间,IPv6被设计成能够在保持全球唯一性的同时自动配置设备上的地址,如下图所示,一个在相同本地链路上的IPv6路由器发送网络类型信息,本地链路上的所有IPv6主机监听这个信息,然后自己配置它们的IPv6地址和默认路由器,自动配置是一种机制,每一个IPv6主机和服务器将链路层地址以EUI-64的格式附加在子网上公告的全体唯一单播IPv6前缀后面。在IPv4网络中,使用第2层MAC地址的ARP广播对网络而言效率低下,每一次广播请求送往本地链路,即使只有一两个节点与此有关,也会导致在此链路上的每台计算机至少产生一个中断。在某种情况下,广播能完全中止整个网络,这就是广播风暴。如下图所示IPv6网络中不使用ARP广播,用多播代替,如下图所示。通过不同的功能使用不同的和特殊的多播组,把广播请求发布到尽可能少的计算机,从而多播有效地利用了网络。IPv6的数据包头比IPv4的数据包头简单,IPv4包头的6个字段在IPv6包头中被去掉了,IPv4包头加上选项和填充字段有14个字段。IPv6字段有8个字段,基本的IPv6包头大小为40个8bit字节。IPv4包头不带选项和填充字段是20个8bit字节。基本的IPv6包头长度固定,IPv4包头在使用选项字段时可以是变长的。较少的IPv6包头字段和固定的长度意味着路由器转发IPv6数据耗费较少的CPU周期,这直接有益于网络性能。对于IPv6,移动性是协议内置的而不像IPv4那样是一个附加的新功能,这意味着任何IPv6节点在需要时都能够使用移动IP,移动IPv6使用下列IPv6扩展包头。路由选择扩展包头,为注册使用目的地址扩展包头,用于在移动节点和通信节点间传输数据报1.3IPv6报文结构IPv6数据报包括一个主首部和0或多个扩展首部。IPv6数据报的整体结构如下图所示。1.3.1IPv6报文首部每一个数据报都必须有IPv6主首部,它包含寻址和控制信息,这些信息用来管理数据报的处理和选路,如下图所示。版本:长度为4比特,标识了用于产生数据报的IP版本号,其使用与IPv4的使用相同,但值为6(二进制是0110)流量类型:长度为1字节,8比特,该字段取代了IPv4首部的服务类型(TOS)字段,其使用方法与TOS字段的初始定义(优先级分为D、T和R比特)不同。它使用RFC2474中定义的新的区分服务(DS)方法,该文档实际说明了IPv4和IPv6中的服务质量(Qos)技术。端节点通过这个字段生成各种类别和优先级的流量,中间节点根据每个流量类别来转发分组,默认情况下,源节点会将流量类别字段设置为0,但不管开始是否将其设置为0,在通往目标节点的途中,这个字段都可能会被修改,在RFC2474和RFC3168中定义。流标签:长度为20比特,这个字段是为了给实时数据报交付和Qos特性提供更多的支持,FRC2460定义了流的概念,从一个源设备到一个或多个目的设备的一系列数据报,唯一的流标签用来标记某个特定流中的所有数据报,使源到目的地的路由器对它们进行相同的处理,这样能够保证流中数据报交付的一致性,例如,一个视频流通过IP互联网络发送,包含流的数据报用流标签标识从而保证交付的低时延,并不是所有的设备和路由器都支持流标签,对源设备,该字段是可选的,并且该字段处于实验阶段,可能会随时间进行改进。载荷长度:长度为2字节,该字段代替了IPv4首部中的总长度字段,但作用不同,该字段只包括载荷的字节数,而不是整个数据报的长度。但是,如果包含扩展首部时,其长度也包含在内,简言之,该字段描述的是整个数据报的长度减去40字节的主首部。下一首部:长度1字节,该字段代替了IPv4中的协议字段并有两个用途,当数据有扩展首部时,该字段指明第一个扩展首部的标识,即数据报下一个首部,如果数据报只包含主首部而没有扩展首部,其作用和取值与IPv4的协议字段相同,尽管IPv6版的通用协议用了新数值编号。跳数限制:长度1字节,代替了IPv4首部中的生存时间(TTL)字段,该名字更好地反映了TTL在现代网络中的用途(因为TTL实际上用于记录跳数,不是时间)源地址:长度16字节,数据报源的128比特IP地址。目的地址:长度16字节,数据报目的接收方的128比特IP地址:下图采集到的IPv6报文,如下图所示:1.3.2IPv6下一首部字段下一首部字段是IPv6数据报格式中最为重要的增加之一,当IPv6数据报使用扩展首部时,该字段包含第一个扩展首部的标识,该扩展首部再用它自己的一下个首部字段指向下一个首部,以此类推,而最后的扩展首部则引用被封装的高层协议。因为高层协议的首部位于IPv6数据字段的开头,对于接收数据报的设备而言,它仍像是“下一个首部”。下表为IPv6中下一个首部字段的常用值。值(十六进制)值(十进制)协议/扩展首部000逐跳选项扩展首部011互联网控制报文协议(ICMPv4)022互联网组管理协议版本4(IGMPv4)044IP-in-IP封装066传输控制协议(TCP)088外部网关协议(EGP)1117用户数据报协议(UDP)2941IPv62B43选路扩展首部2C44分片扩展首部2E46资源预留协议(RSVP)3250封装安全性载荷扩展首部3351鉴别首部(AH)扩展首部3A58ICMPv63B59无下一个首部3C60目的地选项扩展首部下图采集到的IPv6报文,如下图所示:1.3.3IPv6数据报扩展首部在IPv6数据报必备的主首部后面,可以有一个或多个扩展首部位于被封
本文标题:IPv6协议详解(一)
链接地址:https://www.777doc.com/doc-4459067 .html