购买
下载掌阅APP,畅读海量书库
立即打开
畅读海量书库
扫码下载掌阅APP

2.2 下一代互联网关键技术介绍

2.2.1 IPv6协议及主要优点

IPv6是Internet Protocol Version 6 [1] 的缩写,被称为下一代互联网协议,它是由IETF设计的用来替代现行的IPv4协议的一种新的IP协议。一般而言,IPv6并不与IPv4兼容,但是它与其他一些辅助性的协议则是兼容的 [2] ,如TCP、UDP、OSPF、BGP、DNS等,有时也要求做一些小的改动。不过,为了实现IPv6,实际上还是需要开发另外一套协议栈的。

IPv6设计的主要目标包括:

(1)即使在不能有效分配地址空间的情况下,也能支持数十亿的主机;

(2)减少路由表的大小;

(3)简化协议,使得路由器能够更快地处理包;

(4)提供比IPv4更好的安全性;

(5)更多地关注服务类型,特别是实时数据;

(6)支持Multicast;

(7)支持移动功能;

(8)协议具有很好的可扩展性;

(9)增强安全性;

(10)在一段时间内,允许IPv4与IPv6共存。

对比IPv4,IPv6的优点主要如下 [3]

1.简化的报头和灵活的扩展

IPv6对数据报头做了简化,以减少处理器开销并节省网络带宽。IPv6的报头由一个基本报头和多个扩展报头(Extension Header)构成,所有路由器都需要处理基本报头。由于Internet上的绝大部分报文都只是被路由器简单地转发,因此固定的报头长度有助于加快路由转发速度。IPv4的报头有15个域,而IPv6的只有8个域;IPv4的报头长度是由IP Header Length(IHL)域来指定的,而IPv6的是固定40字节,这些都使得路由器在处理IPv6报头时显得更为轻松。

与此同时,IPv6还定义了多种扩展报头,这使得IPv6变得极其灵活,能提供对多种应用的强力支持,同时又为以后支持新的应用提供了可能。这些报头被放置在IPv6报头和上层报头之间,每一个可以通过独特的“下一报头”的值来确认。除了逐跳选项报头(它携带了在传输路径上每一个节点都必须进行处理的信息)外,其他扩展报头只有在它到达了IPv6的报头中所指定的目标节点时才会得到处理。

2.层次化的地址结构

IPv6将现有的IP地址长度扩大4倍,由当前IPv4的32位扩充到128位,以支持大规模的网络节点。IPv6支持更多级别的地址层次,IPv6的设计者把IPv6的地址空间按照不同的地址前缀来划分,并采用了层次化的地址结构,以利于骨干网路由器对数据包的快速转发。

3.即插即用的连网方式

IPv6把自动将IP地址分配给用户的功能作为标准功能。只要机器一连接上网络便可自动配置地址。它有两个优点:一是最终用户不用花精力进行地址设定;二是可以大大减轻网络管理者的负担。

IPv6有两种自动配置地址方式:一种是“有状态自动配置”方式;另一种是“无状态自动配置”方式。前者基于IPv6动态主机配置协议(Dynamic Host Configuration Protocol for IPv6,DHCPv6),需要配备专门的DHCPv6服务器,客户端从DHCP服务器的地址池中拿到IPv6地址和其他信息(如DNS等);后者则是通过IPv6的邻居发现协议(Neighbor Discovery,ND)自动实现的。在ND协议中,路由器定期广播的路由器通告报文(Router Advertisement,RA)中含有路由器该接口配置的全局地址前缀信息,主机通过结合自己的接口ID就可以得到一个可聚集全局单播地址。通常情况下,接口ID可以由48位的MAC地址转换得到。

4.网络层的认证与加密

