无线网络概论_3

MAC基础

在这里插入图片描述
3-1步骤为原子操作。数据帧的传送者必须收到响应,否则视为漏失,此时就需要重传。从图中不难看出,整个事务就分为两个步骤,分别由两个工作站控制,在事务过程中,两个station必须相互合作,依次取得网络媒介的控制权以便进行传输操作。802.11允许station在基本操作期间锁定媒介,避免基本操作被其他试图竞争传输媒介的station打断。

隐藏节点问题
在这里插入图片描述
2能与1和3通信,但是1、3由于距离太远,所以互为隐藏节点。如果使用简单的祈求协议,1、3可能在同一时间传输数据,造成2无法响应任何数据,1、3却无法知道发生错误。
因为无线收发器通常只能半双工,无法做到同时收发数据。为了防止冲突发生,802.11允许工作站使用RTS及CTS信号来清空传送区域。这两个信号会延长帧的交易过程,因此RTS、CTS黄、数据帧及最后的相应帧被视为相同原子操作的一部分。如图3-3:
在这里插入图片描述
节点1有一个帧待传,因此送出一个RTS以启动整个过程,RTS帧有两个目的:

  1. 预约无线链路的使用权
  2. 要求接收到这一帧的其他工作站保持沉默。

一旦收到RTS,接收端会以CTS应答。和RTS帧一样,CTS帧也会让附近的station保持沉默,直到等到帧交换完毕。就无需担心隐藏节点的干扰。整个过程会用到好几个帧,实际开始传输之前的退避也会消耗一定的带宽,因此它通常只用子啊高用量的环境下以及传输竞争比较显著的场合。
如果网卡驱动程序支持,用户可通过调整RTS阈值来控制RTS/CTS交换过程。只要帧大于阈值,RTS/CTS交换过程就会进行,小于此阈值则会直接传送帧

载波监听功能与网络分配矢量
载波监听主要用来判断媒介是否处于可用状态。802.11具有两种载波监听:

  1. 物理载波监听:物理载波监听是由物理层提供,取决于所使用的媒介与调制方式。
  2. 虚拟载波监听:是由网络分配矢量所提供(简称NAV)。

只要其中一种处于忙碌状态,MAC就会将此状况汇报给较高层的协议。NAV本身就是一个定时器,用来指定预计要占用媒介多少时间。其他station将NAV值倒数到零。只要NAV不为零,代表媒介就处于忙碌状态。利用NAV可保证station的原子操作不被中断。
在这里插入图片描述
不见得每个station都会受到RTS,因此接收端会以CTS帧加以相应,其中也包含NAV,不过为时较短。一旦完成整个过程,经过一段分布式帧间间隔(DIFS)之后,任何工作站均可对媒介进行访问。此时便进入竞争窗口,如图3-5。
帧间间隔
在协调媒介的访问上很重要,802.11会用到四种不同的帧间间隔,其中三种用来决定媒介的访问如图:
在这里插入图片描述

  1. 短帧间间隔(SIFS):用于高优先级的传输场合
  2. PCF帧间间隔(PIFS):主要被PCF使用在无竞争操作中
  3. DCF帧间间隔(DIFS):是竞争式服务中最短的媒介闲置时间,即工作站可以立即对媒介进行访问。
  4. 扩展帧间间隔(EIFS):只会在帧传输错误时才会用到

帧间隔与优先级
图3-5,一开始,原子操作和一般传送并无差别,在可以开始传送之前,原子操作同样必须等候一段时间间隔(DIFS),不过气候的步骤使用SIFS,而非DIFS。由于SIFS短于其他帧间隔,一项原子操作的第二个步骤会在其他类型帧被传送送之前将媒介占用。利用SIFS和NAV,工作站可以视需要掌控媒介一段时间。
SIFS被应用在不同单位的原子操作之间。当传送端取得媒介访问权时,接收端会在SIFS之后响应CTS。任何试图在RTS结束之后访问媒介的工作站至少必须等候一段DIFS。若DIFS进行时,SIFS已经结束,则会开始传送CTS。

