假设结点 A 和结点 B 在同一个 10 Mbps 的广播信道上,这两个结点的传播时延为 325 比特时间。假设对这个广播信道使用 CSMA/CD 和以太网分组。假设结点 A 开始传输一帧,并且在它传输结束之前结点 B 开始传输一帧。在 A 检测到 B 已经传输之前,A 能完成传输吗?为什么?如果回答是可以,则 A 错误地认为它的帧已成功传输而无碰撞。提示:假设在 t = 0 比特时刻,A 开始传输一帧。在最坏的情况下,A 传输一个 512 + 64 比特时间的最小长度的帧。因此 A 将在 t = 512 + 64 比特时刻完成帧的传输。如果 B 的信号在比特时间 t = 512 + 64 比特之前到达 A,则答案是否定的。在最坏情况下,B 的信号什么时刻到达 A ?
因为B如果检测到有A流量,不会进行发送帧,所以最坏情况是在A的第一比特刚好要到B时,B开始发送。
在t=324, 即A的第一个bit还没有到达B, 此时B开始传输,A会在t=324+325=649检测到发送冲突,但A在t=512+64=576时,就已经错误地认为A已经成功传输要传输的帧了,所以会造成A的失败传送。
PS:
1)ALOHA:想发就发
2)时隙ALOHA:分若干个时间片
3)CSMA:先听后发
4)CSMA/CD:边听边发 + 二进制指数后退算法(但还会冲突,因为存在传播时延,如上题:A在边听边发,虽然没有检测到碰撞,但实际上A信号已经被碰撞干扰)