安全问题始终是与Internet相关的一个重要话题。由于在 IP协议设计之初没有考虑安全性,因而在早期的Internet上时常发生诸如企业或机构网络遭到攻击、机密数据被窃取等事情。为了加强Internet的安全性,从1995年开始,IETF着手研究制定了一套用于保护IP通信的IP安全(IPSec)协议。IPSec是IPv4的一个可选扩展协议,但在IPv6中则是一个必需的组成部分。

IPSec的主要功能是在网络层对数据分组提供加密和鉴别等安全服务,它提供了两种安全机制:认证和加密。认证机制使 IP通信的数据接收方能够确认数据发送方的真实身份及数据在传输过程中是否遭到改动。加密机制通过对数据进行编码来保证数据的机密性,以防数据在传输过程中被他人截获而失密。

5.服务质量的满足

基于IPv4的Internet在设计之初,只有一种简单的服务质量,即采用“尽最大努力”(Best Effort)传输,从原理上讲服务质量(QoS)是无保证的。随着互联网上多媒体业务的增加,如IP电话、VoD、电视会议等实时应用,对传输延时和延时抖动提出了严格的要求。

IPv6数据包的格式包含一个8位的业务流类别(Class)和一个新的20位的流标签(Flow Label)。最早在RFC1883中定义了4位的优先级字段,可以区分16个不同的优先级。后来在RFC 2460里改为8位的类别字段。其数值及如何使用还没有定义,目的是允许发送业务流的源节点和转发业务流的路由器在数据包上加上标记,并进行除默认处理之外的不同处理。一般来说,在所选择的链路上,可以根据开销、带宽、延时或其他特性对数据包进行特殊的处理。

6.对移动通信更好的支持

移动互联网日益成为人们日常生活的一部分,改变了生活的方方面面。移动互联网不仅是移动接入互联网,它还提供一系列以移动性为核心的多种增值业务,如查询本地化设计信息、远程控制工具、无限互动游戏、购物付款等。

移动IPv6协议的设计汲取了移动IPv4的设计经验,并且利用了IPv6的许多新的特征,所以提供了比移动IPv4更多的、更好的特点。移动IPv6协议已成为IPv6协议不可分割的一部分。

2.2.2 IPv6基本协议

1.IPv6基础报文格式

IPv6基础报头格式很简单,如图2-1所示,只有6个固定字段和2个地址字段。

可以看出,在报头中唯一保持同样含义和同样位置的是版本字段,都是用最开始的4位来表示的。这种设计的最初想法是在同一局域网上,使用相同的封装和链路驱动来同时运行IPv4和IPv6。网络应用程序判断报头开始位置的版本字段,确定对数据包的处理。如果版本号为4(二进制的0100),那么就认为是IPv4的数据包;如果版本号为6(二进制的0110),那么就认为是一个IPv6的数据包。

▶ 图2-1 IPv6基础报头格式

IPv4报头中有6个字段不再采用,它们是报头长度、服务类型、标识符、标志、段偏移量、报头校验和;有3个字段被重新命名,并在某些情况下略作改动,它们是长度、协议类型和存活时间;对旧报头中的选项机制进行了彻底修正,增加了两个新的字段:类和数据流标签。

IPv6报头的简化,主要体现在以下三方面 [4]

1)对所有的报头都分配固定的格式

IPv6报头不包含任何选项字段。这并不意味着不能对特殊情况的数据包使用选项操作。恰恰相反,在IPv4中虽然采用了变长的选项字段,但无法实现选项操作。IPv6中的做法是在主报头后附加上一个“扩展报头”(extension headers)。这样做的一个明显好处就是在IPv6中不再需要报头长度字段(IHL)。

2)去掉报头校验和

去掉报头校验和是一个大胆的改动。这样做的主要优点是减小处理报头的开销,因为每次中转并不需要检查和更新校验和。这样做的最大危险就是在未侦测到的错误出现时可能会使网上出现路由出错的数据包。然而,由于大多数的包封装处理过程都有数据包校验和,因此危险会降到最低程度。实际上,在IEEE 802网络的介质访问控制过程、串线链路的点对点协议(PPP)的帧处理过程中都设置了相应的校验和。