利用DCF进行基于竞争的访问
后期补齐

DCF与错误恢复
后期补齐

DCF的退避算法
后期补齐

帧的分段与重组

来自较上层的封包以及较大型的管理帧可能会经过分段,无线信道才有办法加以传送。当存在干扰时,分段封包有助于提升可靠性。利用帧的分段,无线局域网工作站可以让干扰只影响较小的帧片段,而非较大的帧。通过降低可能被干扰的数据量,帧的分段可以提高整体的有效吞吐量。
当上层封包的大小超过网络管理人员所设定的分段阈值,就会进行帧的分段,每个帧片段都有相同的帧序号,以及一个递增的帧片段号以便重组。帧的控制信息用来指示是否还有其他帧片段待收。构成整个帧的所有帧片段通常会在所谓的片段突发期传送,如图:
在这里插入图片描述
其中包含了一个RTS/CTS交换过程,因为片段与RTS/CTS阈值通常会被设定为相同的数值。此图同事显示了如何以NAV与SIFS的组合来控制媒介的访问。
帧的片段与其确认之间以SIFS区隔,因此工作站在片段突发期会一直持有信道的掌控权。NAV可确保其他工作站在此片段突发期不使用该信道。正如任何的RTS/CTS交换,RTS和CTS会将NAV设定成从预定时间到第一个帧片段结束。其后的帧会彼此串联。每个帧片段都会设定NAV,继续掌握媒介的使用权,直到下一个帧的确认结束。
在如图中,Fragment 0设定了NAV并继续掌控媒介到ACK 1,而Fragment 1也设定了NAV并继续掌控媒介到ACK 2,以此类推。当最后一个帧片段及其确认送出是,NAV会被设定为0,代表媒介即将在片段突发其完成之后释放。

帧格式
在这里插入图片描述
并非每个帧都会用到所有的地址字段,这些地址字段也会因为MAC帧类型不同而有所差异。如图展示了一般的802.11MAC 帧。字段的传送顺序由左至右,最高有效位将会最后出现。
802.11 MAC帧并未包含Ethernet帧的某些典型功能,其中最显著的是type/length字段以及preamble(前导码)。前导码属于物理层,而封装细节type/length则出现在802.11帧所携带的标头(header)中。

Frame Control字段

所有帧的开头均是长为两个字节的Frame Control字段:
在这里插入图片描述
Frame Control字段还包含以下字段:

  1. Protocol字段:默认为零,到目前为止,802.11改版尚不需用到新的协议编号。

  2. type与subtype字段:用来指定帧类型。为了因应噪声与提升可靠性,802.11MAC内置了一些管理功能,有些功能之前已经提过,如RTS操作与确认(ack)。3-1显示了此字段跟帧类型的对应关系:
    在这里插入图片描述
    在这里插入图片描述

  3. To DS和From DS:指示帧的目的地是否为分布式系统。在基础结构型网络里,每个帧都会设定其中一个DS位。你可以根据3-2来解读这两个位:
    在这里插入图片描述

  4. More fragments位:此功能类似IP的"more fragments"位,若较上层封包经过MAC分段处理,除了最后一个片段,其他片段均会将此位设定为1。大型的数据帧以及某些管理帧可能需要加以分段,此外其他的帧则会将此位设定为0.

  5. Retry位:有时候可能会重传。任何重传的帧将会以此为设定为1来协助接收端提出重复的帧。

  6. power management:此位用来指示发送端在完成当前的原子帧交换之后是否进入省电模式。1代表工作站即将进入省电模式,0代表工作站会持续保持清醒状态。介入带你必须行使一系列重要的管理功能,所以不允许进入省电模式,因此ap所传送的帧这位必须为0.

  7. More Data位:为了服务处于省电模式的station,ap会将这些从分布式系统接收来的帧加以缓存。ap如果设定此位,即代表至少有一个帧待传给休眠中的工作站。

  8. Protected Frame位:如果帧受到链路层安全协议的保护,此位会被设定为1.

  9. Order位:一旦进行严格依次传送,此位会被设定为1。

