1. 无线网络

1.1 术语

无线主机(wireless host):运行应用程序的端系统设备,可以是智能手机、平板电脑、物联网设备等,可以移动也可以不移动

无线链路(wireless link):无线主机通过无线链路连接到基站或其他无线主机,主要特性包括传播速率(数据传输速度)覆盖区域(信号可覆盖的范围)

基站(base station):负责在无线网络中与无线主机进行数据的发送和接收,如蜂窝网络中的蜂窝塔或802.11无线局域网中的接入点

关联:无线主机在基站的无线覆盖范围内,并通过该基站进行与更大网络之间的数据中继

切换(handoff/handover):在移动设备移动过程中,网络系统将设备的连接从一个基站切换到另一个基站的过程

1.2 模式

模式架构特点适用
基础设施(infrastructure)无线主机通过基站与网络连接,基站充当中心节点,负责管理和转发数据扩展性高,可以增加基站来扩展网络覆盖范围家庭网络、校园网络、企业环境和公共场所,提供稳定的无线连接
自组织网络(ad hoc network)无线主机之间通过无线链路直接通信,不需要中心节点或接入点灵活性高,节点可以自由加入或离开网络灾难救援、军事通信、短期活动,无需固定基础设施,易于快速部署
分类结构特点例子
单跳无基础设施所有无线主机直接彼此通信小范围蓝牙网络
单跳有基础设施无线主机通过基站与其他无线主机通信高扩展路由器WiFi
多跳无基础设施无线主机通过多个中间节点与其他无线主机通信自组织车载网络
多跳有基础设施无线主机通过多个基站与其他无线主机通信大范围4G/5G,企业WiFi

2. 无线链路

2.1 性质

特征

特征描述因素
递减的信号强度电磁波在传播过程中,其强度会随着距离的增加而递减,又称为路径损耗(path loss)距离、介质、频率
来自其他源的干扰在同一频段内,来自其他信号源的电磁波对目标信号形成干扰频段重叠、环境噪声、多用户环境
多路径传播电磁波经过反射、折射或散射,导致接收方收到来自不同路径的多个信号位置的动态变化、物理环境

信噪比(Signal-to-Noise Ratio,SNR):收到的信号和噪声强度的相对测量,单位是分贝(dB),SNR越大信号质量越好

比特差错率(Bit Error Rate,BER):接收方收到的有错传输比特的概率

比特传输速率(Bit Rate,BR):单位时间内传输的比特数量,单位是每秒传输比特数(bps),不同的调制技术有不同的数据传输效率

  • 对于给定的调制技术,SNR越高,BER越低:较高的SNR能提供更清晰的信号,使得解调过程中的噪声影响减小
  • 对于给定的SNR,调制技术的BR越高,BER越高:较高的BR能够传输更多比特,但同时出错的概率也会越大
  • 自适应调制(Adaptive Modulation):物理层可以根据当前信道条件动态选择适合的调制技术

隐藏终端问题(Hidden Terminal):假设A和C都向B发送信号,但由于A和C之间的物理阻挡使得信号强度大幅度衰减,从而使得A和C无法通信,因此会同时给B发送信号,最终导致信道冲突

2.2 CDMA

码片序列(chipping sequence):发送一个bit的时间被划分为M个时隙,又称为码片,M个连续码片组成的序列用来表示一个比特

  • 编码:用比特逐一乘上码片序列后相加
  • 解码:用编码逐一乘上码片序列后相加,和为1表示发送方发送比特1,和为-1表示发送方发送比特0,和为0表示发送方没有发送
  • 码片速率:接收方为了确认发送方,码片序列切换的速度要远远大于比特序列到达的速率

码分多址(Code Division Multiple Access,CDMA):通过对数据进行编码,从而使接收方可以确认数据的源地址

编码:Zi,m=dicm解码:di=1Mm=1MZi,mcm\text{编码:}Z_{i,m} = d_i \cdot c_m\\ \,\\ \text{解码:}d_i = \frac{1}{M} \sum_{m=1}^{M}Z_{i,m} \cdot c_m

码片序列为:
A:(-1 -1 -1 +1 +1 -1 +1 +1)
B:(-1 -1 +1 -1 +1 +1 +1 -1)
C:(-1 +1 -1 +1 +1 +1 -1 -1)
D:(-1 +1 -1 -1 -1 -1 +1 -1)
收到编码为:
X:(+1 -3 +3 -1 +1 +1 +1 +1)
可以得到:
A:1/8(-1+3-3-1+1-1+1+1)=0,表示A没有发送数据
B:1/8(-1+3+3+1+1+1+1-1)=1,表示B发送比特1
C:1/8(-1-3-3-1+1+1-1-1)=-1,表示C发送比特0
D:1/8(-1-3-3+1-1-1+1-1)=-1,表示D发送比特0