3)去掉跳到跳的分段过程

IPv4包括一个分段过程,以便发送方发送大数据包时不必担心网络的中继能力。如有必要,这些大数据包就被分成一定大小的片段。接收方在收到所有的片段之后再重组该数据包。然而,在传输控制协议的实现过程中得到一个重要结论:传输单元应该就是控制单元。假设想通过一个只能传送小段包的网络去传输大数据包,那么数据包传输的成功性取决于每一小段传输的成功性。只要有一小段丢失,那么整个数据包都要重传,结果极大地降低了网络的使用效率。

IPv6的规则是:主机通过一个称为“路径MTU发现”(Path MTU Discovery)的过程能知道最大的可接受的分段大小。如果试图发送较大的数据包,那么这些数据包就会被网络不加考虑地丢弃。这样,在IPv6中就无需IPv4中的那些分段控制字段,无需数据包标识符、分段标志及段偏移量。

2.IPv6扩展报头

1)从选项到扩展报头

IPv4报头包含选项,用以对某些数据包进行特殊处理。初始规范包括对安全、源路由选择、记录和时戳等选项的程序处理描述。然而,这些选项逐渐被废弃,主要是因为性能很差。

数据包转发程序是路由器软件中高度优化的部分。程序员详细统计处理数据包所需的指令。因为处理程序代码的减少会产生更高的性能。每秒转发的数据包比竞争对手多,就等于在市场上能取得更大的成功。加速程序处理数据包的最常用方法,就是对最常出现的数据包进行集中处理,让这些数据包通过程序的“快速路径”(fast path)。而有选项的数据包则不能使用快速路径,因为按IPv4的定义,需要对其做特殊处理。最常见的做法是把它们放到次级队列中,通过优先级别较低的、没有优化的软件来进行处理。结果,应用程序员发现,使用选项会导致性能降低,于是他们就更倾向于只使用简单的数据包,最终导致具有选项的数据包不再被使用。

然而,仍然有必要对某些数据包进行特殊处理。例如,通过源路由选择来请求一条特殊的路由,或者需要接收方对数据包做特殊处理。IPv6吸取了IPv4的经验,决定通过扩展报头来处理这些特殊情况。

2)菊链式报头

IPv4的有效负载(如TCP数据包)紧跟在IP报头之后。而IPv6的IP报头和有效负载之间可以插入任意数目的扩展报头。每个报头都用一个报头类型来标识,并携带链中下一个报头的类型。如果是最后一个扩展报头,则是有效负载的类型。图2-2所示的就是三个菊链式报头的例子。

目前IPv6协议定义了6种扩展报头。

(1)Hop-by-Hop Options:逐跳选项报头。

此扩展头必须紧随在IPv6头之后,它携带了数据包转发过程中所有节点(路由器和目的节点)都需要处理的信息。例如,某些网管功能和某些调试功能要求将附加信息传递给路径上的所有路由器。

▶ 图2-2 菊链式报头举例

(2)Routing:路由报头。

其作用与IPv4中的“源路由”选项相同,扩展头中携带了数据包需要途径的各节点的地址列表。在IPv4中,源节点指定的路由在选项报头字段中设置,使得所有的路由器都需要检查选项报头字段,即使它们并不是在这条路由上明确列出的中继节点,从而导致该类数据包的处理非常慢,目前已经很少使用。IPv6则对此进行了改进。路由器只在自己的地址在主报头的目的地址字段中出现时才需要检查路由选择报头,否则就可以不做额外处理,直接将数据包转发出去,这样就保证了较好的处理性能。

图2-3举例说明了该扩展头的处理过程。

▶ 图2-3 路由扩展头的具体实例

(3)Fragment:分段报头。

该扩展头用于IPv6源节点向目的节点发送一个超过路径MTU长度的报文。不过,与IPv4协议不同的是,IPv6的分段只能由源节点进行,沿途进行转发的路由器不能进行分段操作。