Duration/ID字段

此字段紧跟在Frame control字段之后。有三种可能的形式:
在这里插入图片描述

  1. Duration:设定NAV
    当第15哥位被设定为0时,Duration/ID字段就会被用来设定NAV。此数值代表当前所进行的传送预计使用媒介多少微妙。工作站必须监视所受到的任何帧头并根据此跟新NAV,任何超出预计使用媒介时间的数值均会更新NAV,同时阻止其他工作站让问媒介。

  2. 无竞争周期所传送的帧
    在无竞争周期(CFP),第14位为0,而第15位为1,其他所有位问,因此Duration/ID字段值为32768.这个数值被解读为NAV。它让没有收到Beacon帧的任何station都得以公告无竞争周期。以便将NAV更新为适当的数值,从而避免干扰到无竞争传送。

  3. PS-Poll
    在此帧中,第14和15位都被设定为1。移动式工作站可以关闭天线已达到圣殿目的。休眠中的station必须定时醒来。为确保不遗漏任何帧,从休眠状态醒来的station必须送出一个PS-Poll帧,以便从接入点取得之前缓存的任何帧。此外,苏醒的station会在PS-Poll帧中加入关联标识符(AID),以显示其所隶属的BSS。

Address字段

一个802.11帧最多可包含4个地址字段。这些字段均经过编号,因为随着帧类型不同,字段作用也有所差异。
基本上address 1代表接收端,2代表发送端,3代表被接收端拿来过滤地址。
举个例子,在基础结构型网络里,第三个地址字段会被接收端用来判断该帧就是否属于其所关联的网络。
地址本身长度有48位,如果传送给实际媒介第一个位为0,则该地址代表单一工作站(单播),如果第一位为1,则该地址代表一组实体工作站,成为组播地址。如果所有未均为1,该帧即属于广播,因此会传送给所有里那戒指无线媒介的工作站。
这些长为48为的地址有哦不同的用途:

  • 目的地地址
    和Ethernet一样,目的地地址(da)长度为48位的IEEE MAC标识符,代表最后的接收端,即负责将帧交付上层协议处理的station
  • 来源地址
    长为48位的IEEE MAC标识符,代表传送的来源。每个帧只能来自单一工作站,因此Individual/Group位必然为0,代表来源地址为单一工作站。
  • 接收端地址
    长为48位的IEEE MAC标识符,代表负责处理该帧的无线工作站。如果是无限工作站,接收端地址即为目的地地址。如果帧的目的地地址是与接入点相连的Ethernet节点,接收端几位接入点的无线接口,而目的地地址可能是接至Ethernet的一部路由器。
  • 发送端地址
    长为48位的IEEE MAC标识符,代表将帧传送至无线媒介的无线接口。发送端地址通常只用于无线桥接。
  • 基本服务及标识符(BSSID)
    要在同一区域划分不同的无线局域网络,可以为工作站指定所要使用的BSS。在基础结构型网络里,BSSID就是ap所使用的MAC地址。而独立型网络则会产生一个随机的BSSID并将Universal/Local为设定为1,以防止与其他官方设定的MAC产生冲突。
    顺序控制字段(Seqense Contrl)
    此字段长度为16,用来重组帧片段以及丢弃重复帧。它是由4位的片段编号(fragment number)字段以及12位顺序编号(Sequence number)字段组成:
    在这里插入图片描述
    控制帧并未使用顺序编号,因此无此字段。
    当上层帧交付给MAC传送时,会被人赋予一个顺序编号。此字段的作用相当于已传帧的计数器取4096的模数。此计数器从0算起,MAC每处理一个上层封包它就会累计加1,如果上层封包被分段处理,则所有的帧片段都会具有相同的顺序编号。如果是重传帧,则顺序编号不会由任何改变。
    帧片段之间的差异在于片段编号。第一个片段的编号为0,其后累计加1。重传的片段编号会保持原始的顺序编号以协议重组。
    具备QoS扩展功能的工作站对Sequence Control字段的解读稍有不同,因为这类工作站必须同时维护多组传送队列。

