以太网提供哪些传输服务保障?

网络工程 以太网 服务质量 标准化
2021-07-17 05:59:30

高层传输协议具有某些特性。例如,TCP“保证”无重复、无错误的数据包按序交付。UDP 基本上提供与 IP 相同的属性,但在每个进程/套接字级别上。这些是简单的数据包最佳交付,没有像免费或按顺序重复之类的保证。

据我所知,以太网不直接保证数据包的交付(也就是丢失和无重复或有序)。我知道某些标准最终会违反这些属性,例如 PRP(并行冗余协议)。此外,在典型的以太网拓扑中,复制等是不可能直接实现的,因为没有动态路由。但是,在现代 SDN 网络中,数据包是否有可能采用多条路由?

是否有任何来源指定以太网帧必须按顺序或无重复到达?此类规范是否还有其他正式来源?

3个回答

以太网中唯一的“保证”是基于 CRC 的帧完好无损地到达。没有检测丢失或重复帧的机制,因为在该层没有“会话”或“流”的概念。

以太网是基于架构参考模型(OSI 和/或 TCP/IP)设计的。虽然这些模型是抽象的,但当 IEEE 等标准机构正在创建/修改以太网等标准时,它们确实具有很大的意义。

这些模型列出了模型每一层预期的某些特征,称为不变量。不变量有两种风格,硬(绝对提供)和软(通常提供),上层协议可以以绝对(硬)或一般(软)从底层自然期望这些行为的方式编写。

数据链路层硬不变量包括帧的非重复和顺序传送。

是否有任何来源指定以太网帧必须按顺序或无重复到达?此类规范是否还有其他正式来源?

不,以太网标准中没有任何规定帧必须按顺序到达或无重复。然而,以太网标准的编写方式是提供这些特性以满足架构模型的预期行为。

据我所知,以太网不直接保证数据包的交付(也就是丢失和无重复或有序)。我知道某些标准最终会违反这些属性,例如 PRP(并行冗余协议)。

如果你真的看看像 PRP 这样的东西,它仍然保持了上面提到的不变量。虽然它确实复制了帧,但它仅通过两个单独的数据链路层发送一帧,每个层都保持帧的顺序传递。然后,接收端的 PRP 设备也会对在两条链路上接收到的帧进行重复数据删除,然后再向上层传递。

但是,在现代 SDN 网络中,数据包是否有可能采用多条路由?

如果根据普遍接受的架构设计原则正确设计它们,即使 SDN 协议使用多条链路,它也会保持数据链路层的不变量。否则可能会破坏在自己的设计和操作中期望这些特性的上层协议。

以太网、IP 和 UDP(带有可选的校验和)都只在数据包完好无损时传输数据包 - 当校验和不匹配时,数据包将被丢弃。唯一的保证是收到的数据包与发送的一样。

TCP 跟踪哪些数据包已成功接收 - 它们被接收器确认 - 并自动重新发送那些尚未成功接收的数据包。

以太网可能会使用动态“路由”,但由于这会在更高层中导致意外的副作用,因此很少这样做。但是,在更高层中,数据包采用不同的路由并不少见。TCP 通过在将数据移交给应用程序之前将数据包重新排序为原始顺序来提供此功能。以太网帧不需要按顺序到达,广播实际上可以在某些条件下重复(例如 SPB 可能会导致这种情况)。

所有以太网规范都可以在 IEEE 802 中找到 - 第 1 层是 802.3,第 2 层是 802.1:http : //ieeexplore.ieee.org/browse/standards/get-program/page/series?id=68