(4)Destination Options:目的地选项报头。

该扩展头携带了需要IPv6报文目的节点检查的可选信息。

(5)Authentication:认证报头。

该扩展头提供了对需保护的数据进行数据验证、数据完整性检测和反重放保护。

(6)Encapsulating Security Payload:封装安全载荷报头。

该扩展头指明剩余的净荷已经加密,并为已获得授权的目的节点提供足够的解密信息。

3.ICMPv6协议

ICMPv6即IPv6控制信息协议(Internet Control Message Protocol Version 6)。它最初于1995年由RFC 1885定义,然后在1998年由RFC 2463定义了第2版的标准,目前最新版的标准是2006年所制定的RFC 4443 [5]

ICMPv6用于IPv6节点在处理报文遇到问题时进行差错报告,以及其他的网络层功能,如网络连接性诊断。ICMPv6协议是IPv6协议簇的基本组成部分,每个IPv6节点都必须支持该协议。

当IPv6数据包不能到达其目的节点时,通常将自动发送ICMPv6消息(即错误报文)。根据RFC 4443,ICMPv6的差错报文主要包括四种。

(1)Destination Unreachable:目的站点不可达。

(2)Packet Too Big:报文太大。

(3)Time Exceeded:超时。

(4)Parameter Problem:参数有问题。

ICMPv6的信息报文则主要包括如下两种。

(1)Echo Request:回送请求,用来确定 IPv6 节点在网络上是否可用。

(2)Echo Reply:回送响应。

4.ND协议

ND协议即IPv6邻居发现协议(Neighbor Discovery for IP Version 6)。它最初于1996年由RFC 1970定义,然后在1998年由RFC 2461定义了第2版的标准,目前最新版的标准是2007年所制定的RFC 4861 [6]

ND协议是一组确定邻居节点之间关系的消息和过程。它代替了在IPv4中使用的地址解析协议(ARP)、ICMP协议的路由器发现和ICMP重定向功能,并提供了其他功能。具体来说,ND协议有如下主要功能。

(1)Router Discovery:路由器发现。

(2)Prefix Discovery:网络前缀发现。

(3)Parameter Discovery:参数发现(如MTU)。

(4)Address Autoconfiguration:IPv6地址自动配置。

(5)Address Resolution:链路层地址解析(类似IPv4里面的ARP)。

(6)Neighbor Unreachability Detection(NUD):邻居不可达检测。

(7)Duplicate Address Detection(DAD):重复地址检测。

(8)Redirect:重定向。

ND协议的这些功能主要是通过其定义的5种协议报文来实现的。

(1)Router Solicitation(RS):路由器请求报文。当接口启动后,主机通过发送RS报文,可以请求路由器马上发送RA报文,从而获知该子网的网络前缀等信息。

(2)Router Advertisement(RA):路由器通告报文。该报文携带了子网前缀等信息。路由器会定期广播该报文。另外,当收到RS请求报文时,路由器也会广播RA报文。

(3)Neighbor Solicitation(NS):邻居请求报文。当节点希望知道某个邻居节点的链路层地址,或者某个链路层地址对应的邻居节点是否仍然能够连通,以及需要进行重复地址检测时,就会发送NS报文。

(4)Neighbor Advertisement(NA):邻居通告报文。该报文是对NS报文的应答。另外,当某个节点的链路层地址发生改变后,也会主动广播NA报文。

(5)Redirect:重定向报文。路由器用来通知主机更好的第一跳(网关)的信息。

2.2.3 路由和编址

1.IPv6的地址结构

IPv6的最显著特点就是加大了地址长度。从32位增到128位,不仅保证了可以对成千上万的主机编址,还保证了地址结构可以有更多层次,而不止是IPv4提供的网络、子网和主机的三个基本层。目前最新的IPv6的地址结构标准由RFC 4291 [7] 定义。