帧主体(frame body)
也被称为数据字段,负责在工作站之间传递上层有效载荷(payload)。在最初的制定规范中,802.11帧最多可以传送2304个字节的有效载荷。802.2LLC标头具有8个字节,最多可以传送2296个字节的网络协议有效载荷。防止分段必须在协议层加以处理。在IP网络中,Path MTU Discovery可阻止大于1500个字节的帧的传送。
802.11与其他链路层技术不同之处表现在两个显著的方面:

  1. 802.11帧中并无任何上层协议的标记(tag)可供区别。上层协议是以额外标头的type字段加以标记,同时以之作为802.11有效载荷的开始。
  2. 802.11通常不会将帧填补至最小长度,802.11所使用的帧并不大,随着芯片和电子技术的发展,目前已经没有填补的必要。

帧校验序列(FCS)
和Ethernet一样,802.11帧也是以帧校验序列(FCS)结束。FCS通常被视为循环冗余校验(CRC)码,因为底层的数学运算相同。FCS可以让工作站能够检查所收到的帧的完成性。FCS计算范围涵盖MAC标头里所有字段以及帧主体。虽然802.3和802.11计算FCS方法相同,但是你802.11所使用的MAC标头与802.3不同,因此接入点必须重新计算FCS。
当帧送至无线接口时会先计算FCS,然后再经过RF或者IR链路传送出去。接收端随后会为收到的帧计算FCS,然后与记录在帧的FCS进行比较,如果两者相符,则该帧极有可能在传送过程中未受损。

802.11对上层协议的封装

802.11可以传送各种不同的网络层协议。和Ethernet不同的是,802.11是以802.2的逻辑链路控制(logical-link control 简称 LLC)封装来携带上层协议。
如图显示如何以802.2 LLC封装来携带IP包:
在这里插入图片描述
传送时,用来封装LLC数据的方式有两种,一种为RFC 1024(IETF封装),另外一种则是802.H所规范的方式(隧道封装)。
最上方为Ethernet帧,它具有MAC标头,类型代码,嵌套封包以及帧检查等字段。在IP领域里,type code不是代表IP本身的0X0800,就是代表地址解析协议(arp)的0X0806.
MAC地址会被复制到封装帧的开头,然后插入SNAP标头。SNAP标头以目的地服务接入点与原服务接入点开始。在地址之后,SNAP包含了一个控制字段,此项字段会被设置为0x03,代表未编号信息(简称UI)。SNAP所置入的最后一个字段是组织唯一标识符(简称OUI)。802.H和RFC 1042之间的唯一差异就在于其所使用的OUI。

基于竞争的数据服务

我们所讨论的是原子交换过程,也就是说数据的交换过程必须被视为单一整体。比如单播数据必须得到确认以确保数据传输无误。虽然交换过程包含两个过帧,但是数据交换只是单一操作。只要有一方失误,整个操作就必须重新来过。
802.11定义了两组不同的原子交换过程:

  1. DCF:用于基于竞争的服务(主要商用服务)
  2. PCF:用于无竞争服务

DCF使用的帧交换方式在802.11 MAC中占有决定性的低位。为了实现基于竞争的MAC,处于作用状态的工作站必须处理每个帧的MAC标头。整个帧交换过程从某个工作站在DIFS之后取得闲置媒介的使用权时开始。

