为什么以太网指定了最小帧大小?


12

我认为最小为64字节。为什么需要这个最低限度?

Answers:


16

快速阅读一下,似乎与CSMA / CD的碰撞检测部分有关。如果旧广播媒体上的帧太小,则将无法检测到某些冲突。继续我今天的汽车类比主题,出于同样的原因,我们不允许在高速公路上使用自行车-只是对他们而言并不安全。


3
+1,我不知道关于自行车...
凯尔·布​​兰特

6
+1冲突检测是原因。在10Mb以太网速度下64个字节为0.04ms。任何较小的碰撞都不会被发现(1982年)。
sysadmin1138

如果我了解您,则最小64字节的原因是给其他站足够的时间来注意到它?
CodyBugstein'3

1
您能否详细说明为什么无法检测到冲突?
2016年

1
我敢肯定,在高速公路上发生的自行车碰撞是可以检测到的。而且无论如何,在美国西部大多数州的州际公路上都允许骑自行车,所以我不确定这种类比是否合适。:)
迈克尔·汉普顿

4

除了mfinni的(绝对正确)答案之外,设置最小帧大小还使您可以花费多个接收周期来验证帧的校验和。在“昔日的日子”中,您可以轻松想象一个芯片,每个周期处理一位,但是要花费很多周期才能在与接收路径平行的专用路径上计算校验和。接收到许多短消息可能会导致该校验和逻辑因同时触发多个同时操作而变得乱码。丢弃低于特定大小阈值的任何内容,都可以通过简单的方式避免出现此问题。


我相信这个答案是错误的;它与介质中的传播延迟和碰撞检测有关。
安德鲁·瓦格纳

@AndrewWagner,正如我在答复中已经说过的那样,上面有关碰撞检测的mfinni答案是正确的。我的观点是,规范的这种“怪异”也使硬件设计人员可以采取一些自己的捷径。
BMDan 2014年

2

以太网旨在通过共享介质(以太!)工作。发送者能够感知驱动醚的信号何时不同于以太信号。

不幸的是,所有媒体都有传播延迟(不幸的是,即使光以有限的速度传播)。

假设您发送的帧很短。要检测接收器是否在接收帧的同时正确发送,您必须等待它们发送的信号到达您,因此因此,在知道是否存在介质传播延迟之前,您必须等待/监听两倍的介质传播延迟。接收端发生冲突。

现在,您不仅可以在这段时间内收听(发送沉默),还可以继续发送这段时间内的有用信息。

因此,该标准将最小帧大小设置为您可以在TWICE中发送的数据量,即共享介质中最坏情况下的传播延迟。

因此,如果您不满意,因为大帧对您的小消息感到“未优化”,请考虑将数据包中的多余空间作为寻找其他发送内容的机会,否则您还是必须发送零。

当然,在本地网络标准中,还有许多其他方法可以处理冲突和传播延迟,但是那样就不会是以太网,我想我们都可以认为以太网非常好。


问题:我理解为什么您需要最低限度,或者为什么2 x PD64字节来自哪里?它不应该取决于电缆的长度/类型吗?64个字节似乎是任意的
CodyBugstein 2015年

它回到了旧的效率与复杂性之间的权衡。您可以构建一些系统来自动测量网络并选择适当的最小数据包大小,但这会增加相对平凡的复杂性,而获得的收益却相对较少。
彼得·格林

0

为了使CSMA / CD正常工作,您需要一致的碰撞检测。

如果接收方发现冲突而发送方没有发现冲突,则数据包将丢失。同样,如果发送方看到冲突,但接收方却没有,您将在发送方重新传输后得到重复的数据包。两者都不可取。

由于数据以有限的速度传输,因此需要最小的数据包大小,以确保如果发生冲突,它会在所有地方发生。您使最小数据包大小越大,则在CSMA / CD发生故障之前可以使网络规模越大和/或越快。

至于为什么我不知道64字节的原因,但考虑到它们的运行速度,以太网的预期大小和预期的大小,我希望这只是一个“恰好在当时看起来”的整数。更高级别的数据包。


0

最小64字节的数据包长度不是一个任意数字。在10Base5物理层(“胖以太网”同轴电缆,即最初指定的物理层之一,具有允许的最长电缆)中,它导致最小的数据包长度(以微秒为单位),是最大长度的往返时间的两倍。电缆长达2500米,由五个500米网段和四个中继器组成。这是为了确保从电缆相对侧传输的数据包在电缆中的每个点处完全碰撞,以便在所有节点中进行可靠的冲突检测。

琐事:

  • 这是安全开销最小数量的两倍
  • 同轴电缆中的碰撞检测可以通过模拟电压比较器完成(因为碰撞的数据包会导致正常信号电压的两倍)
  • 铜缆中的电速约为每秒200000公里
  • 10Base5以太网中的每一位电缆长度为20米
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.