延迟的slot数为N = 0 ~ (2^k - 1),k有范围 k=1,N = 0~1 k=2,N = 0~3 k=3,N = 0~7 、、、 这样可以最大程度的避免冲突
CA的载波监听分为:
虚拟载波监听物理载波监听RTS/CTS包的头部都有一个Duration字段。因为无线的数据包都是广播的,很多节点都能收到。非目标节点接收到后,会根据Duration字段的值来设置各自的NAV(Network Allocation Vector)。NAV指定了可以接入信道的最早时间。
lmz_0: 出于效率考虑,DCF使用离散退避机制。 一个空闲的DIFS的时间片被划分为时隙,一个节点只能在某个时隙开始的时刻开始发送数据包,从而避免了用户发送数据的随意性,提高了信道利用速率。 竞争窗口CW的值以2为底的整数。
一个节点真正的发送时刻是空闲后的 DIFS+随机退避时间如何防止某一个节点一直竞争不到信道? 感觉不同的节点的CW的值最开始是一样的。 如果某一个节点多次接入不了信道,其CW值应该是越来越小的。
lmz_1:
不论是CD还是CA,都会监测信道是否空闲。感觉这个信道状态的监测是实时的。即忙的时候继续监测就可以,而不用在这个时候就执行指数回退。
lmz_2:
为什么无线信道不使用碰撞检测?
隐藏终端的存在检测不到无线接收不能同时lmz_3:
简单来说,CA是在监测信道空闲时间达到DIFS后才发送数据,即实时监测信道时发现空闲,等待DIFS后仍发现空闲,这时才发送数据。 而CD只要监测到空闲,立即发送数据(等待的帧间间隔和CA不是一回事)。CD监测碰撞是实时的,CA监测碰撞是通过ACK的反馈是在发送之前执行指数回退lmz_4:
个人感觉所谓的指数回退,不论是在CD还是在CA中都是减少碰撞几率的一种方法。 那么,无线中的碰撞避免主要体现在哪里呢? 体现在必须监测到信道空闲一段时间才发送数据。这就避免了低优先级的信号(普通包) 和高优先级信号(确认包)的碰撞。
lmz_5:
CA中的信道忙有两种情况:
最初监测到信道忙在DIFS周期内监测到信道忙tags:opnet