广播与组播数据或管理帧
广播和组播帧的交换过程最为简单,因为这些帧无需响应。这两种帧也可以视为组帧(group frame),因为其接收对象不限于单一工作站。成帧与寻址在802.11中较为复杂,适用此为则的帧的类型如下所示:

  • 广播数据帧在address1字段中填入广播地址
  • 组播数据帧会在address1字段填入组播地址
  • 广播管理帧会在address1填入广播地址(Beacon,Probe request以及IBSS ATIM帧)

组播帧无法分段,也无法得到确认。整个原子交换过程只牵涉到一个帧,根据基于竞争的访问控制规则加以传送。传送结束后,所有工作站必须等待一段DIFS,然后在竞争窗口倒数随机产生的延迟时间。
因为帧的交换只牵涉到一个帧,所以将NAV设定为0。既然此后已无其他帧,也就不必适用虚拟载波监听来锁定媒介以防止其他工作站访问。传送该帧之后,所有工作站均会等候一段DIFS,然后通过竞争窗口开始为任何被延迟的帧进行倒数。如下图:
在这里插入图片描述
因环境而异,组播可能会遇到劣质的服务质量,因额外这些帧没有得到任何确认。所以有些工作站可能会遗漏广播或组播流量,不过MAC并未内置任何机制可用来重传广播或者组播帧。
单播帧
在802.11标准中,针对个别工作站所传送的帧称为直接数据,我们称之为单播。单播帧必须得到确认以确保可靠性,这也意味着可以借助各种机制来改善传送效率。
当然,也适用于管理帧和数据帧。实际上,这些操作通常只用于数据帧。
基本的肯定确认(最后一个片段)
两个station之间的传送可靠性建立在简单的肯定确认上。单薄你数据必须得到肯定确认,否则该帧即会被认定已经遗失。单一帧及其确认是最基本的例子:
在这里插入图片描述
此帧会利用NAV为其本身、其确认及发生于其间的SIFS预定媒介使用权。谁当较长的NAV是为了整个交换过程锁定虚拟载波,以保证接收端可以传送确认。因为此交换过程是以ACK结束,所以没有必要在锁定虚拟载波,因此该ACK中的NAV会被设定为0。
帧分段
包括IP在内,一些较上层的网络协议或多或少都会用到帧分段。在网络层进行分段的缺点是接收端必须重组。如果帧在传送过程中有遗失,整个封包就必须重传。在链路风是用分段机制可以提升速度,即以较小的MTU在跳跃点间传输数据。此外,802.11可以利用帧分段来避免干扰。无线电波干扰通常会瞬间且高能量的突波形式出现,而且经常与AC电源线同步,将帧加以分段可以保护大部分帧不会被破坏。如图为分段机制:
在这里插入图片描述
最后两个帧交换和之前过程相同,NAV的设定也完全相同。不过倒数第二个帧之前的所有帧均会使用NAV为下一个帧锁定媒介。第一个数据帧会将的NAV的时间设定至足以涵盖ACK1、下一个帧片段及其确认(ACK2)。为了表示是帧片段,MAC会将帧头的控制字段的More Fragment位设定为1。最后一个确认(ACK3)除外,其余确认都会继续位下一个数据片段及其确认延长锁定媒介的时间。后续的数据帧会继续演唱NAV以涵盖后续的确认,知道最后一个数据帧才会将More Fragment位设定为0,而最后一个确认(ACK3)则会你将NAV设定为0。帧的片段的数量并无限制,不过帧的总长度必须短于PHY对交换过程所做的限制。
帧分段是由MAC的分段阈值参数控制,大部分的网卡驱动程序都允许用户设定此参数。任何超过分段阈值的帧都会被分段,分段方式因具体实现而异。调高分段阈值意味着帧的传送负担较小,不过帧的遗失与损坏的成本较高,因为将会有较多的数据必须丢弃与重传。调低分段阈值意味着传送负担较重,不过在面临较恶劣的环境时,这种做法可以提供较好的稳定性。

