Mac/802_11 set basicRate_ 1.0e6 ; // 1Mbps
Mac/802_11 set dataRate_ 2.0e6 ; // 2Mbps
在802.11中,最终在信道上传送的分组是由:PLCP前导 + PLCP头 + PSDU组成
PLCP前导和 PLCP头以basicRate_的速率发送,其中PLCP头中的signal 域规定了后续的PSDU以何种速率的dataRate_进行传送。
具体:
1、802.11:
basicRate_ 1Mb
dataRate_ 2Mb
2、802.11b:
(1)使用长前导和长头部:
basicRate_ 1Mb
dataRate_ 2Mb, 5.5Mb, 11Mb
(2)使用短前导和短头部:
basicRate_ 1Mb
dataRate_ 2Mb, 5.5Mb, 11Mb
在802.11协议(注意不是802.11b)中,有两种可选速率即1M和2M,在协议里面规定DSSS 的PLCP前导以(basicRate_)1M发送,然后通过SIGNAL域中的数值确定MPDU以何种速率发送。可以理解basicRate_为系统规 定的一个大家都要遵守的速率,发送和接收方需要通信,必然要符合两边速率相等的这个条件,当然basicRate_可以设置为其他的速率如2M,只要发送 接收双方达成共识就好了,但是802.11协议为了让大家达成共识把这个速率basicRate_设置为了1M。
所谓数据封装后以两个速率传,其实这个是和802.11发送规程有关系的,其实实际的发送并不和你从书本上理解的全都封装好了,然后一起发送的,到MAC 封装成为MPDU后发送到物理层,物理层并不是简单的加入PLCP前导然后就调制发射了,它的过程是物理层先独立发送PLCP前导来让对方知道相关物理层 的参数如SIGNAL,可以让对方知道以后后续的数据要以什么样的速率发送。让对方准备好相应的条件,如对应2M的QPSK调制,这时跟着发送的MPDU 就是以SIGNAL标示的速率发送了。