序言

在无线局域网中,主要的性能除了吞吐量之外,另外一项比较受人关注的就是覆盖范围,而为了计算Wi-Fi的覆盖范围,我们首先要梳理其链路模型。本文我们基于基本的自由空间传输损耗模型(Free-space path loss),对802.11中的链路模型进行分析。

注:在该文之后,我们会基于在理解链路模型的基础上,继续讨论如何计算无线的覆盖范围,以及具体在802.11协议中的具体信道模型。由于主要还是偏向理解,所以若在本文中出现一些表述错误,还请见谅。

影响覆盖范围(无线链路质量)的因素

Wi-Fi的理论覆盖范围与很多因素有关,我们简单列举如下:

  • 发送功率:发送功率越大,信号的覆盖范围就越大。FCC建议其标准值为70mW。
  • 功率放大增益:包含发送时候的PA(Power Amplifier)以及接收时候的LNA(Low Noise Amplifier)。如果本地能够对信号提供一个放大的功能,那么信号的强度就能够提高。
  • 天线增益:包含发送天线增益以及接收天线增益。天线是可以增大信号的,评估这个增益性能的指标就是增益值。不同的天线种类,比如全向天线或者定向天线,具有不同的增益性能。
    • 定向天线有更好的聚焦能力,在总功率不变的情况下,能够有效提高接受者的接收功率(即聚焦) 。定向天线可以做智能天线波束成型(smart antenna beam forming)。
    • 全向天线有更好的覆盖能力,能够将能量更平均的覆盖到周边的所有节点上。
    • 利用多根全向天线做发送,可以做传输波束成型(Transmit Beamforming,TxBF)。利用信号的预编码技术来完成的,TxBF通过调节发送信号的相位,让信号在接收方呈现干涉叠加的效果。利用多根全向天线做接收,也可以做接收分集,增加信号质量。
  • 信道衰落与干扰:信道的影响包含两部分,衰落和干扰。
    • 衰落是由信道的特性造成的。衰落分成三部分,大尺度衰落,中尺度衰落(阴影衰落)以及小尺度衰落(多径)。

      • 大尺度衰落:主要受到传输距离影响的电磁波衰落,距离越远,信号衰落越强。
      • 中尺度衰落:又称为阴影衰落,主要是由遮挡物造成的。(其实这个定义用的并不多,不过在无线局域网环境中,还是比较适合的,所以就放上来了)
      • 小尺度衰落:又称为多径衰落,主要是不同路径到达的信号之间造成的互相干扰。根据发送和接收方是否在视距(Line-Of-Sight,LOS)范围内,分为瑞利衰落(Rayleigh Fading,即NLOS范围)和莱斯衰落(Rice Fading,即LOS范围内)。 【PS:这里之前写反了,感谢@Kelly珂 的指出】
    • 干扰由两部分组成,一部分是其他同频段的设备干扰,一部分是背景噪声(一般理论上我们认为是高斯白噪声,其主要是由热噪声造成的)。

链路模型

这一节中,我们建立模型刻画之前所述的影响Wi-Fi覆盖范围的一些因素,如下图所示:

即接收功率我们可以表述为(以dBm的形式表达):

其中

为接收功率,
为发送功率,
为发送增益(包含了功率放大增益和天线增益),
为信道衰落,
是噪声功率(假设没有干扰),
为接收增益。

注:这里噪声代表的热噪声,一部分是信道上的,一部分是天线到接收机之前的有损耦合造成的。

在上式中,

都是发送接收机的固有设置,可以当做常数。
我们假设是自由空间损耗模型(Free-Space Path Loss,FSPL),
假设是热噪声,以下我们重点阐述下这两个部分。

自由空间损耗模型:该模型是理想的大尺度衰落模型,一般意义上,我们假设的理想信道就是该模型(即只存在大尺度衰落)。该模型的物理意义如下图:

在自由空间(即没有遮蔽物)的中心,发送方以

