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. Python 深拷贝和浅拷贝

    Python中,对象的赋值,拷贝(深/浅拷贝)之间是有差异的,如果使用的时候不注意,就可能产生意外的结果. 下面本文就通过简单的例子介绍一下这些概念之间的差别. 对象赋值 直接看一段代码: will= ...

  2. C++中的const详解

    const的用法,特别是用在函数后面 在普通的非 const成员函数中,this的类型是一个指向类类型的 const指针.可以改变this所指向的值,但不能改变 this所保存的地址. 在 const ...

  3. windows7安装phpnow Apache非管理员权限不能操作Windows NT服务的解决方法

    科普一下:PHPnow 是什么?        Win32 下绿色免费的 Apache + PHP + MySQL 环境套件包.简易安装.快速搭建支持虚拟主机的 PHP 环境,可以安装 Discuz! ...

  4. linux定时任务crontab

    今天在执行mysql定时任务语句时候问了很多大拿,都建议我不要随便在生产环境下写定时任务这样的语句,有的说会有延时,那样的话就不准了,有的说在.系统时间和本地时间不一致怎么办?后来就建议我用linux ...

  5. 用InstallShield 打包工具 打 Win32 程序 (depends.exe 用看程序都依赖了哪些dll)

    InstallShield 打包工具 1. 转载:http://blog.csdn.net/zhang_xinxiu/article/details/9099757 2. 转载:http://www. ...

  6. cvs版本控制器

    CVS 版本控制器   首先我们要来明确 :为什么要学习CVS •项目开发靠的是一个团队的能力,很少有大中型项目是由个人完成的.对于团队开发来讲---能控制每个人的分工和权限, 可以让多个人同时编辑同 ...

  7. null&this&super&向上转型

    向上转型:父类声明子类实例化对象 例如A是父类 B是子类    1 : 实际上是父类的对象但将会丢失子类没有的父类方法 ,如果调用方法 将会调用子类重写的父类方法    2:上转型对象不能调用子类新增 ...

  8. ZOJ 2182 Cable TV Network(无向图点割-最大流)

    题目链接:http://acm.zju.edu.cn/onlinejudge/showProblem.do?problemCode=2182 题意:给出一个无向图,问最少删掉多少个顶点之后图变得不连通 ...

  9. mysql中bigint、int、mediumint、smallint 和 tinyint的取值范围

    mysql数据库设计,其中,对于数据性能优化,字段类型考虑很重要,搜集了些资料,整理分享出来,这篇为有关mysql整型bigint.int.mediumint.smallint 和 tinyint的语 ...

  10. ubuntu12.04安装mysql

    首先下载ubuntu 12.04 64位对应的myqsl版本                 http://dev.mysql.com/downloads/file/?id=464508 然后按照如下 ...