1 概述

  WiFI TDMA领域,2009年Sam  Leffler在《TDMA for Long Distance Wireless Networks》首次系统提出了TDMA技术方案,并在FreeBSD上,基于Atheros公司的AR5212芯片,成功实现了IBSS架构的TDMA Demo。

     I. Hussain,N. Sarma和D. K. Saikia与2014年在《TDMA MAC Protocols for WiFi-based Long Distance --Networks: A Survey》中,对当时已有的WiFi TDMA进行总结,并归纳如下:

  此外,市场上支持TDMA类的WiFi产品,成功的有UBNT的Airmax、Cambium的 TDD和Mikrotik的NV2;另外,LogicWave的iPoll技术,也包含有TDMA的部分功效。

基于公开的资料,具体说来,基于Soft MAC的TDMA技术为主流,它们都强调严格TDMA规范,所以在时隙划分、时间同步以及现有WiFi的DCF功能修改上工作量特别大;而网上可查找到的基于Openwrt工程代码的TDMA技术文档,均在陷入超帧、时隙与时隙机会、静默与活动的处理中,最终出来的是基于一个固定速率、固定包长的ns2 Demo或openwrt Demo,无法融入商用产品。

  更恼火的是,主流的WiFi芯片方案商,长久以来都没有推出成熟的TDMA功能,或选择性的仅支持少量客户开发自己的TDMA。从而导致TDMA over WiFi这个简单且实用的技术在诸多WiFi产品中难实现。直到最近的QCA在其新一代的11AC WaveII 芯片上,终于推出了一个PCF版的功能插件,部分实现了TDMA。但对于老方案,该PCF功能并不能起作用。由此导致,基于方案商的SDK项目代码,开发不出TDMA功能。

  为了区别于现有的WiFi TDMA技术,本系列文档中将TDMA规范强制挪动到WiFi驱动的实现方式为“Fat TDMA WiFi”,而我们将研究和开发出来的为“Fit TDMA WiFi”。所谓的“Fit TDMA WiFi”,就是在SDK项目代码上,实现TDMA WiFi功能,不大幅度修改现有驱动代码,能持续保留现有的核心功能:如支持802.11n和802.11ac,支持速率协商等;可直接商用。

2 Fit TDMA WiFi 愿景

  • 单点调度

TDMA_er为调度者,循环调度各TDMA_ee, 缺省地,TDMA_er由AP承担,TDMA_ee由CPE承担,且AP仅能调度已关联到其上的CPE。

  

  • 调度方式

  “加权公平调度”,所谓“公平调度”,就是TDMA_er公平地调度各TDMA_ee,如每轮调度,确保每个TDMA_ee都能被调度1次,且时间窗均等;所谓“加权”,就是让不同通信链路质量的TDMA_ee,有不同的调度次数,从而能持续维持信号质量高的终端具有更佳地通信体验。

  

  • 兼容TDMA与严格TDMA策略

  兼容TDMA策略下,非TDMA终端允许接入本Fit TDMA WiFi,TDMA_er不丢弃源自非活动TDMA_ee的数据报文;严格TDMA策略下,非TDMA终端不允许接入Fit TDMA WiFi,且TDMA_er直接丢弃源自非活动TDMA_ee的数据报文。

  综述,Fit TDMA WiFi本质就是一个收发数据报文的调度机制,所以它不会被现有的TDMA思维所限制,是可基于SDK驱动代码实现的。

收发流程分析

  收发流程分析涉及到具体代码,属于SDK驱动内容,不能完全公开,仅供参考,本系列文档中涉及到具体功能或代码时,请在自己的驱动代码中查找。

留待下份文档展开。

  

