WIFI基本大数据的传输机制理解

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

802.11基本数据传输机制理解

1. 80

2.11网络基本概念

1.1 80

2.11网络元素

Station (STA):

具有802.11无线网卡的设备,包括手机、笔记本电脑等。

Access Point (AP):

实现无线网络与固定网络连接功能的设备,通常也称作“热点”,它主要完成STA与STA之间数据的转发、STA与骨干网之间数据的转发以及必要的管理工作。

本文中将AP和STA通称为Node(节点)。

Wireless Medium (WM):

STA之间以及STA与AP之间传递数据的通道,即无线链路。

无线链路一词相对直观和容易理解,本文中的用无线链路只带WM。

Distribution System (DS):

8023.11中的一个逻辑概念,通常包括两部分:骨干网以及AP的帧分发机制。这里的骨干网指的是连接各AP的固网,通常可以理解为以太网;AP的帧分发机制则完成骨干网与STA、以及STA与STA之间的数据帧转发工作。

1.2 80

2.11组网方式

Independent Basic Service Set (IBSS)

—IBSS中只有STA和WM,没有AP和DS

—IBSS内的通信只能发生在STA直接通信距离内

—IBSS内STA间的通信都是点到点直接通信,没有转发

图1 IBSS网络结构

Infrastructure Basic Service Set (BSS)

—BSS内有STA、AP和WM,但没有DS

—BSS的范围由AP的覆盖范围决定

—BSS内的各STA的通信均由AP中转,不能直接通信

—BSS内STA在通信前必须先与AP进行关联(associate),建立STA-AP的对应绑定关系—STA总是关联的发起方,AP是响应方并决定是否允许STA的加入

—一个STA同一时刻最多只能与一个AP进行关联

—AP的存在使得各STA可以以省电(power-saving: PS) 模式工作

图2 BSS网络结构

Extended Service Set (ESS)

—多个BSS串在一起组成一个ESS,同一ESS内的所有AP使用同一个SSID (Service Set Identifier)

—一个ESS内的各BSS由DS连接起来

图3 ESS网络结构

2. 802.11数据传输的基本问题及解决方案

2.1 数据传输的可靠性

将数据准确无误地送达目的地是任何通信技术的基本要求。802.11中引入多种机制来保证数据传输的可靠性。

2.1.1 ACK机制

接收方成功接收到一个帧后,向发送方回复一个Ack帧进行确认。这里的成功接收意味着MAC帧已经收到且FCS校验结果正确。

图4 引入ACK后的帧交互机制

一般情况下有两种帧要求Ack帧的确认:

⏹单播帧:单播帧的接收者必须向发送者回复Ack进行确认

⏹ToDS域为1的多播/广播帧:ToDS为1意味着这个报文需要由AP转发到DS里去,

AP向发送方确认报文已收到并会被转到DS里去。此时其他STA不回复。

多播/广播帧不要求、也不能要求收到该帧的每个节点都ACK回复,因为这样既无必要,AP也无法处理。

发送方收不到Ack帧的可能情况有:

⏹接收方未接收到帧,所以没有回复Ack

⏹接收方收帧过程出错,或是对帧的FCS校验失败,没有回复Ack

⏹接收方成功收到帧,但发送方没有成功收到Ack帧

不管是那种情况,发送方都会认为发送失败并启动重传。

2.1.2 重传机制

802.11中提供一个门限值RTSThreshold,长于或等于该门限值的帧被认为是长帧,而短于该门限值的帧被认为是短帧。

系统为每一个即将传输的帧(impending frame)都相应地配备有一个重发计数器(Retry Counter),长帧则为LRC(Long RC),短帧则为SRC(Short RC)。每重传一次,相应的RC 就加1。系统中对帧的重传次数是有限制的。如果重传次数达到上限但传输依然没有成功,该帧将被丢弃。

此外系统对每一帧的有效时间也是有限制的,也就是说每一帧都应该在一定时间内被成功发出,否则该帧就失效了,系统会将其丢弃。

综上所述,帧的重传不会无限制的重复下去,当发生下述情况之一时,重传终止:

⏹得到了接收方的Ack,发送成功;

⏹重传次数达到上限但仍未收到接收方的Ack,发送失败,弃帧;

⏹当前帧已经过了有效时期但仍未收到接收方的Ack,发送失败,弃帧。

重传意味着对帧的缓冲,意味着对系统内存及其他资源的占用。而帧越长,对系统内存的占用就越多。因此按帧的的长短进行分类,降低长帧的重传上限,有利于提高系统资源的

利用效率。

鉴于发送方没收到Ack的可能原因,重传有可能导致接收方收到重复帧,因此接收方需要相应的重复帧过滤机制。

2.1.3 重复帧过滤机制

802.11网络中的每一个节点,包括STA和AP,都会根据所收到的帧来缓存并更新<对端地址,帧序号,分片序号>组合,对于每一个对端地址,只需要保存最近收到的帧的<地址,帧序号,分片序号>组合。

收帧过程中,如果接收端发现当前帧是一个重传帧(帧中的RetryBit为1),则根据当前帧的发送者地址找到缓存中对应的<对段地址,帧序号,分片序号>。如果当前帧的帧序号小于或等于组合中的帧序号,或者帧序号相同但是分片序号小于或等于组合中的帧序号,接收方会将该帧认为是重复帧而将其丢弃。

如果当前帧中的RetryBit为0,接收端将不会启动重复帧过滤机制。

对重复帧,接收方依然回复ACK帧,以免发送方不断重传。

2.1.4 分片机制

根据帧格式的定义,802.11帧中负载的最大长度为23424字节。对于更长的数据,则需要将其分片成多个帧组成分片序列来完成传输。

802.11的分片序列中,除了最后一片,所有分片大小都应一样,且应该是偶数个字节。整个分片序列共享一个帧序号,帧序号表示各分片在整个序列中的位置。除了最后一片外,所有分片中的MoreFrag域都应设为0以告知接收者还有后续分片。根据帧格式的定义,分片号由4比特的二进制序列表示,说明一帧数据最多只能有16个分片。

接收方先将所收到的分片缓存,收齐所有分片后按照分片号的先后顺序重新组装。如果未能收齐所有分片或者重组失败,接收方将直接丢弃整个分片序列。

在正常情况下,接收者应对每一个收到的分片立即回复ACK,收到ACK后发送方继续发送下一个分片。如果某个分片没有被ACK,发送方将对该分片启动重传机制。显然,任何一个分片的发送失败都会导致整个序列的发送失败。

对大的数据包进行分片处理,可以提高传输的可靠性。

2.2 隐藏节点(hidden node)问题

考虑下图所示的情况:node1和node3都在node2的收发区域内,但node1不在node3的收发区域,因此对于node3相对于node1而言是一个“隐藏节点”。同样,node3也是node1的“隐藏节点”。如果不加任何约束的话,node1和node3很有可能同时向node2发送数据,而node2无法区分并成功接收,因而发生冲突。

相关文档
最新文档