WDS的原理

  WDS 即 Wireless Distribution System,是无线网络部署延展系统的简称,指用多个无线网络相互联结的方式构成一个整体的无线网络。简单地说,WDS就是利用两个(或以上)无线宽带路由器/AP通过相互连接的方式将无线信号向更深远的范围延伸。利用WDS技术,AP之间可以舍弃传统的有线网络进行互联,每个AP可以作主设备、中继设备和远端设备

  WDS 技术和其他无线扩展技术相比,一个显著的特点就是在各个AP之间传输数据时,保留了客户端的MAC地址,而且客户端的数据传输只牵扯到了MAC地址,跟IP地址无关。WDS也可以被看作Repeater模式,因为WDS可以满足在桥接的同时又可以连接客户端;Repeater 并不一定是WDS。

WDS 网络建立过程

  • DUT1 WDS连接DUT2,首先DUT1会扫描周围的无线信号,寻找匹配的无线BSSID。
  • 找到匹配的BSSID,即发送鉴权请求(Authentication)。
  • DUT2回应告知鉴权认证已通过。
  • DUT1发起关联请求(Association Request)。
  • DUT回复关联回应(Association Response)告知关联成功,WDS连接成功。

WDS 工作原理

  从模式上讲,WDS具有三种工作模式,分别是自学习模式、中继模式和桥接模式。

  自学习模式属于被动模式,也就是说它能自动识别并接受来自其他AP的WDS连接,但其本身不会主动连接周围的WDS AP。所以这种WDS模式只能用于主接入点路由器或AP上,只能用于被扩展的主AP上,而不能用于通过WDS扩展其它AP。

  中继模式是功能最全的WDS模式,在此模式下,AP既可以通过WDS实现无线网络范围的扩展,同时也具有AP的功能,接受无线终端的连接。

  桥接模式和有线网络中的网桥很像,它从一端接收数据包,并把它转手转发到另一端。WDS的桥接模式除了不再同时具有AP功能之外,其它和中继模式基本相同,所以在WDS桥接模式下,AP不再接受无线网络终端的连接,你也搜索不到它的存在。

  从角色来分,WDS网络中成员又可以分为主设备(Main),中继设备(Rely)和远端设备(Remote)。

  具有Internet连接或者局域网络出口的设备通常被作为主设备,通过以太网线接入主干网;处于网络中间用来中继信号的设备为中继设备;无线WDS网络边缘提供无线接入并将数据向主设备转发的设备为远端基站。

示例1

  如下图所示,Station 1和Station 2通过WDS方式建立连接,PC 1连接Station 1,PC 2连接Station 2,其中Station 2上配置WDS连接前端Station 1。Station 1处于自学习模式,接收Station 2的WDS请求,被扩展。Station 2处于中继模式,连接Station 1,并提供自身的无线供客户端连接。但这是一个完全对称可逆的拓扑,即PC1和PC2在整个网络中是对等的,不存在主和辅的关系。下面就以PC1向PC2发包为例介绍数据包的传输过程和MAC头部的变化。

1、PC1 to Station1

  PC 1并不知道整个网络的拓扑,也不需要知道,它只需要了解它所连接的station和想要通信的目的主机的MAC,PC 1完全忽略了Station 2的存在。此时,输入DS位置1,输出DS位置0,三个MAC地址分别是Station 1、PC 1、PC 2。Station 1是下一跳的MAC地址,也是接收站点的SSID MAC;PC 1是源MAC,也是发送方的MAC;PC 2是目的MAC。

2、station1 to station2

  无线四地址传输是只存在于Station与Station之间的,所以此过程中无线帧也是四地址结构。输入和输出DS位都置1,四个MAC地址依次是:Station 2、Station 1、PC 2、PC 1。Station 2和Station 1分别是接收方和发送方的MAC,处于三号位的PC 2仍然是目的MAC,最后是源MAC PC 1。

3、station2 to pc2

  Station 2 to PC 2是一个简单的基站到客户端的过程,输入DS位置0,输出DS位置1。此时MAC依次是PC 2、Station 2、PC 1。PC 2是目的地址,也是下一跳MAC地址;Station 2是发送方的MAC地址,也是其SSID的MAC;PC 1是源MAC地址。

  MAC 地址1 MAC 地址2 MAC 地址3 MAC 地址4 输入DS 输出DS
PC1 to station1 station1 pc1 pc2   1 0
station1 to station2 station2 station1 pc2 pc1 1 1
station2 to PC2 pc2 stiation2 pc1   0 1

示例2

  三个Station通过WDS互联,Station 2 WDS Station 1,Station 3 WDS Station 2。其中Station 1是主设备,处于自学习模式;Station 2是中继设备,属于中继模式,也是桥接模式;Station 3是远端设备,处于中继模式。

  在PC2上ping PC1,ping包要被转发四次才能到达PC1,如下图2-4所示。PC2回复的Ping Reply包同样需要经过四个相反的过程才能到达PC1。如下图所示:

  MAC头部的变化情况:

  MAC地址1 MAC地址2 MAC地址3 MAC地址4 输入DS 输出DS Direction
