Wi-Fi 概论

简介

IEEE 802.11 标准的无线网络俗称 Wi-Fi,Wi-Fi 用于有限的地址范围,比如家庭,办公室,校园等等,信号通过空气传输,在此情况下,Wi-Fi 设计的主要难点是对共享通信介质的协调访问。和 Ethernet 相比,Wi-Fi 支持额外的电源管理模式和安全机制。

  1. Wi-Fi 隐藏节点问题
    以太网中的节点在接收其他节点数据时,能够同时发送数据。与以太网不同,无线网络中的节点不具备该特性,这使得在无线网络中的冲突检测非常复杂。无线网络中节点通常不能同时收发数据,一个无线节点可能因为太远而不能接收其他节点的传输,这类情况非常复杂。


    无线网络

    由于传输媒介和传输范围的影响,Wi-Fi 存在一个隐藏节点问题。假设 A,B,C,D这 4 个节点都只能跟左右邻居节点传送和接收数据。
    1、B 可以和 A,C 这 2 个节点传送和接收数据,但不能和 D 节点通信
    2、C 可以和 B,D 这 2 个节点传送和接收数据,但不能和 A 节点通信

假设节点 A 和节点 C 都想和节点 B 通信,A 和 C 各自传送一个信息给 B,因为 A 和 C 都在各自的传输范围之外,所以 A 和 C 无法感知对方正在和 B 通信,又因为节点 B 无法同时接收 2 个信号,所以这个时候 A 和 C 的信号会在 B 发生碰撞,和以太网不同的是,A 和 C 都无法侦听到信号碰撞。节点 A 和节点 C 被称作彼此的 隐藏节点。如下图所示。

隐藏节点

  1. Wi-Fi 暴露节点问题
    Wi-Fi 除了一个隐藏节点问题也存在另一个相关的暴露节点问题。如下图所示,假设节点 B 要传送信息给节点 A,节点 C 因为听得到节点 B 正在传送信息而发现了节点 B 和节点 A 的通信。节点 C 了解到 B 正在传送,但是下了一个错误的判断,认为节点 C 自己不能传送信息给任何节点。如果此时节点 C 想传送信息给节点 D 是可以,不会造成问题,因为 C 传送给 D 并不会干扰到 A 接收 B 的信息。
暴露节点
  1. CSMA/CA
    以太网对于信号冲突的问题有一个 CSMA/CD 的算法来处理,CD 是冲突检测(监听链路的空闲状态,当链路成为空闲状态之后再传输,如果信号发生碰撞则退避),而 Wi-Fi 也有遵循一个与以太网的 CSMA/CD 类似的算法。由于存在隐藏节点和暴露节点的问题,Wi-Fi 采用 CSMA/CD (Carrier Sense Multiple Access with Collision Avoidance,载波监听多路访问/碰撞避免)解决这两个问题。 以太网采用的是 CSMA/CD,。
    载波监听:在发送 frame 之前,监听信道中是否有信号在传输,如果没有就发送。由于存在隐藏节点的问题,仅仅没有监听到其他节点的信号并不能保证在接收端不会发生冲突。基于此,CSMA/CA 要求接收方成功接收了 frame ,则接收方必须给发送方发送一个 ACK ,如下图所示。


    不支持冲突检测
  2. RTS-CTS 机制
    如果发生了冲突,那么 frame 将变得无效。所以 802.11 设计了一个 RTS-CTS 机制,这个机制可以在一定程度上解决隐藏节点的问题。

RTS-CTS 机制

如上图所示,发送端传送资料之前,先和接收端先彼此交换控制 frame,这次交换是用来告知附近所有的节点传送即将要开始了。发送端先送出 RTS(Request to Send,RTS) frame 给接收端,接收端收到 RTS 之后回送一个 CTS(Clear to Send,CTS) frame 。其中 RTS frame 和 CTS frame 包含发送端和接收端想要保留传输媒介多长时间的信息。
任何可以听到 CTS frame 的节点表示节点离接收端很近,所有可以听到 CTS frame 的节点在 CTS 指定的时间内都不可以传送数据,防止信号碰撞。
任何可以听到 RTS frame 的节点表示节点离发送端很近,所有可以听到 RTS frame 的节点在 RTS 指定的时间内都不可以传送数据,防止信号碰撞。在指定时间到达后,经过一个小的时间间隔,信道变为可用,其他节点可以尝试发送数据。如果多个节点同时侦测到线路是闲置的且同时去尝试发送 RTS frame,那么这些节点的 RTS 会发生信号碰撞,一段时间后,当节点没有收到 CTS frame,节点就会知道信号发生了碰撞。每个节点就会随机等待一段时间再尝试一次,等待时间由 exponential backoff algorithm (指数退避算法)决定,这点和以太网一样。

分布式系统

网络中所有的节点并不是完全相同的,有些节点可以移动(笔记本电脑,手机),有些节点连接到有线网络基础设施上,802.11称这些基站为接入点(Access Point,AP),多个 AP 通过分布式系统(distribution system,DS)彼此相连,一个 DS 连接多个 AP,一个节点只和一个 AP 相连。分布式网络运行在ISO架构的第2层链路层,它与无线链路在同一个协议层运行。分布式系统如下图所示。