的功率进行发射信号,接收方与发送方距离为
。进一步参考上图,我们可以想象,这些距离发送端距离为
的所有点(即接收方可能出现的位置)构成了一个球面,该球面的面积为
。总发送功率
是平均分布在该球面上任意一个点上的,接收功率
即为

且我们进一步假设,接收方是以有效面积为

的天线进行接收(一般天线的面积与波长有关),最后我们可以得出接收功率为:
。在与发送功率
相除之后(即求链路的衰减),我们可以得到自由空间损耗(FSPL)如下:

一般情况下,大家还很常见以dB形式表达的自由空间损耗(

单位为MHz,
单位为km):

实际上这两个表述实际上是一样的,以下我们做一个数学推导(初始

单位为Hz,
单位为m,最后结果
单位为MHz,
单位为km):

故上述的两种表达本质上是相同的,之后我们会基于该模型示例估计无线传输范围。由于自由空间模型中,没有考虑到阴影衰落,而CWNA的书中是给出一些遮挡介质对于信号的影响的(信号为2.4G的情况下),所以一起记录在这里(参考CWNA教材):

  • 木门(Wood door):–3 dB
  • 金属机架(Metal rack):–6 dB
  • 隔间墙(Cubicle wall): –2 dB
  • 基墙(Foundation wall): –15 dB
  • 无色玻璃窗(Nontinted glass windows):–3 dB
  • 石膏墙或石膏夹板(Drywall or sheetrock):–3 dB
  • 电梯或金属障碍物(Elevator or metal obstacle):–10 dB
  • 砖,混凝土,混凝土块(Brick, concrete, concrete blocks):–12 dB