PC2->station3 station3 PC2 PC1   1 0 ->
station3->station2 station2 station3 PC1 PC2 1 1 ->
station2->station1 station1 station2 PC1 PC2 1 1 ->
station1->PC1 PC1 station1 PC2   0 1 ->
PC1->station1 station1 PC1 PC2   1 0 <-
station1->station2 station2 station1 PC2 PC1 1 1 <-
station2->station3 station3 station2 PC2 PC1     <-
station3->PC2 PC2 station3 PC1       <-

WDS安全机制

WDS的原理的更多相关文章

  1. WDS无线桥接

    因为放假回家,长时间不在家,家里也没什么人,所以也就没有网可以用.为了两个月办宽带又不值得,太过浪费了.于是就只能蹭网用了.当然,要和邻居打个招呼或者你能搞定密码的情况下不打招呼(嘿嘿...).但是有 ...

  2. 房间WIFI信号不好怎么办?——无线路由桥接(WDS)

    背景 1.无线路由在客厅,房间的WIFI信号很差,只有1-2格,虽说是100M的网速,但是从客厅到房间要经过3道墙!电脑的无线接收功能一般都很一般,网速不好理所当然. 2.弄一根网线从客厅连接起来很傻 ...

  3. 图解 Webpack 4.x 热更新原理

    图解 Webpack 4.x 热更新原理 Webpack HMR ️ module.hot & module.hot.accept if (module.hot) { module.hot.a ...

  4. ARP-NAT(MAC Address Translation)的原理

    本文部分图片来自: http://wiki.deliberant.com/faq/wireless-bridge-routing-arpnat/ https://wiki.openwrt.org/do ...

  5. 轻松理解webpack热更新原理

    一.前言 - webpack热更新 Hot Module Replacement,简称HMR,无需完全刷新整个页面的同时,更新模块.HMR的好处,在日常开发工作中体会颇深:节省宝贵的开发时间.提升开发 ...

  6. 奇异值分解(SVD)原理与在降维中的应用

    奇异值分解(Singular Value Decomposition,以下简称SVD)是在机器学习领域广泛应用的算法,它不光可以用于降维算法中的特征分解,还可以用于推荐系统,以及自然语言处理等领域.是 ...

  7. node.js学习(三)简单的node程序&&模块简单使用&&commonJS规范&&深入理解模块原理

    一.一个简单的node程序 1.新建一个txt文件 2.修改后缀 修改之后会弹出这个,点击"是" 3.运行test.js 源文件 使用node.js运行之后的. 如果该路径下没有该 ...

  8. 线性判别分析LDA原理总结

    在主成分分析(PCA)原理总结中,我们对降维算法PCA做了总结.这里我们就对另外一种经典的降维方法线性判别分析(Linear Discriminant Analysis, 以下简称LDA)做一个总结. ...

  9. [原] KVM 虚拟化原理探究(1)— overview

    KVM 虚拟化原理探究- overview 标签(空格分隔): KVM 写在前面的话 本文不介绍kvm和qemu的基本安装操作,希望读者具有一定的KVM实践经验.同时希望借此系列博客,能够对KVM底层 ...

随机推荐

  1. 主线程中创建不同的handler实例,接收消息会不会冲突

    http://www.cnblogs.com/transmuse/archive/2011/05/16/2048073.html这篇博文讲的比较透彻,可参考. 当然结论是不会冲突.因为每个messag ...

  2. Java学习之路(五)

    1:补充: 使用super也可以调用父类的成员函数  格式 :  super.函数名(); 2:抽象类与抽象函数 抽象函数的定义: 只有函数的定义,没有函数体的函数被称为抽象函数 抽象类的定义: 使用 ...

  3. Android 内存分析工具 - LogCat GC

    一.GC_Reason 触发垃圾回收的回收的集中原因: 类型 描述 GC_CONCURRENT 内存使用将满时,并发的进行垃圾回收. GC_FOR_MALLOC 当内存已满应用尝试分配内存时会出触发垃 ...

  4. 2016年11月1日 星期二 --出埃及记 Exodus 19:17

    2016年11月1日 星期二 --出埃及记 Exodus 19:17 Then Moses led the people out of the camp to meet with God, and t ...

  5. Linux下svn提交文件后自动同步更新到网站目录

    有时,对于多文件需要上传到服务器的时候将会很麻烦,但是如果使用svn的钩子脚本就容易实现本地提交svn后,自动同步代码文件到远程服务器的网站目录下,而不必手动上传了. 首先,在网站目录下checkou ...

  6. Redis的WEB界面管理工具phpRedisAdmin

    下载地址:http://down.admin5.com/php/75024.html 官方网址:https://github.com/ErikDubbelboer/phpRedisAdmin

  7. Struts2的处理结果(三)——动态配置结果

    Struts2的处理结果(三) --动态配置结果 1.使用表达式语法 示例: <struts> <constant name="struts.enable.DynamicM ...

  8. 关于mysql varchar 类型的最大长度限制

    Row size too large. The maximum row size for the used table type, not counting BLOBs, is 65535. This ...

  9. 【leetcode❤python】198. House Robber

    class Solution(object):    def rob(self, nums):        """        :type nums: List[in ...

  10. BZOJ 3640 JC的小苹果(逆矩阵)

    题目链接:http://www.lydsy.com:808/JudgeOnline/problem.php?id=3640 题意:给出一个无向图,从1走到n.开始是血量H,从u到达v时血量减少a[v] ...