无线局域网技术概述(Wireless LANs)——802.11协议

无线通信是目前通信领域中最快速发展的技术之一,对于不使用线缆来进行设备连接的需求在各个地方都在不断的增长,无线局域网在大学校园,办公楼和很多的公共区域都随处可见。以下部分主要关于两种无线局域网技术:IEEE 802.11(也被称为无线以太网)和蓝牙(Bluetooth)。


一、IEEE 802.11

IEEE定义的无线局域网的规格,称之为IEEE 802.11,其覆盖物理层和数据链路层。

1、架构

标准定义了两种类型的服务:基本服务集(BSS)和扩展服务集(ESS)

基本服务集(BSS):

IEEE 802.11定义的基本服务集(BSS)作为无线LAN的构建模块,基本服务集由移动或固定的无线station和可选的中心基站(称之为接入点(Access Point),简称AP)。如下图显示了标准中的两种基本服务集情况,

无线局域网技术概述(Wireless LANs)——802.11协议_第1张图片

其中,没有AP的BSS是作为单独的一个网络,所以它不能发送数据到其他的BSS——该架构称为ad hoc架构,在该架构中,station形成网络不需要AP;station之间可以定位对方,同一作为BSS的一部分。

伴有AP的BSS有时称之为infrastructure网络。


扩展服务集(ESS):

扩展服务集有两个或更多个伴有AP的BSS组成,在该情况,BSS之间通过分布式系统(通常是有线LAN)连接起来。分布式系统连接BSS中的AP。IEEE 802.11中没有限制分布式系统,它可以是任何的IEEE LAN网络,像以太网。

注意在ESS中,使用两种类型的station:移动的和固定的。移动station在BSS中是正常的station,而固定的station就是作为有线LAN一部分的AP station。下图展示了ESS架构

无线局域网技术概述(Wireless LANs)——802.11协议_第2张图片

当BSS连接起来后,在同一BSS中,station之间可以通信,且可以不需要使用AP,然而,当两个通信的station属于不同的BSS时,则需要通过两个BSS中的AP。


2、station类型

IEEE 802.11在无线局域网中基于station的移动性定义了三种类型的Station:

no-transition

BSS-transition

ESS-transition

对于一Station,若其移动性为no-transition,则说明该Station要么是固定的(没有移动),那么仅在BSS内部移动。

若其移动性为BSS-transition,则说明可以从一个BSS移动到另一个BSS,但是这种移动只限制在一个ESS内。

若其移动性为ESS-transition,则说明可以从一个ESS移动到另一个ESS。


3、MAC子层

在协议中有两种不同的MAC子层,大部分时间使用的MAC子层是基于CSMA/CA(carrier sense multiple access with collision avoidance,载波侦听冲突避免机制),下图展示了流程框图

无线局域网技术概述(Wireless LANs)——802.11协议_第3张图片

无线局域网不能实现CSMA/CD(载波侦听冲突检测)有如下三个原因:

1)对于冲突检测,station必须在同一时间发送数据和接收冲突信号,这意味着需要昂贵的station和增加带宽需求

2)可能会因为隐藏station问题,而无法检测到冲突,

3)station之间的举例可能会非常大,信号衰减可能会导致在一端的station无法侦听到另一个端的冲突。


帧交换时间线

下图展示了适时的数据帧和控制帧的交换

无线局域网技术概述(Wireless LANs)——802.11协议_第4张图片

1)在发生一帧数据之前,源station通过检测载波频率的能量来侦听媒介

a)信道使用伴随回退的持续策略,直到信道为空,

b)当station发现信道为空时,station等待DIFS时间(Distributed interframe space);然后station发送一个RTS(Request to Send)控制帧。

2)当接收到RTS,等待SIFS(Short interframe space)后,目的station发送一CTS(Clear to Send)控制帧到源station,该控制帧表明目的station准备接收数据。

3)当源station等待了SIFS时间后,开始发送数据

4)目的station在等待了SIFS时间后,发送确认帧(Ack),以表示源station发送的数据已收到,在802.11协议中,需要ACK来确认数据已收到,因为station没有任何方法检测数据是否成功到底目的station,另一方面,CSMA/CA中没有冲突也是表示到达目的station的一种方式。


网络分配矢量(Network Allocation Vector, NAV)

当一个station请求访问信道时,如果推迟其他station发送数据?换句话,就是协议是如何完成冲突避免的?关联的特性就是NAV。

当一个station发送一个RTS帧,它包含了它占用信道的持续时间,其他收到影响的station会创建一个称为网络分配矢量(NAV)的定时器,该NAV显示了其他station需要等待多少时间才允许来检测信号是否是空闲的。每次,一个station访问系统并发送一个RTS帧,其他的station启动它们的NAV,换句话就是,各个station在开始侦听物理媒介之前,先检测各自的NAV是否已经终止。上图中右图展示了NAV的思想。