本底噪声(热噪声

在论文假设中,我们一般直接假设背景噪声为0均值的高斯白噪声(在Digital Communications Fundamentals and Applications一书中,第5.3.4节所述:由于热噪声功率谱密度在频率

以下为常数,所以一般将接收机的热噪声过程当做高斯白噪声处理),并给定一个噪声功率即可。其实一般情况下,我们可以根据热噪声有参考的背景噪声的公式的,如下:

其中噪声功率

是以dBW形式给出的,
是玻尔兹曼常量(Boltzmann's constant,
或者
),
为摄氏温度(括号内直接带入
),
为带宽(比如802.11a/g为
),
为噪声系数(noise

figure,一般为

)。

注:以上的参数选择参考MATLAB2016a中基带仿真的代码。

故最终带入802.11的结果即为:

实际上这个值和07版协议中给出的背景噪声(也就是本底噪声)的参考值还要小的,CWNA书中第3.4节以及第3.6节指出,一般2.4G信道的本地噪声为

,所以除了热噪声之外,可能还包含了一些信道上别的白噪声。不过也是可以参考07版协议Table 19-10中所述“RSSI的范围和实际上功率是独立的”,换言之,本地噪声的具体数值也是可以自己设定的,主要还是根据实际使用场景为准。

本文为原创文章,如需转载须注明出处和原文链接。

欢迎大家关注我们的微信公众号:无线技术大讲堂,请搜索公众号(must_wireless)。

节点本地范围和链路本地范围_802.11协议精读15:链路模型(基于Free-Space Path Loss)...相关推荐

  1. 简单叙述tcp/ip的工作原理和主要的协议_802.11协议精读3:CSMA/CD与CSMA/CA

    序言 在前一份文档中,我们详细记录了有关802.11中DCF模式以及其核心CSMA/CA的一些内容与细节.对比无线网络,有线网络的集线器和中继器设计中,采用了CSMA/CD技术.该技术早期是用来解决有 ...

  2. 服务器本地文件,云服务器 本地文件

    云服务器 本地文件 内容精选 换一换 在云服务器上搭建网站后,部分客户通过本地网络访问网站时出现偶发性无法访问的情况.确认客户使用的本地网络.若客户的本地网络是NAT网络(本地主机通过NAT功能使用公 ...

  3. xp 本地计算机策略组,本地组策略-win10没有本地安全策略组怎么打开软件

    http://jingyan..com/article/.html 怎么打开本地安全策略 开始菜单上,点击鼠标右键,界面中这里选择打开电脑的控制面板. 控制面板中在大图标查看方式下,找到这里的管理工具 ...

  4. 域名系统中的本地域名服务器根域名服务器,本地域名服务器 根域名服务器区别...

    本地域名服务器 根域名服务器区别 内容精选 换一换 公网域名解析是基于Internet网络的域名解析过程,可以把人们常用的域名(如www.example.com)转换成用于计算机连接的IP地址(如1. ...

  5. 本地方法接口和本地方法栈

    本地方法接口 什么是本地方法? 一个Native Method就是一个Java调用非Java代码的接口.一个Native Method是这样一个Java方法:该方法的实现由非Java语言实现,比如C. ...

  6. maven如何将本地jar安装到本地仓库

    maven如何将本地jar安装到本地仓库 1.首先确认你的maven是否已经配置: 2.本地的jar包位置: 3.安装本地的jar到本地仓库: 命令: mvn install:install-file ...

  7. Java虚拟机(七)——本地方法接口与本地方法栈

    文章目录 本地方法接口 什么是本地方法? 为什么要使用本地方法? 本地方法栈 本地方法接口 什么是本地方法? 一个Native Method(本地方法)就是一个Java调用非Java代码的接口,,该方 ...

  8. 【C语言】全局变量、本地变量、静态本地变量(书写规范代码,正确定义变量,防止未知错误)

    参考中国大学MOOC 浙江大学翁恺C语言程序设计在线课程 作用域:一段程序代码中所用到的名字并不总是有效/可用的,而限定这个名字的可用性的代码范围就是这个名字的作用域. 生存期:从对象分配到内存开始, ...

  9. Maven命令安装本地jar包到本地仓库

    Maven命令安装本地jar包到本地仓库 原则上Maven工程pom.xml中依赖的jar包会自动实现从中央仓库下载到本地仓库. 但是碰上第三方开发的中央仓库没有的jar包,我们需要手动安装到本地ma ...

最新文章

  1. [转帖]什么是光纤的波长?看看有哪些是你不知道的!
  2. docker stats命令源码分析结果
  3. c#图片base64去转义字符_C#实现字符串与图片的Base64编码转换操作示例|chu
  4. 线性表----循环链表和静态链表
  5. 【转载】如何制作python安装模块(setup.py)
  6. Linux企业级项目实践之网络爬虫(29)——遵守robots.txt
  7. 【廖雪峰官方网站/Java教程】注解
  8. 数字逻辑电路课程设计之数字电子时钟
  9. 从小白创建自己的CSND
  10. 单极性非归零NRZ码、双极性非归零NRZ码、2ASK、2FSK、2PSK、2DPSK及MATLAB仿真
  11. jQuery全选全删动态表格
  12. 读《洞穴奇案》——功利主义与法的精神
  13. java 采集 cms_javaxinghuacms 杏花程序一个由 开发的电影管理系统,集 播放采集为一身的 Develop 238万源代码下载- www.pudn.com...
  14. 分层数据流图(画法+例子)
  15. 基于ODBC的MFC与sql_server2008r2连接教程和错误解决方法
  16. 《痞子衡嵌入式半月刊》 第 28 期
  17. 大咖分享|李志强:一文详解标签类目体系落地方法与建设价值
  18. Revit二次开发-自动线性尺寸标注
  19. 小妹使用栈实现计算器(上)
  20. Java小记 —— 日期时间转换问题(相差一小时)

热门文章

  1. matlab边坡可靠性分析,滇西南地区高速公路高边坡调查及抗震稳定性分析
  2. PVCBOT【27号】机械避役--线控变色龙机器人
  3. 07_Numpy渐变图片的生成
  4. c++读取倍福PLC中轴状态
  5. java 累加器_Spark累加器(Accumulator)
  6. nrf52832使用ble+2.4G(Gzll)遇到的问题
  7. vue——this.$parent算法
  8. SpreadJS 纯前端表格控件应用案例:金融业数据智能分析平台
  9. 手机比较版本差异工具
  10. 扑克牌的牌型基础判断