载波监听CS中的96比特时间:
96比特时间是指发送96比特所耗费的时间,也称为帧间最小间隔,其作用是使接收方可以检测出一个帧的结束,同时也使得所有其他站点都能有机会平等竞争信道并发送帧。
假设主机A正在给主机的发送一个很短的帧,边发送边检测碰撞,主机A很快就将该帧发送完毕了,之后就不再针对该帧检测碰撞。在该帧的传输过程中,主机C也要发送帧,主机C检测到总线空闲96比特时间后就立即发送帧,尽管总线实际上并不空闲,这必然会产生碰撞。
主机D最终会收到主机A发送的并遭遇碰撞的帧,主机D会将该帧丢弃。但对于主机A而言,他并不知道自己已发送完毕的该帧在总线上传输的过程中遭遇了碰撞,因此不会重发该帧。
很显然:使用CSMA/CD协议的以太网的帧长不能太短。
以太网规定最小帧长为64字节,即512个比特,而发送512个比特的时间即为争用期。
如果要发送的数据非常少,那么必须加入一些填充字节,使帧长不小于64字节。
以太网的最小帧长,确保了主机可在帧发送完成之前就要检测到该帧在发送过程中是否遭遇了碰撞,如果在争用期,也就是共发送64字节所耗费的时间内没有检测到碰撞,那么后续发送的数据就一定不会发生碰撞。
如果在征用期内检测到碰撞,就立即终止发送,这时已经发送出去的数据一定小于64字节。
因此凡长度小于64字节的帧,都是由于碰撞异常终止的无效针。
假设主机A正在给主机D发送一个很长的帧,这会使得主机a长时间占用总线,而总线上的其他主机迟迟拿不到总线的使用权。
另外,由于帧很长,还可能导致主机D的接收缓冲区,无法装下该帧而产生溢出。
因此,以太网的帧长应该有其上限。
例如:
以太网版本二的Mac帧格式:企业数据载荷的最大长度为1500字节,加上首部和尾部共18字节,帧的最大长度为1518字节,而数据载荷的最小长度不能小于46字节,这样加上首部和尾部共18字节,正好满足帧的最小,长度为64字节。
插入微软标记字段后的802.1 Q帧:其数据载荷的最大长度为1500字节,加上首部和尾部共22字节,帧的最大长度为1522字节,而数据载荷的最小长度不能小于42字节,这样加上首部和尾部共22字节,正好满足帧的最小长度为64字节。