• 3.6.3、随机接入-CSMA/CD协议


    总线局域网使用的协议

    image-20221126185612083


    image-20221126190845672

    [^96 比特时间]: 发送 96 比特所耗费的时间,也成为帧间最小间隔。其作用是接收方可以检测出一个帧的结束,同时也使得所有其他站点都能有机会平等竟争信道并发送帧。


    1、案例

    多个主机连接到一根总线上,各主机随机发送帧。

    • 假设主机 C 要发送帧。他首先进行载波监听,检测到总线空闲 96 96 96 比特时间后,就可以发送帧了。

    • 假设在主机 C 使用总线发送帧的过程中,主机 B 也要发送帧,主机 B 进行载波监听,发现总线忙,于是持续监测总线,一旦发现总线空闲 96 96 96 比特时间,则立即发送帧。

      • 主机 B 边发送帧还要边检测碰撞,只要没检测到碰撞,则可继续发送帧的剩余部分
    • 假设在主机 B 使用总线发送帧的过程中,主机 C 也要发送帧,主机 C 进行载波监听,发现总线空闲 96 96 96 比特时间后立即发送帧,这必然会产生碰撞

    • 在检测碰撞的时刻,主机 B 和主机 C 都在发送帧边检测碰撞,但都检测不到碰撞

    image-20221126192104399

    • 碰撞信号沿总线传播,主机 C 会比主机 B 更早检测到碰撞并停止发送。退避一段随机时间后,重新再发送之前所发送的帧

    image-20221126192210694

    • 当主机 B 检测到碰撞后,立即停止发送。退避一段随机时间后,重新再发送之前所发送的帧

    image-20221126192315235

    2、争用期(碰撞窗口)

    image-20221126192932297

    image-20221126195546527

    传播时延: 51.2 u s / 2 51.2us/2 51.2us/2 (争用期 / 2)

    总线长度 = ( 2 × 1 0 8 m / s ) × 51.2 u s / 2 = 5120 m = (2 \times 10^8 m/s) \times 51.2 us/2 = 5120m =(2×108m/s)×51.2us/2=5120m

    image-20221126212220330

    image-20221126212232568

    碰撞之后还要将碰撞信号传输回两个主机

    image-20221126212620144

    3、最小帧长

    假设主机 A 给主机 D 发送很短的帧,边发送边检测碰撞。主机 A 很快就将该帧发送完毕了,之后就不再针对该帧检测碰撞。

    之后,再该帧的传输过程中,主机 C 也要发送帧。主机 C 检测到总线空闲 96 比特时间后就立即发送帧。

    • 尽管总线实际上并不空闲(因为主机 C96 比特时间内没有检测到信号),这必然会产生碰撞

    主机 D 最中会收到主机 A 发送的、并遭遇碰撞的帧,主机 D 会将该帧丢弃

    image-20221126201857613

    对于主机 A 而言,它并不知道已发送完毕的该帧遭遇了碰撞,不会重发该帧

    • 因为只有一个站点在发送数据时候才会检测碰撞,若发送的数据太小,则发送的时间也就很短

    image-20221126202533895

    最 小 帧 长 = 争 用 期 × 数 据 传 输 速 率 最小帧长 = 争用期 \times 数据传输速率 =×

    4、最大帧长

    image-20221126203117143

    5、截断二进制指数退避

    退避时间:检测到碰撞后要等待一段时间才能发送数据,这段时间就是退避时间

    image-20221126203540343

    6、信道利用率

    image-20221126204012083

    T 0 T_0 T0:发送时延

    τ \tau τ :一个单程端到端的传播时延

    7、帧发送流程图

    image-20221126204034798

    8、帧接收流程图

    image-20221126204518702

    帧太短:说明小于 512 比特,则认为遭遇了碰撞,因为帧的最短长度为 512 比特(64 字节)

    9、习题

    image-20221126205024447

    image-20221126205548781


    image-20221126210809657

    image-20221126211348870

    l = 800 比 特 l = 800比特 l=800


    image-20221126212220330

    image-20221126212232568

    碰撞之后还要将碰撞信号传输回两个主机

    image-20221126212620144

    10、总结

    image-20221126220208943

  • 相关阅读:
    Python中的列表list及字典dictionary基本方法总结
    50道必备的Python面试题 (建议点赞)
    【自然语言处理】【可解释性】NKB:用于预训练Transformers的神经知识银行
    【linux基础(五)】Linux中的开发工具(上)---yum和vim
    Day818.电商系统的分布式事务调优 -Java 性能调优实战
    kail 搭建docker和vulhub漏洞环境
    【C++Primer---C++知识点记录*VI---泛型算法】
    pip install下载失败
    FPGA基于1G/2.5G Ethernet PCS/PMA or SGMII实现 UDP 网络视频传输,提供工程和QT上位机源码加技术支持
    Beats:安装及配置 Metricbeat (二)- 8.x
  • 原文地址:https://blog.csdn.net/qq_67720621/article/details/128072181