Communication 版 (精华区)

发信人: Iamhere (灯火阑珊), 信区: Communication
标  题: IPv6打破TCP/IP的限制                   dormouse 
发信站: 哈工大紫丁香 (2001年06月15日22:52:09 星期五), 站内信件

发信人: arclight (不行了,要戒网了!), 信区: CRC
标  题: IPv6打破TCP/IP的限制
发信站: 紫 丁 香 (Wed Jul 21 15:14:26 1999), 转信




Internet的爆炸性增长使得TCP/IP协议包技术对网络和系统管理员的限制越来
越大,尤其是IP协议本身的问题就更加突出。为了解决这个问题,就提出了一
种新的IP协议,称为"下一代IP(IPng)"。现在IPng已经有了几种平台的实现,
它的产品实现预计在今年内会推出。

为什么要用新的IP

IP对于任何使用TCP/IP协议的Intranet和Internet来讲都是一个十分重要的部
分,但是它缺乏两个重要的特性:可伸缩性和带宽。IP的可伸缩性的问题主要
集中在三个方面:地址分配、主干路由表的增长和主机的配置。以前人们认为
IP的最明显的一个不足是它的有限的地址结构,IP采用A、B、C三类地址的地址
分配方案远远不能满足目前的Internet迅速增长的需求。如果按目前Internet
的发展速度看,到2005年现在尚未分配的地址就会被用尽。

然而目前Internet团体面临的最紧迫的问题还是主干路由表的不断增长。在采用
RFC 1380、1517、1518和1519规范描述的CIDR(Classless InterDomain Routing)
前,Internet上主干路由表的增长速度比RAM容量快1.5倍。由于绝大部分A类和B
类地址已经分配完,剩下的可用的地址已经非常有限了。这个个问题就是人们所
称的"地址汇集"。

当不同的子网按其数字顺序附加到第一个网络上时,主干路由表只需要第一个网
络的网络地址,其它的网络都可以通过第一个网络来访问。对于基于类的地址分
配,地址按顺序递交到InterNIC那里而不必将其汇集到一个通用的连接通路上再
进入主干网。如考虑网络 199.200.201.0,199.200.202.0, ...,199.200.254.0,
CIDR将企图将199.200.202.0,...,199.200.254.0链接到网络199.200.201.0上,
然后主干网只需要知道如何将一个包路由到199.200.201.0就可以了,这样
199.200.201.0,...,199.200.254.0 之间的所有网络被称为汇集到网络
199.200.201.0中。如果没有地址汇集,路由表就需要254个单独的入口,将它们
直接放到Internet上将是很难管理的。

目前地址汇集的解决方案是CIDR,它还有助于通过鼓励采用基于ISP(Internet服务
提供商)的地址分配方案减慢地址被用尽的速度。基于ISP的地址分配可以更有效的
利用目前未能充分使用的B类和A类子网,因而可以使更多的网络连到Intetnet上。

但是CIDR却增大了IP可伸缩性的第三个弱点:主机的配置。每当一个站点改变ISP,
它的所有主机必须重新设置地址,这对绝大部分站点来讲绝对不是一件以松的工作,
它能够对公司的人力资源造成重要的浪费。最后,IP还有一个重要的缺点就它缺乏
足够的功能来保证数据包的真实性和安全性。IP缺乏验证和可靠性控制,这往往会
带来许多安全方面的问题。在1995年1月,Internet工程组(IETF)的IPng工作组
(Ipng Working Group)提出了取代修改IP协议的建议,新的建议是IP的第6个版本,
也称为IPv6(目前使用的是IPv4,IPv5只是一个过渡性版本)。IPv6的目标就是为
了满足当今以及可以预见的将来不断增长的网络的要求。

IPv6比IPv4大大前进了一步,IPv6保留了IPv4中的有用的功能,而去掉了一些没用
的功能。IPv6对Ipv4所作的主要改进有下面三个方面:
.扩展地址和路由
.自动配置
.验证和可靠性
地址问题 
在IPv6中IP地址从32位猛增到128位,它的地址空间是IPv4的的2^96(即2的96次方,
请编者写成指数的形式)倍,理论上可以提供的地址数是340,282,366,920,938,
463,463,374,607,431,768,211,456。正如IPng工作组在一篇论文中所指出的,如
果地球表面的面积按511,263,971,197,990平方米计算的话,那么每平方米大约有
665,570,793,348,866,943,898,599个地址。扩展的地址是IPv6简化包头格式的一
部分:


.版本(Version):4比特的IP版本号,其值为6
.优先级(Prio.):4比特的优先级数值
.流量标记(Flow Label):24比特的流量标记
.有效载荷长度(payload Length):16位的无符号整数。
.下一个首标(Next Header):8比特的选择器,它紧跟在IPv6首标的后面确定首标
  的类型
.跳限制(Hop Limit):8比特无符号整数,每个节点减去1,如果跳限制值减少到0,
  就将包丢弃。缺省值为64
.源地址:包的发送者的128比特地址
.目标地址:包的接收方的128比特地址

实际上,路由需要创建能够降低地址空间使用效率的地址分级。但是IPv6打破了IPv4
的A、B、C三类地址的地址分配方案。最初的IPv6建议确认了RFC 1884 Section 2,3所
描述的几个不同的地址类型,其目的就是提供最广泛的功能而同时还可以将简化的机
制组合起来"自动配置"一个主机的地址。自动配置的目的是将IP地址分成两个不同的
部分:网络标志符和一个唯一的主机标志符。一个流行的提议是使用一个主机的
IEEE-802 48比特的MAC(媒体访问控制)地址。这种方法将只需要主机的IP软件知道
网络的地址,它就可以将自己的地址加到这个网络上。这样IP软件就可以自动完成它
的全部Internet地址的配置(网络地址+IEEE-802地址)。

