WiFi无线连接过程中有哪几个主要步骤?
WiFi无线连接过程中有哪几个主要步骤?
[1]
在使用WIFI功能时,经常性的操作是打开手机上的WiFi设备,搜索到心目中的热点,输入密码,联网成功,成功上网。
这个看似简单的过程,背后却是隐藏着大量的无线通信技术。
用几个专业术语来表示这个过程,分别是:扫描(Scanning)、认证(Authentication)、关联(Association)。
[2]
扫描(Scanning):专业术语中的扫描可以简单粗暴的理解为搜索周边的WiFi热点。
我们要加入一个无线网络,就需要找到它的网络名称,即SSID。
这个SSID其实是接入点(Access Point)回应工作站扫描时所带的参数,还有其它的网络参数,
包括BSSID(可理解为接入点的MAC地址)、信号强度、加密和认证方式等。
扫描类型分两种,一种是主动扫描(active scanning),另一种是被动扫描(passivescanning)。
主动扫描是主动寻找网。工作站主动发出Probe请求,然后等待接入点Probe响应。
被动扫描是工作站会在信道列表(channel list)所列的各个信道之间不断切换,并静候Beacon帧的到来。
[3]
认证(Authentication):专业术语中的认证,常规的解释就是,用户输入密码的环节。
找到WiFi热点之后,要加入该无线网络,就会弹出一个输入密码的窗口。
当然,如果店家设置的是免密加入,用户就可以也不用输入密码的。这个过程叫做:认证(Authentication)。
[4]
认证过程中会涉及加密方式,
目前主流的WiFi模块更倾向于WPA/WPA2加密方式,也就是我们在首次设置的时候选择的家庭网络的WPA-PSK/WPA2-PSK。
在企业里,经常用到WPA/WPA2 Radius.
[5]
关联(Association):如果用户想通过AP接入无线网络,用户必须同特定的AP关联。
当用户通过指定SSID选择无线网络,并通过AP认证后,就可以向AP发送关联请求帧。
AP将用户信息添加到数据库,向用户回复关联响应。
用户每次只可以关联到一个AP上,并且关联总是由用户发起。
[6]
WiFi模块的工作模式:WiFi模块工作模式有两种工作模式分别是AP和STA。
AP就是热点也就是说它作为AP模式自身可以辐射出一个无线wifi网路。
STA就是站点模式,客户端模式,也就是像我们电脑连接路由器一样,它相当于电脑的角色。
现在高通芯片Android 8 系统都同事支持AP 和 STA。
WiFi无线连接过程中有哪几个主要步骤?的更多相关文章
- WiFi无线连接真机进行Appium自动化测试方法
有时需要测试APP 产品的耗电问题,但用自动化又面临了一个USB接电脑供电的问题,从而导致计算出来的功耗与手动跑,存在有很大的误差,因此可使用wifi无线连接到手机进行自动化测试,解决功耗问题. 前提 ...
- adb使用wifi无线连接调试Android设备
先上官方原文: Wireless usage adb is usually used over USB. However, it is also possible to use over Wi-Fi, ...
- 树莓派3b+ wifi无线连接
一.配置文件启动wifi 配置 /etc/network/interfaces 文件实现,但在图形界面上并没有wifi图标可以选择,这种方法不够灵活,后面连接其它的wifi都要去修改配置文件 首先打开 ...
- Wi-Fi无线网络下行速度超级慢 (5kb/s)之解决方案
转载:http://www.iplaysoft.com/wifi-slow-solution.html 作者:X-Force 转载原因:该文分类提出了多种解决方案,并详述其原因.简洁清晰,可作为参考方 ...
- C#编程使用Managed Wifi API连接无线SSID
C#编程使用Managed Wifi API连接无线SSIDhttp://www.2cto.com/kf/201307/227623.html Managed Wifi API - Homehttp: ...
- ADB WIFI无线调试真正摆脱usb数据线连接,一次也不用!
常见的使用ADB无线调试步骤 手机"开发者模式"菜单中开启"USB调试" 和"无线调试",手机网络与电脑在同一网内; 手机使用USB与电脑进 ...
- 移动端测试=== adb 无线连接手机
无线连接(需要借助 USB 线) 除了可以通过 USB 连接设备与电脑来使用 adb,也可以通过无线连接——虽然连接过程中也有需要使用 USB 的步骤,但是连接成功之后你的设备就可以在一定范围内摆脱 ...
- Appium appium 通过 adb 无线连接 Android 真机
一.准备工作 1.准备一台或多台Android设备(如小米,华为),开启USB调试2.Android设备与电脑(Mac或者Windows)在同一个局域网内3.电脑安装好ADB工具 二.具体步骤 1.使 ...
- 删除配置文件解决OS X各种WiFi无法连接的顽固问题,解决MAC无法连接wif的情况 Preferences
删除配置文件解决OS X各种WiFi无法连接的顽固问题 删除配置文件解决OS X各种WiFi无法连接的顽固问题1 记住现在wifi的密码并将wifi关闭2 前往文件夹/Library/Preferen ...
随机推荐
- RabbitMQ基础知识(转载)
RabbitMQ基础知识(转载) 一.背景 RabbitMQ是一个由erlang开发的AMQP(Advanced Message Queue )的开源实现.AMQP 的出现其实也是应了广大人民群众的需 ...
- SQL Server 2017 安装问题(转)
遇到问题 Polybase 要求安装 Oracle JRE7 更新 规则失败 安装完毕之后,登录提示:您试图连接的 SQL Server 实例未安装 安装完SQL Server 2017 后,无法启动 ...
- linux下载命令wget
Linux wget是一个下载文件的工具,它用在命令行下.对于Linux用户是必不可少的工具,尤其对于网络管理员,经常要下载一些软件或从远程服务器恢复备份到 本地服务器.如果我们使用虚拟主机,处理这样 ...
- 把SQLAlchemy查询对象转换成字典/json使用(汇总)
1.使用SQLAlchemy from sqlalchemy import create_engine,Column,String,Integerfrom sqlalchemy.ext.declara ...
- java并发之线程间通信协作
在前面我们将了很多关于同步的问题,然而在现实中,需要线程之间的协作.比如说最经典的生产者-消费者模型:当队列满时,生产者需要等待队列有空间才能继续往里面放入商品,而在等待的期间内,生产者必须释放对临界 ...
- TensorFlow CNN 测试CIFAR-10数据集
本系列文章由 @yhl_leo 出品,转载请注明出处. 文章链接: http://blog.csdn.net/yhl_leo/article/details/50738311 1 CIFAR-10 数 ...
- yii rbac管理
以下是Controller代码 <?php /** * Created by PhpStorm. * User: zhoukang * Date: 2017/6/11 * Time: 19:31 ...
- linux c获取mac
#include <stdio.h> #include <string.h> #include <net/if.h> #include <sys/ioctl. ...
- nyoj19(排列组合next_permutation(s.begin(),s.end()))
题目意思: 从n个数中选择m个数,按字典序输出其排列. pid=19">http://acm.nyist.net/JudgeOnline/problem.php?pid=19 例: 输 ...
- uiautomator中InteractionController学习笔记(8)
4.1版本号 InteractionController将用户的键盘事件注入到android系统中,与系统进行交互(电视为什么不能设计成可组装,屏幕多大自己决定,想 多大就多大) click(int, ...