Networking ip报头上的版本字段和以太网报头中的类型字段之间的真正区别是什么?

Networking ip报头上的版本字段和以太网报头中的类型字段之间的真正区别是什么?,networking,Networking,IP标头中的版本字段包含所用IP协议的版本(IPv4/IPv6)。 Ethernet报头中的type字段包含将解除封装的数据包转发到哪个第3层协议(IPv4、IPv6)。 为什么IP报头有一个名为“Version”的字段非常重要?它的用途是什么?因为IP可以封装在另一个(非以太网)第2层协议中。IP协议不强制要求使用特定的下层协议,因此无法对该层可用的信息(例如上层协议版本号)进行假设。因此,如果第2层协议仅将“IP”指定为下一层,则需要IP头中的IP协议版本来正确处理它 网络协议以分层方式设计

IP标头中的版本字段包含所用IP协议的版本(IPv4/IPv6)。 Ethernet报头中的type字段包含将解除封装的数据包转发到哪个第3层协议(IPv4、IPv6)。
为什么IP报头有一个名为“Version”的字段非常重要?它的用途是什么?

因为IP可以封装在另一个(非以太网)第2层协议中。IP协议不强制要求使用特定的下层协议,因此无法对该层可用的信息(例如上层协议版本号)进行假设。因此,如果第2层协议仅将“IP”指定为下一层,则需要IP头中的IP协议版本来正确处理它

网络协议以分层方式设计,以减少复杂性并提高通用性。IP层的设计使得每个系统都可以有一个合适的IP层软件来处理数据包,而不必担心数据包是如何传输的。通过这种方式,IP数据包可以通过以太网层或任何其他层(例如FC或ATM)传输,而不依赖于其下一层的知识。IP处理软件需要知道IP的版本,因此IP数据包具有该版本


同样的分层概念也适用于以太网层,它不仅可以帮助传输IP数据包,还可以帮助传输其他类型的数据包(例如IPX),而不需要知道其传输的协议的细节。但是每端的以太网层处理应该知道它们携带的是什么类型的数据包,以便它们可以将数据包移交给适当的层进行进一步处理

因此,您可以说以太网协议需要IP报头中“Version”字段中的部分信息来填充以太网协议中的“Type”字段。如果是这样,为什么IP协议不需要来自传输层报头的一段信息来填充“下一个报头”字段?不,以太网协议(或任何其他第2层协议)需要指定下一步是什么,嵌入的下一层/数据块是什么。所以,它可以说是IP。因为在那个时候,没有人想到会有不同版本的IP。当IP设计器提供新版本时,它可以更改格式并在自己的标题中指定新版本/布局。