2008年12月23日星期二

为了增强32位地址空间使用效率所采用的方法

历史上,不同类IP地址之间的巨大差异已经浪费了大量的地址。举例来说:一个中等规模的公司需要300个IP地址。一个C类地址(254个地址)不够用。使用两个C类地址,提供的地址有富余,但这样一来,一个公司就有两个不同的域,增加了路由表的尺寸---每一个地址空间需要一个路由表项(即使它们属于同一个组织)。 另一种选择是,B类地址提供了所有需要的地址,而且在一个域内。但这样却浪费了65234个地址,当一个网络有多于254个主机时就提供一个B类地址,这样的情况太常见了,因此,B类地址比其他地址更容易耗尽。

为了解决上面出现的问题。采用了大量的IP扩充工作主要用于改进32位地址空间的使用效率,三个重要的扩充:

1、子网掩码 subnet mask

2、可变长子网掩码 VLSM

3、无类域间路由CIDR

这三个扩充用于解决不同的问题,是非常不同的机制。

子网掩码,无论是固定长度还是可变长度,用于在一个物理网络中划分成多个逻辑网络。(比如可以将一个B类地址划分成不同的子网分配给不同的公司使用,而不需要给每个公司分配一个B类地址。例如上面的例子。解决路由表项太大的问题可以用CIDR解决)

CIDR用于使路由器更有效地汇聚不同网络地址成单一的路由表项。

这两种机制不是互相排斥的,两者应该结合使用。

一、子网的出现
注:当同一个地区出现多隔网络时,例如有多个公司时,我们可以给每个公司分配一个某类的地址,但是这样IP的使用效率相当低下,会有很多浪费。而且路由表项也会扩大,因为每个网络都会需要自己的路由表项。

另一种解决方法是分层的组织这些网络,并在他们之间路由。从Internet的角度来看这些具有多个网络的地方可以被看做一个网络。可以给他们一个共享的IP地址范围(例如一个A类地址范围),然后为了区分不同的网络,再给他们分配自己唯一的子网号。(互联网是树状的,是一层一层延伸下去的,可以将任何一层再继续细分下去,可以将任何几层看成是一层。) 子网的划分将原来的两层模型(网络号、主机号)转变为现在的(网络号、子网号、主机号)

分子网的方法对IP地址结构有很大的扩充,但是它还受到一个基本的限制:整个网络只能有一个子网掩码。因此,当用户选择了一个子网掩码(也就意味着每个子网内的主机数确定了)之后,就不能支持不同尺寸的子网了。任何对更大尺寸子网的要求意味着必须改变整个网络的子网掩码。为了解决这个问题,我们采用了VLSM,每个子网可以采用不同的掩码,但他们必须有相同的网络前缀(即网络号必须相同) (采用VLSM可以更加适应不同企业的要求,分配也更加灵活和方便,减少了IP主机地址的浪费,对IP地址空间进行灵活的子网化) 子网化的网络只能采用单一的掩码,而VLSM可以采用不同的掩码。(理论上来说,子网中还可以继续划分子网的,从Internet的角度来看,是不会有任何改变的,是属于网络域内部路由的事情。是域内的事情。)

二、CIDR无类域间路由

CIDR可以用网络前缀来代替这些类。前缀可以是任意长度,这允许CIDR根据网络的大小分配网络地址空间,而不是在预定义大的网络空间中作裁剪。每一个CIDR网络地址和一个相关位的掩码一起广播,这个掩码识别了网络前缀的长度。

CIDR的特性:

1、消除地址分类

2、强化路由汇聚(CIDR使任何符合CIDR规范的路由器能更有效地汇聚路由信息。换句话说,路由表中的一个表项能够表示许多网络地址空间。这就大大减少了在任何互联网络中所需路由表的大小,使网络有更好的扩展性。不用为每一个网络建立一个路由表项)

3、超网化(超网化就是把一块连续的C类地址空间模拟成一个单一的更大一些的地址空间。如果得到足够多的连续C类地址,就能重新定义网络和主机识别域中位数的分配情况,模拟一个B类地址。)

没有评论:

发表评论