【发布时间】:2012-04-10 10:30:21
【问题描述】:
好的,我知道,这一次我将被禁止 ip 被禁止 :D 我的问题很奇怪:为什么只有V4再跳到V6都采用了!为什么在听到互联网历史时我们找不到 IP V3 或 IP V2?!为什么他们不采用IP V5,这是逻辑不?
因为个人(我很愚蠢)我认为 4 和 6 是使用的字节数......
【问题讨论】:
好的,我知道,这一次我将被禁止 ip 被禁止 :D 我的问题很奇怪:为什么只有V4再跳到V6都采用了!为什么在听到互联网历史时我们找不到 IP V3 或 IP V2?!为什么他们不采用IP V5,这是逻辑不?
因为个人(我很愚蠢)我认为 4 和 6 是使用的字节数......
【问题讨论】:
Charles M. Kozierok,tcpipguide.com 的作者,很好 explains 为什么 IP 的第一个版本是版本 4(不是版本 1):
[Jon]Postel的观察促成了TCP/IP架构的产生,并将TCP拆分为传输层的TCP和网络层的IP;因此名称为“TCP/IP”。 (...) 将 TCP 分成两部分的过程始于 1978 年编写的 TCP 版本 3。 现代网络中使用的 IP 和 TCP 版本的第一个正式标准(版本 4)于 1980 年创建。这就是为什么 IP 的第一个“真实”版本是版本 4 而不是版本 1。 (...)
IPv4 由Jon Postel 在RFC760 中引入,后来由RFC777 更新(引入ICMP)并替换为RFC791。
RFC777和RFC791后来都更新了很多次,如果生成RFCs graph就可以清楚的看到。 here 也提供了简化的 RFC 图表。因为在this site 上找到RFC760 非常困难,所以here 你有有用的截图。
IP 标头中的数字5 表示它是Internet Stream Protocol 数据报。互联网流协议(ST 和后来的ST2)于 1979 年在IEN119 中提出,后来在RFC1190 和RFC1819 中进行了描述。
页面64:
Protocol 为 5 表示包含一个 ST 数据包,而不是 TCP 或 UDP,例如。 将协议 5 分配给 ST 与将 IP 版本 5 分配给 ST 是有安排的巧合 [18]
页面75:
IP 当前使用值 4,而 ST 已分配值 5 [18]。 对于 IP 和 ST 包头的前四位以外的兼容性没有要求。
页面8:
ST2 和 IP 都应用相同的寻址方案来识别不同的主机。 ST2和IP包的前四位不同,其中包含internetnetwork协议版本号:5号是为ST2保留的(IP本身的版本号为4)。作为网络层协议,和IP一样, ST2 独立于其底层子网运行。现有实现使用 ARP 进行地址解析,并使用与 IP 相同的第 2 层 SAP。
作为一种特殊功能,ST2 消息可以封装在 IP 数据包中。 (...)
页面77:
IP 和 ST 数据包可以通过 IP 版本号字段来区分,即数据包的前四 (4) 位; ST 已被分配值 5(参见 [RFC1700 ])。除了前四位之外,IP 和 ST 数据包标头之间没有兼容性要求。 (IP 使用值 4。)
【讨论】:
IPv4 和 IPv6 之间的版本序列差异是由于 将第 5 号分配给实验性 Internet 流协议 1979 年,但从未被称为 IPv5
http://en.wikipedia.org/wiki/IP_address#IP_versions
IPv1、2 和 3 实际上是 TCP/IP 协议的一部分,其中 有3个版本。 IPv4是他们将2分成分开吗 协议并创建了更新的 IP 协议。
http://itknowledgeexchange.techtarget.com/itanswers/what-happened-to-ipv1-ipv2-ipv3-and-ipv5/
【讨论】:
我认为主要问题是硬件加速。大型仓库和互联网控制器具有硬件加速的 v4/v6 路由器。他们不想在 20 年内多次更换这些东西。做更多的事情太昂贵了。
【讨论】: