CSMA/CD协议

CSMA/CD协议:载波帧听,多路访问/冲突检测

  • 载波帧听:每个计算机在发送数据帧前,首先帧听是否空闲,如果空闲,则发送数据帧;否则等待,继续帧听直到信道空闲。
  • 多路访问:多个主机以多点接入方式连接在一根总线上,都有访问总线的权利。
  • 冲突检测:计算机在发送数据帧过程中,不断进行检测线路是否冲突,如果发生则停止发送,同时给发生冲突的线路发送一个阻塞信号随机等待一段时间,继续帧听信道是否空闲。

检测冲突即检测信道上的信号电压大小,当多个主机在总线发送数据时,信号电压摆动值会增大。

(1)冲突发生时机
在这里插入图片描述

  • A到D的传播延迟时间为τ,而D在τ-δ检测信道空闲,所以向总线发送数据

  • 由上图可知,等腰三角形可推得,D在t=τ时,检测到碰撞,A在t=2τ-δ检测到碰撞

  • 当δ为τ时,双方检测到碰撞的时间最短,为τ;当δ为无限趋近于0时,碰撞检测时间最长为2τ。
    所以要保证数据不发生碰撞,提前检测信道是否空闲时,只要保证2τ时间内信道空闲,就不会碰撞,我们将端到端往返传播时延2τ称为冲突窗口(争用期)
    (2)冲突窗口计算

  • 标准以太网(10M)中,取2τ =51.2 μs 为冲突窗口的大小。

    • 数据传播速率为10Mbps,在冲突窗口内可发送512bit,即64字节。
    • 发送节点一检测到冲突就立即停止发送,这时已经发送出去的数据一定小于等于 64 字节。
    • 10 Mb/s以太网在发送数据帧时,若前 64 字节没有发生冲突,则后续的数据就不会发生冲突。
    • 以太网必须规定了最短有效帧长为 64 字节,如果小于64字节,必须使用填充位使其等于64 字节。
    • 凡长度小于 64 字节的帧都是由于冲突而异常中止的无效帧(碎片帧)。
    • 最小帧长 = 争用期 * 信道带宽(数据发送速率)
      最小帧长确保了主机可在帧发送完成前就检测到该帧的发送过程是否遭遇碰撞
      (3)强化冲突

  • 主机发送数据帧检测到冲突时。需要做下面三件事:

    • 立即停止发送数据帧
    • 在继续发送4个字节的人为干扰信号,即阻塞信号
    • 随机等待一段时间(二进制指数类型退避算法),再重新争用总线。

    二进制指数类型退避算法
    当冲突次数K<=16时,
    j=Min[冲突次数K,10]
    随机等待[0,……,2j-1]个争用期
    当冲突次数K达到16次仍不成功时,丢弃该帧,向高层报告。

  • 1
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

_wow_

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值