RTS/CTS
为保证媒介的使用权以及数据传送不被中断,工作站可以使用RTS/CTS的交换方式:
在这里插入图片描述
RTS/CTS交换的做法和帧分段没有什么两样,只是RTS帧并未携带任何数据。RTS中的NAV可以让CTS完成操作,而CTS则可以用来为数据帧保留媒介使用权。

RTS/CTS可用在所有的帧交换,非帧交换或介于两者之间。和帧分段一样,RTS/CTS是由驱动程序中的阈值来控制的。超过该阈值的帧是由RTS/CTS先行清空媒介,而较小的帧则被直接传送。

RTS/CTS与帧分段
实际上RTS/CTS交换通常与帧分段并行:
在这里插入图片描述
虽然经过分段,帧片段还是有一定的长度,因此可受惠于RTS/CTS过程所确保的媒介独家使用权,免于隐藏阶段的竞争。有些厂商将帧分段阈值与RTS/CTS阈值的默认值设置成一样。

省电程序(Powersaving Sequence)
在RF系统中,放大器是最耗电的组件,她负责将送出的信号放大并将收到的信号放大至可处理的水平。802.11station可以关闭无线电波收发器并且定亲进入休眠状态,一位置最长的电池使用时间。在休眠期间,接入点会为每个处于休眠状态的station缓存单播帧。若有缓存帧,接入点会由后续的Beacon帧告知工作站。从省电状态苏醒的station可以使用PS-Poll帧取得这些缓存帧。
接收到PS-Poll帧的接入点可以立即采取相应,也可以等到环境许可,比较空闲时再给予相应。
有时候,采取哪种PS-Poll响应有接入点所采用的芯片组的厂商决定。
立即响应
ap可以对PS-Poll(省电-轮询)帧立即做出响应。经过一段SIFS(短帧间间隔)ap即可传送帧:
在这里插入图片描述
PS-Poll帧隐含了NAV,并且在此帧的Duiation/ID字段中包含了Association ID,因此ap可以判断哪些帧是为该工作站所缓存的。不过,MAC规范说明书要求所有收到PS-Poll的staion都必须更新NAV,将NAV设定为一个SIFS加上一个ACK。虽然此NAV对数据帧而言过短,但是ap会取得媒介使用权,而所有station都会为了这个数据帧而延迟媒介访问。当数据帧传送结束时,NAV随机更新以反应该数据帧头中的数值。
如果缓存的帧过大,则必须进行分段:
在这里插入图片描述
上图说明了帧分段情况下的PS-Poll立即响应,和其他工作站一样,ap的分段阈值通常可以由用户来设定。
延迟响应
ap可以西安回复一个简单相应,ap虽然响应了访问缓存帧的请求,但是并未采取实际的发送行为。使用延迟响应的优点之一在于接入点方面的软件交易实现,因为确认信息可以通过芯片组固件立即传出,至于数据可以西安给予缓存,然后依正常流程传送。
通过PS-Poll请求帧的station必须保持清醒,直到该帧的传送完成。不过基于竞争的服务期间,ap可以在任何时间点传送帧。此时工作站不能返回省电模式,除非接收到一个Beacon帧,其中对应该工作站的TIM(传输指示映射位)位已经清除。
在这里插入图片描述
如上图,station从PS mode转变为活跃模式,同时注意到ap已经为他缓存了帧,于是station会发出PS-Poll给ap,要求接受这些缓存帧。不过,ap可能会延迟响应,因此只响应了一个ACK。到目前为止,ap已经确认station的缓存帧的请求,并且承诺即将在某个时间点加以发送。station必须在活跃模式下等候,也许经过几个原子帧交换后,ap就会送出station所要的数据,虽然未在图中显示,不过缓存帧还是有可能会被分段的。
收到数据帧之后,station还必须停留在清醒状态,直到下一个Beacon帧被传送出来。Beacon只是用来题词那个是否有为station缓存的帧,没有办法告知实际数量。一旦station收到Beacon帧中显示已无缓存帧,便可以断定已经完成帧的接受,然后返回省电模式。

