将总线上的单程端到端的传播时延记为τ,A发 送数据后最迟要经过多长时间才能知道自己 发送的数据和其他站发送的数据有没有发生 碰撞? 时间为:2τ。 使用 CSMA/CD协议的以太网不可能进行全双 工通信而只能进行半双工通信。 些重要的时刻:
将总线上的单程端到端的传播时延记为τ,A发 送数据后最迟要经过多长时间才能知道自己 发送的数据和其他站发送的数据有没有发生 碰撞? 时间为:2 τ。 使用CSMA/CD协议的以太网不可能进行全双 工通信而只能进行半双工通信。 一些重要的时刻:
t=0 t=T-6 A线发送数据 B开始发送数据 t 发生碰撞 t=2τ-6 B检恻到碰撞 e A检测到碰撞
4争用期 A在发送了数据帧后最多经过2τ的时间就可知道是 否遭受了碰撞。因此以太网的端到端的往返时延 2τ为争用期。 经过争用期这段时间还没有检测到碰撞,才能肯定 这次发送不会发生碰撞了。 现在考虑一种情况:当某个站正在发送数据时,有 另外两个站有数据要发送。这两个站进行载波监 听,发现总线忙,于是就等待。当它们发现总线 变为空闲时,就立即发送自己的数据。这必然会 生冲突,就停止发送。然后再重新发送。 这样下去一直发送不成功。 解决这个问题的方法是采用截断二进制指数类型的 退避算法:不同的站等待不同的时间之后,再发 送,这样就将冲突的几率减
4.争用期 A在发送了数据帧后最多经过2τ 的时间就可知道是 否遭受了碰撞。因此以太网的端到端的往返时延 2τ 为争用期。 经过争用期这段时间还没有检测到碰撞,才能肯定 这次发送不会发生碰撞了。 现在考虑一种情况:当某个站正在发送数据时,有 另外两个站有数据要发送。这两个站进行载波监 听,发现总线忙,于是就等待。当它们发现总线 变为空闲时,就立即发送自己的数据。这必然会 产生冲突,就停止发送。然后再重新发送。…… 这样下去一直发送不成功。 解决这个问题的方法是采用截断二进制指数类型的 退避算法:不同的站等待不同的时间之后,再发 送,这样就将冲突的几率减少
截断二进制指数类型的退避算法: TaB(i)=r°2τ,r∈[0,1,…,(2-1)], i=Min[重传次数,10] 1)让发生碰撞的站停止发送数据后不是立即再发 送数据,而是推迟一个随机的时间。这样做是为 推迟重传而再次发生冲突的概率减少。 (2)确定基本退避时间,一般取争用期2τ。 (3)定义一个参数i,它等于重传的次数,但不能超过 10。即i=Min[重传次数,10 (4)从离散的整数集合[0,1,…,(2-1)]中随机取 个数,记为r。重传需要推迟的时间就是r倍的基本 退避时间 (5)当重传达16次仍不能成功时,则丢弃该帧,并向 高层报告
截断二进制指数类型的退避算法: TBEB(i)=r•2τ ,r∈ [0,1, …,(2 i-1)], i=Min[重传次数,10] (1)让发生碰撞的站停止发送数据后,不是立即再发 送数据,而是推迟一个随机的时间。这样做是为了 推迟重传而再次发生冲突的概率减少。 (2)确定基本退避时间,一般取争用期2τ。 (3)定义一个参数i,它等于重传的次数,但不能超过 10。即i=Min[重传次数,10]。 (4)从离散的整数集合[0,1, …,(2 i-1)]中随机取 一个数,记为r。重传需要推迟的时间就是r倍的基本 退避时间。 (5)当重传达16次仍不能成功时,则丢弃该帧,并向 高层报告
以太网取512微秒为争用期,对于10M的以太网 来说,在争用期内可发送512位的数据,即64 字节。因此,以太网规定,凡长度小于64字 节的帧都是无效帧。 为了使每个站都能尽可能地知道是香发生了碰 撞,以太网还釆取一种叫做强化碰撞的措施。 这就是当发送数据的站一旦发现发生了碰撞 时,除了立即停止发送数据外,还要继续发 送若干比特的人为干扰信号,以便让所有的 用户都知道现在已经发生了碰撞。 见书P101,图5-6
以太网取512微秒为争用期,对于10M的以太网 来说,在争用期内可发送512位的数据,即64 字节。因此,以太网规定,凡长度小于64字 节的帧都是无效帧。 为了使每个站都能尽可能地知道是否发生了碰 撞,以太网还采取一种叫做强化碰撞的措施。 这就是当发送数据的站一旦发现发生了碰撞 时,除了立即停止发送数据外,还要继续发 送若干比特的人为干扰信号,以便让所有的 用户都知道现在已经发生了碰撞。 见书P101,图5-6