序言

在早期wi-fi发展过程中,欧洲还出现过一个同期的无线局域网协议。HiperLan 。所谓网络发展始终是“分久必合。合久必分”。不管是有线网络当前SDN的引入。还是无线网络下802.11ax协议的制定,当前都有加重中心控制的一种趋势。故本文我们又一次介绍下HiperLan,并简单对照下其与当前802.11ax的设计理念。

PS:802.11ax的设计中可能与HiperLAN的设计思想没有直接的关系,本文不过笔者个人的一些理解,如有错误。还请见谅。

HiperLan简单介绍

HyperLan全称为(HIgh PErformance Radio Local Area Network),其早期是欧洲ETSI所採用的无线局域网的通信协议。其一共同拥有2个版本号,分别为:HiperLan/1,HiperLan/2,另外还有两个引申的版本号HiperLink,HiperAccess。HiperLan早期也被称为Wireless ATM网络,其具有ATM网络的一些特点。并能依靠当时的ATM网络作为承载网。

HiperLan分层框架

HiperLan的分层框架较为802.11复杂一些。HiperLan/2的分层框架例如以下:

HiperLan初始设计就是考虑QOS的。故其分层结构相似于通信网。HiperLan/2除了PHY和MAC层以外,还有RLC和EC子层(注:HiperLan/1唯独RLC子层),再往上还有收敛层CL。这也是和802.11的一个明显的不同。这个也是设计思想上的不同了:

802.11的核心思想还是基于Best-effort。Best-effort的定义包括两个部分(參考High-Performance Communication networks,高性能通信网络中的定义):

  • IP的承载服务就是以数据报形式发送报文。报文的最大程度为字节(64KB)。

    这样的服务在差错。网络延迟或带宽方面不提供服务质量保证。这样的服务叫做尽力而为(Best-effort)服务,表示网络将尽量提供服务。

    (參考第103页,4.3.1节中的描写叙述)

  • IP承载服务在延迟。带宽和数据丢失方面不能提供不论什么保证,路由器按同一种方式处理全部的分组(这样的“一视同仁”的处理方式也能够叫做尽力而为(Best-effort)服务)。这是一种非常自然的特点:缺乏状态信息就意味着分组不能够被应用或链接所差别,这样路由器就不能提供额外的资源以满足应用需求。(參考第120页,4.5中的描写叙述)

故在802.11协议设计的DCF接入过程中,全部的帧都是依照一视同仁发送出去的。没有对数据帧做不论什么资源上优化。

在HyperLan中,为了考虑QOS。除了在MAC层的设计上要引入竞争的优先级以外,还引入了RLC子层。从而对系统资源就能够实行优化了,这一块在LTE中也是同样的思路。

HiperLan MAC层架构

在MAC层中。HiperLan还分成了逻辑信道和传输信道。每个信道实际上能够理解成一个数据片或者一段物理层的资源,在HiperLan中,逻辑信道和传输信道的承载关系例如以下(參考:HiperLAN/2 – The Broadband Radio Transmission Technology Operating in the 5 GHz Frequency Band)

watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvZnp4eTAwMjc2Mw==/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/SouthEast" alt="" />

这样的模式是从通信网络设计引来的思想,LTE中也存在这样的承载关系。物理信道的思想就是特定时频片段上的数据片信息。然后将这个信息怎样解析就是相应逻辑信道上的。在802.11中,不同类型的信息是通过不同类型的数据帧进行传输的,换言之,HiperLan这样的是固定的传输片段进行反复。而802.11这样的是出现了特殊的帧。比方数据帧之类的,才发送一下,这也是一种QOS的差别。

PS:关于控制信道和传输信道的详细内容,能够參考《HiperLAN/2 – The Broadband Radio Transmission Technology Operating in the 5 GHz Frequency Band》一文。这里因为关注重点,所以不进行展开。

讨论完其结构之后。我们要详细讨论下HiperLan的MAC层机制。HiperLan的MAC层是基于TDMA/TDD机制的,TDMA所述为其MAC层接入机制,TDD指的是其双工机制。从时域上,我们能够參考例如以下:

watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvZnp4eTAwMjc2Mw==/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/SouthEast" alt="" />

