2022计算机考研:计算机网络之CSMA/CD协议
计算机考研考生需要掌握计算机知识点的重难考点,形成完整的计算机知识体系。对于复习备考,大家应该抓住考点、得分点,以拿高分为主要目的。以下是学府考研网为大家整理的“2022计算机考研:计算机网络之CSMA/CD协议”的内容,希望对大家的考研复习有所帮助。
CSMA/CD协议
载波侦听多路访问/碰撞检测(Carrier Sense Multiple Access with Collision Detection,CSMA/CD)协议 是CSMA协议的改进方案,适用于总线形网络或半双工网络环境。载波侦听就是发送前先侦听,即每个站在发送数据之前先要检测一下总线上是否有其他站点正在发送数据,若有则暂时不发送数据,等待信道变为空闲时再发送。碰撞检测就是边发送边侦听,即适配器边发送数据边检测信道上信号电压的变化情况,以便判断自己在发送数据时其他站点是否也在发送数据。
CSMA/CD的工作流程可简单概括为:先听后发,边听边发(区别于CSMA协议)、冲突停发、随机重发
(1)适配器从其父节点获得一个网络层数据报,准备一个以太网帧,并把该帧放到适配器缓冲区中
(2)如果适配器侦听到信道空闲,那么它开始传输该帧。如果适配器侦听到信道忙,那么它将等待直至侦听到没有信号能量,然后开始传输该帧
(3)在传输过程中,适配器检测来自其他适配器的信号能量。如果这个适配器传输了整个帧,而没有检测到来自其他适配器的信号能量,那么这个适配器完成该帧的传输。否则,适配器就须停止传输它的帧,取而代之传输一个48比特的拥塞信号。
(4)在中止(即传输拥塞信号)后,适配器采用截断二进制指数退避算法等待一段随机时间 后返回到步骤2
总线的传播时延对CSMA/CD的影响很大。
设τ为单程传播时延。在t=0时,A发送数据,B检测到信道空闲。在t=τ-δ时,A发送的数据还未到达B,由于B检测到信道空闲而发送数据。经过时间δ/2后,即在t=τ-δ/2时,A发送的数据和B发送的数据发生碰撞,但这时A和B都不知道。在t=τ时,B检测到碰撞,于是停止发送数据。在t=2τ-δ时,A检测到碰撞,也停止发送数据。显然,CSMA/CD中的站不可能同时进行发送和接收,因此采用CSMA/CD协议的以太网不可能进行全双工通信,而只能进行半双工通信。
站A在发送帧后至多经过时间2τ就能知道所发送的帧是否发生碰撞(δ->0时)。因此把以太网端到端往返时间2τ称为争用期(又称冲突窗口或碰撞窗口) 。每个站在自己发送数据之后的一小段时间内,存在发生冲突的可能性,只有经过争用期这段时间还未检测到冲突时,才能确定这次发送不会发生冲突。
为了确保发送站在发送数据的同时能检测到可能存在的冲突,需要在发送完帧之前就能收到自己发送出去的数据,即帧的传输时延至少要两倍于信号在总线中的传播时延, 所以CSMA/CD总线网中的所有数据帧都必须要大于一个最小帧长。任何站点收到帧长小于最小帧长的帧时,就把它当做无效帧立即丢弃。 最小帧长的计算公式为
最小帧长=总线传播时延 x 数据传输率 x 2
例如,以太网规定取51.2μs为争用期的长度。 对于10Mb/s的以太网,在争用期内可发送512bit,即64B。在以太网发送数据时,如果前64B未发生冲突,那么后续数据也就不会发生冲突(表示已成功抢占信道)。 换句话说,如果发生冲突,那么就一定在前64B。由于一旦检测到冲突就立即停止发送,因此这时发送出去的数据一定小于64B。因此,以太网规定最短帧长为64B,凡长度小于64B的都是由于冲突而异常终止的无效帧。
如果只发送小于64B的帧,如40B的帧,那么需要在MAC子层中于数据字段的后面加入一个整数字节的填充字段,以保证以太网的MAC帧的长度不小于64B
除检测冲突外,CSMA/CD还能从冲突中恢复。一旦发生了冲突,参与冲突的两个站点紧接着再次发送是没有意义的,如果它们这样做,那么将导致无休止的冲突。CSMA/CD采用二进制指数退避算法 来解决碰撞问题。算法思想如下:
(1)确定基本退避时间,一般取两倍的总线端到端传播时延2τ(即争用期)
(2)定义参数k,它等于重传次数,但k不超过10,即k=min[重传次数,10]。 当重传次数不超过10时,k等于重传次数;当重传次数大于10时,k就不再增大而一直等于10
(3)从离散的整数集合[0,1,…,2k-1]中随机取出一个数r,重传所需要退避的时间就是r倍的基本退避时间,即2rτ
(4)当重传达16次仍不能成功时,说明网络太拥挤,认为此帧永远无法正确发出,抛弃此帧并向高层报告出错。
假设一个适配器首次试图传输一帧,当传输时,它检测到碰撞。第1次重传时,k=1,随机数r从整数{0,1}中选择,因此适配器可选的重传推迟时间是0或2τ。若再次发生碰撞,则在第2次重传时,随机数r从整数{0,1,2,3}中选择,因此重传推迟时间是在0,2τ,4τ,6τ这4个时间中随机地选取一个。以此类推。
使用二进制指数退避算法可使重传需要推迟的平均时间随重传次数的增大而增大(这也称动态退避),因而能降低发生碰撞的概率, 有利于整个系统的稳定
以上便是学府考研为考生整理的“2022计算机考研:计算机网络之CSMA/CD协议”的相关内容,正确的考前复习方法能让备考事半功倍,在这里学府小编预祝各位考生考试顺利,梦想成真。更多计算机考研信息可查看计算机栏目!
推荐阅读:
推荐阅读
热门课程
- 2021考研管综荣耀vip全程班【工程管理】 2020-5-20截止
- 2021考研管综荣耀vip全程班【会计】 2020-5-20截止
- 2021考研管综荣耀vip全程班【图书情报】 2020-5-20截止
- 2021考研管综荣耀vip全程班【工程管理】 2020-5-20截止
快速查询
学府考研辅导
官方微博