IPv6的地址分为三类。

(1)Unicast:单播(单点传送)地址。

(2)Multicast:组播(多点传送)地址。

(3)Anycast:泛播(任意点传送)地址。

IPv6没有定义广播地址,其功能由组播地址替代。

一个完整的IPv6地址的表示法:xxxx:xxxx:xxxx:xxxx:xxxx:xxxx:xxxx:xxxx。

例如:2001:0000:1F1F:0000:0000:0100:11A0:ADDF。

为了简化,每段中前面的0可以省略,连续的0可省略为“::”,但只能出现一次。例如:

1080:0:0:0:8:800:200C:417A可简写为1080::8:800:200C:417A。

FF01:0:0:0:0:0:0:101 可简写为FF01::101。

0:0:0:0:0:0:0:1可简写为::1。

0:0:0:0:0:0:0:0可简写为::。

类似于IPv4中的CDIR表示法,IPv6用前缀来表示网络地址空间。例如,2001:251:e000::/48 表示前缀为48位的地址空间,其后的80位可分配给网络中的主机,共有2 80 个地址。

通过IPv6地址的前几位,即可确定其地址类型,具体如表2-1所示。

表2-1 IPv6的地址类型

常见的IPv6地址及前缀如下。

(1)2001::/16:全球可聚合地址,由 IANA 按地域和ISP进行分配,是最常用的IPv6地址,属于单播地址。

(2)2002::/16:6to4地址,用于6to4自动构造隧道技术的地址,属于单播地址。

(3)3ffe::/16:早期开始的IPv6 6bone试验网地址,属于单播地址。

(4)fe80::/10:本地链路地址,用于单一链路,适用于自动配置、邻居发现等,路由器不转发以fe80开头的地址。

(5)fec0::/48:本地站点地址。

(6)::A.B.C.D:兼容IPv4的IPv6地址,其中<A.B.C.D>代表IPv4地址。自动将IPv6包以隧道方式在IPv4网络中传送的IPv4/IPv6节点将使用这些地址。

(7)::FFFF:A.B.C.D:是IPv4映射过来的IPv6地址,其中<A.B.C.D>代表IPv4地址。例如::ffff:202.120.2.30,它在不支持IPv6的网上用于表示IPv4节点。

2.IPv6的路由

在网络层,互联网可以被看做由一组互相连接的自治系统(Autonomous System,AS)组成,相应的路由协议可以分为内部网关协议(Internal Gateway Protocol,IGP)和外部网关协议(External Gateway Protocol,EGP)两大类,分别用来处理自治系统内部和外部的路由。IGP主要有RIP(Routing Information Protocol)、OSPF(Open Shortest Path First)、Cisco的IGRP(Interior Gateway Routing Protocol)和ANSI的IS-IS(Intermediate System to Intermediate System)等协议,EGP主要有EGP、BGP(Border Gateway Protocol)等协议。

1)OSPF协议

OSPF即开放最短路径优先协议,是现在主要使用的内部网关协议之一。它采用的路由算法是SPF(最短路径优先)算法,其中O(Open,开放)指算法是发表在公开文献上的,是一种公开的标准。

IPv6网络中的OSPF协议是其第三版,称为OSPFv3(即OSPF for IPv6),最新版的标准是RFC 5340 [8] ,它是IPv6推荐使用的内部网关协议。OSPFv3并不仅是为了让OSPF支持IPv6的128位地址而做的修补,它是在OSPF协议多年的实际运行经验及大量理论研究基础上进行的全面升级,经过升级后的OSPFv3协议对原有的OSPF协议进行了改进,并且具有很多新特征,能够适应更加复杂的网络情况。

OSPFv3直接运行于IPv6之上,而OSPFv2直接运行于IPv4之上。OSPF的基本机制,如支持区域划分、SPF计算、扩散(flooding)、指定路由器的选举等,在OSPFv3中没有改变。OSPFv3的新特性主要体现在以下几个方面。