3. WiFi

WiFi(Wireless Fidelity):本义是无线保真技术,但更多用来指代基于IEEE 802. 11标准的无线局域网(Wireless Local Area Network,WLAN)
在无线局域网中,使用无线站点来代替术语主机

3.1 体系结构

基本服务集(Basic Service Set,BSS):一个BSS包含一个或多个无线站点以及一个成为接入点(Access Point,AP)的中央基站,BSS又与交换机或路由器连接,从而接入因特网

与以太网类似,每个无线站点(station)都具有一个6字节MAC地址,每个AP的无线接口也具有一个MAC地址

3.2 关联

信道号(channel number):无线频段被分为多条信道,当且仅当相隔4个信道时才无重叠

  • 2.4GHz频段:信道号从1到14,通常使用1,6,11信道
  • 5GHz频段:信道号从36到165,信道间隔更大,不重叠的信道更多,具有更多选择

WiFi丛林(jungle)一定范围内存在大量AP,许多站点同时工作在相同频段/信道,导致信号重叠和干扰

关联(associate):表示无线站点和AP之间建立了一条虚拟链路,仅有关联的AP才能从AP接受帧和向AP发送帧

站点如何获取AP?
  • 被动扫描:站点被动监听接入点
    1. 将站点设置为监听模式
    2. 接入点周期性发送广播信号
    3. 站点捕获接收到的信号,分析接入点
    4. 站点根据掌握的数据,决定连接到哪个接入点
  • 主动扫描:站点主动探测接入点
    1. 站点向多个接入点发送探测请求
    2. 接入点接收到探测请求后返回探测响应
    3. 站点根据返回的响应分析接入点
    4. 站点根据掌握的数据,决定连接到哪个接入点
站点如何选择AP?
  • 接受信号强度指示(Received Signal Strength Indicator,RSSI):值越接近0,表示信号越强
  • 负载(load):AP上连接的客户端数量,一般来说,连接设备越少,带宽资源越充足,网络性能越好
站点如何关联AP?
  1. 站点向选定的接入点发送关联请求帧,包含站点的信息
  2. 接入点接收到关联请求后,会检查请求中包含的信息并进行身份验证,然后向站点发送关联响应帧,若成功则包含分配给站点的接入点资源信息,若失败则包含原因
  3. 站点通过关联的AP使用DHCP协议获取IP地址,从而接入子网

3.3 802. 11 MAC协议

3.3.1 CSMA/CA

802. 11 MAC协议不支持碰撞检测,因此采用CSMA/CA作为随机接入协议,追求尽可能少的碰撞

  • 碰撞检测要求站点具有同时发送和接受的能力,构建这样的硬件开销较大
  • 由于隐藏终端问题和路径损耗问题的存在,站点无法检测到所有碰撞
时间间隔用途意义
分布式帧间间隔(Distributed Inter-Frame Space,DIFS)发送数据前的间隔用于处理信道竞争
短帧间间隔(Short Inter-Frame Space,SIFS)发送ACK、RTS和CTS前的间隔用于实现链路层确认

链路层确认

  1. 站点监听到信道空闲,会等待DIFS
  2. 如果等待DIFS后信道繁忙,站点会根据指数退避算法随机选择一个回退值,在之后每次侦听到信道空闲时递减该值
  3. 如果等待DIFS后信道空闲或者计数值递减后为0,发送数据帧
  4. 接入点接收到数据后,等待SIFS,返回一个确认帧
  5. 站点如果没收到确认或者要立马发送另一帧,将回到第2步开始

3.3.2 RTS和CTS

隐藏终端:每个无线站点对AP都不隐藏,但是无线站点间是隐藏的,这会导致哪怕使用了CSMA/CA协议还会产生大量碰撞

请求发送(Reques TO Send,RTS)和清除发送(Clear to Send,CTS)工作流程

  1. 站点在发送DATA帧前,先发送RTS帧,指示传输DATA帧和ACK帧需要的总时间
  2. 当AP收到RTS帧后,它会广播一个CTS帧作为响应,一是用于给先前站点明确的发送许可,同时指示其他站点在预约期内不要发送

性质

  • 引入了一定的时延,并消耗了信道资源,因此仅用于长数据帧预约信道
  • 隐藏终端问题被缓解了
  • RTS和CTS帧很短,即使它们发生碰撞也不会造成很大的影响

