目录
正文内容基本来源于以下两链接的参考,感谢分享:https://blog.csdn.net/a827415225/article/details/79423264
https://blog.csdn.net/weixin_43916755/article/details/122697478
首先总概括一下互联网帧间隙共20字节,包括:
前导码(Preamble)7Byte | 帧开始界定符(SFD) 1Bye | 帧长 | 帧间隙(IFG) 12Byte |
包含7个字节,由10循环组成,每个字节内容都是:10101010;
前导码的作用是在发送方和接收方之间进行时钟同步,当发送方发送数据时,加上这七个字节的前导码作为报文头部,发送给接收方,当接收方收到10101010时,会按照协议规定,调整自己的字节时钟,准备接收发送方来的数据。
长度为1字节,内容为 10101011,这段代码的意思是通知接收方,当收到11后边的内容时,不是同步信号了,是真正的数据了
通常所说的前导码包含了(Preamle和 SFD)一共8字节,但是实际是7+1,知道每个字节的作用即可。
表示以太网相邻两帧之间的时间段,以太网发送方式是一个帧一个帧的发送,帧与帧之间需要间隙,即帧间距。
IFG的长度是96bit(12Byte)字节,也称为以太网最小帧间隙(IEEE802.3),即等待12字节时间之后在发送下一帧,这与CSMACD特性有关,避免冲突。
IFG也可以称为IPG(interpacket Gap)。IFP指的时一段时间,不是距离,单位通常是微秒(us)或者纳秒(ns)
网络设备和组件在接收一个帧之后,需要一段短暂的时间来恢复并为接收下一帧做准备
IFG的最小值是96 bittime,即在媒介中发送96位原始数据所需的时间,在不同媒介中IFG的最小值是不一样的,不管10M/100M/1000M的以太网,两帧之间最少要有96bit,IFGmin=96bit/s
IFG在以太网的流控制机制中解决速度匹配问题
①经过时钟数据恢复器CDR的处理,从数据中提取时钟,并给予提取的时钟CLK2,将数据包存入接收缓存,此时,CLK2和OSC1是同步的;
②数据从接收缓存,经过上层协议的处理,存入发送缓存。
如何解决上述问题? 在设备2的发送侧通过减少IFG帧间距来加快其发送有效数据包的速度,从而使得发送速度能跟上接收速度。