[转]11 兆无线 LAN 为何比 10 兆以太网慢(用数字解释)

   Updated: 2009-06-15 09:29       [转]11 兆无线 LAN 为何比 10 兆以太网慢(用数字解释)无评论

这篇文章很好,最近又在学习网络方面的东西,所以就转过来了。

IEEE802.11b 无线 LAN 的速度为 11Mbit/秒。但是与 10Mbit/秒以太网相比有很多用户认为"无线 LAN 比较慢!"。下面就对 802.11b 无线 LAN 和 10 兆以太网(10BASE-T)的速度作一下比较。

首先,笔者对 802.11b 和 10BASE-T 做了比较试验。使用常见的免费通信速度测定工具对两者的通信速度进行了测试。结果显示,IEEE802.11b 的通信速度为 4.7Mbit/秒。而 10BASE-T 则为 8.9Mbit/秒。也就是说 11 兆无线 LAN 的通信速度只有 10 兆以太网的一半左右。

为什么会出现这种情况呢?难道 802.11b 的传输速度 11Mbit/秒是假的?其实并非如此。802.11b 传输数据的速度的确为 11Mbit/秒。也就是说传输 1bit 信号所需的时间为 1/1100 万秒(约合 90.9 纳秒)。而 10 兆以太网传输 1bit 数据则需要 1/1000 万秒(100 纳秒)。如果仅比较这个速度的话,IEEE802.11b 要快一些。

那么,两者的速度为何相反呢?其原因就在于无线 LAN 和以太网传输数据的顺序截然不同。

在以太网中,一个数据帧最大可传输 150 个"0"字节数据。在这些数据前后分别加上 14 字节以太网报头和用于容错的 4 字节校正位,这样就组成一个数据帧。然后在数据帧之前还要加上 8 字节的链接码。即便连续传输数据帧,在数据帧之间也必定会有一个被称为帧间隔的最小限度时间间隔,以太网中有相当于 12 个字节的间隔。也就是说如要在以太网中传输 1500 字节的数据,那么就要发送 1500+14+4+8+12=1538(字节)=12304(bit)的信号。在 10BASE-T 中,这 12304bit 的信号全部可以 10Mbit/秒的速度发送。也就是说,以太网发送 1500 字节数据的时间包括等待时间在内就是 12304(bit)÷10M(bit/秒)=1230 微秒。

下面同样再计算一下 IEEE802.11b 传输 1500 字节数据所需的时间。由于无线 LAN 的数据传输步骤非常复杂,因此计算也就麻烦一些。

在 IEEE802.11b 中,加在 1500 字节数据前面的报头是 32 字节,比以太网要长。数据校验位与以太网同为 4 字节。最长 1536 字节的数据帧将以 11Mbit/秒的速度传输,计算出的传输时间为 1536(字节)×8(字节)÷11M(bit/秒)=1117 微秒。

不过,在无线 LAN 中,在数据帧之前还要传输链接码和无线 LAN 特有的 PLCP 报头。传输这两种信息的时间总计定为 192 微秒。另外,在无线 LAN 中发送数据帧时除帧间隔的时间以外还必须等待一个随机时间(称为补偿时间)。在 802.11b 中这个平均时间总计定为 360 微秒。

此外,无线 LAN 还规定,每发送一个数据帧就要从通信对象那里接收一个 ACK 帧,以确认通信成功。在收到 ACK 帧之前不发送下一个数据帧。这个等待时间总计为 213 微秒。 也就是说,在无线 LAN 中发送一个 1500 字节的数据帧所需时间包括等待时间和发送应答分组信息的时间在内,为 1117+192+360+213=1882(微秒)。

发送等量数据时,10BASE-T 只需 1230 微秒,而 802.11b 则需 1882 微秒,最终导致无线 LAN 和以太网的通信速度的差别。

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注