(1)OSPFv3协议设计的主要目的是“开发一种独立于任何具体网络层的路由协议”。为实现这一目的,OSPFv3的内部路由信息被重新进行了设计。与过去的版本不同,OSPFv3不向位于OSPF分组和链路状态记录(LSA)起始位置的头部插入基于IP的数据。OSPFv3利用独立于网络协议的信息来执行过去需要IP报头数据完成的关键任务,如识别和发布路由数据的LSA。

(2)OSPFv3增加了多种可选功能,如组播OSPF(MOSPF),以实现通用性。为了达到这一目的,OSPFv3扩展了在OSPF分组头部的网络设备用来互相通告附加功能的选项数据域。多数OSPFv3路由器之间交互的信息中都包含选项域,运行OSPFv3的设备可以支持多达24种可选功能,而以前的版本只支持8种功能。

(3)为了简化复杂的容错网络的建设,OSPFv3引入了Instance ID和R-bit选项,这样在一个接口链路上可以运行多套OSPFv3协议。作为每个OSPFv3分组头的一个组件,Instance ID不再依赖于过去需要的复杂的认证方案或访问清单,就可以控制共享物理网络和OSPF域的路由器之间的通信。除了Instance ID外,OSPFv3还可以通过R-bit使服务器这类最终系统具有有效的冗余性。

(4)OSPFv3使用的安全保障机制与过去的协议版本完全不同,它通过提供非本身固有的安全性来简化消息的结构。通过利用IPv6包的安全扩展头的集成系统,OSPFv3消息可以被认证和加密,而这在以前是需要增加复杂的协议才能实现的功能。

2)RIP协议

RIP即路由信息协议,是现在主要使用的内部网关协议之一。它采用的路由算法是距离向量(Distance Vector)算法。

IPv6网络中的RIP协议称为RIPng,由RFC 2080 [9] 定义,与RIPv1和RIPv2相比,有以下主要的差异。

(1)地址版本。RIPv1、RIPv2是基于IPv4的,地址域只有32位,而RIPng基于IPv6,使用的所有地址均为128位。

(2)子网掩码和前缀长度。RIPv1被设计成用于无子网的网络,因此没有子网掩码的概念,这就决定了RIPv1不能用于传播变长的子网地址或用于CIDR的无类型地址。RIPv2增加了对子网选路的支持,因此使用子网掩码区分网络路由和子网路由。IPv6的地址前缀有明确的含义,因此RIPng中不再有子网掩码的概念,取而代之的是前缀长度。同样也是由于使用了IPv6地址,RIPng中也没有必要再区分网络路由、子网路由和主机路由。

(3)协议的使用范围。RIPv1、RIPv2的使用范围被设计成不局限于TCP/IP协议簇,还能适应其他网络协议簇的规定,因此报文的路由表项中包含有网络协议簇字段,但实际的实现程序很少被用于其他非IP的网络,因此RIPng中去掉了对这一功能的支持。

(4)对下一跳的表示。RIPv1中没有下一跳的信息,接收端路由器把报文的源IP地址作为到目的网络路由的下一跳。RIPv2中明确包含了下一跳信息,便于选择最优路由和防止出现选路环路及慢收敛。与RIPv2不同,为防止RTE过长,同时也为了提高路由信息的传输效率,RIPng中的下一跳字段是作为一个单独的RTE存在的。

(5)报文长度。RIPv1、RIPv2中对报文的长度均有限制,规定每个报文最多只能携带25个RTE。而RIPng对报文长度、RTE的数目都不作规定,报文的长度是由介质的MTU决定的。RIPng对报文长度的处理,提高了网络对路由信息的传输效率。

3)BGP及其扩展

边界网关协议(BGP)是目前互联网中应用广泛的域间路由协议,目前协议版本号是4(即BGP4)。BGP4最早由RFC 1771描述(1995年),在2006年则发布了BGP的最新描述RFC 4271 [10]