3.3.3 IEEE 802. 11帧

帧结构

字段长度/字节描述
帧控制2用于区分帧
持续期2表示该帧和接收ACK帧所需的时间,用于RTS/CTS的机制
目的地址6接收设备的MAC地址
源地址6发送设备的MAC地址
BSSID6BSS接入路由器的MAC地址
序号控制2帧的序列号,用于排序和重组
有效载荷0-2312实际要发送的数据,通常是IP数据报或ARP分组
CRC4循环冗余校验码,用于检测帧在传输过程中的错误

如果是站点传输帧,目的MAC地址是AP的MAC地址
如果是AP传输帧,目的MAC地址是路由器的MAC地址或者是站点的MAC地址

帧控制

字段长度/比特描述
协议版本2通常为0表示IEEE 802.11
类型2指示主要类型:管理帧、控制帧或数据帧
子类型4进一步细分帧的类型,比如关联请求/响应,RTS/CTS等
到AP1指示当前帧是否发往AP
从AP1指示当前帧是否来自AP
更多标识1在分片传输中使用,用于告知接收方,后续还有更多片段需要接收
重试1表示当前帧是一个重传帧,用于确保可靠传输
功率管理1指示设备是否处于功率节省模式
更多数据1在流量控制中使用,告诉接收方是否还有更多数据待发送
WEP1指示当前帧是否使用了WEP加密
保留1供将来使用,通常设置为0

3.3.4 相同子网的移动性

  1. 信号强度评估:检测到AP1的RSSI值越来越小,AP2的RSSI值越来越大
  2. 切换连接:向AP1发送一个去关联请求,向AP2发送一个关联请求
  3. 会话保持:如果新的BSS和旧的BSS都属于同一子网,那么站点会通过DHCP续租原先的IP地址,并维持正在进行的会话(如TCP连接)
  4. 更新路由器/交换机:AP2可能会广播一个以太网帧,更新表项以通知站点已连接至新的AP

3.3.5 高级特色

特色描述
快速漫游允许用户在不同接入点之间迅速切换而不会中断连接
速率自适应根据当前和近期的信道特点来选择合适的物理层的调制技术,提高数据传输的可靠性和效率
功率管理接入点在没有帧要发送和接收时能够进入低功耗/睡眠状态,从而节省能源

3.4 蓝牙

蓝牙(Bluetooth):是一种短距离低功耗无线通信技术,又被称为无线个人区域网络(Wireless Personal Area Network,WPAN)微微网(piconet),工作在2.4GHz工业、科学和医疗频段,与Wi-Fi等其他无线技术共享同一频段

跳频扩频(Frequency Hopping Spread Spectrum,FHSS):以固定的时隙625微秒,发送方和接收方在79个信道频率之间按照预定的跳频序列进行快速同步切换,使得信号能够在多个频段中扩展

  • 抗干扰:由于信号在多个频率上分布,因此如果某些频率受到干扰,数据仍可以通过其他未受影响的频率传输,从而显著降低通信失败的概率
  • 安全:由于频率不断变化,攻击者难以锁定信号传输路径,从而提高了通信的安全性
  • 多设备:由于不同设备使用不同的跳频序列,从而允许多个设备在相同时间内使用不同频段工作而不互相干扰

自组织性

设备功能
主控设备负责控制和管理蓝牙网络,发起连接和数据传输
客户设备响应主设备的请求,与主设备进行数据交换
寄放设备处于休眠状态,不与主设备通信,保持配对信息以便未来连接

流程

  1. 邻居发现(Neighbor Discovery)
    1. 主控设备广播32条询问信号,每条都在不同的频道上,并重复传输序列128次
    2. 客户设备在它选择的频道上监听,一旦监听到询问信号,客户设备会在隔一个随机时间量后主动发送响应信号
    3. 主控设备接收到响应信号后,会更新其设备列表,显示所有发现的可连接设备
  2. 蓝牙寻呼(Bluetooth Paging)
    1. 主控设备选定客户设备,发送寻呼信号,通知客户要使用的跳频模式以及时钟信息
    2. 客户设备接收到寻呼信号后,回复响应信号
    3. 主控设备接收到响应信号后,将使用之前指定的跳频模式与客户设备进行通信

iPhone连接AirPods,iPhone就是主控设备

  • 邻居发现阶段允许iPhone识别周围的AirPods,并将其标记为寄放设备
  • 用户在iPhone的蓝牙列表中选择连接AirPods
  • 蓝牙寻呼阶段允许iPhone连接AirPods,使AirPods成为客户设备并开始进行数据传输