• 正文
  • 相关推荐
申请入驻 产业图谱

以太网发送时,两帧数据包的发送间隔是多少,为什么?

6小时前
262
加入交流群
扫码加入
获取工程师必备礼包
参与热点资讯讨论

本篇主要是讨论以太网发送时,两帧数据包的发送间隔是多少,为什么?

以太网发送时,两帧之间的最小间隔称为帧间间隙(Interframe Gap, IFG)包间间隙(Interpacket Gap, IPG),标准规定为 96 比特时间(bit times)

这个间隔是强制性的硬件死区,在 FPGA 实现以太网 MAC 时,发送状态机必须严格遵守。

为什么必须是 96 比特时间?

这个数值不是随意定的,而是精确平衡了物理极限和协议公平性的结果。

为接收方留出处理时间(最核心原因)

接收端的 MAC 层在收完一帧后,硬件需要进行一连串操作:检查 FCS 校验和、根据目的 MAC 地址做过滤、将数据转移到 DMA 缓冲区、更新内部寄存器、准备好接收下一帧。96 比特时间就是留给这些逻辑电路的“喘气”时间。在 10M 时代,这是早期芯片处理能力的极限;虽然现代芯片早已足够快,但为了兼容性,这一标准被严格继承下来。

在半双工下实现冲突检测与公平性

经典以太网使用 CSMA/CD(载波侦听多路访问/冲突检测)。帧间间隔保证了:即使总线上有很多设备都在等着发,任何一个设备在发现信道由忙变闲后,都必须强制等待一个 IFG。这就防止了某台设备独占信道,给所有站点创造了一个公平抢占的机会。96 比特时间正好大于信号在最大规模网络(2500米、4个中继器)中往返传播的时间,确保一个站点的冲突信号能被其他站点有效检测到。

物理层时钟恢复保持稳定

接收端的 PHY 芯片是依靠接收到的数据跳变来锁定时钟相位的。如果两帧之间无缝衔接,长时间的固定电平会让时钟恢复电路“跑偏”。96 比特时间的空闲(IDLE 码流)相当于一个缓冲,让模拟电路锁相环(PLL)在重置到下一帧的起始定界符前,保持一个稳定的同步基准。

 

本篇内容中有部分资源来源于网络,如有侵权,请联系作者。

相关推荐