IPV4局限性
地址枯竭
IPv4
地址为32位,实际使用时还需要预留一些保留地址,IPv4
地址枯竭是一个不争的事实,一方面是因为需要接入互联网的网络终端越来越多,另一方面是因为IPv4
地址长度不足,导致不能有效地层次化分配IPv4
地址。
地址分配不均
- 在互联网的发源地美国,几乎所有的大公司和大学能得到至少一个A类或一个B类地址。
骨干路由表巨大
- 互联网络的基础在于路由表,网络终端之间通信的数据是由网络中的网络设备选路转发完成的,而选路的依据就是路由表。由于各个
AS
难以做到提取规划,因此子网划分不尽合理,IP
地址的层次化分配结构也遭到破坏,这会不断产生新的、不连续的、不可聚合的多条路由,从而使路由表条目越来越巨大。
IPV4
地址不足导致无法提供有效的层次化规划,从而进一步导致路由表条目的数量越来越巨大。
nat破坏了端到端通信模型
-
由于
IP
地址的短缺,网络地址转换(network address translation,nat
)技术在目前的IPV4
网络中得到了广泛的应用,这在一定程度上缓解了IP
地址短缺造成的影响。然而,nat
的存在也破坏了端到端通信模型,它仅仅是用来延长IPV4
使用寿命的临时手段,而不是IPv4
地址空间问题的终极解决方案 -
在端到端通信模型中,通信的双方既用作客户端,也用作服务器,它们之间的通信是直接将原始数据发送给对方来完成的,期间并不需要其他设备来干预,这也是
IP
设计的初衷。然而nat
却破坏了这种端到端通信模型。 -
在
nat
环境中,如果通信中的一方处于nat
后方,则需要使用额外的转换设备及资源来保证通信双方之间的连接。此转换设备必须记录下转换前的地址和端口,这势必会影响网络的转发性能。而且一旦通信发生故障,则无法第一时间确认到底是转换设备还是nat
后方设备引所引起的。此外,对处于网络安全和上网行为管理的需要记录最终用户行为的组织机构来说,记录并保存nat
状态表还需要耗费更多的资源 -
nat
至少还有两个固有缺陷,即地址冲突不能完全避免和对一些应用的支持不足。一旦通信双方都在nat
后方且存在地址冲突,则nat
对此束手无策。而对于一些非常规IP
+端口转换的应用,比如文件传输协议(file tansfer protocol,ftp
)、会话初始协议(session initiation protocol,sip
)、点对点隧道协议(point to point tunneling protocol,pptp
)等,nat
设备还需要追踪整个会话过程。更重要的是,为了通过一些加密手段来保护ip
报头的完整性,报头在源到目的的传输过程中不允许被篡改。但是nat
会在通信中途改变报头,这也就破坏了完整性的检查。
qos问题和安全性问题
- 在
IPv4
网络中,某些链路的MTU
限制会导致一些网络设备对原始数据进行拆分和重新封装。在这个过程中,难免存在数据丢失或被修改的安全隐患。
IPv6的特性
巨大的地址空间
IPv6
的地址位数增长了4倍,达到了128位。
全新的数据报头部格式
-
ipv6
报头并不是在原有ipv4
报头的基础上进行更改,而是拥有全新的报头格式。
ipv4
的报头结构:
在ipv4
报头中,如果没有选项字段,则报头至少为20字节,而选项字段最多支持40字节。
再来看ipv6
基本报头格式:
-
报头长度:
ipv6
中的报头长度固定为40字节,所以不需要 -
标识、标志和分段偏移量:在
ipv6
网络中,中间路由器不再处理分片。分片处理交由源节点处理,是否分片则由路径最大传输单元(path maximum transmission unit,pmtu
)来决定 -
报头校验和:二层和四层都有校验和,所以三层的检验和并非必需
-
选项和填充:在
ipv6
中,这两个字段由扩展报头来代替。是否有扩展报头则由下一个报头字段来指明,即把扩展报头与上层协议(tcp、udp
等)做同等处理
可扩展报头
ipv6
基本报头后面可以跟可选的ipv6
扩展报头,可扩展报头字段中包括下一报头字段以指明上层协议单元类型。可扩展报头可以有多个,它只受ipv6
数据报长度的限制。常用的扩展报头包括逐跳选项报头(唯一一个每台中间路由器都必须处理的扩展报头)、目标选项报头(指定路由器处理)、路由报头(强制经过指定路由器)、分段报头(需要分段时由源节点构造)、认证报头(类似ipsec
)、封装安全有效载荷报头(类似认证报头)等。其中因为路由报头和目标选项报头等扩展报头的存在,所以移动ipv6
也更容易实现
全新的地址配置方式
- 自动配置是
ipv6
地址配置的主要方式。在大多数情况下,需要接入ipv6
网络中的主机只需要获取自己的64位ipv6
前缀,此前缀通过本地网关发送路由器通告(router advertisement,ra
)报文来完成,然后再结合自己的扩展唯一标识符(extended unique identifier,eui-64
)格式作为主机号生成完整的ipv6
地址,就能实现即插即用。当然实际配置ipv6
时,还分无状态自动配置和有状态自动配置。再者,考虑到安全性,其主机位也可以不使用eui-64
格式。
对于按照优先级传输的支持更加完善
- 在
ipv6
的基本报头中,有8位流量类型标签和20位流标签,这样在无须打开内层数据的情况下就能为视频会以、ip
语音等实时性较高的业务提供更好的qos
保障
全新的邻居节点交互协议
- 在
ipv4
网络中,邻居发现主要靠广播的地址解析协议(address resolution protocol,arp
)来完成,这很容易发生广播风暴。而ipv6
网络不再使用arp
,而是使用邻居发现协议(neighbor discovery protocol,ndp
)来找到邻居。ndp
协议使用多播传输机制,从而减少了网络流量,提高了网络性能。
总结
ipv6
再设计之初,旨在以一种全新的ip
结构来支撑互联网。和ipv4
的一些主要区别包括地址空间的扩展、报头格式的改变、对qos
更好的支持、多播代替广播、增强的可扩展报头、内置安全性和移动性等。
留言