时域上整个传输过程是被等分成多个MAC-Frame,每个MAC-Frame中包括了BCH,FCH。ACH等几个传输信道,所以这里的传输信道相应的就是这个时间片的传输内容。

  • BCH(Broadcast channel):下行信道。相似于Wi-Fi中的Beacon的功能。广播AP的一些信息,比方发送功率的设定。FCH和RCH相应的时长。节能模式下的唤醒标识(相似于802.11的TIM)。
  • FCH(Fame control channel):下行信道。宣告了当前MAC帧中资源分配,下行传输阶段,上行传输节点以及随机接入阶段的资源分配。

  • ACH(Access feedback channel):下行信道,承载了上一轮随机接入中的结果,并告知全部节点。

    在HyperLAN中,MT代表节点。

  • DL Phase(Downlink phase):下行传输阶段,由AP向节点进行传输。每个节点的传输结构中还包括两种不同大小的传输信道,各自是传输控制信息C-PDUs的SCH(Short transport channel。即图中深紫色部分)和传输用户数据U-PDUs的LCH(Long transport channel),每个用户依据FCH里面的标识,在相应的信道里面获取自己的信息。

  • 保护间隔,因为上下行切换。所以在DL phase和UL phase之间存在一个slot的保护间隔。

  • UL Phase(Uplink phase):上行传输阶段。节点依据之前FCH的提示进行上行传输,传输过程相似于DL phase。为了QOS的设计,所以这里AP须要对每一轮的接入都进行控制,所以才设计了上一轮的竞争结果要先通过AP整理,然后在通过FCH广播出来,全部节点再进行接入。
  • RCHs(Random access channel):上行信道,节点在RCH过程中进行竞争,用以竞争下一个阶段的信道使用。

以上大致就是一个HiperLan的MAC层接入流程。以下我们详细讨论其接入机制。

PS:对于逻辑信道怎样处理物理信道的数据,而且在RLC子层怎样进行资源的优化分配。本文并不加以讨论。

HiperLan的竞争机制(EY-NPMA)

HiperLan的竞争接入机制还是比較复杂的,是笔者眼下见过的时域竞争下同一时候也是商业协议中。最长的一个竞争接入过程。

EY-NPMA其全称为(Elimination-Yield Non-pre-emptive Priority Multiple Access),该协议是一个分布式的竞争协议。其最特殊的是结合了一下两种机制:

  • Slot-Aloha
  • Listen-Before-Talk(即Carrier sense)

Carrier sense是CSMA机制的主要特征,Aloha与CSMA最大的不同也是在于其发送之前没有Carrier sense的功能。

我们知道802.11中,採用的竞争机制是基于CSMA/CA原理的,而怎样在单天线的情况下。设计一种分布式的竞争接入协议。而且用到slot-aloha的特点,是EY-NPMA中非常值得注意的一点。

(以上部分内容參考自:參考《IEEE 802.11 WLAN and HIPERLAN》)

PS:本节主要所述为HiperLan/1中的竞争机制,HiperLan/1和HiperLan/2基本还是相似的。

EY-NPMA的名字非常长。这么长的名字实际上代表了三个阶段,各自是:

  • Prioritisation phase:提供高优先级的节点接入
  • Elimination phase:节点公平竞争
  • Yield phase:为了防止冲突,节点再一次进行竞争

其结构详细參考例如以下(參考:Performance Evaluation Study for HiperLan WLAN Protocol):

watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvZnp4eTAwMjc2Mw==/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/SouthEast" alt="" />

无线局域网中,分布式竞争协议设计的难点主要源于半双工的天线,即收发不能同一时候。

近年来。非常多研究都是打破了半双工的限制(引入一些新的物理层技术),在特定环境下,设计一些新的物理层协议。而半双工天线下MAC层协议设计的进步还是有限。理解到这个难点之后。我们重点探讨下,EY-NPMA是怎样实现这个半双工天线竞争协议的。

EY-NPMA的三个阶段中,前两个阶段(Prioritisation和Elimination)的竞争思路和第三个阶段(Yield)是不同的,前者是一种存活到最后就是胜利者的思想,后者属于CSMA的思想。

存活的思想就是指节点首先选择一个随机的时隙数k。并从同样的时间起始,发送k个时隙。

发送完之后,节点转换为监听状态。监听信道中是否还有别人正在传输。假设有别人的话。那么就失败,假设到最后都没有发现信道里面还有别人传输,那么就代表胜利。