多种速率支持

能够以不同速率操作的网络技术必须具备的一种机制,可以协商出一种收发端彼此可以接受的数据传输速率。速度协商对于station而言尤其方便。station可以经常变换速度,以适应无线电波环境的快速变动。当station间的距离改变十年,速度也会随之变动,到必要时更改传输速率。和其他协议功能一样,802.11标准并未规范如何选择传输速率。
其中,有些通则适用于所有的工作站:

  • 每个station均有一份操作速率列表,其中记录工作站与所连接的BSS均支持的所有速率。高于操作速率集的传输速率是不允许来传送帧的。
  • 每个BSS必须负责维护一组基本速率,即打算加入此BSS的station必须支持的速率列表。任何传送至组接收地址的帧必须以基本速率传送,以确保所有工作站均可以正确解读。
  • 用来开始帧交换的控制帧,如RTS/CTS,必须以基本速率集中的一种速率来进行传送。此规则可以保证以CTS响应RTS帧的station能够以相同速率操作。
  • 发送给特定station的帧会在Address 1字段记载单播的目的地地址。单播帧可以使用目的端支持的任意速率传送。
  • ACK或CTS之类的确认帧必须以基本速率集所包含的速率传送,但不能快于这次传送所使用的初始帧。响应帧必须使用与初始帧相同的调制方式。

选速与降速

市面上所有802.11接口均支持某种降速机制,可以适应不同网络环境调降所使用的数据速率。速率选择主要决定一张网卡该在合适提高速率以提高链路品质。802.11标准并未规范工作站如何决定降速,因此速率选择如何实现就留给芯片组厂商自行决定。几乎所有芯片组均有自己的一套降速机制,因此大多802.11接口的操作方式均有所不同。速率选择是可编程的,一般是由驱动接口的程序代码控制。速率选择机制可以通过驱动程序或者固件升级。
最常被用来判断何时应该变速的算法,其实是通过一些不是那么严谨的信号质量测量。信号质量可以直接就信噪比加以测量,或者间接观察有多少帧需要重传。直接测量信噪比可以针对最近一个帧的瞬间信号质量,或者就最近一段时间所接收到的一定数量的帧取平均数。有些芯片组会直接测量信噪比,不过随后会将之转换为相应的“信号质量”。当信号质量变差,芯片组就会降速来应变。
至于间接测量,则是检测瞬间或者平均遗失多少帧,然后给予适度补偿。采用间接测G量的算法简单来讲就是:如果帧已经遗失且帧重试计数器已经用尽,那就降速至下一档,然后重试一遍。反复进行以上步骤直到帧送出,或者一直尝试到以最低速率都无法成功传送为止。采用间接信号质量测量的芯片组或许会稍微修改上述算法,以避免耗费过多时间在物理层所支持的所有速率间逐次降速。尤其是近来的芯片组均支持不少的速率,在较低速率上反复重试将会相当费时。

帧的处理与桥接

无线接入点的核心就是桥接器,负责在无线与有线媒介之间转换帧。虽然802.11并没有限制非得使用何种有线媒介技术,但放弃Ethernet不用的接入点还没见过。大多数jap在设计上就是扮演802.11与Ethernet之间的桥梁,因此了解帧在两种媒介之间的传送方式就相当重要了:
在这里插入图片描述

无线媒介至有线媒介(802.11至Ethernet)

