我正在研究 802.11 dcf 模式与 CSMA/CA 的工作原理,但我遇到了一个令人困惑的点......
由于 DCF,只有一个用户可以成功传输到 AP(接收器)(考虑理想情况,即暴露的终端不会同时一起传输)
所以,我们将接收器中可用的全部带宽分配给该传输用户?那么,如果有另一个用户争用该信道,带宽分配是如何进行的呢?
由于只有一个用户可以传输,那么带宽分配背后的逻辑是什么?
提前致谢。诚挚问候。
答案1
带宽并没有被分配,而是被使用,DCF 用于确定主机是否可以获得对共享介质(在本例中为通道)的专用访问权限,时间足够长以发送其数据包。我们经常错误地使用“带宽”一词。带宽实际上是基于网络介质的常数。您真正感兴趣的是传输速率,它可以粗略地定义为通道可供您独占使用的时间乘以通道占用的带宽的实际宽度。
请记住,在任何给定的纳秒内,只有 0-1 个主机可以发送数据。绝不可能有两个主机以完全相同的纳秒传输数据,否则将发生冲突,主机需要退避。
就像 802.3(CSMA/CD)网络一样,当介质正在使用时,其全部带宽都将被使用(不可能使用低于 100%),并且不同的数据包被按时间分片,以便它们可以在排队等待一秒钟后访问介质,以便其他终端也可以轮到它们。
从这个角度来看,您所指的传输速率是实际带宽 X 其使用时间的总和。使用 10Mib 管道/通道 1 秒可获得 10Mib/s 的“带宽”。真正的问题是,是否需要 5 秒才能获得 1 秒的线路访问时间?如果是这种情况,则通道在 5 秒内使用了 100% 的容量(10Mbps),但您的终端只获得了 1 秒的时间 [1/5 * (10Mbps)]。
总而言之,这些算法与分配带宽无关。它们只关心信道是否空闲,以便您的终端可以在这个纳米内使用它而不会发生冲突。
希望有助于澄清
答案2
在直流现金流折现法每台设备测试如果信道空闲,它就会使用所有可用带宽进行传输。当其他设备检测到信道繁忙时,它会等待一段随机时间,然后再试一次。
为了说明清楚,我将举一个例子:
想象一下,你是一群人中的一员,正试图在一个黑暗的房间里发表演讲。你不知道房间里有多少人,也不知道你什么时候开始演讲。
当你听到长时间的沉默时,你试图轮流发言,其他人别无选择,只能听你发言,因为你用尽了所有的“带宽”。
然而,可能会发生你和另一个人同时开始讲话的情况,因此只有一个人继续讲话(两个人同时讲话会造成完全的混乱),而另一个人则等待另一个长时间的沉默。