然而,就象许多标准开发方案一样,IPv6工作组在早期的许多RFC都允许有更大的灵活
性,但是有些灵活性实际上被人们理解成了实现的不确定性,因此就影响了标准被广泛
采用。IPv6地址方案的某些部分似乎也存在这个问题。早期的RFC在变量定义的比特边
界上讨论地址结构,如RFC 1884确定的IEEE-802地址和IPv6地址中描述的子网边界如下:
INTERNET_SERVICE_PROVIDER_ID (前面n比特,在左边)+ISP_NETWORK_ID (中间比特,
包括子网数)+HOST_IEEE-802_ADDRESS (后面48比特,在右边). 

除些之外,还提出过不少使用现有的IPv4、IPX、ISO、NSAP和其它的标志符的地址结
构。然而,选择的多样性又限制了网络汇集地址路由的能力。虽然128比特的地址空
间使网络地址数量大大增加,许多大的ISP厂商相信主干路由表的复杂性将再次遇到
以前CIDR那样变得不堪重负的问题。如果这个问题不能解决,IPv6的最终实现将会受
到影响。

8+8拓扑

一个提议是简单地分配一半的地址来管理"公共拓扑",而另一半的地址分配来管理"
专用拓扑"。这个方法倒很有可能提供一个满意的解决方案。8+8拓扑提出使用前面
的64位(8比特)来分配一个地址在Internet上的专用拓扑,后面的64位(8+8方案
中的第2个8比特)唯一地确定每个主机在Internet上的地址以及它在一个站点的专
用拓扑中的位置。

公共拓扑是将通信从一个站点送到加一个站点的传输设施。它由各种载体、重发器
和区域网络组成。8+8方案定义了一个Routing Goop(RG)作为一个定位符来对一
个站点(包括有专用拓扑)以什么方式连接到一个传输网络的公共拓扑这一信息进
行加密。主干网服务提供者对Routing Goop使用高度的地址汇集来加密拓扑信息的
能力特别感兴趣。

为了加快主机的自动配置,8+8方案设想主要使用一个主机的48位IEEE-802地址作为
它的全球唯一的"识别标所"。当然其它的唯一识别标准如正式分配的IPv4地址也可
以用于缺乏802验证的主机。使用独立于网络位置标志符的全球统一识别标记也潜在
地减少了许多其它的网络活动。IPv6验证和可靠性控制还可以进行计算以输出Routing 
Goop数据。同样地,TCP伪首标校验数只需要包括识别标记的端口号。当数据包离开
一个站点进入公共拓扑时通过地址边界路器动态地将Routing Goop插入源地址,这样
就可以进一步简化主机的配置,因为这个信息将只需要在这个站点的外部路由器上被
配置。

其中各比特的分布如下:

Bit 64-78: 15比特的专用拓扑分区(PTP),它可以在专用拓扑中提供32768个
           不同的分区

Bit 79: 标记模式指示器
        0 => 48比特的识别标记
        1 => 识别标记的前面比特的模式

Bits 80-127: 48比特的识别标记
             识别标记(Identity Token)以下列方式组成:
             Mode 0 ESD: (Bit 79: 0)
             识别标记是一个48比特的IEEE MAC地址

Bit 80-127: IEEE 48比特的MAC地址
            Mode 1 ESD: (Bit 79-82: 1001) 
            识别标记是一个45比特的IETF NodeID整数

Bit 83-127: IETF NodeID
            Mode 2 ESD: (Bit 79-82: 1010)
            识别标记是一个32比特的正式分配的IPv4地址

Bit 83-95:必须为0

Bit 96-127:有效地IPv4地址
           Mode 3-Mode 7 ESD (Bit 83-95: 1011 - 1111):保留

对于IEEE分配的48比特的MAC地址的接口,一个Mode-0 ESD(End System Designator)
是用于这种接口的最好的ESD。另一方面,一个没有其它合适的MAC地址的点到点接口
可以使用一个Mode-1 ESD来标记。Mode-2 ESD可以利用已经广泛部署的标志符空间
以便可以更容易地向8+8拓扑转移。同MAC地址的链接大于6比特,它可以用于Mode-2 
ESD和IPv6的动态配置。

安全控制

IPv6建立了三个重要的安全服务:包验证、包完整性和包可靠性。包的安全功能都
通过IPv6的可选的扩展首标来实现。扩展首标在RFC 1883中进行了描述。验证首标
(AH)提供密码验证或完整性测试。缺省时它使用了一个加密的MD5算法,但是任何
实现都可以根据需要选用任何其它的算法。如Sun公司将发布的v6.0 IPv6 Prototype
将支持MD5验证首标。

可靠性保护使用一个安全净载荷封装(ESP)扩展首标。操作的两种模式是确定的:
隧道模式和传输模式。在隧道模式的ESP中,原始的IP数据报被转换成明文,它然后
变成ESP并且整个ESP帧连同一个未加密的IP首标一起被放到IP数据报中。未加密的
IP首标中的信息被用来将保密的数据报从原始地路由到目的地。在传输模式的ESP中,
ESP包括加密传输层协议首标(如TCP、UDP或ICMP等)。它使用的缺省密码算法是密
码分组链接方式的数据加密标准(DES-CBC)并且还需要有效地实现。任何其它的适
当的算法如各种RSA算法等也可以使用。



--
※ 来源:.紫 丁 香 bbs.hit.edu.cn.[FROM: sys03.hit.edu.cn]
[百宝箱] [返回首页] [上级目录] [根目录] [返回顶部] [刷新] [返回]
Powered by KBS BBS 2.0 (http://dev.kcn.cn)
页面执行时间:3.501毫秒