初学IPv6时,有几个IPv6的做法可能会让你感到无所适从,你甚至会有惊讶的表情出现——对IPv4越熟悉表现出来的可能会是越惊讶(当然,如果没有学过IPv4,而直接学习IPv6的话,是不会有这种惊讶的,没有新旧观念的对比,自然不会出现惊讶的火花),这里列出几个可能会令熟悉IPv4的人感到困惑的:
1. IPv6 Header没有Checksum.
IPv4的IP Header里有一个Checksum字段,用来检查数据包的正确性,在IPv4中这么重要的一个字段,IPv6就如此轻易的把它给拿掉了???是的,确实如此,IPv6认为Datalink layer和Transport layer都有校验的功能,将校验的工作交给这两层就好了,IP层不做校验的动作可以提高效率。据说现今IPv4的高速路由器一般也忽略Checksum这个字段,收包的时候计算一次,转发的时候又计算一次,确实挺浪费时间的...
2. IPv6中间结点不做分片动作.
熟悉IPv4的都知道,无论是发送方还是中间的路由器,如果发现包太大,就要对它进行分片然后传输。虽然IPv6定义了分片的扩展头——Fragment Header,但是分片的动作只在sender进行,中间的Router是不做分片动作的。那么如果Router发现包太大而无法继续传输,该怎么办呢?很简单,直接丢弃该数据包,然后报错——发送"Packet Too Big"的ICMPv6报文。发送方收到"Packet Too Big"的ICMPv6报文后,要调整自己的PMTU(Path MTU)值(也就是改变包的大小),然后发送,如此反复,直到发送成功,这就是传说中的Path MTU Discovery的简单表述,也是Path MTU Discovery的精髓所在...
3. 没有Broadcast.
IPv4有:unicast、multicast和broadcast,而IPv6只有unicast、multicast和anycast,没有broadcast,broadcast的工作由multicast来代替。
4. 可以不通过DHCP来获取地址.
惊讶程度:*****。一般听到“没有DHCP,也可以得到IPv6地址”时的第一个反映是:用惊讶的表情,将这句话用问句的形式重复一遍。然后再问道:“那怎么获取IP?”这也就验证了“越熟悉越惊讶”,一般人不会care IP header有没有checksum、路由器会不会做分片等这些不是很接近用户的东西。DHCP是应用程的协议,直接接触的用户。IPv6除来使用DHCPv6(Stateful Address Autoconfig)来自动获取IP外,还有一种是通过ICMPv6(Stateless Address Autoconfig)来获取IP。
阅读(2540) | 评论(0) | 转发(0) |