分布式系统

每个节点与各自的一个 AP 相连接,如果 2 个节点彼此可达,那么它们就能够直接通信,如下图所示。
节点 A 要传送数据给节点 C,那么传送线路 A --> AP1 --> C。
节点 A 要传送数据给节点 E,那么传送线路 A --> AP1 --> DS --> AP3 --> E 。

分布式系统传输路径
  1. 扫描
    在 802.11 中,节点如何选择它们的 AP 呢?若节点从一个 AP 的传输范围移动到另一个 AP 的传输范围,那么这个时候节点又是怎么选择 AP 呢?
    扫描

    如上图所示,节点选择 AP 的技术称为 扫描(scanning), 节点通常在想要加入一个网络或者想要更换其他 AP 的时候执行扫描过程,扫描过程有 4 个步骤。
    1)节点发送 Probe frame
    2)所有收到 Probe 的 AP 会回传 Probe Response frame,
    3)节点从中选择一个 AP,然后发送一个 Association Request frame,
    4)AP 通过 Association Response frame 来应答。
  1. 主动扫描 (Active Scanning)


    主动扫描

    如上图所示,如果节点 C 从 AP1 的服务范围移动到 AP2 的服务范围,在节点 C 移动的时候,节点 C 会先发送出 Probe frame, AP2 会回送 Probe Response frame,在某个位置时,AP2 对于节点 C 的信号强度强于 AP1,节点 C 连上了 AP2。从节点的角度来看,节点主动寻找 AP 的过程称为主动扫描。

  2. 被动扫描 (Passive Scanning)

    image.png

    AP 定期发送 Beacon frame,用于广播 AP 的能力(Beacon frame 里面包含 AP 的传输速度),从节点的角度来说,这属于被动扫描,节点可以根据 Beacon frame 的内容然后发送 Association Request frame 给此 AP,达到切换 AP 的目的。

Frame 格式

Frame 格式

1、来源和目的地址 Addr1,Addr2,Addr3,Addr4 各 48 bit
2、Data,最多 2312 bytes
3、CRC 错误检查码 32 bit
4、控制栏位 Frame Control 16 bit。Type 和 Subtype 栏位描述这个 Frame 是 RTS 或 CTS 或者是扫描演算法正在使用的,接着的 2 个 bit 栏位描述 Frame 前往 DS 和来自 DS
5、Frame 包含 4 个地址,这 4 个地址的解读依赖于 Frame Control 里面的 To DS 和 From DS 这 2 个栏位的设定值。

最简单的例子,当 frame 被一个节点直接传送到另一个节点,To DS 和 From DS 这 2 个 1 bit 栏位都设置为 0 ,此时 Add1 表示目的地节点,而 Addr2 表示来源节点。最复杂的是 To DS 和 From DS 这 2 个 1 bit 栏位都设置为 1,此时表示 frame 从一个无线节点 --> DS --> 另一个无线节点。

下图是 To DS 和 From DS 的设置值对应的各个 Addr 节点。


Addr 节点

总结

作为网络方面的简单入门内容,文章主要是介绍 Wi-Fi 的简单知识。这篇博客内容总结于黄能富教授的《CS01060 2017-秋季-計算機網路概論》课程,博客截图来源于课程 PPT。

参考

  1. https://zh.wikipedia.org/wiki/%E8%BD%BD%E6%B3%A2%E4%BE%A6%E5%90%AC%E5%A4%9A%E8%B7%AF%E8%AE%BF%E9%97%AE
  2. https://zh.wikipedia.org/wiki/Wi-Fi
  3. http://www.sharecourse.net/sharecourse/course/view/courseInfo/1246
  4. https://book.douban.com/subject/26417896/
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 205,386评论 6 479
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 87,939评论 2 381
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 151,851评论 0 341
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 54,953评论 1 278
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 63,971评论 5 369
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 48,784评论 1 283
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 38,126评论 3 399
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 36,765评论 0 258
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 43,148评论 1 300
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 35,744评论 2 323
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 37,858评论 1 333
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 33,479评论 4 322
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 39,080评论 3 307
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 30,053评论 0 19
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 31,278评论 1 260
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 45,245评论 2 352
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 42,590评论 2 343

推荐阅读更多精彩内容

  • 我们可以把因特网看成由许多主干网络组成,而这些主干网络由一些国际的、国家的和地区的ISP来运营。主干网通过一些连接...
    Zhang21阅读 3,151评论 0 6
  • 作者:梅增杨 班级:1402019 学号:14020199039 【嵌牛导读】:802.11ax又称为「高效率无...
    mi_1581阅读 5,298评论 0 3
  • 因为科技 Damon 无线音频简介 伴随着数字音乐的兴起,很多玩家将手机作为一个移动的曲库。如果想在更大个头的音箱...
    大象一号阅读 1,609评论 1 4
  • Network Layer(!) 网络层功能 网络层里最核心的两个功能是:路由(routing)与转发(forwa...
    我是小栗子阅读 4,673评论 1 10
  • 表层习惯:早起A,早睡B,学习B 其实发现自己还有好多事情要去做,时间也真的过的很快,半个小时,一个小时很快就过去...
    高N少女阅读 157评论 0 0