第10章下一代的Internet

  • 格式:doc
  • 大小:701.00 KB
  • 文档页数:20

第10章 下一代的Internet

Internet的飞速发展对网络技术的进步产生了巨大的推动力,新技术和新应用层出不穷。同时,现在的因特网也面临着多方面的挑战,这里给出几个例子。

(1)现在广泛使用的IPv4地址资源面临枯竭。

(2)未来的网络将承载数据、音频、视频等多种业务,为了实现这一目标,除了充足的带宽以外,服务质量(QoS)控制机制也是必不可少的。而由于Internet的复杂性和基于分组交换的特点,使Internet本身缺乏完善的理论模型和分析,因此,QoS问题目前更多地停留在局部。

(3)在Internet飞速发展的同时,网络的安全性受到了日益严峻的挑战。

(4)Internet规模日益扩大,造成新协议新业务部署较慢,例如1998年12月就己出现的IPv6协议至今没能大规模使用。

(5)传统的以电路交换为主的电信网络依然没有完成向以分组交换为主的数据网络的转变。

这样的挑战还可以举出一些,因而人们不得不考虑怎样把现在的Internet演进为下一代的因特网(NGI)。NGI牵涉到许多新的技术。本章首先介绍IPv6协议,这是下一代因特网最主要的特征;其次介绍多协议标记交换MPLS和服务质量控制,这是下一代因特网可能会普遍采用或部署的技术。

10.1 IPv6技术

10.1.1 IPv6协议

IP协议是因特网的核心协议,现在使用的Ipv4是在20世纪70年代末设计的。随着Internet的飞速发展,IPv4在地址空间、信息安全和区分服务等方面显露出明显的缺陷,但最主要的问题是32bit的IP地址面临枯竭。因此,需要采用具有更大地址空间的新版本的IP协议,即IPv6。

为了解决Internet目前和将来可预测的问题,Internet工程任务组(IETF)早在1992年6月就提出要制定下一代IP协议,即IPng(IP Next Generation)建议方案,IPng现已正式命名为IPv6。

1.IPv6对Ipv4的改进

IPv6对IPv4的改进主要表现在以下几个方面。

(1)更大的地址空间。IPv6将地址长度从IPv4的32位增大到l28位。

(2)简化了头部格式。IPv6将头部长度变为固定的40B,称为基本头部(base header),取消了头部的检验和字段,这样就加快了路由器处理速度。

(3)协议的灵活性。IPv6将IPv4的选项中的功能放在可选的扩展头部(extension 第10章 下一代的Internet 279

header)中,而路由器不处理扩展头部,因而提高了路由器的处理效率。

(4)允许对网络资源的预分配以支持实时的视频传输等对带宽和延迟要求高的应用。

(5)允许协议增加新的功能,使之适应未来技术的发展。IPv6分组在基本头部的后面允许有可选的扩展头部,后面是数据。所有的扩展头部和数据合起来构成有效载荷(payload)。

2.IPv6的头部

IPv6仍支持无连接的传送,但将协议数据单元PDU称为分组,而不是IPv4的数据报。

IPv6分组如图10-1所示,其头部长度变为固定的40字节。将不必要的功能取消了,头部的字段数减少到只有8个(虽然头部长度增大了一倍)。

如图10-2是IPv6分组的格式。在基本头部后面是有效载荷,它包括传输层的数据和可能选用的扩展头部。IPv6基本头部中的各字段的作用如下。

(1)版本(version)。占4bit,它指明了协议的版本,该字段总是6。

(2)通信量类(traffic class)。占8bit,这是为了区分不同的IPv6分组的类别或优先级。

(3)流标号(flow label)。占20bit,所谓“流”就是互连网络上从特定源点到特定终点(单播或多播)的一系列分组(如实时音频或视频流),而在这个“流”所经过的路径上的路由器都保证指明的服务质量。用于支持资源预分配,并且允许路由器将每一个分组与一个给定的资源分配相联系。所有属于同一个流的分组都具有同样的流标号。

(4)有效载荷长度(payload length),占16bit,它指明IPv6分组除基本头部以外的字节数。这个字段的最大值是64KB。

(5)下一个头部(next header),占8bit,它相当于IPv4的协议字段或可选字段。

图10-1 IPv6分组的一般形式

图10-2 IPv6基本头部的格式 280 计算机网络

①当IPv6分组没有扩展头部时,下一个头部字段的作用和IPv4的协议字段一样,它的值指出了基本头部后面的数据应交付给IP上面的哪一个高层协议。

②当出现扩展头部时,下一个头部字段的值就标识后面第一个扩展头部的类型。

(6)跳数限制(hop limit),占8bit,用来防止分组在网络中无限期地存在。源站在每个分组发出时即设定某个跳数限制。每个路由器在转发分组时,要先将跳数限制字段中的值减1。当跳数限制的值为零时,就要将此分组丢弃。

(7)源地址,占128bit,是分组的发送站的IP地址。

(8)目的地址,占128bit,是分组的接收站的IP地址。

IPv6扩展头部由路径两端的源站和目的站的主机来处理,而分组途中经过的路由器都不处理这些扩展头部(只有一个扩展头部例外,即逐跳选项),以提高路由器的处理效率。