当ap的无线接口接收到准备传送至有线网络的帧时,接入点必须在两种媒介之间桥接帧。不正式的说,一下是ap必须进行的一系列操作:

  1. 当ap接收到一个帧时,首先会检测帧基本的完整性。接下来,ap会针对所使用的物理层,查看本章之前讨论过的物理层标头,延后验证802.11帧上的帧校验码(FCS)。
  2. 检验帧接受无误后,接入点就会继续查看是否应该进一步处理该帧。
    a:传送至ap的帧会将接入点的MAC地址作为802.11 MAC标头的Address 1字段。不匹配该接入点的BSSID的帧应给予丢弃(有些产品并不会实现此步骤)。
    b:802.11 MAC接着检测且移除重复的帧。产生重复帧的原因很多,不过最常见的情况是802.11确认在传送过程中遗失或损坏。为了简化上层协议的操作,因此由802.11MAC负责剔除重复的帧。
  3. 一旦接入点判断出要进一步处理该帧,就必须给予解密,因为该帧收到链路层安全算法的保护。解密的细节在后续中
  4. 成功解密后,接入点即查看是否为帧片段,是否需要进一步重组。完成性保护针对的是重组后的完成性,而不是个别的帧片段。
  5. 如果经过2a的BSSID校验,判断ap必须桥接该帧,较复杂的802.11MAC标头就会被转化为较简单的Ethernet MAC标头。
    a:记录在802.11 MAC标头的Address 3字段里的目的地地址会被复制到Ethernet的目的地地址。
    b:记录在802.11 MAC标头的Address 2字段里的源地址会被复制到Ethernet的来源地址。
    c:在802.11 Data字段里的SNAP标头将类型代码复制到Ethernet帧里的Type字段中。如果该Ethernet帧也是用SNAP,就复制整个SNAP标头。
    d:顺序信息主要供帧片段重组之用,不过当帧被桥接之后即予以丢弃。
    e:如果由标准服务质量(QOS)处理过程,即在此进行无线接口与有限接口的Qos映射。不过到目前为止,用来表示服务质量的形式,通常就是在有线帧中使用802.1p优先级位或者其他的控制形式。

有线媒介至无线媒介

将帧从ap有线端桥接至无线媒介的过程刚好相反:

  1. 验证Ethernet FCS后,接入点首先会查看是否需要进一步处理所接收到的帧,即检查该帧的目的地地址是否属于当前与接入点关联的工作站。
  2. 将SNAP标头附加于Ethernet 帧的数据之前。上层封包以SNAP标头进行封装,而其Type字段从Ethernet帧里的类型代码复制而来,如果该Ethernet帧也使用SNAP,则复制整个SNAP标头。
  3. 对帧的传送进行调度。802.11包含复杂的省电操作,将帧置于传送队列之前,接入点可能会将帧缓存于缓冲区。
  4. 一旦帧被置于队列待传,就会被赋予一个顺序编号。如有必要,所产生的数据可以用完整性校验值加以保护。如果帧需要分段,则会根据事先设定好的分段阈值进行分段。分段帧时,Sequence Control字段中的片段编号也会被赋值。
  5. 如果帧需要保护,则对帧(或每个帧片段)的主体加密。
  6. 802.11 MAC标头根据Ethernet MAC标头产生。
    a:将Ethernet的目的地地址复制到802.11MAC标头的Address 1字段中。
    b:将BSSID至于Address 2字段作为无线媒介上帧的发送者
    c:将帧的来源地址复制到MAC标头的Address 3字段中。
    d:将其他字段填入802.11 MAC标头。也就是把预计传送时间填入Duration字段,并把适当的标记填入Frame Control字段。
  7. 重新计算FCS。Ethernet和802.11使用相同的算法来计算FCS,不过802.11帧多一些字段,同时受FCS保护。
  8. 将产生新的帧交付给802.11接口传送。

服务质量扩展功能

服务质量扩展功能会影响帧的传送顺序,但并不会改变帧通过802.11 MAC的基本路径。802.11服务质量扩展功能并非只用单一传送队列,而是在上述有线至无线桥接过程中的第4、5、7步中采用多组传送队列。这些步骤会根据优先次序进行帧处理,而有线次序取决于帧内容以及配置设定中预先指定的优先级分级规则。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值