计算机网络——随机接入
载波监听多址接入/碰撞检测/ CSMA/CD
多址接入 MA
多个站连接在一条总线上,竞争使用总线
载波监听 CS
每一个站在发送帧之前先要检测一下总线上是否还有其他站点在发送帧(“先听后说”)
若检测到总线空闲 96 比特的时间,则发送这个帧
若检测到总线忙,则继续检测并等待总线转为空闲
碰撞检测 CD
每一个正在发送的帧的站
以太网还采取一种叫做强化碰撞的措施,这就是发送帧的站点一旦检测到碰撞,除了立刻停止发送帧外,还要继续再发送 32 比特或 48 比特的人为干扰信号,以便有足够多的碰撞信号使所有的站点都能检测出碰撞。
主机最多经过 2t(即 & ->0)的时长就可以检测到本次发送是否遭受了碰撞
因此,以太网的端到端往返传播时延 2t 称为
争用期
或碰撞窗口
经过争用期这段时间还没有检测到碰撞,才能肯定这次发送不会发生碰撞
每一个主机在自己发送帧之后的一小段时间内,存在着遭遇碰撞得可能性。这一小段是不确定的。它取决于另一个发送帧的主机到本主机的距离,但不会超过总线的端到端往返传播时延,即一个争用期的时间。
显然,在
以太网中
发送帧的主机越多,端到端往返传播时延越大,发送碰撞得概率越大,因此,共享式以太网不能连接太多的主机,使用的总线也不能太长10MB/s 以太网把争用期定为 512 比特发送时间,即
51.2μs
,因此总线长度不能超过 5120m,但可以考虑到其他一些因素,如信号衰减
以太网规定总线长度不能超过 2500m
CSMA/CD 协议——最小帧长
以太网规定最小帧长为 64 字节,即 512 比特
如果发送的数据非常少,那么必须加入一些填充字节,使帧长不小于 64 字节
以太网的最小帧长确保了主机可在帧发送完成之前就检测到该帧的发送过程是否遭到了碰撞;
如果在争用期(共发送 64 字节)没有检测到碰撞,那么后续发送的数据一定不会发送碰撞
如果在争用期内检测到碰撞 就立刻终止发送,这时已经发送出的数据一定小于 64 字节。因此凡长度小于 64 字节的帧都是由于碰撞而异常终止的无效帧。
版权声明: 本文为 InfoQ 作者【StackOverflow】的原创文章。
原文链接:【http://xie.infoq.cn/article/dd86e8a70190b1f3dc88c49ab】。文章转载请联系作者。
评论