BGP使用TCP传输协议消息,而TCP本身属于传输层机制,能够在IPv4和IPv6上运行,和底层IP版本无关。BGP的传输机制和MBGP [11] 能力结合起来,使得BGP承载的信息与网络层无关。例如,能够通过IPv4网络传递IPv6路由,也能通过IPv6网络传递IPv4路由。这一能力决定了BGP在IPv6过渡阶段将起到重要作用,BGP可以用于单纯IPv6环境,也可以用于IPv4和IPv6混合环境。

2.2.4 过渡

IPv6是对IPv4的重新设计,解决了IPv4所产生的问题,进而提供更好的服务,具有大幅推进互联网发展的潜力,是下一代互联网的支撑协议。可以预见,IPv4和IPv6将会长期共存,并且将会逐渐过渡到IPv6。然而IPv6的设计并不兼容IPv4:IPv6不能与IPv4直接通信。本质上讲,IPv6是与IPv4平行、独立的网络协议。为此,需要多种过渡机制来保证各种场景下IPv4和IPv6的连通性,进而加快向IPv6过渡的进程。

IPv4与IPv6的互联互通问题最终可归结为两个基本问题:异构网络互联和异构网络穿越。当两个直连的网络或主机使用不同的地址族时,就会出现异构网络互联问题。由于通信报文的源地址与目的地址采用的是不同的地址族,因此为了实现这样的异构通信,协议转换机制是必不可少的,即翻译过渡技术。由于IPv4/IPv6地址空间存在较大的不对称,因此将翻译过渡技术运用到大规模的网络中时,其技术难度很大。目前,按照地址转换方式的不同,网络侧的翻译过渡技术可分为无状态翻译与有状态翻译两类,另外还有主机侧翻译,通常用于终端用户的TCP/IP协议栈。

当处于IPv6/IPv4网络中的两个或更多IPv4/IPv6本地网络或主机需要进行通信时,就会出现异构穿越问题。为了实现这种穿越异构网络的通信,需要引入过渡技术,即隧道过渡技术。如果IPv4本地网络或主机被IPv6网络分隔,则需要使用IPv4-over-IPv6穿越机制;反之,则需要使用IPv6-over-IPv4穿越机制。隧道技术通过对报文的封装和解封装,使得两个同构网络能够在一个异构网络的两边桥接起来从而实现相互通信。隧道技术只需在网络的边缘路由器上配置好封装表就可实现对分组的透明传输,是无状态且轻量级的。但隧道技术也存在只能实现相同协议之间的互联,不能解决传统的IPv4网络和IPv6网络互通的问题。按穿越场景不同,可分为网状隧道和星形隧道两种。

关于过渡技术的详细情况,详见本书第4章。

2.2.5 移动

在IPv6网络的设计中,对移动网络的支持是一个重要的组成部分。在RFC 1752——“The Recommendation for the IP Next Generation Protocol(下一代IP协议建议)”的6.1节IPng技术标准文献中明确指出:协议必须支持可移动主机、网络和网络互联(The protocol must support mobile hosts,networks and internetworks)。

移动IPv6协议,即MIPv6(Mobility support in IPv6)最早由RFC 3775描述(2004年),在2011年则发布了BGP的最新描述RFC 6275 [11] 。与移动IPv4协议一样,移动IPv6中仍然有移动节点和家乡代理;家乡地址、家乡链路、转交地址和外地链路的概念也几乎一样;其主要工作过程也和移动IPv4的三大元素相似,即代理搜索、注册和选路。

移动IPv6协议既汲取了移动IPv4的经验,又充分利用了IPv6协议的新特性,移动IPv6协议与移动IPv4协议相比有如下优点。