一起来Fit TDMA over WiFi(1)的更多相关文章

  1. 一起来Fit TDMA over WiFi(3)

    4 TDMA调度者 TDMA调度者为Fit-TDMA的决策功能体,属于新开发功能模块,分调度员和被调度者2种角色,其中前者运行在AP等汇聚设备上,后者运行在CPE等接入类设备上:后者必须与前者配合才能 ...

  2. 一起来Fit TDMA over WiFi(2)

    3 收发流程分析与改进 收发流程分析涉及到具体代码,属于SDK驱动内容,不能完全公开,仅供参考,本系列文档中涉及到具体功能或代码时,请在自己的驱动代码中查找. QCA驱动从9.5开始,将原来的htc的 ...

  3. TDMA over WiFi

    0 引言 TDMA可以修正WiFi中DCF机制中连接速率不同终端间信道占用时间片公平性缺陷,从而提升整体WiFi网络的性能.著名的UBNT的网桥就用其独创的TDMA技术为其赢得了市场.以前是不同的公司 ...

  4. 【转】WiFi基础知识

    http://blog.csdn.net/myarrow/article/details/7930131 1. IE802.11简介 标准号 IEEE 802.11b IEEE 802.11a IEE ...

  5. 【转】家庭wifi覆盖指导

    网址:家庭wifi覆盖指导 私以为,目前民用 wifi 路由器市场已经完全走上了邪路.天线越来越大,发射功率越做越高.都敢冒着法律的风险使用大大超过 100mW 的发射功率了.且不论巨大的发射功率可能 ...

  6. WiFi基本知识

    转自:http://blog.csdn.net/myarrow/article/details/7930131 1. IE802.11简介 标准号 IEEE 802.11b IEEE 802.11a ...

  7. Wifi长距离传输

    本人从事Linux驱动开发.现在要实现两端之间wifi长距离(1km左右)传输视频数据(全向天线)的功能.目前用的平台是Atheros AR9342.我在网上查到一些资料是关于禁用802.11的CSM ...

  8. WiFi基本知识【转】

    转自:http://blog.csdn.net/myarrow/article/details/7930131 1. IE802.11简介 标准号 IEEE 802.11b IEEE 802.11a ...

  9. 深度点评五种常见WiFi搭建方案

    总结十年无线搭建经验,针对企业常见的五种办公室无线网络方案做个简要分析,各种方案有何优劣,又适用于那种类型的企业. 方案一:仅路由器或AP覆盖 简述:使用路由器或AP覆盖多个无线盲区,多个AP的部署实 ...

随机推荐

  1. JAVA_SE基础——43.抽象类

    高手勿喷~ 抽象类:当定义一个类时,常常需要定义一些方法来描述该类的行为特征,但有时这些方法的实现方式是无法确定的.例如定义Animal类时,shout()方法用于表示动物的叫声,但是针对不同的动物, ...

  2. Golang学习--开篇

    最近开始接收一个新项目,是使用Golang写的,需要重新捡起Golang来,于是就有了这个系列博客. Golang的环境配置,我就不说了,让我们直接开始. Golang官网:https://golan ...

  3. 在windows环境下安装redis和phpredis的扩展

    在windows环境下安装redis和phpredis的扩展 1.首先配置php: 需要在windows的集成环境中找到php的扩展文件夹,ext,然后在网上寻找自己的php对应的.dll文件 比如说 ...

  4. 多台linux主机之间建立免密通信

    多台linux主机之间设置免密通信 例:A 向 B设置免密通信 第一步 A生成密钥对 ssh-keygen -t rsa -t 指定秘钥的类型 rsa 秘钥类型 密钥目录:/root/.ssh/(如果 ...

  5. js实现图片(高度不确定)懒加载

    最近一直在弄广告页,由于广告页几乎都是图片拼凑起来的,为了减少服务器压力和带宽,采用图片懒加载方式,但是我们的图片高度又不确定,所以我在网上下载了echo.js自己改了一下. 大体思路是:让首页先加载 ...

  6. android studio 何如修改报名

    1. 重命名办法,网上很多见 2. 对于需要重新修改包名的级别的 a. 修改package 和 gradle 的包名,对应一致. b. 修改R 所在包名,使用crtl+n修改R文件的路径 c. 手动首 ...

  7. spring mvc跨域(post)--filter方案

    import javax.servlet.*; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.Http ...

  8. 2018 6年iOS开发常用的三方库

    开发一般APP必备三方库,省力秘籍!!!本篇文章会经常更新最新常用的三方. 1.网络请求库 AFNetworking https://github.com/AFNetworking/AFNetwork ...

  9. scrapy分布式的几个重点问题

    我们之前的爬虫都是在同一台机器运行的,叫做单机爬虫.scrapy的经典架构图也是描述的单机架构.那么分布式爬虫架构实际上就是:由一台主机维护所有的爬取队列,每台从机的sheduler共享该队列,协同存 ...

  10. Java基础之关键字,标识符,变量

    Java基础 首先,来看一下Java基础知识图解,以下便是在java学习中我们需要学习设计到的一些知识(当然不是很完全). 这些都是接下来在以后的学习中我们会学到的一些知识. 1 关键字 首次先来学习 ...