扩展头部包括:(1)逐跳选项;(2)路由选择;(3)分片;(4)鉴别;(5)封装安全有效载荷;(6)目的站选项。

每一个扩展头部都由若干个字段组成,它们的长度也各不同。但所有扩展头部的第一个字段都是8bit的“下一个头部”字段。此字段的值指出了在该扩展头部后面的字段是什么。当使用多个扩展头部时,应按以上的先后顺序出现。IPv6的扩展头部如图10-3所示,其中(a)为无扩展头部情况,(b)为有两个扩展头部情况。

图10-3 IPv6的扩展头部 (a)无扩展头部 (b)有两个扩展头部

3.IPv6的编址

一般来讲,一个IPv6分组的目的地址可以是以下三种基本类型地址之一。

(1)单播(unicast),就是传统的点对点通信。

(2)多播(multicast),是一点对多点的通信,分组交付到一组计算机中的每一个。IPv6没有采用广播的术语,而是将广播看作多播的一个特例。

(3)任播(anycast),是IPv6增加的一种类型。任播的目的站是一组计算机(例如,都属于同一个公司),但来自用户的分组在交付时只交付给这组计算机中的任何一个,通常是距离最近的一个。

IPv6地址使用冒号十六进制记法,它把每个16bit的值用十六进制值表示,各值之间用冒号分隔。例如,68E6:8C64:FFFF:FFFF:0:1180:960A:FFFF,这里将0000中的前三个0省略了。

冒号十六进制记法还包含两个技术使它尤其有用。

首先,冒号十六进制记法可以允许零压缩(zero compression),即一连串连续的零可以用一对冒号所取代,例如:FF05:O:O:O:O:0:O:B3可以写成:FF05::B3。为了保证零压缩有一个不含混的解释,规定在任一地址中只能使用一次零压缩。

其次,冒号十六进制记法可结合有点分十进制记法的后缀。这种结合在IPv4向IPv6 第10章 下一代的Internet 281

的过渡阶段特别有用。例如,0:0:0:0:0:0:128.10.2.1或::128.10.2.1。请注意,在这种记法中,虽然为冒号所分隔的每个值是一个16 bit的量,但每个点分十进制部分的值则指明一个字节(8bit)的值。

为了在一个URL中使用一个文本IPv6地址,文本地址应该用符号“[”和“]”来封闭。例如下列文本IPv6 地址:

::220.1.68.2的URL 格式表示为:http://[::220.1.68.2]/index.html

IPv6和IPv4的最重要的变化之一就是单播地址所使用的划分策略,以及由此产生的多级地址体系。我们知道,采用CIDR后,IPv4的地址是两级结构,它的地址被划分为一个前缀和一个后缀。IPv6扩展了地址的分级概念,它使用以下的三个等级:第一级(顶级,48位),指明全球都知道的公共拓扑。第二级(地点级,16位),指明单个的地点。第三级指明单个的网络接口(64位)。

IPv6的地址体系采用多级体系是充分考虑到怎样使路由器能更快地查找路由。

与IPv4不同,IPv6地址的主机号字段有64位之多,它足够大,因而可以将各种接口的硬件地址直接进行编码。这样,IPv6只需把128位地址中的最后64位提取出就可得到相应的硬件地址,而不需要使用地址解析协议ARP进行地址解析。

4.从IPv4向IPv6过渡

如何完成从IPv4到IPv6 的过渡是IPv6发展需要解决的第一个问题。现有的网络及其连接设备都支持IPv4,因此要想一夜间就完成从IPv4到IPv6的过渡是不切实际的。目前解决过渡问题的基本技术主要有2种:双协议栈和隧道技术。

(1)双协议栈(dual stack)

指在完全过渡到IPv6之前,使一部分主机(或路由器)装有两个协议栈,一个IPv4和一个IPv6。双协议栈主机(或路由器)既能够和IPv6的系统通信,又能够和IPv4的系统进行通信。双协议栈主机在和IPv6主机通信时采用IPv6地址,而和IPv4主机通信时采

图10-4 使用隧道技术进行从IPv4到IPv6的过渡 282 计算机网络

用IPv4地址。

双协议栈主机使用域名系统来识别目的主机使用的是哪一种地址。

(2)隧道技术(tunneling)。这种方法的要点就是在IPv6分组要进入IPv4网络时,将IPv6分组封装成IPv4数据报(整个的IPv6分组变成了IPv4数据报的数据部分)。然后IPv6分组在IPv4网络的隧道中传输。当IPv4数据报离开IPv4网络中的隧道时再将其数据部分(即原来的IPv6分组)交给主机的IPv6协议栈。

图10-4给出了隧道技术的工作原理。其中图10-4(a)表示在IPv4网络中的一个从B到E的“IPv6隧道”。图10-4(b)表示数据报的封装要点。请注意,在隧道中传送的数据报的源地址是B,目的地址是E。

要使双协议栈的主机知道IPv4数据报里面封装的数据是一个IPv6分组,就必须把IPv4头部的协议字段的值设置为41。

从20世纪90年代初期起,陆续出现了许多新的网络层协议,如IPv6、多播协议以及RSVP(资源预留协议,见10.3.3)等,然而它们并没有立即获得广泛的应用。其原因是:作为因特网基础的网络层的改变会比应用层的改变缓慢的多。

5.IPv4主机使用IPv6的实例