# 截断二进制指数规避算法

## 什么是截断二进制指数规避算法

在[CSMA/CD](https://baike.baidu.com/item/CSMA%2FCD%E5%8D%8F%E8%AE%AE)协议中，检测到碰撞我们要重传数据。那么如何选择碰撞后数据的重传的时机呢？该算法就是为了解决这个问题而提出的

## 如何使用该算法计算重传时机

首先，发生碰撞后我们要确定一个基本的退避时间来延迟发送。假设从A发送到B的[传播时延](https://baike.baidu.com/item/%E4%BC%A0%E6%92%AD%E6%97%B6%E5%BB%B6)是 t ，我们将基本退避时间设置为 2t 。

其次，定义参数 k ，用于记录重传的次数。 k = min\[ 重传次数，10 ]。当检测到数据碰撞时，在 0 \~ 2k - 1 的范围中随机取出一个数 r ，重传时间 R 即为 r 倍的基本退避时间 ， R = 2tr

最后，若重传 **16** 次仍然不能成功发送数据则向网络层发出错误信息表示网络拥挤并抛弃此帧
