文章目录
- 1 概述
- 1.1 局域网的拓扑结构
- 2 CSMA/CD
- 2.1 三种监听算法
- 2.2 冲突检测原理
- 2.3 二进制指数后退算法
- 3 扩展
- 3.1 网工软考真题
1 概述
1.1 局域网的拓扑结构
2 CSMA/CD
- CSMA/CD:Carrier Sense Multiple Access/ Collision Detection,载波侦听多路访问 / 冲突检测
- 目的:在共享网络里,解决冲突的协议。
- CSMA 的基本原理是:站在发送数据之前,先监听信道上是否有别的站发送的载波信号。若有,说明信道正忙,否则说明信道是空闲的,然后根据预定的策略决定:
- 若信道空闲,是否立即发送
- 若信道忙,是否继续监听
- 如果连续发送 16次 碰撞后,认为网络繁忙有问题,不再尝试发送。
2.1 三种监听算法
- 非坚持型监听算法:当一个站准备好帧,发送之前先监听信道。
- ① 若信道空闲,立即发送,否则转 ②
- ② 若信道忙,则 后退一个随机时间,重复 ①
- 由于随机是延后退,从而 减少了冲突的概率。然而,可能出现的问题是因为后退而使信道闲置一段时间,这使 信道的利用率降低,而且 增加了发送时延。
- 1-坚持型监听算法:当一个站准备好帧,发送之前先监听信道。
- ① 若信道空闲,立即发送,否则转 ②
- ② 若信道忙,继续监听,直到信道空闲后立即发送。
- 这种算法的优缺点与前一种正好相反:有利于抢占信道,减少信道空闲时间。但是,多个站同时都在监听信道时必然会发生冲突。(冲突概率 和 利用率 都高)
- P-坚持型监听算法:这种算法汲取了以上两种算法的优点,但较为复杂。
- ① 若信道空闲,以 概率 P 发送,以概率(1-P)延迟一个时间单位。一个时间单位等于网络传输时延
- ② 若信道忙,继续监听,直到信道空闲,转 ①
- ③ 如果发送延迟一个时间单位,则重复 ①
2.2 冲突检测原理
- 载波监听智能减少冲突的概率,不能完全避免冲突。当两个帧发生冲突后,若继续发送,将会浪费网络带宽。如果帧比较长,对带宽的浪费就大了。为了进一步改进带宽的利用率,发送站应采取 边发边听 的冲突检测方法,即:
- ① 发送期间同时接收,并把接收的数据与站中存储的数据进行比较。
- ② 若比较结果一致,说明没有冲突,重复 ①
- ③ 若比较结果不一致,说明发生了冲突,立即停止发送,并发送一个简短的 干扰信号(Jamming),使所有站都停止发送。
- ④ 发送 Jamming 信号后,等待一段随机时长的时间,重新监听,再试着发送。
- 最小帧长:
L
m
i
n
=
2
R
×
d
v
L_{min} = 2 R \times \frac{d}{v}
Lmin=2R×vd
- R:网络数据速率
- d:最大段长
- v:信号传播速度
2.3 二进制指数后退算法
3 扩展
3.1 网工软考真题
[2018-上]在CSMA/CD 以太网中,数据速率为 100 Mb/s,网段长 2km,
信号速率为 200 m/μs,则此网络的最小帧长是()比特
A.1000 B.2000 C.10000 D.200000
【参考答案:B】
- 根据最小帧公式: L m i n = 2 R × d v L_{min} = 2 R \times \frac{d}{v} Lmin=2R×vd 可知
- L m i n = 2 ∗ 100 ∗ 1 0 6 b / s ∗ 2 ∗ 1 0 3 m 200 / 1 0 − 6 s = 2000 b i t L_{min} = 2 * 100 * 10^6 b/s * \frac{2 * 10^3 m}{200/ 10^-6 s } = 2000 bit Lmin=2∗100∗106b/s∗200/10−6s2∗103m=2000bit
[2014-下]以太网采用的 CSMA/CD 协议,当冲突发生时要通过二进制指数后退算法
计算后退时延,关于这个算法,以下论述中错误是的()。
A.冲突次数越多,后退的时间越短 // 后退时间越长
B.平均后退次数的多少与负载大小有关
C.后退时延的平均值与负载大小有关
D.重发次数达到一定极限后放弃发送