WDS的原理
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的原理的更多相关文章
- WDS无线桥接
因为放假回家,长时间不在家,家里也没什么人,所以也就没有网可以用.为了两个月办宽带又不值得,太过浪费了.于是就只能蹭网用了.当然,要和邻居打个招呼或者你能搞定密码的情况下不打招呼(嘿嘿...).但是有 ...
- 房间WIFI信号不好怎么办?——无线路由桥接(WDS)
背景 1.无线路由在客厅,房间的WIFI信号很差,只有1-2格,虽说是100M的网速,但是从客厅到房间要经过3道墙!电脑的无线接收功能一般都很一般,网速不好理所当然. 2.弄一根网线从客厅连接起来很傻 ...
- 图解 Webpack 4.x 热更新原理
图解 Webpack 4.x 热更新原理 Webpack HMR ️ module.hot & module.hot.accept if (module.hot) { module.hot.a ...
- ARP-NAT(MAC Address Translation)的原理
本文部分图片来自: http://wiki.deliberant.com/faq/wireless-bridge-routing-arpnat/ https://wiki.openwrt.org/do ...
- 轻松理解webpack热更新原理
一.前言 - webpack热更新 Hot Module Replacement,简称HMR,无需完全刷新整个页面的同时,更新模块.HMR的好处,在日常开发工作中体会颇深:节省宝贵的开发时间.提升开发 ...
- 奇异值分解(SVD)原理与在降维中的应用
奇异值分解(Singular Value Decomposition,以下简称SVD)是在机器学习领域广泛应用的算法,它不光可以用于降维算法中的特征分解,还可以用于推荐系统,以及自然语言处理等领域.是 ...
- node.js学习(三)简单的node程序&&模块简单使用&&commonJS规范&&深入理解模块原理
一.一个简单的node程序 1.新建一个txt文件 2.修改后缀 修改之后会弹出这个,点击"是" 3.运行test.js 源文件 使用node.js运行之后的. 如果该路径下没有该 ...
- 线性判别分析LDA原理总结
在主成分分析(PCA)原理总结中,我们对降维算法PCA做了总结.这里我们就对另外一种经典的降维方法线性判别分析(Linear Discriminant Analysis, 以下简称LDA)做一个总结. ...
- [原] KVM 虚拟化原理探究(1)— overview
KVM 虚拟化原理探究- overview 标签(空格分隔): KVM 写在前面的话 本文不介绍kvm和qemu的基本安装操作,希望读者具有一定的KVM实践经验.同时希望借此系列博客,能够对KVM底层 ...
随机推荐
- java中的内存一般分成几部分?
java中的内存被分成以下四部分: ①.代码区 ②.栈区 ③.堆区 ④.静态区域 栈区:由编译器自动分配释放,存放函数的参数值.局部变量的值等:具体方法执行结束后,系统自动释放JVM内存资源 ...
- ACM题目————A simple problem
Description Zty很痴迷数学问题..一天,yifenfei出了个数学题想难倒他,让他回答1 / n.但Zty却回答不了^_^. 请大家编程帮助他. Input 第一行整数T,表示测试组 ...
- 求两个数的最大公约数(Java)
获得两个随机数(100以内),并放入数组中 public int[] getTwoRandom(){ int[] t = new int[2]; Random rand = new Random(); ...
- Linux下启动Oracle
切换到oracle用户 su - oracle 启动监听 lsnrctl start 确认是不是想要启动的oracle实例 echo $ORACLE_SID 如果不是,切换SID ora ...
- UpdatePane中弹出框
ScriptManager.RegisterClientScriptBlock(this.UpdatePanel21, typeof(UpdatePanel), "提示",&quo ...
- JAVA学习随笔-.class
类名.class是获得这个类所对应的Class实例.从面向对象的角度上来看,类也是对象,它们是类这个类对象,听起来有些抽象,但是在java中的实现就是所有的加载进来的类在虚拟机中都是一个java.la ...
- WF3.0 CallExternalMethod使用技巧
CallExternalMethod用于工作流向宿主进程中通信 简单的介绍一下它的使用技巧,参照网上的一个questioner源码进行了改进,因为我感觉这个源码提供的通信demo过于繁琐. 看看ser ...
- hdu 1999 不可摸数 水题。
不可摸数 Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others)Total Submis ...
- [转]人人网首页拖拽上传详解(HTML5 Drag&Drop、FileReader API、formdata)
人人网首页拖拽上传详解(HTML5 Drag&Drop.FileReader API.formdata) 2011年12月11日 | 彬Go 上一篇:给力的 Google HTML5 训练营( ...
- PKCS10生成证书csr
public static String genCSR(String subject, String alg,String provider) throws InvalidKeyException, ...