当在RTS或CTS控制帧交互的时间(常称之为handshaking peroid,握手期间)发生了冲突会出现什么情况?两个或更多个station可以同时发送RTS帧,这些控制帧可能会发生冲突,然而,由于没有机制来检测冲突,发送者会假设若没有从接收者那里接收到CTS帧,那么就当前就存在冲突,此时就采用回退机制,然后发送者在继续发送。


分段(Fragmentation)

无线环境是非常嘈杂的。因此,一个发送失败的帧需要重传。802.11协议建议分段——把大的帧分为较小的帧,发送小帧比发送大的帧更加有效。


帧格式(Frame Format)

MAC层帧有9个域组成,如下图所示:

无线局域网技术概述(Wireless LANs)——802.11协议_第5张图片

1)Frame Control(FC):2个字节,定义了帧类型和一些控制信息,表3.5描述了子域。

无线局域网技术概述(Wireless LANs)——802.11协议_第6张图片

2)D:在一个控制帧中,该域定义了帧的ID,其他所有的帧类型中,该域定义了发送持续时间(该值用来设置NAV值)。

3)Address:有四个地址域,各个地址为6个字节,各个地址的意义依赖于To DS和From DS子域的值。

4)Sequence control:该域定义了用于流控制的帧序列号

5)Frame Body:该域,在0到2312字节之间,包含了基于FC域中定义的类型和子类型的信息。

6)FCS:该域为4字节,包含CRC-32错误检测序列。


帧类型

802.11协议定义的无线LAN有三种类别的帧:管理帧,控制帧,和数据帧

管理帧:用于station和AP之间的初始化通信

控制帧:用于访问信号和ACK帧,下图实现了控制帧格式


对于控制帧,type域的值为01,subtype域的值如下表所示

无线局域网技术概述(Wireless LANs)——802.11协议_第7张图片

数据帧:用于运载数据和控制信息


4、寻址机制

IEEE 802.11协议寻址机制指定了四种情况,通过FC域中的两个标志位的值来定义的,To DS和From DS。各标志位为0或1,产生四种不同的情况,MAC帧中的四种地址(Address1到Address4)的解释依赖于这些标志位的值,如下标所示:

无线局域网技术概述(Wireless LANs)——802.11协议_第8张图片

主导到address 1总是下一个设备的地址,address 2总是前一个设备的地址,address 3若没有被address 1定义,那么它就是最后的目的station的地址。address 4若与address 2不相同,那么它就是源station的地址。


隐藏和暴露station问题

前面部分已提及,此处讨论该问题以及其影响

隐藏station问题:下图展示了隐藏结点的问题,

无线局域网技术概述(Wireless LANs)——802.11协议_第9张图片

station B的发送范围如左边椭圆所示;在该范围的每个station能侦听到station B发送的信号,station C的发送范围如右边的椭圆所示,在该范围的station能侦听到station C发送的任何信号。station C在station B的发送范围外,同样的,station B也在station C的发送范围外。然而,station A在B和C共同覆盖的区域,其可以侦听到B或C发送的任何信号。


假设station B正在发送数据给station A,在发送中间,station C也发送数据给station A,然而,station C在B的发送范围外,B发送的信号无法到达C。因此C认为媒介是空闲的。station C发送数据给A,这将在A处导致冲突。由于station A同时接收B和C的数据,对于这种情况,称station B 和station C对于station A说形成隐藏结点。隐藏结点将会降低网络的性能。由于碰撞的存在。


解决隐藏结点问题的方法就是使用握手帧(RTS和CTS)。下图展示了B到A的RTS,但无法到达C,然而,由于B和C在A的范围内,所以A发送的CTS信号(其中包含从B到A的数据的发送持续时间)会到达C。


station C知道了某些隐藏station正在使用信道,station C将会禁止发送直到B发送数据的持续时间结束。

无线局域网技术概述(Wireless LANs)——802.11协议_第10张图片

在CSMA/CA握手中CTS帧可以防止隐藏station的冲突。


暴露station问题:

现在考虑前一个问题的相反情况,暴露station问题,在该问题中,station禁止使用信道,而实际上确是可用的,下图,station A正在发送到station B,station C有一些数据发送到station D,在从A到B的发送中不能干扰C到D的数据发送。然而,station C暴露给A,它侦听到A正在发送数据,因此禁止发送数据,换句话,C太保守,以致浪费了信号的容量。

无线局域网技术概述(Wireless LANs)——802.11协议_第11张图片

在这种情况下,握手信号RTS和CTS也不起作用,下图显示了该情况

无线局域网技术概述(Wireless LANs)——802.11协议_第12张图片

station C侦听到来自A的RTS,但是它侦听不到来自B的CTS。station C侦听到来自A的RTS,等待一段时间以致B发送的CTS到达A;然后station C发送RTS到D表示需要与D进行通信,station B和staion A可能都能侦听到RTS,但是station正处于发送状态,而不是接收状态,然而,station B响应一CTS,问题就在这里,若station A已经开始了发送数据,station C由于冲突不能侦听到来自D的CTS,它将不能发送数据到D,它将保持暴露的,直到A完成数据发送。

你可能感兴趣的:(无线局域网技术概述(Wireless LANs)——802.11协议)