(1)不需要外地代理:IPv6协议有巨大的地址空间,移动节点漫游到任何一个网络,都可以利用IPv6协议中的邻居发现协议和地址自动配置协议来获取转交地址,不再像移动IPv4协议那样需要外地代理。

(2)实现了路由优化:移动节点MN移动后,除了向家乡代理进行注册以外,还可以向通信对端CN进行注册,使得CN可以直接把数据发给MN,解决了三角路由的问题,减少了传输延迟和网络带宽的消耗。

(3)用路由机制代替隧道封装:CN和MN之间的数据发送,有效利用了IPv6的路由扩展头和目的地选项扩展头,不仅可以有效传递相关信息,而且路径上绝大多数路由器根本不理会这些扩展头,因此处理速度快、效率高。在移动IPv4中则需要使用隧道,增加了分组传输的开销。

(4)更好的安全性保护:注册过程使用了IPv6所提供的强有力的认证机制,能够对注册等信息进行认证和保护。

(5)解决了输入过滤问题:移动IPv6协议通过使用IPv6扩展头,使得数据同时携带家乡地址和转交地址,从而解决了移动IPv4中的路由过滤问题。

(6)优化家乡代理应答:家乡代理地址发现机制在移动IPv6协议中采用泛播(Anycast)形式,仅返回一个应答给移动节点,而在移动IPv4协议中采用广播的机制,收到请求的每个家乡代理都分别返回一个应答给移动节点。

2.2.6 安全

IPv6协议本身考虑了对网络安全的更好支持,提高安全性是其重要的设计出发点之一,已将IPSec作为实现必选项。但是,出于兼容性的考虑,IPv6并没有完全颠覆IPv4时代所采用的基本安全机制,而是采用逐步引入增强措施的方式来实现安全性的提高。如果能够将IPv6的安全增强机制进行合理应用,将会对IPv6的网络安全状况产生积极的影响。下一代互联网安全机遇与挑战并存。

IPv6协议是网络层的协议,因此其对网络安全问题的影响很大一部分集中在网络层。IPv6安全问题主要可以划分为以下几类:和IPv4协议类似的安全问题(如窃听攻击、应用层攻击、中间人攻击、洪泛攻击等);IPv6协议产生的新的安全问题;由IPv4向IPv6过渡带来的安全问题及下一代互联网新型应用带来的安全问题。

下一代互联网在安全方面总体来说主要包括以下挑战。

(1)针对IPv6协议的一些新特点,某些安全攻击的形式和原理会产生变化,产生新的安全攻击,需要研发IPv6的网络安全设备。同时,目前IPv6尚未大规模商用,还缺乏大规模的IPv6网络环境来验证IPv6安全设备的有效性。

(2)IPv6地址空间扩大后,使得国家信息安全监管体系的可扩展性面临极大挑战;IPv6协议提供的IPSec加密功能,使得已有网络安全监管系统在有害信息的识别与过滤方面带来新的问题,还有可能增大安全事件事后溯源的难度。

(3)网络安全关键技术问题尚待解决,云计算、三网融合、物联网等新应用产生新的安全问题,以及多种业务模式下的网络安全审计问题等,都是需要解决的关键技术问题。

(4)域名体系存在安全隐患,我国仍然缺乏对根域名服务器的最终管理权,域名体系安全受制于人。此外,我国域名服务体系缺少统一的管理体系、监控分析、技术规范及安全防范措施,无法保障长期安全、稳定服务。

下一代互联网为解决上述安全问题提供了技术基础平台,目前IPv6还没有大规模使用,这就使我们可以在建网初期就突出安全顶层设计和整体规划,制定科学的防御方案和安全管理措施,研究网络安全架构、机制和技术,攻克关键核心技术,使下一代互联网比目前的互联网更安全、可信、可控、可管。 lq6pcHP1hopsW+ysUuxc73L1RgmGbQCpUGtsrr95CPgI7FJ45shCm1OsyXpVVa/f

点击中间区域
呼出菜单
上一章
目录
下一章
×