CSMA/CD协议

1.协议来源

如图星形网,中间的集线器做转发,如果 1给2发送数据的同时,3也在给4发送数据,那么就会存在信号混合在一起的问题,

所以就需要发送数据之前,检查一下是否正在有设备发送数据

2.协议层次:数据链路层

协议位置:适配器

3.协议要点

1)多点载入:许多计算机以多点接入的方式

2)载波监听:适配器检测有没有其他计算机也在发送

3)碰撞检测:适配器边发送边监听,当检测到信号电压变化幅度超过一定门限值时,认为至少有两个站在发送数据,表名发生碰撞,对应适配器就要立即停止发送

用图表示具体的过程:谢希仁-P87页

S1:t = 0时,A发送数据,B检测到信道为空闲

S2:t = τ - σ,A发送的数据还没有到达B,由于B检测到信道是空闲的,因此B发送数据

S3:t = τ - σ/2,A发送的数据和B发送的数据发生了碰撞,这时A和B都不知道发送了碰撞

S4:t = τ时,B检测到发生了碰撞,于是停止发送数据,发送冲突信号给A

S5:t = 2τ - σ,A也检测到发生了碰撞,因而也停止发送数据

t = 2τ - σ是因为B先检测到碰撞,发送冲突信号给A,在τ-σ发现碰撞,然后A经过τ时间接受到冲突信号,所以是2τ - σ

4.碰撞重传

1)争用期:2τ,因为发送方经过至多时间2τ就可以知道数据是否遭受了碰撞,其中σ->0

经过争用期这块时间还没有检测到碰撞,才能肯定这次发送不会发生碰撞

2)以太网使用 截断二进制指数退避 算法来确定碰撞后重传的时机

S1: 争用期2τ,具体的争用期时间是51.2μs,对于10Mbit/s以太网,争用期可发送512bit.

S2: k = Min[重传次数,10],r从 [0,1,...,(2的k次方-1)]中随机取出一个数,重传应推后的时间就是r倍的争用期

S3:当重传达16次扔不能成功,则丢弃该帧,并向高层报告

5.以太网帧的最小长度=64字节,why?

要保证以太网的重传,必须保证A收到碰撞信号的时候,数据包没有传完

因为争用期是512bit时间,对应就是64字节,当帧的长度小于64字节时,争用期还没有结束,帧就已经发送完毕,

即使检测到碰撞也不能中止帧的发送。

所以以太网规定了最短帧长64字节,如果要发送的数据非常少,那么必须加入一些填充字节

6.碰撞强化

一旦发生了碰撞,除了立即停止发送数据外,还要继续发送32bit或48bit的人为干扰信号,以便让所有用户知道现在已经发生了碰撞

7.总结

需要注意的点:

1)比特时间的概念

2)最小帧长度

3)随机时间重传

4)检测到碰撞发送人为干扰

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值