例如以下图所看到的:(參考:Suitability of HIPERLAN's EY-NPMA for Traffic jam scenarios in VANETs)

这里一共4个节点处于Prioritisation阶段,B,C,D都有高优先级数据,依据其优先级发送竞争信号。A没有。所以A不发送信号。并处于idle状态。

这里的idle实际上就是描写叙述A是处于监听状态的,故A发现了如今有高优先级的传输,所以本轮失败。B,C,D进入下一个阶段进行竞争。

在Elimination阶段时,每个节点选择一个随机数并进行竞争。比方节点C,D选择的是3。节点B选择的是2,所以节点B在发送完2个竞争信号之后,其转为监听状态。发现信道是忙的。所以本轮失败。节点C,D因为选择的同样的随机数,故其同一时候转为监听状态,因为信道之后都没有人传输竞争信号,所以这两个都觉得自己的胜利者了,故我们觉得就是其存活下来了。

在Yield阶段时,节点要进行最后一次传输。

这里设计有一个先决的条件:即竞争过程要和传输数据过程具有连续性。竞争完了之后立马就要进行传输。故这个节点随机数标识的不是连续发送多少个时隙,而是多少个时隙不发,保持idle的状态,这点实际上就是CSMA的过程了。如中,节点随机到3。节点C随机到4。即节点3在保持idle三个slot之后就进行传输数据,等节点C在第4个slot时候再监听信道的时候,这个时候发现信道是busy的,所以本轮竞争失败。

以上就是整个EY-NPMA的过程。以下我们简单讨论下其与802.11ax中的TF-R差别。

802.11ax(TF-R)与HiperLAN(EY-NPMA

802.11ax中的多用户OFDMA的竞争过程TF-R是基于Slot-Aloha思想的(參考IEEE 802.11-15/1137)

实际上我们能够总结,802.11ax(TF-R)与HiperLAN(EY-NPMA)的相似处包括两点:

  • Slot-Aloha的思想
  • 中心式控制的思想

TF-R中的Slot-Aloha:节点依据本地的随机数和可竞争的RU数目。推断本轮自己能否够发送。

假设能够,那么直接随机选择一个RU发送竞争信号。这个发送过程中,没有先监听。而冲突避免是通过中心控制完毕的,即AP进行推断,假设节点选择的RU没有冲突。那么AP能够成功解调,并反馈给节点,反之。AP则无法解调。

EY-NPMA的Slot-Aloha:Slot-Aloha主要体如今Prioritisation和Elimination phase两个过程,节点不进行监听,首先选择一个随机数进行发送,发送完了之后,再监听是否还有别人正在传输,假设没有的话。那么自己就是胜利者了。其冲突解决机制是通过多轮的竞争过程来避免的。

至于中心是控制,因为两者都存在资源优化:

802.11ax:是基于OFDMA情况下资源的优化,相似于user-selection的过程。

HiperLan:在RLC子层基于QOS进行资源的优化。

而综上所述中,HiperLan中实际上另一些设计我们能够借鉴的。HiperLan的失败主要是其设计复杂,这点和ATM是非常相似的,在早期无线流量不大的情况下。根本没有如此复杂设计的必要(即非常多需求都和通信网同样了)。而无线局域网主要是一种便宜的设计,价格和需求都比通信网要少非常多。不过当下,无线局域网的环境越来越复杂,用户数和QOS需求也是越来越多,所以其设计思想又回归到早期的需求也是非常正常的一件事,也就是之前所述的“分久必合,合久必分”。

802.11ax前瞻4:802.11ax与HiperLan的更多相关文章

  1. TCP/IP协议栈与数据报封装 (802.3 Ethernet 以太网 802.11 WLAN 无线网 )

    http://blog.csdn.net/jnu_simba/article/details/8957242 一.ISO/OSI参考模型 OSI(open system interconnection ...

  2. 局域网(以太网与IEEE 802.3、IEEE 802.11、)

    文章转自:https://blog.csdn.net/weixin_43914604/article/details/105016637 学习课程:<2019王道考研计算机网络> 学习目的 ...

  3. 802.11ac wave2的前世今生

    2015年下半年,高通.博通.RTL等芯片厂商相继发布了满足802.11ac wave2要求的芯片,WLAN及终端厂商也迅速跟进推出相应的产品和终端.802.11ac wave2在多方推动下于2015 ...

  4. IEEE 802.11 标准列表

    IEEE 802.11 标准列表 IEEE 802.11,1997年,原始标准(2Mbit/s,播在2.4GHz). IEEE 802.11a,1999年,物理层补充(54Mbit/s,播在5GHz) ...

  5. Ubuntu下用wireshark抓取802.11封包并进行过滤分析

    要用wireshark抓802.11的包 需要在linux下进行. 要在linux下抓802.11的包 需要在linux下安装无线网卡驱动. 所以 在正式抓取之前先把这两样东西搞起来. *没有特殊说明 ...

  6. 802.11 对于multicast 和 broadcast的处理

    ethernet内部会有broadcast 和 multicast.这两种包都是一个STA向多个STA发包. 当没有wifi存在的时候,LAN口之间的broadcast 和 multicast是可靠转 ...

  7. 802.1x协议&eap类型

    EAP: 0,扩展认证协议 1,一个灵活的传输协议,用来承载任意的认证信息(不包括认证方式) 2,直接运行在数据链路层,如ppp或以太网 3,支持多种类型认证 注:EAP 客户端---服务器之间一个协 ...

  8. 802.11 wireless 七

    802.11 wireless 7Wireless Fundamentals : End-to-End Discovering the NetworkGetting Connect Clients i ...

  9. 802.11 wireless 四

    802.11 wireless 4spread spectrum(扩频 - 基于香农定理的算法)1.窄带和扩频是发送信号的两种不同方式2.扩频技术使用更小的能量在波峰3.带宽的需要,基于发送数据的量频 ...

随机推荐

  1. nginx 监听一个端口同时支持https和http

    nginx 如何想同时支持https和http,必须监听两个不同的端口,比如http:listen 80; https:listen 443;   server { listen 1234 ssl;s ...

  2. 【Linux】函数与参数

    函数的定义 函数的定义包括function命令.函数名.开/闭括号包括以及包含在一对花括号中的函数体. (1) 函数定义 function fname() { Statements; } 或者 fna ...

  3. Centos安装Oracle数据库文本记录

    题记,本文旨在记录图形化安装过程,的过程...仅仅是回忆性学习... oracle账号登陆图形界面    #没有图形化,图形检查不通过 运行终端 Terminal cd /u01/database . ...

  4. ios中LeveyPopListView 弹出view的用法

    下载地址https://github.com/levey/LeveyPopListView 是arc,  如果是非arc项目要设置一下 方法 选中工程->TARGETS->相应的targe ...

  5. keras的训练引擎:train_array.py和train_generator.py

    keras的Model支持两种模式的训练: 直接传入数组,最终会调用train_array.py中的fit_loop()函数 直接传入生成器,最终会调用train_generator.py中的fit_ ...

  6. 做一个合格的Team Leader -- 领导和管理基本概念 三种激励手段:恐吓、贪念、承诺

    做一个合格的Team Leader -- 基本概念 1.领导和管理   人们乐于被领导:他们不喜欢被管理,不喜欢像牛一样被驱赶或指挥.   管理者强迫人们服从他们的命令,而领导者则会带领他们一起工作. ...

  7. 自由是有代价的:聊聊这几年尝试的道路 要想生活好,别看哲学书和思想书。简单看看可以,看多了问题就大了。还是要去研究研究些具体的问题。别jb坐在屋子里,嘴里念着海子的诗,脑袋里想康德想的事情,兜里屁都没有,幻想自己是大国总理,去想影帝是怎么炼成的。

    自由是有代价的:聊聊这几年尝试的道路 现在不愿意写过多的技术文章了,一点是现在做的技术比较偏,写出来看的人也不多,二来是家庭事务比较繁多,没以前那么有时间写了.最近,园子里多了一些写经历的文章,我也将 ...

  8. 对simhash算法的一些思考

    http://2588084.blog.51cto.com/2578084/558873

  9. C语言学习笔记 (007) - 数组指针和通过指针引用数组元素的方法总结

    1.数组指针:即指向数组的指针 那么, 如何声明一个数组指针呢? ]; /*括号是必须写的,不然就是指针数组:10是数组的大小*/ 拓展:有指针类型元素的数组称为指针数组. 2.通过指针引用数组元素的 ...

  10. fedora装机后要运行的脚本(原创)

    脚本:sh.sh #!/bin/zsh #安装rpmfusion源 dnf config-manager --add-repo=http://repo.fdzh.org/FZUG/FZUG.repo ...