带你进入互联网协议第六版(IPv 6) 第 2 章 IPv6 技术简介 2.3 IPv6 功能(II)-2.3.3 改进的路由选择
1. ICMPv6
ICMP并不是 IP层路由功能的一部分,但 IPv6很多路由方面的新特征都依赖于ICMP。IPv6对 ICMP做了大量改进,升级为 ICMPv6。ICMPv6具备目前 ICMP的基本功能,并综合了 IPv4中分属不同协议完成的功能。多播收听者发现(MLD)用ICMPv6消息取代了IPv4所用的因特网组管理协议(IGMP),使得效率和安全性有了明显提高。
ICMPv6实现的更重要的新功能是邻居发现协议(NDP)。NDP是IPv6协议的一个基本功能,用来管理同一链路上节点间的通信。NDP取代了数据链路层的ARP,抑制了广播风暴,提高了安全性。NDP能够完成邻居发现和路径 MTU,为IPv6的源主机分段提供信息。路由器通过 NDP宣告邻接路由器转发数据报,通知发送端重定向,实现最佳路由。此外,NDP还为自动配置提供网络前缀等参数,检测地址可达性和重复地址。
2. 从BGP-4到IDRP
IPv6域间路由最大的改进在于 IDRP替代了 BGP-4。由于边界网关协议(BorderGatewayProtocol,BGP)对 32位的 IPv4优化程度相当高,很难为 IPv6升级,因此 IPv6所使用的外部网关协议以域间路由选择协议(InterDomainRoutingProtocol,IDRP)为基础。
IDRP和 BGP-4的主要区别如下。
(1) BGP报文通过TCP(传输控制协议)交换,IDRP单元直接通过数据报来传递。
(2) BGP是一个单地址族协议,IDRP可以使用多种类型的地址。
(3) BGP使用 16位的自治系统编号,IDRP使用变长的前缀来标识一个域。BGP描述的是路径所通过的自治系统编号的完整列表,而 IDRP能对这个信息进行聚集。
3. 源主机分片
IPv4逐跳分片并不理想,增加了路由器的负担,一个分片的丢失会导致所有分片重传。IPv6分片只发生在源节点,简化了报头并减少了路由器的分段开销。IPv6要求各节点间 MTU的最小值为 1280Byte,兼顾了网络效率和旧设备成本,并要求所有节点支持路径MTU发现,根据链路状况选择最佳分段的大小。
通过以上路由方面的改进,再加上地址格式的变化和报头的简化,大大降低了主机和路由器的复杂性和负荷。据Cisco资料表明,在 Cisco主流路由器中配置的 IPv4内核为 2.17MB,如计算存放路由表的工作区则升至 3.2MB,而配置 IPv6的内核时,其内核仅为 1.69MB,加上工作区也不过为 2.7MB,而且路由效率有明显提高。